/linux/drivers/vfio/pci/ |
H A D | trace.h | 18 TP_PROTO(struct pci_dev *pdev, unsigned long hpa, unsigned long ua, 20 TP_ARGS(pdev, hpa, ua, ret), 24 __field(unsigned long, hpa) 31 __entry->hpa = hpa; 36 TP_printk("%s: %lx -> %lx ret=%d", __entry->name, __entry->hpa, 41 TP_PROTO(struct pci_dev *pdev, unsigned long hpa, unsigned long ua, 43 TP_ARGS(pdev, hpa, ua, size, ret), 47 __field(unsigned long, hpa) 55 __entry->hpa = hpa; 61 TP_printk("%s: %lx -> %lx size=%lx ret=%d", __entry->name, __entry->hpa, [all …]
|
/linux/arch/parisc/kernel/ |
H A D | drivers.c | 228 unsigned long hpa; member 238 if (pdev->hpa.start == d->hpa) { in find_device() 246 static struct parisc_device *find_device_by_addr(unsigned long hpa) in find_device_by_addr() argument 249 .hpa = hpa, in find_device_by_addr() 495 alloc_pa_dev(unsigned long hpa, struct hardware_path *mod_path) in alloc_pa_dev() argument 504 if (find_device_by_addr(hpa) != NULL) in alloc_pa_dev() 507 status = pdc_iodc_read(&bytecnt, hpa, 0, &iodc_data, 32); in alloc_pa_dev() 524 dev->hpa.start = hpa; in alloc_pa_dev() 529 if (hpa == 0xf4000000 || hpa == 0xf8000000) { in alloc_pa_dev() 530 dev->hpa.end = hpa + 0x03ffffff; in alloc_pa_dev() [all …]
|
H A D | firmware.c | 425 * @hpa: The HPA of the module for the iodc read. 430 * This PDC call reads from the IODC of the module specified by the hpa 433 int pdc_iodc_read(unsigned long *actcnt, unsigned long hpa, unsigned int index, in pdc_iodc_read() argument 440 retval = mem_pdc_call(PDC_IODC, PDC_IODC_READ, __pa(pdc_result), hpa, in pdc_iodc_read() 779 * @hpa: The network device HPA. 783 int pdc_lan_station_id(char *lan_addr, unsigned long hpa) in pdc_lan_station_id() argument 790 __pa(pdc_result), hpa); in pdc_lan_station_id() 985 * @hpa: The HPA for the device. 991 int pdc_pci_irt_size(unsigned long *num_entries, unsigned long hpa) in pdc_pci_irt_size() argument 998 __pa(pdc_result), hpa); in pdc_pci_irt_size() [all …]
|
H A D | processor.c | 104 txn_addr = dev->hpa.start; /* for legacy PDC */ in processor_probe() 131 status = pdc_pat_cpu_get_number(&cpu_info, dev->hpa.start); in processor_probe() 135 "0x%lx with hpa %pa\n", in processor_probe() 137 &dev->hpa.start); in processor_probe() 150 &dev->hpa.start, cpu_info.cpu_num, NR_CPUS); in processor_probe() 169 p->hpa = dev->hpa.start; /* save CPU hpa */ in processor_probe() 394 if (0 == cpuinfo->hpa) in show_cpuinfo()
|
/linux/drivers/parisc/ |
H A D | hppb.c | 26 unsigned long hpa; member 32 .hpa = 0, 56 if(card->hpa) { in hppb_probe() 65 card->hpa = dev->hpa.start; in hppb_probe() 69 card->mmio_region.start = gsc_readl(dev->hpa.start + IO_IO_LOW); in hppb_probe() 70 card->mmio_region.end = gsc_readl(dev->hpa.start + IO_IO_HIGH) - 1; in hppb_probe() 75 &dev->hpa.start, in hppb_probe()
|
H A D | gsc.c | 76 irr = gsc_readl(gsc_asic->hpa + OFFSET_IRR); in gsc_asic_intr() 114 imr = gsc_readl(irq_dev->hpa + OFFSET_IMR); in gsc_asic_mask_irq() 116 gsc_writel(imr, irq_dev->hpa + OFFSET_IMR); in gsc_asic_mask_irq() 129 imr = gsc_readl(irq_dev->hpa + OFFSET_IMR); in gsc_asic_unmask_irq() 131 gsc_writel(imr, irq_dev->hpa + OFFSET_IMR); in gsc_asic_unmask_irq() 157 gsc_writel(gsc_dev->eim, gsc_dev->hpa + OFFSET_IAR); in gsc_set_affinity_irq() 245 res = request_mem_region(gsc_asic->hpa, 0x100000, gsc_asic->name); in gsc_common_setup() 253 if (gsc_readl(gsc_asic->hpa + OFFSET_IMR)) in gsc_common_setup() 255 gsc_readl(gsc_asic->hpa + OFFSET_IMR)); in gsc_common_setup()
|
H A D | wax.c | 50 unsigned long base = wax->hpa; in wax_init_irq() 78 wax->hpa = dev->hpa.start; in wax_init_chip() 80 wax->version = 0; /* gsc_readb(wax->hpa+WAX_VER); */ in wax_init_chip() 81 printk(KERN_INFO "%s at 0x%lx found.\n", wax->name, wax->hpa); in wax_init_chip() 104 gsc_writel(wax->eim, wax->hpa + OFFSET_IAR); in wax_init_chip()
|
H A D | lasi.c | 59 unsigned long lasi_base = this_lasi->hpa; in lasi_init_irq() 154 gsc_writel(0x02, lasi->hpa + 0x0000C000); in lasi_power_off() 170 lasi->hpa = dev->hpa.start; in lasi_init_chip() 173 lasi->version = gsc_readl(lasi->hpa + LASI_VER) & 0xf; in lasi_init_chip() 175 lasi->name, lasi->version, lasi->hpa); in lasi_init_chip() 178 lasi_led_init(lasi->hpa); in lasi_init_chip() 201 gsc_writel(lasi->eim, lasi->hpa + OFFSET_IAR); in lasi_init_chip()
|
H A D | iosapic.c | 15 ** HPA Hard Physical Address (aka MMIO address) 158 #define COMPARE_IRTE_ADDR(irte, hpa) ((irte)->dest_iosapic_addr == (hpa)) argument 160 #define COMPARE_IRTE_ADDR(irte, hpa) \ argument 161 ((irte)->dest_iosapic_addr == ((hpa) | 0xffffffff00000000ULL)) 298 /* Should be using the Elroy's HPA, but it's ignored anyway */ in iosapic_load_irt() 316 /* HPA ignored by this call too. */ in iosapic_load_irt() 531 DBG_IRT("iosapic_wr_irt_entry(): irq %d hpa %lx 0x%x 0x%x\n", in iosapic_wr_irt_entry() 705 printk(KERN_WARNING MODULE_NAME ": hpa not registered for %s\n", in iosapic_fixup_irq() 893 void *iosapic_register(unsigned long hpa, void __iomem *vaddr) in iosapic_register() argument 907 if (COMPARE_IRTE_ADDR(irte, hpa)) in iosapic_register() [all …]
|
H A D | asp.c | 74 asp.version = gsc_readb(dev->hpa.start + ASP_VER_OFFSET) & 0xf; in asp_init_chip() 76 asp.hpa = ASP_INTERRUPT_ADDR; in asp_init_chip() 79 asp.name, asp.version, (unsigned long)dev->hpa.start); in asp_init_chip()
|
/linux/arch/s390/kvm/ |
H A D | vsie.c | 669 * Pin the guest page given by gpa and set hpa to the pinned host address. 675 static int pin_guest_page(struct kvm *kvm, gpa_t gpa, hpa_t *hpa) in pin_guest_page() argument 682 *hpa = (hpa_t)page_to_phys(page) + (gpa & ~PAGE_MASK); in pin_guest_page() 687 static void unpin_guest_page(struct kvm *kvm, gpa_t gpa, hpa_t hpa) in unpin_guest_page() argument 689 kvm_release_page_dirty(pfn_to_page(hpa >> PAGE_SHIFT)); in unpin_guest_page() 698 hpa_t hpa; in unpin_blocks() local 700 hpa = (u64) scb_s->scaoh << 32 | scb_s->scaol; in unpin_blocks() 701 if (hpa) { in unpin_blocks() 702 unpin_guest_page(vcpu->kvm, vsie_page->sca_gpa, hpa); in unpin_blocks() 708 hpa = scb_s->itdba; in unpin_blocks() [all …]
|
/linux/drivers/cxl/core/ |
H A D | trace.h | 395 struct cxl_region *cxlr, u64 hpa, struct cxl_event_gen_media *rec), 397 TP_ARGS(cxlmd, log, cxlr, hpa, rec), 410 __field(u64, hpa) 440 __entry->hpa = hpa; 458 "hpa=%llx region=%s region_uuid=%pUb " \ 473 __entry->hpa, __get_str(region_name), &__entry->region_uuid, 532 struct cxl_region *cxlr, u64 hpa, struct cxl_event_dram *rec), 534 TP_ARGS(cxlmd, log, cxlr, hpa, rec), 549 __field(u64, hpa) [all...] |
H A D | region.c | 631 /* ways, granularity and uuid (if PMEM) need to be set before HPA */ in alloc_hpa() 644 "HPA allocation error (%ld) for size:%pap in %s %pr\n", in alloc_hpa() 881 * in HPA order. Confirm that the decoder with the lesser HPA in auto_order_ok() 884 dev_dbg(&cxld->dev, "check for HPA violation %s:%d < %s:%d\n", in auto_order_ok() 916 dev_dbg(&cxlr->dev, "%s: HPA order violation %s:%pr vs %pr\n", in alloc_region_ref() 1043 * - validate that there are no other regions with a higher HPA already 2854 static bool cxl_is_hpa_in_chunk(u64 hpa, struct cxl_region *cxlr, int pos) in cxl_is_hpa_in_chunk() argument 2861 /* Is the hpa in an expected chunk for its pos(-ition) */ in cxl_is_hpa_in_chunk() 2862 offset = hpa - p->res->start; in cxl_is_hpa_in_chunk() 2868 "Addr trans fail: hpa 0x%llx not in expected chunk\n", hpa); in cxl_is_hpa_in_chunk() [all …]
|
/linux/arch/powerpc/mm/book3s64/ |
H A D | iommu_api.c | 39 * We need to convert ua to hpa in real mode. Make it 331 unsigned long ua, unsigned int pageshift, unsigned long *hpa) in mm_iommu_ua_to_hpa() argument 343 *hpa = mem->dev_hpa + (ua - mem->ua); in mm_iommu_ua_to_hpa() 348 *hpa = (*va & MM_IOMMU_TABLE_GROUP_PAGE_MASK) | (ua & ~PAGE_MASK); in mm_iommu_ua_to_hpa() 354 bool mm_iommu_is_devmem(struct mm_struct *mm, unsigned long hpa, in mm_iommu_is_devmem() argument 366 if ((mem->dev_hpa <= hpa) && (hpa < end)) { in mm_iommu_is_devmem() 370 * starting from @hpa might be smaller than 1<<pageshift in mm_iommu_is_devmem() 373 *size = min(1UL << pageshift, end - hpa); in mm_iommu_is_devmem()
|
/linux/drivers/vfio/ |
H A D | vfio_iommu_spapr_tce.c | 180 static bool tce_page_is_contained(struct mm_struct *mm, unsigned long hpa, in tce_page_is_contained() argument 186 if (mm_iommu_is_devmem(mm, hpa, it_page_shift, &size)) in tce_page_is_contained() 189 page = pfn_to_page(hpa >> PAGE_SHIFT); in tce_page_is_contained() 381 static void tce_iommu_unuse_page(unsigned long hpa) in tce_iommu_unuse_page() argument 385 page = pfn_to_page(hpa >> PAGE_SHIFT); in tce_iommu_unuse_page() 414 unsigned long hpa = 0; in tce_iommu_unuse_page_v2() local 421 tbl->it_page_shift, &hpa, &mem); in tce_iommu_unuse_page_v2() 484 static int tce_iommu_use_page(unsigned long tce, unsigned long *hpa) in tce_iommu_use_page() argument 494 *hpa = __pa((unsigned long) page_address(page)); in tce_iommu_use_page() 505 unsigned long hpa; in tce_iommu_build() local [all …]
|
/linux/arch/loongarch/include/asm/ |
H A D | tlb.h | 77 /* Invalid all gid gpa-->hpa tlb */ 79 /* Invalid all gid tlb, including gva-->gpa and gpa-->hpa */ 83 /* Invalid matched gid gpa-->hpa tlb */ 85 /* Invalid matched gid tlb,including gva-->gpa and gpa-->hpa */ 87 /* Invalid matched gid and addr gpa-->hpa tlb */
|
/linux/arch/powerpc/platforms/powernv/ |
H A D | pci-ioda-tce.c | 148 unsigned long *hpa, enum dma_data_direction *direction) in pnv_tce_xchg() argument 151 unsigned long newtce = *hpa | proto_tce, oldtce; in pnv_tce_xchg() 155 BUG_ON(*hpa & ~IOMMU_PAGE_MASK(tbl)); in pnv_tce_xchg() 160 *hpa = 0; in pnv_tce_xchg() 175 *hpa = oldtce & ~(TCE_PCI_READ | TCE_PCI_WRITE); in pnv_tce_xchg() 227 unsigned long hpa = be64_to_cpu(tmp[i]); in pnv_pci_ioda2_table_do_free_pages() local 229 if (!(hpa & (TCE_PCI_READ | TCE_PCI_WRITE))) in pnv_pci_ioda2_table_do_free_pages() 232 pnv_pci_ioda2_table_do_free_pages(__va(hpa), size, in pnv_pci_ioda2_table_do_free_pages()
|
/linux/drivers/input/serio/ |
H A D | gscps2.c | 339 unsigned long hpa = dev->hpa.start; in gscps2_probe() local 347 hpa += GSC_DINO_OFFSET; in gscps2_probe() 360 ps2port->addr = ioremap(hpa, GSC_STATUS + 4); in gscps2_probe() 386 hpa, ps2port->id); in gscps2_probe() 392 if (!request_mem_region(hpa, GSC_STATUS + 4, ps2port->port.name)) in gscps2_probe() 398 hpa, in gscps2_probe() 413 release_mem_region(dev->hpa.start, GSC_STATUS + 4); in gscps2_probe() 436 release_mem_region(dev->hpa, GSC_STATUS + 4); in gscps2_remove()
|
/linux/Documentation/virt/kvm/x86/ |
H A D | mmu.rst | 45 hpa host physical address 77 host physical addresses (gpa->hpa) 79 guest physical addresses, to host physical addresses (gva->gpa->hpa) 82 addresses, to host physical addresses (ngva->ngpa->gpa->hpa) 114 - changes in the gpa->hpa translation (either through gpa->hva changes or 115 through hva->hpa changes) 138 nonpaging: gpa->hpa 139 paging: gva->gpa->hpa 140 paging, tdp: (gva->)gpa->hpa 144 non-tdp: ngva->gpa->hpa (*) [all …]
|
/linux/arch/powerpc/kvm/ |
H A D | book3s_64_vio.c | 388 unsigned long hpa = 0; in kvmppc_tce_validate() local 393 if (!mem || mm_iommu_ua_to_hpa(mem, ua, shift, &hpa)) { in kvmppc_tce_validate() 441 unsigned long hpa = 0; in kvmppc_clear_tce() local 444 iommu_tce_xchg_no_kill(mm, tbl, io_entry + i, &hpa, &dir); in kvmppc_clear_tce() 473 unsigned long hpa = 0; in kvmppc_tce_iommu_do_unmap() local 476 if (WARN_ON_ONCE(iommu_tce_xchg_no_kill(kvm->mm, tbl, entry, &hpa, in kvmppc_tce_iommu_do_unmap() 485 iommu_tce_xchg_no_kill(kvm->mm, tbl, entry, &hpa, &dir); in kvmppc_tce_iommu_do_unmap() 514 unsigned long hpa; in kvmppc_tce_iommu_do_map() local 527 if (WARN_ON_ONCE(mm_iommu_ua_to_hpa(mem, ua, tbl->it_page_shift, &hpa))) in kvmppc_tce_iommu_do_map() 533 ret = iommu_tce_xchg_no_kill(kvm->mm, tbl, entry, &hpa, &dir); in kvmppc_tce_iommu_do_map()
|
/linux/drivers/scsi/ |
H A D | zalon.c | 64 lasi_scsi_clock(void * hpa, int defaultclock) 68 status = pdc_iodc_read(&pdc_result, hpa, 0, &iodc_data, 32 ); 93 void __iomem *zalon = ioremap(dev->hpa.start, 4096); in zalon_probe() 132 device.slot.base = dev->hpa.start + GSC_SCSI_ZALON_OFFSET; in zalon_probe()
|
/linux/drivers/video/ |
H A D | sticore.c | 444 unsigned long hpa) in sti_init_glob_cfg() argument 483 newhpa = (i == 0) ? rom_address : hpa; in sti_init_glob_cfg() 906 unsigned long hpa, in sti_try_rom_generic() argument 969 pr_debug(" byte mode ROM at %08lx, hpa at %08lx\n", in sti_try_rom_generic() 970 address, hpa); in sti_try_rom_generic() 975 pr_debug(" word mode ROM at %08lx, hpa at %08lx\n", in sti_try_rom_generic() 976 address, hpa); in sti_try_rom_generic() 983 if (sti_init_glob_cfg(sti, address, hpa)) in sti_try_rom_generic() 1031 int hpa = dev->hpa.start; in sticore_pa_init() local 1034 sti = sti_try_rom_generic(dev->addr[0], hpa, NULL); in sticore_pa_init() [all …]
|
/linux/drivers/cxl/ |
H A D | acpi.c | 26 static u64 cxl_xor_hpa_to_spa(struct cxl_root_decoder *cxlrd, u64 hpa) in cxl_xor_hpa_to_spa() argument 35 return hpa; in cxl_xor_hpa_to_spa() 40 * HPA->DPA translation. in cxl_xor_hpa_to_spa() 43 * val is the XORALLBITS(HPA & XORMAP) in cxl_xor_hpa_to_spa() 47 * bits in the input (hpa & xormap). Implement XORALLBITS using in cxl_xor_hpa_to_spa() 56 val = (hweight64(hpa & cximsd->xormaps[i]) & 1); in cxl_xor_hpa_to_spa() 57 hpa = (hpa & ~(1ULL << pos)) | (val << pos); in cxl_xor_hpa_to_spa() 60 return hpa; in cxl_xor_hpa_to_spa() 146 dev_err(dev, "CFMWS Base HPA not 256MB aligned\n"); in cxl_acpi_cfmws_verify()
|
/linux/arch/parisc/include/asm/ |
H A D | pdc.h | 33 int pdc_iodc_read(unsigned long *actcnt, unsigned long hpa, unsigned int index, 62 int pdc_pci_irt_size(unsigned long *num_entries, unsigned long hpa); 63 int pdc_pci_irt(unsigned long num_entries, unsigned long hpa, void *tbl);
|
/linux/Documentation/devicetree/bindings/iio/pressure/ |
H A D | rohm,bm1390.yaml | 14 compensation for the MEMS. Pressure range is from 300 hPa to 1300 hPa
|