On Tue, Dec 5, 2023 at 2:26 PM Arnd Bergmann <arnd@xxxxxxxx> wrote: > On Tue, Dec 5, 2023, at 10:45, Yoshinori Sato wrote: > > + if (of_property_read_u32_array(pdev->dev.of_node, > > + "renesas,memory", memory, 2) < 0) { > > + /* > > + * If no memory range is specified, > > + * the entire main memory will be targeted for DMA. > > + */ > > + memory[0] = memory_start; > > + memory[1] = memory_end - memory_start; > > + } > > There is a generic "dma-ranges" proerty for describing > which memory is visible by a bus. It's really a headache to use, so I put a bit of documentation here: https://elinux.org/Device_Tree_Usage#PCI_DMA_Address_Translation Yoshinoro, you can look at these bindings and drivers that use dma-ranges for help: Documentation/devicetree/bindings/pci/intel,ixp4xx-pci.yaml drivers/pci/controller/pci-ixp4xx.c Documentation/devicetree/bindings/pci/faraday,ftpci100.yaml drivers/pci/controller/pci-ftpci100.c Yours, Linus Walleij