| /kernel/linux/linux-5.10/drivers/mtd/maps/ |
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 7 bool "Support non-linear mappings of flash chips" 13 tristate "Flash device in physical memory map" 17 ROM driver code to communicate with chips which are mapped 18 physically into the CPU's memory. You will need to configure 21 with config options or at run-time. 42 This is the physical memory location at which the flash chips 43 are mapped on your particular target board. Refer to the 44 memory map which should hopefully be in the documentation for 54 physical memory map between the chips, this could be larger [all …]
|
| /kernel/linux/linux-6.6/drivers/mtd/maps/ |
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 7 bool "Support non-linear mappings of flash chips" 13 tristate "Flash device in physical memory map" 17 ROM driver code to communicate with chips which are mapped 18 physically into the CPU's memory. You will need to configure 21 with config options or at run-time. 42 This is the physical memory location at which the flash chips 43 are mapped on your particular target board. Refer to the 44 memory map which should hopefully be in the documentation for 54 physical memory map between the chips, this could be larger [all …]
|
| /kernel/linux/linux-5.10/Documentation/admin-guide/mm/ |
| D | pagemap.rst | 14 physical frame each virtual page is mapped to. It contains one 64-bit 18 * Bits 0-54 page frame number (PFN) if present 19 * Bits 0-4 swap type if swapped 20 * Bits 5-54 swap offset if swapped 21 * Bit 55 pte is soft-dirty (see 22 :ref:`Documentation/admin-guide/mm/soft-dirty.rst <soft_dirty>`) 23 * Bit 56 page exclusively mapped (since 4.2) 24 * Bits 57-60 zero 25 * Bit 61 page is file-page or shared-anon (since 3.5) 30 In 4.0 and 4.1 opens by unprivileged fail with -EPERM. Starting from [all …]
|
| /kernel/linux/linux-6.6/Documentation/admin-guide/mm/ |
| D | pagemap.rst | 12 physical frame each virtual page is mapped to. It contains one 64-bit 16 * Bits 0-54 page frame number (PFN) if present 17 * Bits 0-4 swap type if swapped 18 * Bits 5-54 swap offset if swapped 19 * Bit 55 pte is soft-dirty (see 20 Documentation/admin-guide/mm/soft-dirty.rst) 21 * Bit 56 page exclusively mapped (since 4.2) 22 * Bit 57 pte is uffd-wp write-protected (since 5.13) (see 23 Documentation/admin-guide/mm/userfaultfd.rst) 24 * Bits 58-60 zero [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/display/ |
| D | st,stih4xx.txt | 3 - sti-vtg: video timing generator 5 - compatible: "st,vtg" 6 - reg: Physical base address of the IP registers and length of memory mapped region. 8 - interrupts : VTG interrupt number to the CPU. 9 - st,slave: phandle on a slave vtg 11 - sti-vtac: video timing advanced inter dye communication Rx and TX 13 - compatible: "st,vtac-main" or "st,vtac-aux" 14 - reg: Physical base address of the IP registers and length of memory mapped region. 15 - clocks: from common clock binding: handle hardware IP needed clocks, the 17 See ../clocks/clock-bindings.txt for details. [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/display/ |
| D | st,stih4xx.txt | 3 - sti-vtg: video timing generator 5 - compatible: "st,vtg" 6 - reg: Physical base address of the IP registers and length of memory mapped region. 8 - interrupts : VTG interrupt number to the CPU. 9 - st,slave: phandle on a slave vtg 11 - sti-vtac: video timing advanced inter dye communication Rx and TX 13 - compatible: "st,vtac-main" or "st,vtac-aux" 14 - reg: Physical base address of the IP registers and length of memory mapped region. 15 - clocks: from common clock binding: handle hardware IP needed clocks, the 17 See ../clocks/clock-bindings.txt for details. [all …]
|
| /kernel/linux/linux-6.6/mm/ |
| D | zpool.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * zpool memory storage api 7 * This is a common frontend for memory storage pool implementations. 8 * Typically, this is used to store compressed memory. 30 * zpool_register_driver() - register a zpool implementation. 36 atomic_set(&driver->refcount, 0); in zpool_register_driver() 37 list_add(&driver->list, &drivers_head); in zpool_register_driver() 43 * zpool_unregister_driver() - unregister a zpool implementation. 57 refcount = atomic_read(&driver->refcount); in zpool_unregister_driver() 60 ret = -EBUSY; in zpool_unregister_driver() [all …]
|
| /kernel/linux/linux-5.10/drivers/net/ethernet/cavium/liquidio/ |
| D | octeon_mem_ops.h | 7 * Copyright (c) 2003-2016 Cavium, Inc. 14 * AS-IS and WITHOUT ANY WARRANTY; without even the implied warranty 21 * \brief Host Driver: Routines used to read/write Octeon memory. 27 /** Read a 64-bit value from a BAR1 mapped core memory address. 28 * @param oct - pointer to the octeon device. 29 * @param core_addr - the address to read from. 32 * in which core_addr is mapped. 34 * @return 64-bit value read from Core memory 38 /** Read a 32-bit value from a BAR1 mapped core memory address. 39 * @param oct - pointer to the octeon device. [all …]
|
| /kernel/linux/linux-6.6/drivers/net/ethernet/cavium/liquidio/ |
| D | octeon_mem_ops.h | 7 * Copyright (c) 2003-2016 Cavium, Inc. 14 * AS-IS and WITHOUT ANY WARRANTY; without even the implied warranty 21 * \brief Host Driver: Routines used to read/write Octeon memory. 27 /** Read a 64-bit value from a BAR1 mapped core memory address. 28 * @param oct - pointer to the octeon device. 29 * @param core_addr - the address to read from. 32 * in which core_addr is mapped. 34 * @return 64-bit value read from Core memory 38 /** Read a 32-bit value from a BAR1 mapped core memory address. 39 * @param oct - pointer to the octeon device. [all …]
|
| /kernel/linux/linux-5.10/Documentation/vm/ |
| D | unevictable-lru.rst | 13 This document describes the Linux memory manager's "Unevictable LRU" 21 details - the "what does it do?" - by reading the code. One hopes that the 33 memory x86_64 systems. 35 To illustrate this with an example, a non-NUMA x86_64 platform with 128GB of 36 main memory will have over 32 million 4k pages in a single zone. When a large 47 * Those mapped into SHM_LOCK'd shared memory regions. 49 * Those mapped into VM_LOCKED [mlock()ed] VMAs. 56 ------------------------- 58 The Unevictable LRU infrastructure consists of an additional, per-zone, LRU list 70 system - which means we get to use the same code to manipulate them, the [all …]
|
| /kernel/linux/linux-6.6/drivers/scsi/lpfc/ |
| D | lpfc_mem.c | 4 * Copyright (C) 2017-2022 Broadcom. All Rights Reserved. The term * 6 * Copyright (C) 2004-2014 Emulex. All rights reserved. * 9 * Portions Copyright (C) 2004-2005 Christoph Hellwig * 17 * FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT, ARE * 46 #define LPFC_MEM_POOL_SIZE 64 /* max elem in non-DMA safety pool */ 48 #define LPFC_RRQ_POOL_SIZE 256 /* max elements in non-DMA pool */ 49 #define LPFC_MBX_POOL_SIZE 256 /* max elements in MBX non-DMA pool */ 54 int max_xri = phba->sli4_hba.max_cfg_param.max_xri; in lpfc_mem_alloc_active_rrq_pool_s4() 57 return -ENOMEM; in lpfc_mem_alloc_active_rrq_pool_s4() 58 bytes = ((BITS_PER_LONG - 1 + max_xri) / BITS_PER_LONG) * in lpfc_mem_alloc_active_rrq_pool_s4() [all …]
|
| /kernel/linux/linux-5.10/drivers/scsi/lpfc/ |
| D | lpfc_mem.c | 4 * Copyright (C) 2017-2018 Broadcom. All Rights Reserved. The term * 6 * Copyright (C) 2004-2014 Emulex. All rights reserved. * 9 * Portions Copyright (C) 2004-2005 Christoph Hellwig * 17 * FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT, ARE * 46 #define LPFC_MEM_POOL_SIZE 64 /* max elem in non-DMA safety pool */ 48 #define LPFC_RRQ_POOL_SIZE 256 /* max elements in non-DMA pool */ 49 #define LPFC_MBX_POOL_SIZE 256 /* max elements in MBX non-DMA pool */ 54 int max_xri = phba->sli4_hba.max_cfg_param.max_xri; in lpfc_mem_alloc_active_rrq_pool_s4() 57 return -ENOMEM; in lpfc_mem_alloc_active_rrq_pool_s4() 58 bytes = ((BITS_PER_LONG - 1 + max_xri) / BITS_PER_LONG) * in lpfc_mem_alloc_active_rrq_pool_s4() [all …]
|
| /kernel/linux/linux-5.10/drivers/virtio/ |
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 42 If disabled, you get a slightly smaller, non-transitional driver, 70 This driver provides access to virtio-pmem devices, storage devices 71 that are mapped into the physical address space - similar to NVDIMMs 72 - with a virtio-based flushing interface. 83 of memory within a KVM guest. 96 This driver provides access to virtio-mem paravirtualized memory 97 devices, allowing to hotplug and hotunplug memory. 99 This driver was only tested under x86-64, but should theoretically 100 work on all architectures that support memory hotplug and hotremove. [all …]
|
| /kernel/linux/linux-6.6/Documentation/arch/loongarch/ |
| D | introduction.rst | 1 .. SPDX-License-Identifier: GPL-2.0 7 LoongArch is a new RISC ISA, which is a bit like MIPS or RISC-V. There are 8 currently 3 variants: a reduced 32-bit version (LA32R), a standard 32-bit 9 version (LA32S) and a 64-bit version (LA64). There are 4 privilege levels 12 instruction set, virtual memory and some other topics of LoongArch. 22 ---- 24 LoongArch has 32 GPRs ( ``$r0`` ~ ``$r31`` ); each one is 32-bit wide in LA32 25 and 64-bit wide in LA64. ``$r0`` is hard-wired to zero, and the other registers 26 are not architecturally special. (Except ``$r1``, which is hard-wired as the 30 the LoongArch ELF psABI spec, in :ref:`References <loongarch-references>`: [all …]
|
| /kernel/linux/linux-5.10/mm/ |
| D | zpool.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * zpool memory storage api 7 * This is a common frontend for memory storage pool implementations. 8 * Typically, this is used to store compressed memory. 38 * zpool_register_driver() - register a zpool implementation. 44 atomic_set(&driver->refcount, 0); in zpool_register_driver() 45 list_add(&driver->list, &drivers_head); in zpool_register_driver() 51 * zpool_unregister_driver() - unregister a zpool implementation. 65 refcount = atomic_read(&driver->refcount); in zpool_unregister_driver() 68 ret = -EBUSY; in zpool_unregister_driver() [all …]
|
| /kernel/linux/linux-6.6/Documentation/userspace-api/media/v4l/ |
| D | mmap.rst | 1 .. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later 7 Streaming I/O (Memory Mapping) 14 streaming methods, to determine if the memory mapping flavor is 16 with the memory type set to ``V4L2_MEMORY_MMAP``. 19 between application and driver, the data itself is not copied. Memory 20 mapping is primarily intended to map buffers in device memory into the 21 application's address space. Device memory can be for example the video 22 memory on a graphics card with a video capture add-on. However, being 24 drivers support streaming as well, allocating buffers in DMA-able main 25 memory. [all …]
|
| D | vidioc-reqbufs.rst | 1 .. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later 13 VIDIOC_REQBUFS - Initiate Memory Mapping, User Pointer I/O or DMA buffer I/O 34 This ioctl is used to initiate :ref:`memory mapped <mmap>`, 36 Memory mapped buffers are located in device memory and must be allocated 37 with this ioctl before they can be mapped into the application's address 48 the desired number of buffers, ``memory`` must be set to the requested 53 requested, even zero, when the driver runs out of free memory. A larger 62 buffers. Note that if any buffers are still mapped or exported via DMABUF, 76 .. flat-table:: struct v4l2_requestbuffers 77 :header-rows: 0 [all …]
|
| /kernel/linux/linux-5.10/Documentation/userspace-api/media/v4l/ |
| D | mmap.rst | 1 .. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later 7 Streaming I/O (Memory Mapping) 14 streaming methods, to determine if the memory mapping flavor is 16 with the memory type set to ``V4L2_MEMORY_MMAP``. 19 between application and driver, the data itself is not copied. Memory 20 mapping is primarily intended to map buffers in device memory into the 21 application's address space. Device memory can be for example the video 22 memory on a graphics card with a video capture add-on. However, being 24 drivers support streaming as well, allocating buffers in DMA-able main 25 memory. [all …]
|
| /kernel/linux/linux-6.6/Documentation/core-api/ |
| D | dma-api.rst | 8 of the API (and actual examples), see Documentation/core-api/dma-api-howto.rst. 11 Part II describes extensions for supporting non-consistent memory 13 non-consistent platforms (this is usually only legacy platforms) you 16 Part I - dma_API 17 ---------------- 19 To get the dma_API, you must #include <linux/dma-mapping.h>. This 27 Part Ia - Using large DMA-coherent buffers 28 ------------------------------------------ 36 Consistent memory is memory for which a write by either the device or 40 devices to read that memory.) [all …]
|
| /kernel/linux/linux-6.6/Documentation/userspace-api/media/dvb/ |
| D | dmx-reqbufs.rst | 1 .. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later 13 DMX_REQBUFS - Initiate Memory Mapping and/or DMA buffer I/O 36 This ioctl is used to initiate a memory mapped or DMABUF based demux I/O. 38 Memory mapped buffers are located in device memory and must be allocated 39 with this ioctl before they can be mapped into the application's address 54 … be smaller than the number requested, even zero, when the driver runs out of free memory. A larger 63 buffers, however this cannot succeed when any buffers are still mapped. 70 On success 0 is returned, on error -1 and the ``errno`` variable is set 72 :ref:`Generic Error Codes <gen-errors>` chapter.
|
| D | dmx-mmap.rst | 1 .. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later 4 .. _dmx-mmap: 13 dmx-mmap - Map device memory into application address space 20 .. code-block:: c 38 Length of the memory area to map. This must be a multiple of the 42 The ``prot`` argument describes the desired memory protection. 49 The ``flags`` parameter specifies the type of the mapped object, 50 mapping options and whether modifications made to the mapped copy of 61 ``MAP_SHARED`` allows applications to share the mapped memory with 62 other (e. g. child-) processes. [all …]
|
| /kernel/linux/linux-5.10/Documentation/userspace-api/media/dvb/ |
| D | dmx-reqbufs.rst | 1 .. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later 13 DMX_REQBUFS - Initiate Memory Mapping and/or DMA buffer I/O 36 This ioctl is used to initiate a memory mapped or DMABUF based demux I/O. 38 Memory mapped buffers are located in device memory and must be allocated 39 with this ioctl before they can be mapped into the application's address 54 … be smaller than the number requested, even zero, when the driver runs out of free memory. A larger 63 buffers, however this cannot succeed when any buffers are still mapped. 70 On success 0 is returned, on error -1 and the ``errno`` variable is set 72 :ref:`Generic Error Codes <gen-errors>` chapter.
|
| D | dmx-mmap.rst | 1 .. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later 4 .. _dmx-mmap: 13 dmx-mmap - Map device memory into application address space 20 .. code-block:: c 38 Length of the memory area to map. This must be a multiple of the 42 The ``prot`` argument describes the desired memory protection. 49 The ``flags`` parameter specifies the type of the mapped object, 50 mapping options and whether modifications made to the mapped copy of 61 ``MAP_SHARED`` allows applications to share the mapped memory with 62 other (e. g. child-) processes. [all …]
|
| /kernel/linux/linux-5.10/include/xen/interface/ |
| D | memory.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 3 * memory.h 5 * Memory reservation and information. 16 * Increase or decrease the specified domain's memory reservation. Returns a 17 * -ve errcode on failure, or the # extents successfully allocated or freed. 31 * IN: GPFN bases of extents to populate with memory 43 * I/O devices often have a 32-bit limitation even in 64-bit systems). If 59 * An atomic exchange of memory pages. If return code is zero then 60 * @out.extent_list provides GMFNs of the newly-allocated memory. 68 * [IN] Details of memory extents to be exchanged (GMFN bases). [all …]
|
| /kernel/linux/linux-6.6/include/xen/interface/ |
| D | memory.h | 1 /* SPDX-License-Identifier: MIT */ 3 * memory.h 5 * Memory reservation and information. 16 * Increase or decrease the specified domain's memory reservation. Returns a 17 * -ve errcode on failure, or the # extents successfully allocated or freed. 31 * IN: GPFN bases of extents to populate with memory 43 * I/O devices often have a 32-bit limitation even in 64-bit systems). If 59 * An atomic exchange of memory pages. If return code is zero then 60 * @out.extent_list provides GMFNs of the newly-allocated memory. 68 * [IN] Details of memory extents to be exchanged (GMFN bases). [all …]
|