| /linux/arch/arm64/kernel/ |
| H A D | compat_alignment.c | 54 do_alignment_finish_ldst(unsigned long addr, u32 instr, struct pt_regs *regs, in do_alignment_finish_ldst() argument 57 if (!LDST_U_BIT(instr)) in do_alignment_finish_ldst() 60 if (!LDST_P_BIT(instr)) in do_alignment_finish_ldst() 63 if (!LDST_P_BIT(instr) || LDST_W_BIT(instr)) in do_alignment_finish_ldst() 64 regs->regs[RN_BITS(instr)] = addr; in do_alignment_finish_ldst() 68 do_alignment_ldrdstrd(unsigned long addr, u32 instr, struct pt_regs *regs) in do_alignment_ldrdstrd() argument 70 unsigned int rd = RD_BITS(instr); in do_alignment_ldrdstrd() 74 if ((instr & 0xfe000000) == 0xe8000000) { in do_alignment_ldrdstrd() 76 rd2 = (instr >> 8) & 0xf; in do_alignment_ldrdstrd() 77 load = !!(LDST_L_BIT(instr)); in do_alignment_ldrdstrd() [all …]
|
| H A D | armv8_deprecated.c | 164 static int swp_handler(struct pt_regs *regs, u32 instr) in swp_handler() argument 172 type = instr & TYPE_SWPB; in swp_handler() 174 switch (aarch32_check_condition(instr, regs->pstate)) { in swp_handler() 187 rn = aarch32_insn_extract_reg_num(instr, A32_RN_OFFSET); in swp_handler() 188 rt2 = aarch32_insn_extract_reg_num(instr, A32_RT2_OFFSET); in swp_handler() 192 destreg = aarch32_insn_extract_reg_num(instr, A32_RT_OFFSET); in swp_handler() 196 aarch32_insn_extract_reg_num(instr, A32_RT2_OFFSET), data); in swp_handler() 252 static int cp15barrier_handler(struct pt_regs *regs, u32 instr) in cp15barrier_handler() argument 256 switch (aarch32_check_condition(instr, regs->pstate)) { in cp15barrier_handler() 269 switch (aarch32_insn_mcr_extract_crm(instr)) { in cp15barrier_handler() [all …]
|
| /linux/arch/arm/mm/ |
| H A D | alignment.c | 328 do_alignment_finish_ldst(unsigned long addr, u32 instr, struct pt_regs *regs, union offset_union of… in do_alignment_finish_ldst() argument 330 if (!LDST_U_BIT(instr)) in do_alignment_finish_ldst() 333 if (!LDST_P_BIT(instr)) in do_alignment_finish_ldst() 336 if (!LDST_P_BIT(instr) || LDST_W_BIT(instr)) in do_alignment_finish_ldst() 337 regs->uregs[RN_BITS(instr)] = addr; in do_alignment_finish_ldst() 341 do_alignment_ldrhstrh(unsigned long addr, u32 instr, struct pt_regs *regs) in do_alignment_ldrhstrh() argument 343 unsigned int rd = RD_BITS(instr); in do_alignment_ldrhstrh() 350 if (LDST_L_BIT(instr)) { in do_alignment_ldrhstrh() 355 if (instr & 0x40) in do_alignment_ldrhstrh() 365 if (LDST_L_BIT(instr)) { in do_alignment_ldrhstrh() [all …]
|
| /linux/arch/powerpc/include/asm/ |
| H A D | probes.h | 17 #define IS_TW(instr) (((instr) & 0xfc0007fe) == 0x7c000008) argument 18 #define IS_TD(instr) (((instr) & 0xfc0007fe) == 0x7c000088) argument 19 #define IS_TDI(instr) (((instr) & 0xfc000000) == 0x08000000) argument 20 #define IS_TWI(instr) (((instr) & 0xfc000000) == 0x0c000000) argument 23 #define is_trap(instr) (IS_TW(instr) || IS_TD(instr) || \ argument 24 IS_TWI(instr) || IS_TDI(instr)) 26 #define is_trap(instr) (IS_TW(instr) || IS_TWI(instr)) argument
|
| H A D | disassemble.h | 90 static inline unsigned make_dsisr(unsigned instr) in make_dsisr() argument 96 dsisr = (instr & 0x03ff0000) >> 16; in make_dsisr() 98 if (IS_XFORM(instr)) { in make_dsisr() 100 dsisr |= (instr & 0x00000006) << 14; in make_dsisr() 102 dsisr |= (instr & 0x00000040) << 8; in make_dsisr() 104 dsisr |= (instr & 0x00000780) << 3; in make_dsisr() 107 dsisr |= (instr & 0x04000000) >> 12; in make_dsisr() 109 dsisr |= (instr & 0x78000000) >> 17; in make_dsisr() 111 if (IS_DSFORM(instr)) in make_dsisr() 112 dsisr |= (instr & 0x00000003) << 18; in make_dsisr()
|
| /linux/drivers/net/ethernet/netronome/nfp/ |
| H A D | nfp_asm.c | 30 u16 br_get_offset(u64 instr) in br_get_offset() argument 34 addr_lo = FIELD_GET(OP_BR_ADDR_LO, instr); in br_get_offset() 35 addr_hi = FIELD_GET(OP_BR_ADDR_HI, instr); in br_get_offset() 41 void br_set_offset(u64 *instr, u16 offset) in br_set_offset() argument 47 *instr &= ~(OP_BR_ADDR_HI | OP_BR_ADDR_LO); in br_set_offset() 48 *instr |= FIELD_PREP(OP_BR_ADDR_HI, addr_hi); in br_set_offset() 49 *instr |= FIELD_PREP(OP_BR_ADDR_LO, addr_lo); in br_set_offset() 52 void br_add_offset(u64 *instr, u16 offset) in br_add_offset() argument 56 addr = br_get_offset(*instr); in br_add_offset() 57 br_set_offset(instr, addr + offset); in br_add_offset() [all …]
|
| /linux/lib/xz/ |
| H A D | xz_dec_bcj.c | 163 uint32_t instr; in bcj_powerpc() local 168 instr = get_unaligned_be32(buf + i); in bcj_powerpc() 169 if ((instr & 0xFC000003) == 0x48000001) { in bcj_powerpc() 170 instr &= 0x03FFFFFC; in bcj_powerpc() 171 instr -= s->pos + (uint32_t)i; in bcj_powerpc() 172 instr &= 0x03FFFFFC; in bcj_powerpc() 173 instr |= 0x48000001; in bcj_powerpc() 174 put_unaligned_be32(instr, buf + i); in bcj_powerpc() 244 uint32_t instr; in bcj_sparc() local 249 instr = get_unaligned_be32(buf + i); in bcj_sparc() [all …]
|
| /linux/arch/alpha/lib/ |
| H A D | stacktrace.c | 4 typedef unsigned int instr; typedef 34 (((instr)(INSTR) >= BR_OP) | ((instr)(INSTR) < LDA_OP) | \ 35 ((((instr)(INSTR) ^ 0x60000000) < 0x20000000) & \ 36 (((instr)(INSTR) & 0x0c000000) != 0))) 48 static instr * 49 display_stored_regs(instr * pro_pc, unsigned char * sp) in display_stored_regs() 51 instr * ret_pc = 0; in display_stored_regs() 61 ret_pc = (instr *)value; in display_stored_regs() 67 static instr * 68 seek_prologue(instr * pc) in seek_prologue() [all …]
|
| /linux/samples/seccomp/ |
| H A D | bpf-helper.c | 32 struct sock_filter *instr = &filter[offset]; in bpf_resolve_jumps() local 33 if (instr->code != (BPF_JMP+BPF_JA)) in bpf_resolve_jumps() 35 switch ((instr->jt<<8)|instr->jf) { in bpf_resolve_jumps() 37 if (labels->labels[instr->k].location == 0xffffffff) { in bpf_resolve_jumps() 39 labels->labels[instr->k].label); in bpf_resolve_jumps() 42 instr->k = labels->labels[instr->k].location - in bpf_resolve_jumps() 44 instr->jt = 0; in bpf_resolve_jumps() 45 instr->jf = 0; in bpf_resolve_jumps() 48 if (labels->labels[instr->k].location != 0xffffffff) { in bpf_resolve_jumps() 50 labels->labels[instr->k].label); in bpf_resolve_jumps() [all …]
|
| /linux/arch/powerpc/lib/ |
| H A D | code-patching.c | 44 int raw_patch_instruction(u32 *addr, ppc_inst_t instr) in raw_patch_instruction() argument 46 if (ppc_inst_prefixed(instr)) in raw_patch_instruction() 47 return __patch_mem(addr, ppc_inst_as_ulong(instr), addr, true); in raw_patch_instruction() 49 return __patch_mem(addr, ppc_inst_val(instr), addr, false); in raw_patch_instruction() 378 int patch_instruction(u32 *addr, ppc_inst_t instr) in patch_instruction() argument 380 if (ppc_inst_prefixed(instr)) in patch_instruction() 381 return patch_mem(addr, ppc_inst_as_ulong(instr), true); in patch_instruction() 383 return patch_mem(addr, ppc_inst_val(instr), false); in patch_instruction() 407 int patch_instruction(u32 *addr, ppc_inst_t instr) in patch_instruction() argument 409 return patch_mem(addr, ppc_inst_val(instr), false); in patch_instruction() [all …]
|
| /linux/arch/arm/include/asm/ |
| H A D | domain.h | 120 #define TUSER(instr) TUSERCOND(instr, ) argument 121 #define TUSERCOND(instr, cond) #instr "t" #cond argument 123 #define TUSER(instr) TUSERCOND(instr, ) argument 124 #define TUSERCOND(instr, cond) #instr #cond argument 134 #define TUSER(instr) instr ## t argument 136 #define TUSER(instr) instr argument
|
| H A D | unified.h | 33 #define W(instr) instr.w 35 #define WASM(instr) #instr ".w" argument 46 #define W(instr) instr 48 #define WASM(instr) #instr
|
| /linux/scripts/kconfig/lxdialog/ |
| H A D | inputbox.c | 37 char *instr = dialog_input_result; in dialog_inputbox() local 41 instr[0] = '\0'; in dialog_inputbox() 43 strncpy(instr, init, sizeof(dialog_input_result) - 1); in dialog_inputbox() 44 instr[sizeof(dialog_input_result) - 1] = '\0'; in dialog_inputbox() 90 len = strlen(instr); in dialog_inputbox() 97 waddch(dialog, instr[show_x + i]); in dialog_inputbox() 101 waddstr(dialog, instr); in dialog_inputbox() 129 instr[i] = instr[i+1]; in dialog_inputbox() 135 instr[len] = '\0'; in dialog_inputbox() 138 if (!instr[show_x + i]) { in dialog_inputbox() [all …]
|
| /linux/arch/s390/kernel/ |
| H A D | nospec-branch.c | 105 u8 *instr, *thunk, *br; in __nospec_revert() local 112 instr = (u8 *) epo + *epo; in __nospec_revert() 113 if (instr[0] == 0xc0 && (instr[1] & 0x0f) == 0x04) in __nospec_revert() 115 else if (instr[0] == 0xc0 && (instr[1] & 0x0f) == 0x05) in __nospec_revert() 119 thunk = instr + (long)(*(int *)(instr + 2)) * 2; in __nospec_revert() 131 insnbuf[1] = (instr[1] & 0xf0) | (br[1] & 0x0f); in __nospec_revert() 136 insnbuf[1] = (instr[1] & 0xf0) | (br[1] & 0x0f); in __nospec_revert() 140 s390_kernel_write(instr, insnbuf, 6); in __nospec_revert()
|
| /linux/drivers/watchdog/ |
| H A D | wdat_wdt.c | 65 const struct wdat_instruction *instr, u32 *value) in wdat_wdt_read() argument 67 const struct acpi_generic_address *gas = &instr->entry.register_region; in wdat_wdt_read() 71 *value = ioread8(instr->reg); in wdat_wdt_read() 74 *value = ioread16(instr->reg); in wdat_wdt_read() 77 *value = ioread32(instr->reg); in wdat_wdt_read() 90 const struct wdat_instruction *instr, u32 value) in wdat_wdt_write() argument 92 const struct acpi_generic_address *gas = &instr->entry.register_region; in wdat_wdt_write() 96 iowrite8((u8)value, instr->reg); in wdat_wdt_write() 99 iowrite16((u16)value, instr->reg); in wdat_wdt_write() 102 iowrite32(value, instr->reg); in wdat_wdt_write() [all …]
|
| /linux/arch/powerpc/kernel/ |
| H A D | align.c | 118 unsigned int nb, flags, instr; in emulate_spe() local 120 instr = ppc_inst_val(ppc_instr); in emulate_spe() 121 instr = (instr >> 1) & 0x1f; in emulate_spe() 126 nb = spe_aligninfo[instr].len; in emulate_spe() 127 flags = spe_aligninfo[instr].flags; in emulate_spe() 140 switch (instr) { in emulate_spe() 188 switch (instr) { in emulate_spe() 303 ppc_inst_t instr; in fix_alignment() local 308 r = copy_inst_from_kernel_nofault(&instr, (void *)regs->nip); in fix_alignment() 310 r = __get_user_instr(instr, (void __user *)regs->nip); in fix_alignment() [all …]
|
| /linux/drivers/mtd/nand/raw/ |
| H A D | au1550nd.c | 154 const struct nand_op_instr *instr) in au1550nd_exec_instr() argument 160 switch (instr->type) { in au1550nd_exec_instr() 162 writeb(instr->ctx.cmd.opcode, in au1550nd_exec_instr() 169 for (i = 0; i < instr->ctx.addr.naddrs; i++) { in au1550nd_exec_instr() 170 writeb(instr->ctx.addr.addrs[i], in au1550nd_exec_instr() 179 !instr->ctx.data.force_8bit) in au1550nd_exec_instr() 180 au_read_buf16(this, instr->ctx.data.buf.in, in au1550nd_exec_instr() 181 instr->ctx.data.len); in au1550nd_exec_instr() 183 au_read_buf(this, instr->ctx.data.buf.in, in au1550nd_exec_instr() 184 instr->ctx.data.len); in au1550nd_exec_instr() [all …]
|
| H A D | technologic-nand-controller.c | 69 const struct nand_op_instr *instr) in ts72xx_nand_exec_instr() argument 76 switch (instr->type) { in ts72xx_nand_exec_instr() 79 iowrite8(instr->ctx.cmd.opcode, data->base); in ts72xx_nand_exec_instr() 85 iowrite8_rep(data->base, instr->ctx.addr.addrs, instr->ctx.addr.naddrs); in ts72xx_nand_exec_instr() 90 ioread8_rep(data->base, instr->ctx.data.buf.in, instr->ctx.data.len); in ts72xx_nand_exec_instr() 94 iowrite8_rep(data->base, instr->ctx.data.buf.in, instr->ctx.data.len); in ts72xx_nand_exec_instr() 98 timeout_us = instr->ctx.waitrdy.timeout_ms * 1000; in ts72xx_nand_exec_instr() 106 if (instr->delay_ns) in ts72xx_nand_exec_instr() 107 ndelay(instr->delay_ns); in ts72xx_nand_exec_instr()
|
| H A D | gpio.c | 76 const struct nand_op_instr *instr) in gpio_nand_exec_instr() argument 81 switch (instr->type) { in gpio_nand_exec_instr() 86 writeb(instr->ctx.cmd.opcode, gpiomtd->io); in gpio_nand_exec_instr() 95 for (i = 0; i < instr->ctx.addr.naddrs; i++) in gpio_nand_exec_instr() 96 writeb(instr->ctx.addr.addrs[i], gpiomtd->io); in gpio_nand_exec_instr() 104 !instr->ctx.data.force_8bit) in gpio_nand_exec_instr() 105 ioread16_rep(gpiomtd->io, instr->ctx.data.buf.in, in gpio_nand_exec_instr() 106 instr->ctx.data.len / 2); in gpio_nand_exec_instr() 108 ioread8_rep(gpiomtd->io, instr->ctx.data.buf.in, in gpio_nand_exec_instr() 109 instr->ctx.data.len); in gpio_nand_exec_instr() [all …]
|
| H A D | vf610_nfc.c | 361 const struct nand_op_instr *instr; in vf610_nfc_cmd() local 373 instr = vf610_get_next_instr(subop, &op_id); in vf610_nfc_cmd() 374 if (!instr) in vf610_nfc_cmd() 377 if (instr && instr->type == NAND_OP_CMD_INSTR) { in vf610_nfc_cmd() 378 cmd2 |= instr->ctx.cmd.opcode << CMD_BYTE1_SHIFT; in vf610_nfc_cmd() 381 instr = vf610_get_next_instr(subop, &op_id); in vf610_nfc_cmd() 384 if (instr && instr->type == NAND_OP_ADDR_INSTR) { in vf610_nfc_cmd() 389 u8 val = instr->ctx.addr.addrs[i]; in vf610_nfc_cmd() 398 instr = vf610_get_next_instr(subop, &op_id); in vf610_nfc_cmd() 401 if (instr && instr->type == NAND_OP_DATA_OUT_INSTR) { in vf610_nfc_cmd() [all …]
|
| H A D | ams-delta.c | 143 const struct nand_op_instr *instr; in gpio_nand_exec_op() local 151 for (instr = op->instrs; instr < op->instrs + op->ninstrs; instr++) { in gpio_nand_exec_op() 152 switch (instr->type) { in gpio_nand_exec_op() 155 gpio_nand_write_buf(priv, &instr->ctx.cmd.opcode, 1); in gpio_nand_exec_op() 161 gpio_nand_write_buf(priv, instr->ctx.addr.addrs, in gpio_nand_exec_op() 162 instr->ctx.addr.naddrs); in gpio_nand_exec_op() 167 gpio_nand_read_buf(priv, instr->ctx.data.buf.in, in gpio_nand_exec_op() 168 instr->ctx.data.len); in gpio_nand_exec_op() 172 gpio_nand_write_buf(priv, instr->ctx.data.buf.out, in gpio_nand_exec_op() 173 instr->ctx.data.len); in gpio_nand_exec_op() [all …]
|
| /linux/drivers/crypto/cavium/nitrox/ |
| H A D | nitrox_reqmgr.c | 299 memcpy(ent, &sr->instr, cmdq->instr_size); in post_se_instr() 447 sr->instr.dptr0 = cpu_to_be64(sr->in.sgcomp_dma); in nitrox_process_se_request() 450 sr->instr.ih.value = 0; in nitrox_process_se_request() 451 sr->instr.ih.s.g = 1; in nitrox_process_se_request() 452 sr->instr.ih.s.gsz = sr->in.sgmap_cnt; in nitrox_process_se_request() 453 sr->instr.ih.s.ssz = sr->out.sgmap_cnt; in nitrox_process_se_request() 454 sr->instr.ih.s.fsz = FDATA_SIZE + sizeof(struct gphdr); in nitrox_process_se_request() 455 sr->instr.ih.s.tlen = sr->instr.ih.s.fsz + sr->in.total_bytes; in nitrox_process_se_request() 456 sr->instr.ih.bev = cpu_to_be64(sr->instr.ih.value); in nitrox_process_se_request() 459 sr->instr.irh.value[0] = 0; in nitrox_process_se_request() [all …]
|
| /linux/arch/arm/lib/ |
| H A D | bitops.h | 6 .macro bitop, name, instr 22 \instr r2, r2, r3 31 .macro __testop, name, instr, store, barrier 49 \instr r2, r2, r3 @ toggle bit 61 .macro testop, name, instr, store 62 __testop \name, \instr, \store, smp_dmb 65 .macro sync_testop, name, instr, store 66 __testop \name, \instr, \store, __smp_dmb 69 .macro bitop, name, instr 80 \instr r2, r2, r3 [all …]
|
| /linux/arch/arm/kernel/ |
| H A D | swp_emulate.c | 160 static int swp_handler(struct pt_regs *regs, unsigned int instr) in swp_handler() argument 167 res = arm_check_condition(instr, regs->ARM_cpsr); in swp_handler() 188 address = regs->uregs[EXTRACT_REG_NUM(instr, RN_OFFSET)]; in swp_handler() 189 data = regs->uregs[EXTRACT_REG_NUM(instr, RT2_OFFSET)]; in swp_handler() 190 destreg = EXTRACT_REG_NUM(instr, RT_OFFSET); in swp_handler() 192 type = instr & TYPE_SWPB; in swp_handler() 195 EXTRACT_REG_NUM(instr, RN_OFFSET), address, in swp_handler() 196 destreg, EXTRACT_REG_NUM(instr, RT2_OFFSET), data); in swp_handler()
|
| /linux/arch/arm64/include/asm/ |
| H A D | kvm_nested.h | 172 static inline bool kvm_supported_tlbi_s1e1_op(struct kvm_vcpu *vpcu, u32 instr) in kvm_supported_tlbi_s1e1_op() argument 175 u8 CRm = sys_reg_CRm(instr); in kvm_supported_tlbi_s1e1_op() 177 if (!(sys_reg_Op0(instr) == TLBI_Op0 && in kvm_supported_tlbi_s1e1_op() 178 sys_reg_Op1(instr) == TLBI_Op1_EL1)) in kvm_supported_tlbi_s1e1_op() 181 if (!(sys_reg_CRn(instr) == TLBI_CRn_XS || in kvm_supported_tlbi_s1e1_op() 182 (sys_reg_CRn(instr) == TLBI_CRn_nXS && in kvm_supported_tlbi_s1e1_op() 198 static inline bool kvm_supported_tlbi_s1e2_op(struct kvm_vcpu *vpcu, u32 instr) in kvm_supported_tlbi_s1e2_op() argument 201 u8 CRm = sys_reg_CRm(instr); in kvm_supported_tlbi_s1e2_op() 203 if (!(sys_reg_Op0(instr) == TLBI_Op0 && in kvm_supported_tlbi_s1e2_op() 204 sys_reg_Op1(instr) == TLBI_Op1_EL2)) in kvm_supported_tlbi_s1e2_op() [all …]
|