/openbmc/linux/drivers/fpga/ |
H A D | dfl-afu-dma-region.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Driver for FPGA Accelerated Function Unit (AFU) DMA Region Management 5 * Copyright (C) 2017-2018 Intel Corporation, Inc. 12 #include <linux/dma-mapping.h> 17 #include "dfl-afu.h" 23 afu->dma_regions = RB_ROOT; in afu_dma_region_init() 27 * afu_dma_pin_pages - pin pages of given dma memory region 29 * @region: dma memory region to be pinned 35 struct dfl_afu_dma_region *region) in afu_dma_pin_pages() argument 37 int npages = region->length >> PAGE_SHIFT; in afu_dma_pin_pages() [all …]
|
/openbmc/bmcweb/redfish-core/schema/dmtf/json-schema/ |
H A D | MemoryRegion.v1_0_3.json | 4 "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json", 5 …"copyright": "Copyright 2014-2024 DMTF. For the full DMTF copyright policy, see http://www.dmtf.or… 12 "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": { 28 "description": "The available OEM-specific actions for this resource.", 29 …"longDescription": "This property shall contain the available OEM-specific actions for this resour… 36 "description": "Definition of memory chunk providing capacity for memory region.", 37 …tion": "This type shall contain the definition of a memory chunk providing capacity for memory reg… 39 "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": { 55 … "description": "The link to the memory chunk providing capacity to the memory region.", 56 … contain a link to a resource of type `MemoryChunks` that provides capacity to the memory region.", [all …]
|
/openbmc/qemu/docs/devel/ |
H A D | memory.rst | 2 The memory API 5 The memory API models the memory and I/O buses and controllers of a QEMU 8 - ordinary RAM 9 - memory-mapped I/O (MMIO) 10 - memory controllers that can dynamically reroute physical memory regions 13 The memory model provides support for 15 - tracking RAM changes by the guest 16 - setting up coalesced memory for kvm 17 - setting up ioeventfd regions for kvm 19 Memory is modelled as an acyclic graph of MemoryRegion objects. Sinks [all …]
|
/openbmc/u-boot/lib/ |
H A D | lmb.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * Procedures for maintaining information about logical memory blocks. 20 debug(" memory.cnt = 0x%lx\n", lmb->memory.cnt); in lmb_dump_all() 21 debug(" memory.size = 0x%llx\n", in lmb_dump_all() 22 (unsigned long long)lmb->memory.size); in lmb_dump_all() 23 for (i = 0; i < lmb->memory.cnt; i++) { in lmb_dump_all() 24 debug(" memory.reg[0x%lx].base = 0x%llx\n", i, in lmb_dump_all() 25 (unsigned long long)lmb->memory.region[i].base); in lmb_dump_all() 27 (unsigned long long)lmb->memory.region[i].size); in lmb_dump_all() 31 lmb->reserved.cnt); in lmb_dump_all() [all …]
|
/openbmc/qemu/include/exec/ |
H A D | memory.h | 2 * Physical memory management API 10 * the COPYING file in the top-level directory. 19 #include "exec/cpu-common.h" 35 #define MAX_PHYS_ADDR (((hwaddr)1 << MAX_PHYS_ADDR_SPACE_BITS) - 1) 37 #define TYPE_MEMORY_REGION "memory-region" 41 #define TYPE_IOMMU_MEMORY_REGION "iommu-memory-region" 46 #define TYPE_RAM_DISCARD_MANAGER "ram-discard-manager" 90 * @mr: the region, or %NULL if empty 91 * @fv: the flat view of the address space the region is mapped in 95 * relative to the region's address space [all …]
|
/openbmc/linux/tools/testing/memblock/tests/ |
H A D | basic_api.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 17 ASSERT_NE(memblock.memory.regions, NULL); in memblock_initialization_check() 18 ASSERT_EQ(memblock.memory.cnt, 1); in memblock_initialization_check() 19 ASSERT_EQ(memblock.memory.max, EXPECTED_MEMBLOCK_REGIONS); in memblock_initialization_check() 20 ASSERT_EQ(strcmp(memblock.memory.name, "memory"), 0); in memblock_initialization_check() 24 ASSERT_EQ(memblock.memory.max, EXPECTED_MEMBLOCK_REGIONS); in memblock_initialization_check() 36 * A simple test that adds a memory block of a specified base address 37 * and size to the collection of available memory regions (memblock.memory). 38 * Expect to create a new entry. The region counter and total memory get 45 rgn = &memblock.memory.regions[0]; in memblock_add_simple_check() [all …]
|
H A D | alloc_api.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 21 * A simple test that tries to allocate a small memory region. 22 * Expect to allocate an aligned region near the end of the available memory. 34 expected_start = memblock_end_of_DRAM() - SMP_CACHE_BYTES; in alloc_top_down_simple_check() 41 ASSERT_EQ(rgn->size, size); in alloc_top_down_simple_check() 42 ASSERT_EQ(rgn->base, expected_start); in alloc_top_down_simple_check() 53 * A test that tries to allocate memory next to a reserved region that starts at 58 * | +--------+ +--------| 60 * +------------+--------+---------+--------+ 65 * The allocation direction is top-down and region arrays are sorted from lower [all …]
|
/openbmc/bmcweb/redfish-core/schema/dmtf/csdl/ |
H A D | MemoryRegion_v1.xml | 1 <?xml version="1.0" encoding="UTF-8"?> 2 <!----> 3 <!--################################################################################ --> 4 <!--# Redfish Schema: MemoryRegion v1.0.3 --> 5 <!--# --> 6 <!--# For a detailed change log, see the README file contained in the DSP8010 bundle, --> 7 <!--# available at http://www.dmtf.org/standards/redfish --> 8 <!--# Copyright 2014-2024 DMTF. --> 9 <!--# For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright --> 10 <!--################################################################################ --> [all …]
|
/openbmc/qemu/include/hw/mem/ |
H A D | memory-device.h | 2 * Memory Device Interface 10 * See the COPYING file in the top-level directory. 16 #include "hw/qdev-core.h" 17 #include "qapi/qapi-types-machine.h" 20 #define TYPE_MEMORY_DEVICE "memory-device" 33 * All memory devices need to implement TYPE_MEMORY_DEVICE as an interface. 35 * A memory device is a device that owns a memory region which is 37 * address in guest physical memory can either be specified explicitly 40 * Some memory device might not own a memory region in certain device 42 * empty memory devices are mostly ignored by the memory device code. [all …]
|
/openbmc/linux/arch/um/kernel/ |
H A D | physmem.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Copyright (C) 2000 - 2007 Jeff Dike (jdike@{addtoit,linux.intel}.com) 12 #include <as-layout.h> 18 static int physmem_fd = -1; 50 if (err == -ENOMEM) in map_memory() 53 "memory size>/4096\n"); in map_memory() 60 * setup_physmem() - Setup physical memory for UML 61 * @start: Start address of the physical kernel memory, 63 * @reserve_end: end address of the physical kernel memory. 64 * @len: Length of total physical memory that should be mapped/made [all …]
|
/openbmc/linux/mm/ |
H A D | memblock.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Procedures for maintaining information about logical memory blocks. 39 * Memblock is a method of managing memory regions during the early 40 * boot period when the usual kernel memory allocators are not up and 43 * Memblock views the system memory as collections of contiguous 46 * * ``memory`` - describes the physical memory available to the 47 * kernel; this may differ from the actual physical memory installed 48 * in the system, for instance when the memory is restricted with 50 * * ``reserved`` - describes the regions that were allocated 51 * * ``physmem`` - describes the actual physical memory available during [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/reserved-memory/ |
H A D | reserved-memory.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/reserved-memory/reserved-memory.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: /reserved-memory Child Node Common 10 - devicetree-spec@vger.kernel.org 13 Reserved memory is specified as a node under the /reserved-memory node. The 14 operating system shall exclude reserved memory from normal usage one can 16 memory regions. Such memory regions are usually designed for the special 19 Each child of the reserved-memory node specifies one or more regions [all …]
|
H A D | memory-region.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/reserved-memory/memory-region.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Reserved Memory Region 10 - devicetree-spec@vger.kernel.org 13 Regions in the /reserved-memory node may be referenced by other device 14 nodes by adding a memory-region property to the device node. 19 memory-region: 20 $ref: /schemas/types.yaml#/definitions/phandle-array [all …]
|
/openbmc/u-boot/include/dm/ |
H A D | of_extra.h | 1 /* SPDX-License-Identifier: GPL-2.0+ */ 27 uint32_t used; /* Number of bytes used in region */ 40 * @return 0 if ok, -ve on error 45 * ofnode_decode_region() - Decode a memory region from a node 47 * Look up a property in a node which contains a memory region address and 51 * 32-bit machines. 55 * @param basep Returns base address of region 56 * @param size Returns size of region 57 * @return 0 if ok, -1 on error (property not found) 63 * ofnode_decode_memory_region()- Decode a named region within a memory bank [all …]
|
/openbmc/linux/include/uapi/linux/ |
H A D | nitro_enclaves.h | 1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 3 * Copyright 2020-2021 Amazon.com, Inc. or its affiliates. All Rights Reserved. 16 * NE_CREATE_VM - The command is used to create a slot that is associated with 20 * setting any resources, such as memory and vCPUs, for an 21 * enclave. Memory and vCPUs are set for the slot mapped to an enclave. 25 * Its format is the detailed in the cpu-lists section: 26 * https://www.kernel.org/doc/html/latest/admin-guide/kernel-parameters.html 34 * * Enclave file descriptor - Enclave file descriptor used with 35 * ioctl calls to set vCPUs and memory 37 * * -1 - There was a failure in the ioctl logic. [all …]
|
/openbmc/linux/drivers/acpi/ |
H A D | nvs.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * nvs.c - Routines for saving and restoring ACPI NVS memory region 5 * Copyright (C) 2008-2011 Rafael J. Wysocki <rjw@sisk.pl>, Novell Inc. 40 struct nvs_region *region; in acpi_nvs_register() local 42 region = kmalloc(sizeof(*region), GFP_KERNEL); in acpi_nvs_register() 43 if (!region) in acpi_nvs_register() 44 return -ENOMEM; in acpi_nvs_register() 45 region->phys_start = start; in acpi_nvs_register() 46 region->size = size; in acpi_nvs_register() 47 list_add_tail(®ion->node, &nvs_region_list); in acpi_nvs_register() [all …]
|
/openbmc/linux/drivers/net/ipa/ |
H A D | ipa_mem.c | 1 // SPDX-License-Identifier: GPL-2.0 3 /* Copyright (c) 2012-2018, The Linux Foundation. All rights reserved. 4 * Copyright (C) 2019-2023 Linaro Ltd. 10 #include <linux/dma-mapping.h> 23 /* "Canary" value placed between memory regions to detect overflow */ 33 for (i = 0; i < ipa->mem_count; i++) { in ipa_mem_find() 34 const struct ipa_mem *mem = &ipa->mem[i]; in ipa_mem_find() 36 if (mem->id == mem_id) in ipa_mem_find() 43 /* Add an immediate command to a transaction that zeroes a memory region */ 47 struct ipa *ipa = container_of(trans->gsi, struct ipa, gsi); in ipa_mem_zero_region_add() [all …]
|
H A D | ipa_mem.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 3 /* Copyright (c) 2012-2018, The Linux Foundation. All rights reserved. 4 * Copyright (C) 2019-2023 Linaro Ltd. 13 * DOC: IPA Local Memory 15 * The IPA has a block of shared memory, divided into regions used for 19 * the "ipa-shared" memory range) and size found in the IPA_SHARED_MEM_SIZE 22 * Each region is optionally preceded by one or more 32-bit "canary" values. 23 * These are meant to detect out-of-range writes (if they become corrupted). 24 * A given region (such as a filter or routing table) has the same number 28 * The set of memory regions is defined in configuration data. They are [all …]
|
/openbmc/linux/include/linux/ |
H A D | memblock.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 6 * Logical memory blocks. 28 * enum memblock_flags - definition of memory region attributes 30 * @MEMBLOCK_HOTPLUG: memory region indicated in the firmware-provided memory 31 * map during early boot as hot(un)pluggable system RAM (e.g., memory range 33 * commandline, try keeping this memory region hotunpluggable. Does not apply 35 * @MEMBLOCK_MIRROR: mirrored region 37 * reserved in the memory map; refer to memblock_mark_nomap() description 39 * @MEMBLOCK_DRIVER_MANAGED: memory region that is always detected and added 40 * via a driver, and never indicated in the firmware-provided memory map as [all …]
|
/openbmc/linux/tools/testing/selftests/kvm/lib/ |
H A D | kvm_util.c | 1 // SPDX-License-Identifier: GPL-2.0-only 39 * flags - The flags to pass when opening KVM_DEV_PATH. 102 * cap - Capability 134 vm->dirty_ring_size = ring_size; in vm_enable_dirty_ring() 139 vm->kvm_fd = _open_kvm_dev_path_or_exit(O_RDWR); in vm_open() 143 vm->fd = __kvm_ioctl(vm->kvm_fd, KVM_CREATE_VM, (void *)vm->type); in vm_open() 144 TEST_ASSERT(vm->fd >= 0, KVM_IOCTL_ERROR(KVM_CREATE_VM, vm->fd)); in vm_open() 150 [VM_MODE_P52V48_4K] = "PA-bits:52, VA-bits:48, 4K pages", in vm_guest_mode_string() 151 [VM_MODE_P52V48_64K] = "PA-bits:52, VA-bits:48, 64K pages", in vm_guest_mode_string() 152 [VM_MODE_P48V48_4K] = "PA-bits:48, VA-bits:48, 4K pages", in vm_guest_mode_string() [all …]
|
/openbmc/linux/arch/x86/boot/compressed/ |
H A D | kaslr.c | 1 // SPDX-License-Identifier: GPL-2.0 8 * handles walking the physical memory maps (and tracking memory regions 9 * to avoid) in order to select a physical memory location that can 41 /* Simplified build-specific string for starting entropy. */ 53 hash = (hash << ((sizeof(hash) * 8) - 7)) | (hash >> 7); in rotate_xor() 82 * Store memory limit: MAXMEM on 64-bit and KERNEL_IMAGE_SIZE on 32-bit. 87 /* Number of immovable memory regions */ 96 MEM_AVOID_MEMMAP_END = MEM_AVOID_MEMMAP_BEGIN + MAX_MEMMAP_REGIONS - 1, 105 if (one->start + one->size <= two->start) in mem_overlaps() 108 if (one->start >= two->start + two->size) in mem_overlaps() [all …]
|
/openbmc/phosphor-dbus-interfaces/yaml/xyz/openbmc_project/Inventory/Item/PersistentMemory/ |
H A D | Partition.interface.yaml | 2 Implement to provide memory partition attributes. 4 - name: PartitionId 7 Unique region ID representing a specific region within the Memory. 8 - name: SizeInKiB 11 Size of this memory region in kibibytes (KiB). 12 - name: MemoryClassification 15 Classification of memory occupied by the given memory region. 16 - name: OffsetInKiB 19 Offset with in the Memory that corresponds to the starting of this 20 memory region in KiB. [all …]
|
/openbmc/linux/Documentation/PCI/endpoint/ |
H A D | pci-ntb-function.rst | 1 .. SPDX-License-Identifier: GPL-2.0 9 PCI Non-Transparent Bridges (NTB) allow two host systems to communicate 12 machine, expose memory ranges as BARs, and perform DMA. They also support 13 scratchpads, which are areas of memory within the NTB that are accessible 26 .. code-block:: text 28 +-------------+ +-------------+ 32 +------^------+ +------^------+ 35 +---------|-------------------------------------------------|---------+ 36 | +------v------+ +------v------+ | 40 | | <-----------------------------------> | | [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/pmem/ |
H A D | pmem-region.txt | 1 Device-tree bindings for persistent memory regions 2 ----------------------------------------------------- 4 Persistent memory refers to a class of memory devices that are: 6 a) Usable as main system memory (i.e. cacheable), and 9 Given b) it is best to think of persistent memory as a kind of memory mapped 11 persistent regions separately to the normal memory pool. To aid with that this 13 memory regions exist inside the physical address space. 15 Bindings for the region nodes: 16 ----------------------------- 19 - compatible = "pmem-region" [all …]
|
/openbmc/linux/drivers/gpu/drm/i915/ |
H A D | intel_region_ttm.c | 1 // SPDX-License-Identifier: MIT 19 * The code in this file deals with setting up memory managers for TTM 22 * i915 GEM regions to TTM memory types and resource managers. 26 * intel_region_ttm_device_init - Initialize a TTM device 33 struct drm_device *drm = &dev_priv->drm; in intel_region_ttm_device_init() 35 return ttm_device_init(&dev_priv->bdev, i915_ttm_driver(), in intel_region_ttm_device_init() 36 drm->dev, drm->anon_inode->i_mapping, in intel_region_ttm_device_init() 37 drm->vma_offset_manager, false, false); in intel_region_ttm_device_init() 41 * intel_region_ttm_device_fini - Finalize a TTM device 46 ttm_device_fini(&dev_priv->bdev); in intel_region_ttm_device_fini() [all …]
|