| /linux/arch/mips/cavium-octeon/ |
| H A D | dma-octeon.c | 31 dma_addr_t (*phys_to_dma)(struct device *dev, phys_addr_t paddr); 35 static dma_addr_t octeon_hole_phys_to_dma(phys_addr_t paddr) in octeon_hole_phys_to_dma() argument 37 …if (paddr >= CVMX_PCIE_BAR1_PHYS_BASE && paddr < (CVMX_PCIE_BAR1_PHYS_BASE + CVMX_PCIE_BAR1_PHYS_S… in octeon_hole_phys_to_dma() 38 return paddr - CVMX_PCIE_BAR1_PHYS_BASE + CVMX_PCIE_BAR1_RC_BASE; in octeon_hole_phys_to_dma() 40 return paddr; in octeon_hole_phys_to_dma() 51 static dma_addr_t octeon_gen1_phys_to_dma(struct device *dev, phys_addr_t paddr) in octeon_gen1_phys_to_dma() argument 53 if (paddr >= 0x410000000ull && paddr < 0x420000000ull) in octeon_gen1_phys_to_dma() 54 paddr -= 0x400000000ull; in octeon_gen1_phys_to_dma() 55 return octeon_hole_phys_to_dma(paddr); in octeon_gen1_phys_to_dma() 73 static dma_addr_t octeon_gen2_phys_to_dma(struct device *dev, phys_addr_t paddr) in octeon_gen2_phys_to_dma() argument [all …]
|
| /linux/arch/m68k/mm/ |
| H A D | memory.c | 24 static inline void clear040(unsigned long paddr) in clear040() argument 31 : : "a" (paddr)); in clear040() 35 static inline void cleari040(unsigned long paddr) in cleari040() argument 42 : : "a" (paddr)); in cleari040() 47 static inline void push040(unsigned long paddr) in push040() argument 54 : : "a" (paddr)); in push040() 59 static inline void pushcl040(unsigned long paddr) in pushcl040() argument 64 push040(paddr); in pushcl040() 66 clear040(paddr); in pushcl040() 97 void cache_clear (unsigned long paddr, int len) in cache_clear() argument [all …]
|
| /linux/arch/m68k/kernel/ |
| H A D | sys_m68k.c | 70 unsigned long paddr, i; in cache_flush_040() local 103 if ((paddr = virt_to_phys_040(addr))) { in cache_flush_040() 104 paddr += addr & ~(PAGE_MASK | 15); in cache_flush_040() 116 if ((paddr = virt_to_phys_040(addr))) in cache_flush_040() 125 i = (PAGE_SIZE - (paddr & ~PAGE_MASK)) >> 4; in cache_flush_040() 135 : : "a" (paddr)); in cache_flush_040() 142 : : "a" (paddr)); in cache_flush_040() 150 : : "a" (paddr)); in cache_flush_040() 165 if ((paddr = virt_to_phys_040(addr))) in cache_flush_040() 174 paddr += 16; in cache_flush_040() [all …]
|
| /linux/arch/riscv/mm/ |
| H A D | dma-noncoherent.c | 18 static inline void arch_dma_cache_wback(phys_addr_t paddr, size_t size) in arch_dma_cache_wback() argument 20 void *vaddr = phys_to_virt(paddr); in arch_dma_cache_wback() 24 noncoherent_cache_ops.wback(paddr, size); in arch_dma_cache_wback() 31 static inline void arch_dma_cache_inv(phys_addr_t paddr, size_t size) in arch_dma_cache_inv() argument 33 void *vaddr = phys_to_virt(paddr); in arch_dma_cache_inv() 37 noncoherent_cache_ops.inv(paddr, size); in arch_dma_cache_inv() 45 static inline void arch_dma_cache_wback_inv(phys_addr_t paddr, size_t size) in arch_dma_cache_wback_inv() argument 47 void *vaddr = phys_to_virt(paddr); in arch_dma_cache_wback_inv() 51 noncoherent_cache_ops.wback_inv(paddr, size); in arch_dma_cache_wback_inv() 69 void arch_sync_dma_for_device(phys_addr_t paddr, size_t size, in arch_sync_dma_for_device() argument [all …]
|
| /linux/arch/arc/mm/ |
| H A D | cache.c | 35 void (*_cache_line_loop_ic_fn)(phys_addr_t paddr, unsigned long vaddr, 188 void __cache_line_loop_v3(phys_addr_t paddr, unsigned long vaddr, in __cache_line_loop_v3() argument 209 sz += paddr & ~CACHE_LINE_MASK; in __cache_line_loop_v3() 210 paddr &= CACHE_LINE_MASK; in __cache_line_loop_v3() 220 write_aux_reg(aux_tag, paddr); in __cache_line_loop_v3() 230 write_aux_reg(ARC_REG_IC_PTAG_HI, (u64)paddr >> 32); in __cache_line_loop_v3() 234 write_aux_reg(aux_tag, paddr); in __cache_line_loop_v3() 235 paddr += L1_CACHE_BYTES; in __cache_line_loop_v3() 248 void __cache_line_loop_v4(phys_addr_t paddr, unsigned long vaddr, in __cache_line_loop_v4() argument 268 sz += paddr & ~CACHE_LINE_MASK; in __cache_line_loop_v4() [all …]
|
| H A D | ioremap.c | 13 static inline bool arc_uncached_addr_space(phys_addr_t paddr) in arc_uncached_addr_space() argument 16 if (paddr >= ARC_UNCACHED_ADDR_SPACE) in arc_uncached_addr_space() 18 } else if (paddr >= perip_base && paddr <= perip_end) { in arc_uncached_addr_space() 25 void __iomem *ioremap(phys_addr_t paddr, unsigned long size) in ioremap() argument 31 if (arc_uncached_addr_space(paddr)) in ioremap() 32 return (void __iomem *)(u32)paddr; in ioremap() 34 return ioremap_prot(paddr, size, in ioremap() 46 void __iomem *ioremap_prot(phys_addr_t paddr, size_t size, in ioremap_prot() argument 50 return generic_ioremap_prot(paddr, size, pgprot_noncached(prot)); in ioremap_prot()
|
| H A D | dma.c | 51 void arch_sync_dma_for_device(phys_addr_t paddr, size_t size, in arch_sync_dma_for_device() argument 56 dma_cache_wback(paddr, size); in arch_sync_dma_for_device() 60 dma_cache_inv(paddr, size); in arch_sync_dma_for_device() 64 dma_cache_wback_inv(paddr, size); in arch_sync_dma_for_device() 72 void arch_sync_dma_for_cpu(phys_addr_t paddr, size_t size, in arch_sync_dma_for_cpu() argument 82 dma_cache_inv(paddr, size); in arch_sync_dma_for_cpu()
|
| /linux/arch/arm/mm/ |
| H A D | dma-mapping-nommu.c | 16 void arch_sync_dma_for_device(phys_addr_t paddr, size_t size, in arch_sync_dma_for_device() argument 19 dmac_map_area(__va(paddr), size, dir); in arch_sync_dma_for_device() 22 outer_inv_range(paddr, paddr + size); in arch_sync_dma_for_device() 24 outer_clean_range(paddr, paddr + size); in arch_sync_dma_for_device() 27 void arch_sync_dma_for_cpu(phys_addr_t paddr, size_t size, in arch_sync_dma_for_cpu() argument 31 outer_inv_range(paddr, paddr + size); in arch_sync_dma_for_cpu() 32 dmac_unmap_area(__va(paddr), size, dir); in arch_sync_dma_for_cpu()
|
| /linux/arch/microblaze/kernel/ |
| H A D | dma.c | 17 static void __dma_sync(phys_addr_t paddr, size_t size, in __dma_sync() argument 23 flush_dcache_range(paddr, paddr + size); in __dma_sync() 26 invalidate_dcache_range(paddr, paddr + size); in __dma_sync() 33 void arch_sync_dma_for_device(phys_addr_t paddr, size_t size, in arch_sync_dma_for_device() argument 36 __dma_sync(paddr, size, dir); in arch_sync_dma_for_device() 39 void arch_sync_dma_for_cpu(phys_addr_t paddr, size_t size, in arch_sync_dma_for_cpu() argument 42 __dma_sync(paddr, size, dir); in arch_sync_dma_for_cpu()
|
| /linux/include/linux/ |
| H A D | dma-direct.h | 27 phys_addr_t paddr) in translate_phys_to_dma() argument 32 u64 offset = paddr - m->cpu_start; in translate_phys_to_dma() 34 if (paddr >= m->cpu_start && offset < m->size) in translate_phys_to_dma() 81 static inline dma_addr_t __phys_to_dma(struct device *dev, phys_addr_t paddr) in __phys_to_dma() argument 84 return translate_phys_to_dma(dev, paddr); in __phys_to_dma() 85 return paddr; in __phys_to_dma() 89 phys_addr_t paddr) in phys_to_dma_unencrypted() argument 91 return dma_addr_unencrypted(__phys_to_dma(dev, paddr)); in phys_to_dma_unencrypted() 99 static inline dma_addr_t phys_to_dma(struct device *dev, phys_addr_t paddr) in phys_to_dma() argument 101 return dma_addr_encrypted(__phys_to_dma(dev, paddr)); in phys_to_dma() [all …]
|
| /linux/arch/x86/boot/startup/ |
| H A D | sev-startup.c | 48 early_set_pages_state(unsigned long vaddr, unsigned long paddr, in early_set_pages_state() argument 55 paddr = paddr & PAGE_MASK; in early_set_pages_state() 56 paddr_end = paddr + (npages << PAGE_SHIFT); in early_set_pages_state() 58 while (paddr < paddr_end) { in early_set_pages_state() 59 __page_state_change(vaddr, paddr, desc); in early_set_pages_state() 62 paddr += PAGE_SIZE; in early_set_pages_state() 66 void __init early_snp_set_memory_private(unsigned long vaddr, unsigned long paddr, in early_snp_set_memory_private() argument 88 early_set_pages_state(vaddr, paddr, npages, &d); in early_snp_set_memory_private() 91 void __init early_snp_set_memory_shared(unsigned long vaddr, unsigned long paddr, in early_snp_set_memory_shared() argument 110 early_set_pages_state(vaddr, paddr, npages, &d); in early_snp_set_memory_shared()
|
| /linux/arch/x86/mm/pat/ |
| H A D | memtype.c | 654 static enum page_cache_mode lookup_memtype(u64 paddr) in lookup_memtype() argument 659 if (x86_platform.is_untracked_pat_range(paddr, paddr + PAGE_SIZE)) in lookup_memtype() 662 if (pat_pagerange_is_ram(paddr, paddr + PAGE_SIZE)) { in lookup_memtype() 665 page = pfn_to_page(paddr >> PAGE_SHIFT); in lookup_memtype() 671 entry = memtype_lookup(paddr); in lookup_memtype() 838 static int reserve_pfn_range(u64 paddr, unsigned long size, pgprot_t *vma_prot) in reserve_pfn_range() argument 845 is_ram = pat_pagerange_is_ram(paddr, paddr + size); in reserve_pfn_range() 856 pcm = lookup_memtype(paddr); in reserve_pfn_range() 861 (unsigned long long)paddr, in reserve_pfn_range() 862 (unsigned long long)(paddr + size - 1), in reserve_pfn_range() [all …]
|
| /linux/drivers/soc/apple/ |
| H A D | sart.c | 66 phys_addr_t *paddr, size_t *size); 87 phys_addr_t *paddr, size_t *size) in sart0_get_entry() argument 95 *paddr = paddr_ << APPLE_SART0_PADDR_SHIFT; in sart0_get_entry() 120 phys_addr_t *paddr, size_t *size) in sart2_get_entry() argument 128 *paddr = paddr_ << APPLE_SART2_PADDR_SHIFT; in sart2_get_entry() 153 phys_addr_t *paddr, size_t *size) in sart3_get_entry() argument 160 *paddr = paddr_ << APPLE_SART3_PADDR_SHIFT; in sart3_get_entry() 200 phys_addr_t paddr; in apple_sart_probe() local 202 sart->ops->get_entry(sart, i, &flags, &paddr, &size); in apple_sart_probe() 209 i, flags, &paddr, size); in apple_sart_probe() [all …]
|
| /linux/drivers/net/ethernet/huawei/hinic3/ |
| H A D | hinic3_common.c | 14 dma_addr_t paddr, align_paddr; in hinic3_dma_zalloc_coherent_align() local 18 vaddr = dma_alloc_coherent(dev, real_size, &paddr, flag); in hinic3_dma_zalloc_coherent_align() 22 align_paddr = ALIGN(paddr, align); in hinic3_dma_zalloc_coherent_align() 23 if (align_paddr == paddr) { in hinic3_dma_zalloc_coherent_align() 28 dma_free_coherent(dev, real_size, vaddr, paddr); in hinic3_dma_zalloc_coherent_align() 32 vaddr = dma_alloc_coherent(dev, real_size, &paddr, flag); in hinic3_dma_zalloc_coherent_align() 36 align_paddr = ALIGN(paddr, align); in hinic3_dma_zalloc_coherent_align() 37 align_vaddr = vaddr + (align_paddr - paddr); in hinic3_dma_zalloc_coherent_align() 42 mem_align->ori_paddr = paddr; in hinic3_dma_zalloc_coherent_align()
|
| /linux/arch/xtensa/kernel/ |
| H A D | pci-dma.c | 24 static void do_cache_op(phys_addr_t paddr, size_t size, in do_cache_op() argument 27 unsigned long off = paddr & (PAGE_SIZE - 1); in do_cache_op() 28 unsigned long pfn = PFN_DOWN(paddr); in do_cache_op() 32 fn((unsigned long)phys_to_virt(paddr), size); in do_cache_op() 46 void arch_sync_dma_for_cpu(phys_addr_t paddr, size_t size, in arch_sync_dma_for_cpu() argument 52 do_cache_op(paddr, size, __invalidate_dcache_range); in arch_sync_dma_for_cpu() 64 void arch_sync_dma_for_device(phys_addr_t paddr, size_t size, in arch_sync_dma_for_device() argument 71 do_cache_op(paddr, size, __flush_dcache_range); in arch_sync_dma_for_device()
|
| /linux/drivers/bus/ |
| H A D | uniphier-system-bus.c | 39 int bank, u32 addr, u64 paddr, u32 size) in uniphier_system_bus_add_bank() argument 45 bank, addr, paddr, size); in uniphier_system_bus_add_bank() 58 if (paddr > U32_MAX) { in uniphier_system_bus_add_bank() 59 dev_err(priv->dev, "base address %llx is too high\n", paddr); in uniphier_system_bus_add_bank() 63 end = paddr + size; in uniphier_system_bus_add_bank() 65 if (addr > paddr) { in uniphier_system_bus_add_bank() 68 addr, paddr); in uniphier_system_bus_add_bank() 71 paddr -= addr; in uniphier_system_bus_add_bank() 73 paddr = round_down(paddr, 0x00020000); in uniphier_system_bus_add_bank() 80 mask = paddr ^ (end - 1); in uniphier_system_bus_add_bank() [all …]
|
| /linux/arch/x86/mm/ |
| H A D | mem_encrypt_amd.c | 58 unsigned long paddr, bool decrypt) in snp_memcpy() argument 67 early_snp_set_memory_shared((unsigned long)__va(paddr), paddr, npages); in snp_memcpy() 72 early_snp_set_memory_private((unsigned long)__va(paddr), paddr, npages); in snp_memcpy() 91 static void __init __sme_early_enc_dec(resource_size_t paddr, in __sme_early_enc_dec() argument 113 src = enc ? early_memremap_decrypted_wp(paddr, len) : in __sme_early_enc_dec() 114 early_memremap_encrypted_wp(paddr, len); in __sme_early_enc_dec() 116 dst = enc ? early_memremap_encrypted(paddr, len) : in __sme_early_enc_dec() 117 early_memremap_decrypted(paddr, len); in __sme_early_enc_dec() 131 snp_memcpy(sme_early_buffer, src, len, paddr, enc); in __sme_early_enc_dec() 132 snp_memcpy(dst, sme_early_buffer, len, paddr, !enc); in __sme_early_enc_dec() [all …]
|
| H A D | ioremap.c | 605 u64 paddr; in memremap_is_efi_data() local 611 paddr = boot_params.efi_info.efi_memmap_hi; in memremap_is_efi_data() 612 paddr <<= 32; in memremap_is_efi_data() 613 paddr |= boot_params.efi_info.efi_memmap; in memremap_is_efi_data() 614 if (phys_addr == paddr) in memremap_is_efi_data() 617 paddr = boot_params.efi_info.efi_systab_hi; in memremap_is_efi_data() 618 paddr <<= 32; in memremap_is_efi_data() 619 paddr |= boot_params.efi_info.efi_systab; in memremap_is_efi_data() 620 if (phys_addr == paddr) in memremap_is_efi_data() 646 u64 paddr, paddr_next; in __memremap_is_setup_data() local [all …]
|
| /linux/drivers/cache/ |
| H A D | starfive_starlink_cache.c | 47 static void starlink_cache_dma_cache_wback(phys_addr_t paddr, unsigned long size) in starlink_cache_dma_cache_wback() argument 49 writeq(FIELD_PREP(STARLINK_CACHE_ADDRESS_RANGE_MASK, paddr), in starlink_cache_dma_cache_wback() 51 writeq(FIELD_PREP(STARLINK_CACHE_ADDRESS_RANGE_MASK, paddr + size), in starlink_cache_dma_cache_wback() 62 static void starlink_cache_dma_cache_invalidate(phys_addr_t paddr, unsigned long size) in starlink_cache_dma_cache_invalidate() argument 64 writeq(FIELD_PREP(STARLINK_CACHE_ADDRESS_RANGE_MASK, paddr), in starlink_cache_dma_cache_invalidate() 66 writeq(FIELD_PREP(STARLINK_CACHE_ADDRESS_RANGE_MASK, paddr + size), in starlink_cache_dma_cache_invalidate() 77 static void starlink_cache_dma_cache_wback_inv(phys_addr_t paddr, unsigned long size) in starlink_cache_dma_cache_wback_inv() argument 79 writeq(FIELD_PREP(STARLINK_CACHE_ADDRESS_RANGE_MASK, paddr), in starlink_cache_dma_cache_wback_inv() 81 writeq(FIELD_PREP(STARLINK_CACHE_ADDRESS_RANGE_MASK, paddr + size), in starlink_cache_dma_cache_wback_inv()
|
| /linux/arch/csky/mm/ |
| H A D | dma-mapping.c | 14 static inline void cache_op(phys_addr_t paddr, size_t size, in cache_op() argument 17 struct page *page = phys_to_page(paddr); in cache_op() 19 unsigned long offset = offset_in_page(paddr); in cache_op() 58 void arch_sync_dma_for_device(phys_addr_t paddr, size_t size, in arch_sync_dma_for_device() argument 63 cache_op(paddr, size, dma_wb_range); in arch_sync_dma_for_device() 67 cache_op(paddr, size, dma_wbinv_range); in arch_sync_dma_for_device() 74 void arch_sync_dma_for_cpu(phys_addr_t paddr, size_t size, in arch_sync_dma_for_cpu() argument 82 cache_op(paddr, size, dma_inv_range); in arch_sync_dma_for_cpu()
|
| /linux/arch/openrisc/mm/ |
| H A D | cache.c | 31 static __always_inline void cache_loop(unsigned long paddr, unsigned long end, in cache_loop() argument 37 while (paddr < end) { in cache_loop() 38 mtspr(reg, paddr); in cache_loop() 39 paddr += L1_CACHE_BYTES; in cache_loop() 46 unsigned long paddr = page_to_pfn(page) << PAGE_SHIFT; in cache_loop_page() local 47 unsigned long end = paddr + PAGE_SIZE; in cache_loop_page() 49 paddr &= ~(L1_CACHE_BYTES - 1); in cache_loop_page() 51 cache_loop(paddr, end, reg, cache_type); in cache_loop_page()
|
| /linux/drivers/xen/ |
| H A D | swiotlb-xen.c | 47 static inline phys_addr_t xen_phys_to_bus(struct device *dev, phys_addr_t paddr) in xen_phys_to_bus() argument 49 unsigned long bfn = pfn_to_bfn(XEN_PFN_DOWN(paddr)); in xen_phys_to_bus() 52 baddr |= paddr & ~XEN_PAGE_MASK; in xen_phys_to_bus() 56 static inline dma_addr_t xen_phys_to_dma(struct device *dev, phys_addr_t paddr) in xen_phys_to_dma() argument 58 return phys_to_dma(dev, xen_phys_to_bus(dev, paddr)); in xen_phys_to_dma() 65 phys_addr_t paddr = (xen_pfn << XEN_PAGE_SHIFT) | in xen_bus_to_phys() local 68 return paddr; in xen_bus_to_phys() 104 phys_addr_t paddr = (phys_addr_t)xen_pfn << XEN_PAGE_SHIFT; in xen_swiotlb_find_pool() local 110 if (pfn_valid(PFN_DOWN(paddr))) in xen_swiotlb_find_pool() 111 return swiotlb_find_pool(dev, paddr); in xen_swiotlb_find_pool() [all …]
|
| /linux/drivers/net/phy/ |
| H A D | bcm87xx.c | 36 const __be32 *paddr; in bcm87xx_of_reg_init() local 43 paddr = of_get_property(phydev->mdio.dev.of_node, in bcm87xx_of_reg_init() 45 if (!paddr) in bcm87xx_of_reg_init() 48 paddr_end = paddr + (len /= sizeof(*paddr)); in bcm87xx_of_reg_init() 52 while (paddr + 3 < paddr_end) { in bcm87xx_of_reg_init() 53 u16 devid = be32_to_cpup(paddr++); in bcm87xx_of_reg_init() 54 u16 reg = be32_to_cpup(paddr++); in bcm87xx_of_reg_init() 55 u16 mask = be32_to_cpup(paddr++); in bcm87xx_of_reg_init() 56 u16 val_bits = be32_to_cpup(paddr++); in bcm87xx_of_reg_init()
|
| /linux/drivers/media/platform/st/sti/hva/ |
| H A D | hva-mem.c | 16 dma_addr_t paddr; in hva_mem_alloc() local 25 base = dma_alloc_attrs(dev, size, &paddr, GFP_KERNEL, in hva_mem_alloc() 36 b->paddr = paddr; in hva_mem_alloc() 42 ctx->name, size, b->vaddr, &b->paddr, b->name); in hva_mem_alloc() 56 ctx->name, buf->size, buf->vaddr, &buf->paddr, buf->name); in hva_mem_free() 58 dma_free_attrs(dev, buf->size, buf->vaddr, buf->paddr, in hva_mem_free()
|
| /linux/arch/x86/include/asm/uv/ |
| H A D | uv_hub.h | 420 static inline unsigned long uv_soc_phys_ram_to_nasid(unsigned long paddr) in uv_soc_phys_ram_to_nasid() argument 422 return uv_gam_range(paddr)->nasid; in uv_soc_phys_ram_to_nasid() 433 static inline unsigned long uv_soc_phys_ram_to_gpa(unsigned long paddr) in uv_soc_phys_ram_to_gpa() argument 437 if (paddr < uv_hub_info->lowmem_remap_top) in uv_soc_phys_ram_to_gpa() 438 paddr |= uv_hub_info->lowmem_remap_base; in uv_soc_phys_ram_to_gpa() 441 paddr |= uv_hub_info->gnode_upper; in uv_soc_phys_ram_to_gpa() 442 paddr = ((paddr << uv_hub_info->m_shift) in uv_soc_phys_ram_to_gpa() 444 ((paddr >> uv_hub_info->m_val) in uv_soc_phys_ram_to_gpa() 447 paddr |= uv_soc_phys_ram_to_nasid(paddr) in uv_soc_phys_ram_to_gpa() 450 return paddr; in uv_soc_phys_ram_to_gpa() [all …]
|