Home
last modified time | relevance | path

Searched +full:shared +full:- +full:memory (Results 1 – 25 of 1094) sorted by relevance

12345678910>>...44

/kernel/linux/linux-5.10/include/linux/
Dtee_drv.h1 /* SPDX-License-Identifier: GPL-2.0-only */
3 * Copyright (c) 2015-2016, Linaro Limited
23 #define TEE_SHM_MAPPED BIT(0) /* Memory mapped by the kernel */
24 #define TEE_SHM_DMA_BUF BIT(1) /* Memory with dma-buf handle */
25 #define TEE_SHM_EXT_DMA_BUF BIT(2) /* Memory with dma-buf handle */
26 #define TEE_SHM_REGISTER BIT(3) /* Memory registered in secure world */
27 #define TEE_SHM_USER_MAPPED BIT(4) /* Memory mapped in user space */
28 #define TEE_SHM_POOL BIT(5) /* Memory allocated from pool */
29 #define TEE_SHM_KERNEL_MAPPED BIT(6) /* Memory mapped in kernel space */
30 #define TEE_SHM_PRIV BIT(7) /* Memory private to TEE driver */
[all …]
/kernel/linux/linux-6.6/include/linux/
Dtee_drv.h1 /* SPDX-License-Identifier: GPL-2.0-only */
3 * Copyright (c) 2015-2022 Linaro Limited
23 #define TEE_SHM_DYNAMIC BIT(0) /* Dynamic shared memory registered */
25 #define TEE_SHM_USER_MAPPED BIT(1) /* Memory mapped in user space */
26 #define TEE_SHM_POOL BIT(2) /* Memory allocated from pool */
27 #define TEE_SHM_PRIV BIT(3) /* Memory private to TEE driver */
35 * struct tee_context - driver specific context on file pointer data
37 * @list_shm: List of shared memory object owned by this context
42 * shared memory release.
44 * wait for tee-supplicant daemon to be started if not present
[all …]
/kernel/linux/linux-6.6/Documentation/admin-guide/mm/
Dnuma_memory_policy.rst2 NUMA Memory Policy
5 What is NUMA Memory Policy?
8 In the Linux kernel, "memory policy" determines from which node the kernel will
9 allocate memory in a NUMA system or in an emulated NUMA system. Linux has
10 supported platforms with Non-Uniform Memory Access architectures since 2.4.?.
11 The current memory policy support was added to Linux 2.6 around May 2004. This
12 document attempts to describe the concepts and APIs of the 2.6 memory policy
15 Memory policies should not be confused with cpusets
16 (``Documentation/admin-guide/cgroup-v1/cpusets.rst``)
18 memory may be allocated by a set of processes. Memory policies are a
[all …]
Dnommu-mmap.rst2 No-MMU memory mapping support
5 The kernel has limited support for memory mapping under no-MMU conditions, such
6 as are used in uClinux environments. From the userspace point of view, memory
12 Memory mapping behaviour also involves the way fork(), vfork(), clone() and
16 The behaviour is similar between the MMU and no-MMU cases, but not identical;
21 In the MMU case: VM regions backed by arbitrary pages; copy-on-write
24 In the no-MMU case: VM regions backed by arbitrary contiguous runs of
30 shared across fork() or clone() without CLONE_VM in the MMU case. Since
31 the no-MMU case doesn't support these, behaviour is identical to
39 In the no-MMU case:
[all …]
/kernel/linux/linux-5.10/Documentation/admin-guide/mm/
Dnuma_memory_policy.rst4 NUMA Memory Policy
7 What is NUMA Memory Policy?
10 In the Linux kernel, "memory policy" determines from which node the kernel will
11 allocate memory in a NUMA system or in an emulated NUMA system. Linux has
12 supported platforms with Non-Uniform Memory Access architectures since 2.4.?.
13 The current memory policy support was added to Linux 2.6 around May 2004. This
14 document attempts to describe the concepts and APIs of the 2.6 memory policy
17 Memory policies should not be confused with cpusets
18 (``Documentation/admin-guide/cgroup-v1/cpusets.rst``)
20 memory may be allocated by a set of processes. Memory policies are a
[all …]
Dnommu-mmap.rst2 No-MMU memory mapping support
5 The kernel has limited support for memory mapping under no-MMU conditions, such
6 as are used in uClinux environments. From the userspace point of view, memory
12 Memory mapping behaviour also involves the way fork(), vfork(), clone() and
16 The behaviour is similar between the MMU and no-MMU cases, but not identical;
21 In the MMU case: VM regions backed by arbitrary pages; copy-on-write
24 In the no-MMU case: VM regions backed by arbitrary contiguous runs of
30 shared across fork() or clone() without CLONE_VM in the MMU case. Since
31 the no-MMU case doesn't support these, behaviour is identical to
39 In the no-MMU case:
[all …]
/kernel/linux/linux-6.6/drivers/tee/
Dtee_shm.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Copyright (c) 2015-2017, 2019-2021 Linaro Limited
33 return -EINVAL; in shm_get_kernel_pages()
46 if (shm->pages) { in release_registered_pages()
47 if (shm->flags & TEE_SHM_USER_MAPPED) in release_registered_pages()
48 unpin_user_pages(shm->pages, shm->num_pages); in release_registered_pages()
50 shm_put_kernel_pages(shm->pages, shm->num_pages); in release_registered_pages()
52 kfree(shm->pages); in release_registered_pages()
58 if (shm->flags & TEE_SHM_POOL) { in tee_shm_release()
59 teedev->pool->ops->free(teedev->pool, shm); in tee_shm_release()
[all …]
/kernel/linux/linux-5.10/include/uapi/linux/
Dtee.h2 * Copyright (c) 2015-2016, Linaro Limited
45 /* Flags relating to shared memory */
46 #define TEE_IOCTL_SHM_MAPPED 0x1 /* memory mapped in normal world */
47 #define TEE_IOCTL_SHM_DMA_BUF 0x2 /* dma-buf handle on shared memory */
53 #define TEE_GEN_CAP_REG_MEM (1 << 2)/* Supports registering shared memory */
56 #define TEE_MEMREF_NULL (__u64)(-1) /* NULL MemRef Buffer */
65 * OP-TEE specific capabilities
70 * struct tee_ioctl_version_data - TEE version
86 * TEE_IOC_VERSION - query version of TEE
95 * struct tee_ioctl_shm_alloc_data - Shared memory allocate argument
[all …]
/kernel/linux/linux-6.6/include/uapi/linux/
Dtee.h2 * Copyright (c) 2015-2016, Linaro Limited
49 #define TEE_GEN_CAP_REG_MEM (1 << 2)/* Supports registering shared memory */
52 #define TEE_MEMREF_NULL (__u64)(-1) /* NULL MemRef Buffer */
61 * OP-TEE specific capabilities
66 * struct tee_ioctl_version_data - TEE version
82 * TEE_IOC_VERSION - query version of TEE
91 * struct tee_ioctl_shm_alloc_data - Shared memory allocate argument
92 * @size: [in/out] Size of shared memory to allocate
94 * @id: [out] Identifier of the shared memory
107 * TEE_IOC_SHM_ALLOC - allocate shared memory
[all …]
/kernel/linux/linux-5.10/drivers/tee/optee/
Doptee_smc.h1 /* SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) */
3 * Copyright (c) 2015-2019, Linaro Limited
8 #include <linux/arm-smccc.h>
28 * Normal cached memory (write-back), shareable for SMP systems and not
36 * 32-bit registers.
44 * 65cb6b93-af0c-4617-8ed6-644a8d1140f8
75 * Used by non-secure world to figure out which Trusted OS is installed.
78 * Returns UUID in a0-4 in the same way as OPTEE_SMC_CALLS_UID
88 * Used by non-secure world to figure out which version of the Trusted OS
92 * Returns revision in a0-1 in the same way as OPTEE_SMC_CALLS_REVISION
[all …]
Doptee_msg.h1 /* SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) */
3 * Copyright (c) 2015-2019, Linaro Limited
12 * This file defines the OP-TEE message protocol (ABI) used to communicate
13 * with an instance of OP-TEE running in secure world.
19 * tee-supplicant.
23 * Part 1 - formatting of messages
48 * Pointer to a list of pages used to register user-defined SHM buffer.
51 * list of page addresses. OP-TEE core can reconstruct contiguous buffer from
63 * uint64_t pages_array[OPTEE_MSG_NONCONTIG_PAGE_SIZE/sizeof(uint64_t) - 1];
76 * Memory attributes for caching passed with temp memrefs. The actual value
[all …]
/kernel/linux/linux-5.10/drivers/soc/qcom/
DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
15 the low-power state for resources related to the remoteproc
24 Command DB queries shared memory by key string for shared system
25 resources. Platform drivers that require to set state of a shared
26 resource on a RPM-hardened platform must use this database to get
27 SoC specific identifier and information for the shared resources.
43 be called qcom-cpr
82 tristate "Qualcomm On Chip Memory (OCMEM) driver"
86 The On Chip Memory (OCMEM) allocator allows various clients to
87 allocate memory from OCMEM based on performance, latency and power
[all …]
/kernel/linux/linux-6.6/Documentation/arch/x86/
Dtdx.rst1 .. SPDX-License-Identifier: GPL-2.0
9 encrypting the guest memory. In TDX, a special module running in a special
13 Since the host cannot directly access guest registers or memory, much
19 TDX includes new hypercall-like mechanisms for communicating from the
25 TDX guests behave differently from bare-metal and traditional VMX guests.
26 In TDX guests, otherwise normal instructions or memory accesses can cause
32 Instruction-based #VE
33 ---------------------
35 - Port I/O (INS, OUTS, IN, OUT)
36 - HLT
[all …]
/kernel/linux/linux-5.10/drivers/tee/
Dtee_shm.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Copyright (c) 2015-2017, 2019-2021 Linaro Limited
18 if (shm->pages) { in release_registered_pages()
19 if (shm->flags & TEE_SHM_USER_MAPPED) { in release_registered_pages()
20 unpin_user_pages(shm->pages, shm->num_pages); in release_registered_pages()
24 for (n = 0; n < shm->num_pages; n++) in release_registered_pages()
25 put_page(shm->pages[n]); in release_registered_pages()
28 kfree(shm->pages); in release_registered_pages()
34 if (shm->flags & TEE_SHM_POOL) { in tee_shm_release()
37 if (shm->flags & TEE_SHM_DMA_BUF) in tee_shm_release()
[all …]
Dtee_shm_pool.c1 // SPDX-License-Identifier: GPL-2.0-only
6 #include <linux/dma-buf.h>
16 struct gen_pool *genpool = poolm->private_data; in pool_op_gen_alloc()
17 size_t s = roundup(size, 1 << genpool->min_alloc_order); in pool_op_gen_alloc()
21 return -ENOMEM; in pool_op_gen_alloc()
24 shm->kaddr = (void *)va; in pool_op_gen_alloc()
25 shm->paddr = gen_pool_virt_to_phys(genpool, va); in pool_op_gen_alloc()
26 shm->size = s; in pool_op_gen_alloc()
33 gen_pool_free(poolm->private_data, (unsigned long)shm->kaddr, in pool_op_gen_free()
34 shm->size); in pool_op_gen_free()
[all …]
/kernel/linux/linux-6.6/Documentation/devicetree/bindings/reserved-memory/
Dxen,shared-memory.txt1 * Xen hypervisor reserved-memory binding
3 Expose one or more memory regions as reserved-memory to the guest
5 to be a shared memory area across multiple virtual machines for
8 For each of these pre-shared memory regions, a range is exposed under
9 the /reserved-memory node as a child node. Each range sub-node is named
10 xen-shmem@<address> and has the following properties:
12 - compatible:
13 compatible = "xen,shared-memory-v1"
15 - reg:
16 the base guest physical address and size of the shared memory region
[all …]
Dshared-dma-pool.yaml1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/reserved-memory/shared-dma-pool.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: /reserved-memory DMA pool
10 - devicetree-spec@vger.kernel.org
13 - $ref: reserved-memory.yaml
18 - const: shared-dma-pool
20 This indicates a region of memory meant to be used as a shared
25 - const: restricted-dma-pool
[all …]
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/reserved-memory/
Dxen,shared-memory.txt1 * Xen hypervisor reserved-memory binding
3 Expose one or more memory regions as reserved-memory to the guest
5 to be a shared memory area across multiple virtual machines for
8 For each of these pre-shared memory regions, a range is exposed under
9 the /reserved-memory node as a child node. Each range sub-node is named
10 xen-shmem@<address> and has the following properties:
12 - compatible:
13 compatible = "xen,shared-memory-v1"
15 - reg:
16 the base guest physical address and size of the shared memory region
[all …]
/kernel/linux/linux-6.6/drivers/soc/qcom/
DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
15 the low-power state for resources related to the remoteproc
24 Command DB queries shared memory by key string for shared system
25 resources. Platform drivers that require to set state of a shared
26 resource on a RPM-hardened platform must use this database to get
27 SoC specific identifier and information for the shared resources.
43 be called qcom-cpr
82 tristate "Qualcomm On Chip Memory (OCMEM) driver"
86 The On Chip Memory (OCMEM) allocator allows various clients to
87 allocate memory from OCMEM based on performance, latency and power
[all …]
/kernel/linux/linux-6.6/drivers/tee/optee/
Doptee_smc.h1 /* SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) */
3 * Copyright (c) 2015-2021, Linaro Limited
8 #include <linux/arm-smccc.h>
28 * Normal cached memory (write-back), shareable for SMP systems and not
36 * 32-bit registers.
44 * 384fb3e0-e7f8-11e3-af63-0002a5d5c51b.
75 * Used by non-secure world to figure out which Trusted OS is installed.
78 * Returns UUID in a0-4 in the same way as OPTEE_SMC_CALLS_UID
88 * Used by non-secure world to figure out which version of the Trusted OS
92 * Returns revision in a0-1 in the same way as OPTEE_SMC_CALLS_REVISION
[all …]
Doptee_ffa.h1 /* SPDX-License-Identifier: BSD-2-Clause */
3 * Copyright (c) 2019-2021, Linaro Limited
7 * This file is exported by OP-TEE and is kept in sync between secure world
8 * and normal world drivers. We're using ARM FF-A 1.0 specification.
23 * defined in FF-A specification:
27 * w3-w7: Implementation defined, free to be used below
38 * Returns the API version implemented, currently follows the FF-A version.
41 * w4-w7: Not used (MBZ)
46 * w5-w7: Not used (MBZ)
51 * Returns the revision of OP-TEE.
[all …]
/kernel/linux/linux-6.6/arch/arm64/boot/dts/ti/
Dk3-j721e-som-p0.dtsi1 // SPDX-License-Identifier: GPL-2.0
3 * Copyright (C) 2019-2020 Texas Instruments Incorporated - https://www.ti.com/
8 /dts-v1/;
10 #include "k3-j721e.dtsi"
13 memory@80000000 {
14 device_type = "memory";
20 reserved_memory: reserved-memory {
21 #address-cells = <2>;
22 #size-cells = <2>;
28 no-map;
[all …]
Dk3-j784s4-evm.dts1 // SPDX-License-Identifier: GPL-2.0
3 * Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
8 /dts-v1/;
10 #include <dt-bindings/net/ti-dp83867.h>
11 #include <dt-bindings/gpio/gpio.h>
12 #include "k3-j784s4.dtsi"
15 compatible = "ti,j784s4-evm", "ti,j784s4";
19 stdout-path = "serial2:115200n8";
32 memory@80000000 {
33 device_type = "memory";
[all …]
/kernel/linux/common_modules/tzdriver/core/
Dffa_abi.h27 * defined in FF-A specification:
31 * w3-w7: Implementation defined, free to be used below
42 * Returns the API version implemented, currently follows the FF-A version.
45 * w4-w7: Not used (MBZ)
50 * w5-w7: Not used (MBZ)
57 * Used by non-secure world to figure out which version of the Trusted OS
63 * w4-w7: Unused (MBZ)
80 * w4-w7: Not used (MBZ)
88 * w5-w7: Not used (MBZ)
93 * Unregister shared memory
[all …]
/kernel/linux/linux-6.6/Documentation/virt/hyperv/
Doverview.rst1 .. SPDX-License-Identifier: GPL-2.0
6 enlightened guest on Microsoft's Hyper-V hypervisor. Hyper-V
7 consists primarily of a bare-metal hypervisor plus a virtual machine
10 partitions. In this documentation, references to Hyper-V usually
15 Hyper-V runs on x86/x64 and arm64 architectures, and Linux guests
16 are supported on both. The functionality and behavior of Hyper-V is
19 Linux Guest Communication with Hyper-V
20 --------------------------------------
21 Linux guests communicate with Hyper-V in four different ways:
24 some guest actions trap to Hyper-V. Hyper-V emulates the action and
[all …]

12345678910>>...44