Home
last modified time | relevance | path

Searched full:sart (Results 1 – 9 of 9) sorted by relevance

/Linux-v6.1/drivers/soc/apple/
Dsart.c3 * Apple SART device driver
6 * Apple SART is a simple address filter for some DMA transactions.
7 * Regions of physical memory must be added to the SART's allow
11 * a single device are subject to SART filtering.
14 #include <linux/soc/apple/sart.h>
52 void (*get_entry)(struct apple_sart *sart, int index, u8 *flags,
54 void (*set_entry)(struct apple_sart *sart, int index, u8 flags,
71 static void sart2_get_entry(struct apple_sart *sart, int index, u8 *flags, in sart2_get_entry() argument
74 u32 cfg = readl(sart->regs + APPLE_SART2_CONFIG(index)); in sart2_get_entry()
75 phys_addr_t paddr_ = readl(sart->regs + APPLE_SART2_PADDR(index)); in sart2_get_entry()
[all …]
DMakefile7 obj-$(CONFIG_APPLE_SART) += apple-sart.o
8 apple-sart-y = sart.o
DKconfig34 tristate "Apple SART DMA address filter"
38 Apple SART is a simple DMA address filter used on Apple SoCs such
/Linux-v6.1/include/linux/soc/apple/
Dsart.h3 * Apple SART device driver
6 * Apple SART is a simple address filter for DMA transactions.
7 * Regions of physical memory must be added to the SART's allow
22 * Get a reference to the SART attached to dev.
24 * Looks for the phandle reference in apple,sart and returns a pointer
33 * @sart: SART reference
37 int apple_sart_add_allowed_region(struct apple_sart *sart, phys_addr_t paddr,
46 * @sart: SART reference
50 int apple_sart_remove_allowed_region(struct apple_sart *sart, phys_addr_t paddr,
/Linux-v6.1/Documentation/devicetree/bindings/iommu/
Dapple,sart.yaml4 $id: http://devicetree.org/schemas/iommu/apple,sart.yaml#
7 title: Apple SART DMA address filter
13 Apple SART is a simple address filter for DMA transactions. Regions of
14 physical memory must be added to the SART's allow list before any
17 transactions of a single device are subject to SART filtering.
32 - apple,t6000-sart
33 - apple,t8103-sart
50 compatible = "apple,t8103-sart";
/Linux-v6.1/Documentation/devicetree/bindings/nvme/
Dapple,nvme-ans.yaml57 apple,sart:
60 Reference to the SART address filter.
62 The SART address filter is documented in iommu/apple,sart.yaml.
91 - apple,sart
106 apple,sart = <&sart>;
/Linux-v6.1/drivers/nvme/host/
Dapple.c31 #include <linux/soc/apple/sart.h>
93 * buffers cannot be represented as PRPs and must instead be allowed using SART.
179 struct apple_sart *sart; member
248 ret = apple_sart_add_allowed_region(anv->sart, bfr->iova, bfr->size); in apple_nvme_sart_dma_setup()
263 apple_sart_remove_allowed_region(anv->sart, bfr->iova, bfr->size); in apple_nvme_sart_dma_destroy()
1426 anv->sart = devm_apple_sart_get(dev); in apple_nvme_probe()
1427 if (IS_ERR(anv->sart)) { in apple_nvme_probe()
1428 ret = dev_err_probe(dev, PTR_ERR(anv->sart), in apple_nvme_probe()
1429 "Failed to initialize SART"); in apple_nvme_probe()
/Linux-v6.1/arch/arm64/boot/dts/apple/
Dt8103.dtsi395 sart: iommu@27bc50000 { label
396 compatible = "apple,t8103-sart";
409 apple,sart = <&sart>;
/Linux-v6.1/
DMAINTAINERS1904 F: Documentation/devicetree/bindings/iommu/apple,sart.yaml