/linux/arch/powerpc/kernel/ |
H A D | hw_breakpoint_constraints.c | 9 static bool dar_in_user_range(unsigned long dar, struct arch_hw_breakpoint *info) in dar_in_user_range() argument 11 return ((info->address <= dar) && (dar - info->address < info->len)); in dar_in_user_range() 21 static bool dar_in_hw_range(unsigned long dar, struct arch_hw_breakpoint *info) in dar_in_hw_range() argument 28 return ((hw_start_addr <= dar) && (hw_end_addr > dar)); in dar_in_hw_range() 87 bool in_user_range = dar_in_user_range(regs->dar, info); in wp_check_constraints() 102 !dar_in_hw_range(regs->dar, info)) in wp_check_constraints() 112 !dar_in_hw_range(regs->dar, info)) in wp_check_constraints()
|
/linux/drivers/misc/cxl/ |
H A D | fault.c | 105 ctx->fault_addr = ctx->dar; in cxl_ack_ae() 131 int cxl_handle_mm_fault(struct mm_struct *mm, u64 dsisr, u64 dar) in cxl_handle_mm_fault() argument 153 if ((result = copro_handle_mm_fault(mm, dar, dsisr, &flt))) { in cxl_handle_mm_fault() 167 if (!mm && (get_region_id(dar) != USER_REGION_ID)) in cxl_handle_mm_fault() 174 hash_page_mm(mm, dar, access, 0x300, inv_flags); in cxl_handle_mm_fault() 182 u64 dsisr, u64 dar) in cxl_handle_page_fault() argument 184 trace_cxl_pte_miss(ctx, dsisr, dar); in cxl_handle_page_fault() 186 if (cxl_handle_mm_fault(mm, dsisr, dar)) { in cxl_handle_page_fault() 233 u64 dar = ctx->dar; in cxl_handle_fault() local 238 cxl_p2n_read(ctx->afu, CXL_PSL_DAR_An) != dar || in cxl_handle_fault() [all …]
|
H A D | irq.c | 26 static irqreturn_t schedule_cxl_fault(struct cxl_context *ctx, u64 dsisr, u64 dar) in schedule_cxl_fault() argument 29 ctx->dar = dar; in schedule_cxl_fault() 36 u64 dsisr, dar; in cxl_irq_psl9() local 39 dar = irq_info->dar; in cxl_irq_psl9() 41 trace_cxl_psl9_irq(ctx, irq, dsisr, dar); in cxl_irq_psl9() 43 pr_devel("CXL interrupt %i for afu pe: %i DSISR: %#llx DAR: %#llx\n", irq, ctx->pe, dsisr, dar); in cxl_irq_psl9() 47 return schedule_cxl_fault(ctx, dsisr, dar); in cxl_irq_psl9() 87 u64 dsisr, dar; in cxl_irq_psl8() local 90 dar = irq_info->dar; in cxl_irq_psl8() 92 trace_cxl_psl_irq(ctx, irq, dsisr, dar); in cxl_irq_psl8() [all …]
|
H A D | trace.h | 163 TP_PROTO(struct cxl_context *ctx, int irq, u64 dsisr, u64 dar), 165 TP_ARGS(ctx, irq, dsisr, dar), 173 __field(u64, dar) 182 __entry->dar = dar; 192 __entry->dar 197 TP_PROTO(struct cxl_context *ctx, int irq, u64 dsisr, u64 dar), 199 TP_ARGS(ctx, irq, dsisr, dar), 207 __field(u64, dar) 216 __entry->dar = dar; 225 __entry->dar [all …]
|
H A D | cxllib.c | 227 u64 dar, vma_start, vma_end; in cxllib_handle_fault() local 243 for (dar = (addr & ~(page_size - 1)); dar < (addr + size); in cxllib_handle_fault() 244 dar += page_size) { in cxllib_handle_fault() 245 if (dar < vma_start || dar >= vma_end) { in cxllib_handle_fault() 259 rc = get_vma_info(mm, dar, &vma_start, &vma_end, in cxllib_handle_fault() 265 rc = cxl_handle_mm_fault(mm, flags, dar); in cxllib_handle_fault()
|
/linux/drivers/misc/ocxl/ |
H A D | trace.h | 135 TP_PROTO(void *spa, u64 pe, u64 dsisr, u64 dar, u64 tfc), 136 TP_ARGS(spa, pe, dsisr, dar, tfc), 142 __field(u64, dar) 150 __entry->dar = dar; 158 __entry->dar, 164 TP_PROTO(void *spa, u64 pe, u64 dsisr, u64 dar, u64 tfc), 165 TP_ARGS(spa, pe, dsisr, dar, tfc) 169 TP_PROTO(void *spa, u64 pe, u64 dsisr, u64 dar, u64 tfc), 170 TP_ARGS(spa, pe, dsisr, dar, tfc)
|
H A D | link.c | 73 u64 dar; member 108 static void read_irq(struct spa *spa, u64 *dsisr, u64 *dar, u64 *pe) in read_irq() argument 113 *dar = in_be64(spa->reg_dar); in read_irq() 132 spa->xsl_fault.dsisr, spa->xsl_fault.dar, reg); in ack_irq() 152 rc = copro_handle_mm_fault(fault->pe_data.mm, fault->dar, fault->dsisr, in xsl_fault_handler_bh() 159 fault->dar, fault->dsisr); in xsl_fault_handler_bh() 175 if (get_region_id(fault->dar) != USER_REGION_ID) in xsl_fault_handler_bh() 179 hash_page_mm(fault->pe_data.mm, fault->dar, access, 0x300, in xsl_fault_handler_bh() 193 u64 dsisr, dar, pe_handle; in xsl_fault_handler() local 199 read_irq(spa, &dsisr, &dar, &pe_handle); in xsl_fault_handler() [all …]
|
/linux/tools/testing/selftests/powerpc/mm/ |
H A D | subpage_prot.c | 34 volatile void *dar; variable 48 dar = (void *)regs->dar; in segv() 84 if (dar != addr) { in check_faulted() 86 addr, dar); in check_faulted()
|
/linux/arch/powerpc/mm/ |
H A D | fault.c | 582 err = ___do_page_fault(regs, regs->dar, regs->dsisr); in __do_page_fault() 613 if (regs->dar < PAGE_SIZE) in __bad_page_fault() 622 is_write ? "write" : "read", regs->dar); in __bad_page_fault() 625 pr_alert("BUG: %s at 0x%08lx\n", msg, regs->dar); in __bad_page_fault() 634 regs->dar); in __bad_page_fault() 638 regs->dar); in __bad_page_fault() 681 _exception(SIGSEGV, regs, SEGV_BNDERR, regs->dar); in DEFINE_INTERRUPT_HANDLER()
|
/linux/arch/sh/drivers/dma/ |
H A D | dma-g2.c | 102 if (chan->dar & 31) { in g2_xfer_dma() 103 printk("g2dma: unaligned dest 0x%lx\n", chan->dar); in g2_xfer_dma() 112 chan->dar += 0xa0800000; in g2_xfer_dma() 121 g2_dma->channel[chan_nr].g2_addr = chan->dar & 0x1fffffe0; in g2_xfer_dma()
|
H A D | dma-pvr2.c | 55 if (chan->sar || !chan->dar) in pvr2_xfer_dma() 60 __raw_writel(chan->dar, PVR2_DMA_ADDR); in pvr2_xfer_dma()
|
/linux/drivers/dma/dw-edma/ |
H A D | dw-hdma-v0-core.c | 156 u32 control, u32 size, u64 sar, u64 dar) in dw_hdma_v0_write_ll_data() argument 166 lli->dar.reg = dar; in dw_hdma_v0_write_ll_data() 173 writeq(dar, &lli->dar.reg); in dw_hdma_v0_write_ll_data() 205 child->sar, child->dar); in dw_hdma_v0_core_write_chunk()
|
H A D | dw-hdma-v0-regs.h | 54 } dar; member 114 } dar; member
|
H A D | dw-edma-v0-core.c | 280 u32 control, u32 size, u64 sar, u64 dar) in dw_edma_v0_write_ll_data() argument 290 lli->dar.reg = dar; in dw_edma_v0_write_ll_data() 297 writeq(dar, &lli->dar.reg); in dw_edma_v0_write_ll_data() 339 child->sar, child->dar); in dw_edma_v0_core_write_chunk()
|
H A D | dw-edma-v0-regs.h | 44 } dar; member 218 } dar; member
|
/linux/arch/powerpc/kvm/ |
H A D | trace_booke.h | 46 __field( unsigned long, dar ) 53 __entry->dar = kvmppc_get_fault_dar(vcpu); 67 __entry->dar,
|
H A D | trace_pr.h | 225 __field( unsigned long, dar ) 233 __entry->dar = kvmppc_get_fault_dar(vcpu); 249 __entry->dar,
|
/linux/arch/powerpc/include/asm/ |
H A D | pnv-ocxl.h | 68 void pnv_ocxl_unmap_xsl_regs(void __iomem *dsisr, void __iomem *dar, 71 void __iomem **dar, void __iomem **tfc,
|
/linux/arch/powerpc/kernel/ptrace/ |
H A D | ptrace.c | 369 BUILD_BUG_ON(offsetof(struct pt_regs, dar) != in pt_regs_check() 370 offsetof(struct user_pt_regs, dar)); in pt_regs_check() 372 offsetof(struct user_pt_regs, dar)); in pt_regs_check() 432 CHECK_REG(PT_DAR, dar); in pt_regs_check()
|
/linux/drivers/dma/ |
H A D | idma64.c | 242 u64 sar, dar; in idma64_hw_desc_fill() local 249 dar = config->dst_addr; in idma64_hw_desc_fill() 256 dar = hw->phys; in idma64_hw_desc_fill() 260 dst_width = __ffs(dar | hw->len | 4); in idma64_hw_desc_fill() 264 lli->dar = dar; in idma64_hw_desc_fill()
|
/linux/arch/powerpc/perf/ |
H A D | perf_regs.c | 68 PT_REGS_OFFSET(PERF_REG_POWERPC_DAR, dar), 70 PT_REGS_OFFSET(PERF_REG_POWERPC_SIER, dar),
|
/linux/tools/perf/arch/powerpc/include/ |
H A D | dwarf-regs-table.h | 24 REG_DWARFNUM_NAME(dar, 119),
|
/linux/arch/powerpc/platforms/8xx/ |
H A D | machine_check.c | 20 pr_cont("Data access error at address %lx\n", regs->dar); in machine_check_8xx()
|
/linux/arch/powerpc/platforms/powernv/ |
H A D | ocxl.c | 386 void pnv_ocxl_unmap_xsl_regs(void __iomem *dsisr, void __iomem *dar, in pnv_ocxl_unmap_xsl_regs() argument 390 iounmap(dar); in pnv_ocxl_unmap_xsl_regs() 397 void __iomem **dar, void __iomem **tfc, in pnv_ocxl_map_xsl_regs() argument 426 *dar = regs[1]; in pnv_ocxl_map_xsl_regs()
|
/linux/arch/powerpc/platforms/cell/ |
H A D | spu_base.c | 306 unsigned long stat, mask, dar, dsisr; in spu_irq_class_1() local 314 dar = spu_mfc_dar_get(spu); in spu_irq_class_1() 321 dar, dsisr); in spu_irq_class_1() 324 __spu_trap_data_seg(spu, dar); in spu_irq_class_1() 327 __spu_trap_data_map(spu, dar, dsisr); in spu_irq_class_1()
|