Symbol: ss
arch/hexagon/kernel/process.c
59
struct hexagon_switch_stack *ss;
arch/hexagon/kernel/process.c
74
ss = (struct hexagon_switch_stack *) ((unsigned long) childregs -
arch/hexagon/kernel/process.c
75
sizeof(*ss));
arch/hexagon/kernel/process.c
76
ss->lr = (unsigned long)ret_from_fork;
arch/hexagon/kernel/process.c
77
p->thread.switch_sp = ss;
arch/hexagon/kernel/process.c
81
ss->r24 = (unsigned long)args->fn;
arch/hexagon/kernel/process.c
82
ss->r25 = (unsigned long)args->fn_arg;
arch/hexagon/kernel/process.c
87
ss->r2524 = 0;
arch/m68k/lib/memset.c
27
short *ss = s;
arch/m68k/lib/memset.c
28
*ss++ = c;
arch/m68k/lib/memset.c
29
s = ss;
arch/m68k/lib/memset.c
64
short *ss = s;
arch/m68k/lib/memset.c
65
*ss++ = c;
arch/m68k/lib/memset.c
66
s = ss;
arch/mips/boot/compressed/string.c
26
char *ss = s;
arch/mips/boot/compressed/string.c
29
ss[i] = c;
arch/nios2/boot/compressed/misc.c
100
ss[i] = c;
arch/nios2/boot/compressed/misc.c
97
char *ss = (char *)s;
arch/powerpc/include/asm/ps3av.h
486
u8 ss:2;
arch/powerpc/kernel/pci_of_scan.c
61
#define OF_PCI_ADDR0_SPACE(ss) (((ss)&3)<<24)
arch/s390/crypto/hmac_s390.c
335
#define S390_HMAC_SHA2_ALG(x, ss) { \
arch/s390/crypto/hmac_s390.c
347
.statesize = ss, \
arch/sh/boot/compressed/misc.c
79
char *ss = (char*)s;
arch/sh/boot/compressed/misc.c
81
for (i=0;i<n;i++) ss[i] = c;
arch/sparc/kernel/signal32.c
447
err |= __put_user(rp->locals[i], &sf->ss.locals[i]);
arch/sparc/kernel/signal32.c
449
err |= __put_user(rp->ins[i], &sf->ss.ins[i]);
arch/sparc/kernel/signal32.c
450
err |= __put_user(rp->ins[6], &sf->ss.fp);
arch/sparc/kernel/signal32.c
451
err |= __put_user(rp->ins[7], &sf->ss.callers_pc);
arch/sparc/kernel/signal32.c
46
struct sparc_stackf32 ss;
arch/sparc/kernel/signal32.c
579
err |= __put_user(rp->locals[i], &sf->ss.locals[i]);
arch/sparc/kernel/signal32.c
58
struct sparc_stackf32 ss;
arch/sparc/kernel/signal32.c
581
err |= __put_user(rp->ins[i], &sf->ss.ins[i]);
arch/sparc/kernel/signal32.c
582
err |= __put_user(rp->ins[6], &sf->ss.fp);
arch/sparc/kernel/signal32.c
583
err |= __put_user(rp->ins[7], &sf->ss.callers_pc);
arch/sparc/kernel/signal_32.c
37
struct sparc_stackf ss;
arch/sparc/kernel/signal_32.c
47
struct sparc_stackf ss;
arch/sparc/kernel/signal_64.c
246
struct sparc_stackf ss;
arch/x86/boot/compressed/string.c
46
char *ss = s;
arch/x86/boot/compressed/string.c
49
ss[i] = c;
arch/x86/coco/sev/core.c
822
vmsa->ss = vmsa->ds;
arch/x86/entry/syscall_32.c
350
if (unlikely(regs->cs != __USER32_CS || regs->ss != __USER_DS))
arch/x86/entry/syscall_64.c
117
if (unlikely(regs->cs != __USER_CS || regs->ss != __USER_DS))
arch/x86/events/core.c
2936
ss_base = get_segment_base(regs->ss);
arch/x86/hyperv/hv_crash.c
160
:: "m"(hv_crash_ctxt.ss), "m"(hv_crash_ctxt.rsp));
arch/x86/hyperv/hv_crash.c
211
asm volatile("movw %%ss, %0" : "=m"(ctxt->ss));
arch/x86/hyperv/hv_crash.c
65
u16 ss;
arch/x86/hyperv/hv_vtl.c
181
input->vp_context.ss.selector = __KERNEL_DS;
arch/x86/hyperv/hv_vtl.c
182
input->vp_context.ss.base = 0;
arch/x86/hyperv/hv_vtl.c
183
input->vp_context.ss.limit = 0xffffffff;
arch/x86/hyperv/hv_vtl.c
184
input->vp_context.ss.attributes = 0xc093;
arch/x86/hyperv/ivm.c
325
savesegment(ss, vmsa->ss.selector);
arch/x86/hyperv/ivm.c
326
hv_populate_vmcb_seg(vmsa->ss, vmsa->gdtr.base);
arch/x86/include/asm/elf.h
135
pr_reg[16] = regs->ss; \
arch/x86/include/asm/elf.h
211
(pr_reg)[20] = (regs)->ss; \
arch/x86/include/asm/fred.h
77
struct fred_ss ss = {
arch/x86/include/asm/fred.h
78
.ss =__KERNEL_DS,
arch/x86/include/asm/fred.h
85
asm_fred_entry_from_kvm(ss);
arch/x86/include/asm/kexec.h
109
asm volatile("mov %%ss,%k0" : "=a"(newregs->ss));
arch/x86/include/asm/processor.h
298
unsigned short ss, __ssh;
arch/x86/include/asm/ptrace.h
158
u16 ss;
arch/x86/include/asm/ptrace.h
320
#define MAX_REG_OFFSET (offsetof(struct pt_regs, ss))
arch/x86/include/asm/ptrace.h
339
offset == offsetof(struct pt_regs, ss) ||
arch/x86/include/asm/ptrace.h
53
unsigned short ss;
arch/x86/include/asm/ptrace.h
71
u64 ss : 16,
arch/x86/include/asm/segment.h
315
#define __loadsegment_ss(value) __loadsegment_simple(ss, (value))
arch/x86/include/asm/svm.h
323
struct vmcb_seg ss;
arch/x86/include/asm/svm.h
375
struct vmcb_seg ss;
arch/x86/include/asm/user32.h
43
unsigned short ss, __ss;
arch/x86/include/asm/user_32.h
95
unsigned long ss;
arch/x86/include/asm/user_64.h
90
unsigned long ss;
arch/x86/include/asm/xen/hypercall.h
382
unsigned long ss, unsigned long esp)
arch/x86/include/asm/xen/hypercall.h
385
mcl->args[0] = ss;
arch/x86/include/asm/xen/interface.h
312
uint16_t ss;
arch/x86/include/asm/xen/interface_32.h
65
uint16_t ss, _pad1;
arch/x86/include/asm/xen/interface_64.h
123
uint16_t ss, _pad2[3];
arch/x86/include/asm/xen/interface_64.h
84
uint64_t rax, r11, rcx, flags, rip, cs, rflags, rsp, ss;
arch/x86/include/uapi/asm/kvm.h
152
struct kvm_segment cs, ds, es, fs, gs, ss;
arch/x86/include/uapi/asm/kvm.h
163
struct kvm_segment cs, ds, es, fs, gs, ss;
arch/x86/include/uapi/asm/ptrace.h
75
unsigned long ss;
arch/x86/include/uapi/asm/sigcontext.h
221
__u16 ss, __ssh;
arch/x86/include/uapi/asm/sigcontext.h
260
__u16 ss;
arch/x86/include/uapi/asm/sigcontext.h
319
__u16 ss, __ssh;
arch/x86/include/uapi/asm/sigcontext.h
373
__u16 ss; /* If UC_SIGCONTEXT_SS */
arch/x86/include/uapi/asm/vm86.h
83
unsigned short ss, __ssh;
arch/x86/kernel/asm-offsets.c
68
OFFSET(IA32_SIGCONTEXT_ss, sigcontext_32, ss);
arch/x86/kernel/asm-offsets_32.c
31
OFFSET(PT_OLDSS, pt_regs, ss);
arch/x86/kernel/cpu/microcode/intel.c
401
static void init_stage(struct staging_state *ss)
arch/x86/kernel/cpu/microcode/intel.c
403
ss->ucode_len = get_totalsize(&ucode_patch_late->hdr);
arch/x86/kernel/cpu/microcode/intel.c
410
writel(MASK_MBOX_CTRL_ABORT, ss->mmio_base + MBOX_CONTROL_OFFSET);
arch/x86/kernel/cpu/microcode/intel.c
417
static bool can_send_next_chunk(struct staging_state *ss, int *err)
arch/x86/kernel/cpu/microcode/intel.c
420
ss->chunk_size = min(PAGE_SIZE, ss->ucode_len - ss->offset);
arch/x86/kernel/cpu/microcode/intel.c
438
if (ss->bytes_sent + ss->chunk_size > ss->ucode_len * 2) {
arch/x86/kernel/cpu/microcode/intel.c
460
static inline bool staging_is_complete(struct staging_state *ss, int *err)
arch/x86/kernel/cpu/microcode/intel.c
462
return is_end_offset(ss->offset) || !can_send_next_chunk(ss, err);
arch/x86/kernel/cpu/microcode/intel.c
469
static int wait_for_transaction(struct staging_state *ss)
arch/x86/kernel/cpu/microcode/intel.c
477
status = readl(ss->mmio_base + MBOX_STATUS_OFFSET);
arch/x86/kernel/cpu/microcode/intel.c
501
static int send_data_chunk(struct staging_state *ss, void *ucode_ptr)
arch/x86/kernel/cpu/microcode/intel.c
503
u32 *src_chunk = ucode_ptr + ss->offset;
arch/x86/kernel/cpu/microcode/intel.c
514
mbox_size = MBOX_HEADER_SIZE * 2 + ss->chunk_size;
arch/x86/kernel/cpu/microcode/intel.c
515
write_mbox_header(ss->mmio_base, MBOX_HEADER(mbox_size));
arch/x86/kernel/cpu/microcode/intel.c
516
write_mbox_header(ss->mmio_base, MBOX_CMD_LOAD);
arch/x86/kernel/cpu/microcode/intel.c
517
write_mbox_data(ss->mmio_base, src_chunk, ss->chunk_size);
arch/x86/kernel/cpu/microcode/intel.c
518
ss->bytes_sent += ss->chunk_size;
arch/x86/kernel/cpu/microcode/intel.c
521
writel(MASK_MBOX_CTRL_GO, ss->mmio_base + MBOX_CONTROL_OFFSET);
arch/x86/kernel/cpu/microcode/intel.c
523
return wait_for_transaction(ss);
arch/x86/kernel/cpu/microcode/intel.c
530
static int fetch_next_offset(struct staging_state *ss)
arch/x86/kernel/cpu/microcode/intel.c
542
header = read_mbox_header(ss->mmio_base);
arch/x86/kernel/cpu/microcode/intel.c
543
offset = read_mbox_dword(ss->mmio_base);
arch/x86/kernel/cpu/microcode/intel.c
544
status = read_mbox_dword(ss->mmio_base);
arch/x86/kernel/cpu/microcode/intel.c
556
if (!is_end_offset(offset) && offset > ss->ucode_len) {
arch/x86/kernel/cpu/microcode/intel.c
558
offset, ss->ucode_len);
arch/x86/kernel/cpu/microcode/intel.c
566
ss->offset = offset;
arch/x86/kernel/cpu/microcode/intel.c
577
struct staging_state ss = {};
arch/x86/kernel/cpu/microcode/intel.c
580
ss.mmio_base = ioremap(mmio_pa, MBOX_REG_NUM * MBOX_REG_SIZE);
arch/x86/kernel/cpu/microcode/intel.c
581
if (WARN_ON_ONCE(!ss.mmio_base))
arch/x86/kernel/cpu/microcode/intel.c
584
init_stage(&ss);
arch/x86/kernel/cpu/microcode/intel.c
587
while (!staging_is_complete(&ss, &err)) {
arch/x86/kernel/cpu/microcode/intel.c
589
err = send_data_chunk(&ss, ucode_patch_late);
arch/x86/kernel/cpu/microcode/intel.c
596
err = fetch_next_offset(&ss);
arch/x86/kernel/cpu/microcode/intel.c
601
iounmap(ss.mmio_base);
arch/x86/kernel/doublefault_32.c
48
regs.ss = TSS(ss);
arch/x86/kernel/doublefault_32.c
98
.ss = __KERNEL_DS,
arch/x86/kernel/dumpstack.c
148
printk("%sRSP: %04x:%016lx EFLAGS: %08lx", log_lvl, (int)regs->ss,
arch/x86/kernel/dumpstack.c
50
struct entry_stack *ss = cpu_entry_stack(smp_processor_id());
arch/x86/kernel/dumpstack.c
52
void *begin = ss;
arch/x86/kernel/dumpstack.c
53
void *end = ss + 1;
arch/x86/kernel/dumpstack_32.c
91
struct doublefault_stack *ss = &cea->doublefault_stack;
arch/x86/kernel/dumpstack_32.c
93
void *begin = ss->stack;
arch/x86/kernel/dumpstack_32.c
94
void *end = begin + sizeof(ss->stack);
arch/x86/kernel/fred.c
45
loadsegment(ss, __KERNEL_DS);
arch/x86/kernel/kgdb.c
60
{ "ss", 4, offsetof(struct pt_regs, ss) },
arch/x86/kernel/kgdb.c
83
{ "ss", 4, offsetof(struct pt_regs, ss) },
arch/x86/kernel/perf_regs.c
176
regs_user_copy->ss = user_regs->ss;
arch/x86/kernel/perf_regs.c
32
PT_REGS_OFFSET(PERF_REG_X86_SS, ss),
arch/x86/kernel/process_32.c
118
regs->ss = __USER_DS;
arch/x86/kernel/process_32.c
75
log_lvl, (u16)regs->ds, (u16)regs->es, (u16)regs->fs, gs, regs->ss, regs->flags);
arch/x86/kernel/process_64.c
701
savesegment(ss, ss_sel);
arch/x86/kernel/process_64.c
703
loadsegment(ss, __KERNEL_DS);
arch/x86/kernel/ptrace.c
114
REG_OFFSET_NAME(ss),
arch/x86/kernel/ptrace.c
223
case offsetof(struct user_regs_struct, ss):
arch/x86/kernel/ptrace.c
284
case offsetof(struct user_regs_struct, ss):
arch/x86/kernel/ptrace.c
330
case offsetof(struct user_regs_struct,ss):
arch/x86/kernel/ptrace.c
333
task_pt_regs(task)->ss = value;
arch/x86/kernel/ptrace.c
383
case offsetof(struct user_regs_struct, ss):
arch/x86/kernel/ptrace.c
415
case offsetof(struct user_regs_struct, ss):
arch/x86/kernel/ptrace.c
909
SEG32(ss);
arch/x86/kernel/ptrace.c
983
R32(ss, ss);
arch/x86/kernel/rethook.c
92
*(unsigned long *)&regs->ss = regs->flags;
arch/x86/kernel/signal.c
124
regs->ss != __USER_DS &&
arch/x86/kernel/signal_32.c
131
regs->ss = sc.ss | 0x03;
arch/x86/kernel/signal_32.c
240
unsafe_put_user(regs->ss, (unsigned int __user *)&sc->ss, Efault);
arch/x86/kernel/signal_32.c
322
regs->ss = __USER_DS;
arch/x86/kernel/signal_32.c
404
regs->ss = __USER_DS;
arch/x86/kernel/signal_64.c
126
unsafe_put_user(regs->ss, &sc->ss, Efault);
arch/x86/kernel/signal_64.c
233
if (unlikely(regs->ss != __USER_DS))
arch/x86/kernel/signal_64.c
355
regs->ss = __USER_DS;
arch/x86/kernel/signal_64.c
36
: [old_ss] "rm" ((u16)regs->ss));
arch/x86/kernel/signal_64.c
47
regs->ss = __USER_DS;
arch/x86/kernel/signal_64.c
82
regs->ss = sc.ss | 0x03;
arch/x86/kernel/traps.c
640
gpregs->ss = p[4];
arch/x86/kernel/vm86_32.c
130
unsafe_put_user(regs->pt.ss, &user->regs.ss, Efault_end);
arch/x86/kernel/vm86_32.c
267
vm86regs.pt.ss = v.regs.ss;
arch/x86/kernel/vm86_32.c
536
do_int(regs, trapno, (unsigned char __user *) (regs->pt.ss << 4), SP(regs));
arch/x86/kernel/vm86_32.c
563
ssp = (unsigned char __user *) (regs->pt.ss << 4);
arch/x86/kvm/emulate.c
2314
setup_syscalls_segments(struct desc_struct *cs, struct desc_struct *ss)
arch/x86/kvm/emulate.c
2327
set_desc_base(ss, 0); /* flat segment */
arch/x86/kvm/emulate.c
2328
set_desc_limit(ss, 0xfffff); /* 4GB limit */
arch/x86/kvm/emulate.c
2329
ss->g = 1; /* 4kb granularity */
arch/x86/kvm/emulate.c
2330
ss->s = 1;
arch/x86/kvm/emulate.c
2331
ss->type = 0x03; /* Read/Write, Accessed */
arch/x86/kvm/emulate.c
2332
ss->d = 1; /* 32bit stack segment */
arch/x86/kvm/emulate.c
2333
ss->dpl = 0;
arch/x86/kvm/emulate.c
2334
ss->p = 1;
arch/x86/kvm/emulate.c
2335
ss->l = 0;
arch/x86/kvm/emulate.c
2336
ss->avl = 0;
arch/x86/kvm/emulate.c
2342
struct desc_struct cs, ss;
arch/x86/kvm/emulate.c
2367
setup_syscalls_segments(&cs, &ss);
arch/x86/kvm/emulate.c
2378
ops->set_segment(ctxt, ss_sel, &ss, 0, VCPU_SREG_SS);
arch/x86/kvm/emulate.c
2409
struct desc_struct cs, ss;
arch/x86/kvm/emulate.c
2435
setup_syscalls_segments(&cs, &ss);
arch/x86/kvm/emulate.c
2445
ops->set_segment(ctxt, ss_sel, &ss, 0, VCPU_SREG_SS);
arch/x86/kvm/emulate.c
2462
struct desc_struct cs, ss;
arch/x86/kvm/emulate.c
2472
setup_syscalls_segments(&cs, &ss);
arch/x86/kvm/emulate.c
2483
ss.dpl = 3;
arch/x86/kvm/emulate.c
2510
ops->set_segment(ctxt, ss_sel, &ss, 0, VCPU_SREG_SS);
arch/x86/kvm/emulate.c
2636
tss->ss = get_segment_selector(ctxt, VCPU_SREG_SS);
arch/x86/kvm/emulate.c
2665
set_segment_selector(ctxt, tss->ss, VCPU_SREG_SS);
arch/x86/kvm/emulate.c
2686
ret = __load_segment_descriptor(ctxt, tss->ss, VCPU_SREG_SS, cpl,
arch/x86/kvm/emulate.c
2749
tss->ss = get_segment_selector(ctxt, VCPU_SREG_SS);
arch/x86/kvm/emulate.c
2784
set_segment_selector(ctxt, tss->ss, VCPU_SREG_SS);
arch/x86/kvm/emulate.c
2818
ret = __load_segment_descriptor(ctxt, tss->ss, VCPU_SREG_SS, cpl,
arch/x86/kvm/emulate.c
469
struct desc_struct ss;
arch/x86/kvm/emulate.c
473
ctxt->ops->get_segment(ctxt, &sel, &ss, NULL, VCPU_SREG_SS);
arch/x86/kvm/emulate.c
474
return ~0U >> ((ss.d ^ 1) * 16); /* d=0: 0xffff; d=1: 0xffffffff */
arch/x86/kvm/smm.c
214
enter_smm_save_seg_32(vcpu, &smram->ss, &smram->ss_sel, VCPU_SREG_SS);
arch/x86/kvm/smm.c
266
enter_smm_save_seg_64(vcpu, &smram->ss, VCPU_SREG_SS);
arch/x86/kvm/smm.c
43
CHECK_SMRAM32_OFFSET(ss, 0xFF9C);
arch/x86/kvm/smm.c
495
rsm_load_seg_32(vcpu, &smstate->ss, smstate->ss_sel, VCPU_SREG_SS);
arch/x86/kvm/smm.c
557
rsm_load_seg_64(vcpu, &smstate->ss, VCPU_SREG_SS);
arch/x86/kvm/smm.c
63
CHECK_SMRAM64_OFFSET(ss, 0xFE20);
arch/x86/kvm/smm.h
48
struct kvm_smm_seg_state_32 ss;
arch/x86/kvm/smm.h
82
struct kvm_smm_seg_state_64 ss;
arch/x86/kvm/svm/nested.c
1091
to_save->ss = from_save->ss;
arch/x86/kvm/svm/nested.c
1160
vmcb12->save.ss = vmcb02->save.ss;
arch/x86/kvm/svm/nested.c
671
vmcb02->save.ss = vmcb12->save.ss;
arch/x86/kvm/svm/svm.c
1143
init_seg(&save->ss);
arch/x86/kvm/svm/svm.c
1562
case VCPU_SREG_SS: return &save->ss;
arch/x86/kvm/svm/svm.c
3391
save->ss.selector, save->ss.attrib,
arch/x86/kvm/svm/svm.c
3392
save->ss.limit, save->ss.base);
arch/x86/kvm/tss.h
26
u32 ss;
arch/x86/kvm/tss.h
55
u16 ss;
arch/x86/kvm/vmx/vmx.c
3923
struct kvm_segment ss;
arch/x86/kvm/vmx/vmx.c
3926
vmx_get_segment(vcpu, &ss, VCPU_SREG_SS);
arch/x86/kvm/vmx/vmx.c
3927
ss_rpl = ss.selector & SEGMENT_RPL_MASK;
arch/x86/kvm/vmx/vmx.c
3929
if (ss.unusable)
arch/x86/kvm/vmx/vmx.c
3931
if (ss.type != 3 && ss.type != 7)
arch/x86/kvm/vmx/vmx.c
3933
if (!ss.s)
arch/x86/kvm/vmx/vmx.c
3935
if (ss.dpl != ss_rpl) /* DPL != RPL */
arch/x86/kvm/vmx/vmx.c
3937
if (!ss.present)
arch/x86/kvm/vmx/vmx.c
4006
struct kvm_segment cs, ss;
arch/x86/kvm/vmx/vmx.c
4009
vmx_get_segment(vcpu, &ss, VCPU_SREG_SS);
arch/x86/kvm/vmx/vmx.c
4012
(ss.selector & SEGMENT_RPL_MASK));
arch/x86/kvm/x86.c
12144
kvm_get_segment(vcpu, &sregs->ss, VCPU_SREG_SS);
arch/x86/kvm/x86.c
12407
kvm_set_segment(vcpu, &sregs->ss, VCPU_SREG_SS);
arch/x86/lib/insn-eval.c
354
return (unsigned short)(regs->ss & 0xffff);
arch/x86/lib/insn-eval.c
378
return (unsigned short)(regs->ss & 0xffff);
arch/x86/lib/insn-eval.c
397
return (unsigned short)(regs->ss & 0xffff);
arch/x86/math-emu/fpu_system.h
80
#define FPU_SS (*(unsigned short *) &(FPU_info->regs->ss))
arch/x86/math-emu/get_address.c
51
offsetof(struct pt_regs, ss),
arch/x86/math-emu/get_address.c
64
offsetof(struct pt_regs, ss),
arch/x86/math-emu/get_address.c
74
u_char ss, index, base;
arch/x86/math-emu/get_address.c
82
ss = base >> 6;
arch/x86/math-emu/get_address.c
94
if (ss)
arch/x86/math-emu/get_address.c
97
offset += (REG_(index)) << ss;
arch/x86/mm/extable.c
224
unsigned short ss = uregs->ss;
arch/x86/mm/extable.c
279
uregs->fred_ss.ss = ss;
arch/x86/platform/efi/efi_64.c
476
loadsegment(ss, __KERNEL_DS); \
arch/x86/power/cpu.c
226
loadsegment(ss, __KERNEL_DS);
arch/x86/um/signal.c
154
PUTREG(SS, ss);
arch/x86/um/signal.c
79
GETREG(SS, ss);
arch/x86/xen/smp_pv.c
251
ctxt->user_regs.ss = __KERNEL_DS;
crypto/ahash.c
650
unsigned int ss = crypto_ahash_statesize(tfm);
crypto/ahash.c
653
memcpy(out + ss - plen, buf + reqsize - plen, plen);
crypto/ahash.c
689
unsigned int ss = crypto_ahash_statesize(tfm);
crypto/ahash.c
692
memcpy(buf + reqsize - plen, in + ss - plen, plen);
crypto/hmac.c
136
int ss = crypto_shash_statesize(parent);
crypto/hmac.c
138
const u8 *opad = &tctx->pads[ss];
crypto/hmac.c
191
int ss;
crypto/hmac.c
212
ss = salg->statesize;
crypto/hmac.c
214
ss < alg->cra_blocksize)
crypto/hmac.c
224
inst->alg.base.cra_ctxsize = sizeof(struct hmac_ctx) + (ss * 2);
crypto/hmac.c
227
inst->alg.statesize = ss;
crypto/hmac.c
258
int ss = crypto_ahash_statesize(parent);
crypto/hmac.c
260
u8 *opad = &tctx->pads[ss];
crypto/hmac.c
360
int ss = crypto_ahash_statesize(tfm);
crypto/hmac.c
361
const u8 *opad = &tctx->pads[ss];
crypto/hmac.c
40
int ss = crypto_shash_statesize(parent);
crypto/hmac.c
44
u8 *opad = &tctx->pads[ss];
crypto/hmac.c
455
int ds, ss, err;
crypto/hmac.c
476
ss = halg->statesize;
crypto/hmac.c
477
if (ds > alg->cra_blocksize || ss < alg->cra_blocksize)
crypto/hmac.c
490
(ss * 2);
crypto/hmac.c
495
inst->alg.halg.statesize = ss;
crypto/shash.c
212
unsigned int plen, ss;
crypto/shash.c
215
ss = crypto_shash_statesize(tfm);
crypto/shash.c
217
ss -= plen;
crypto/shash.c
219
memcpy(out, buf, ss);
crypto/shash.c
240
unsigned int ss = crypto_shash_statesize(tfm);
crypto/shash.c
243
memcpy(out + ss - plen, buf + descsize - plen, plen);
crypto/shash.c
254
unsigned int descsize, plen, ss;
crypto/shash.c
260
ss = crypto_shash_statesize(tfm);
crypto/shash.c
263
ss -= plen;
crypto/shash.c
268
memcpy(buf, in, ss);
crypto/shash.c
291
unsigned int ss = crypto_shash_statesize(tfm);
crypto/shash.c
294
memcpy(buf + descsize - plen, in + ss - plen, plen);
drivers/accel/amdxdna/amdxdna_ctx.c
65
struct srcu_struct *ss)
drivers/accel/amdxdna/amdxdna_ctx.c
69
synchronize_srcu(ss);
drivers/clk/meson/clk-mpll.c
146
unsigned int ss =
drivers/clk/meson/clk-mpll.c
148
meson_parm_write(clk->map, &mpll->ssen, ss);
drivers/clocksource/timer-tegra186.c
350
u32 hi, lo, ss;
drivers/clocksource/timer-tegra186.c
361
ss = hi;
drivers/clocksource/timer-tegra186.c
365
} while (hi != ss);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
104
spaces = readl(ss->base + SS_FCSR);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
114
dev_err_ratelimited(ss->dev, "ERROR: sg_miter return null\n");
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
122
readsl(ss->base + SS_TXFIFO, mo.addr + oo, todo);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
143
writel(0, ss->base + SS_CTL);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
144
spin_unlock_irqrestore(&ss->slock, flags);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
180
struct sun4i_ss_ctx *ss = op->ss;
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
19
struct sun4i_ss_ctx *ss = op->ss;
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
213
dev_err_ratelimited(ss->dev, "ERROR: Some SGs are NULL\n");
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
252
spin_lock_irqsave(&ss->slock, flags);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
255
writesl(ss->base + SS_KEY0 + i * 4, &op->key[i], 1);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
260
writesl(ss->base + SS_IV0 + i * 4, &v, 1);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
263
writel(mode, ss->base + SS_CTL);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
278
dev_err_ratelimited(ss->dev, "ERROR: sg_miter return null\n");
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
289
writesl(ss->base + SS_RXFIFO, mi.addr + oi,
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
303
memcpy(ss->buf + ob, mi.addr + oi, todo);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
308
writesl(ss->base + SS_RXFIFO, ss->buf,
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
320
spaces = readl(ss->base + SS_FCSR);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
332
dev_err_ratelimited(ss->dev, "ERROR: sg_miter return null\n");
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
341
readsl(ss->base + SS_TXFIFO, mo.addr + oo, todo);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
353
readsl(ss->base + SS_TXFIFO, ss->bufo, tx_cnt);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
365
memcpy(mo.addr + oo, ss->bufo + obo, todo);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
390
writel(0, ss->base + SS_CTL);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
391
spin_unlock_irqrestore(&ss->slock, flags);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
45
dev_err_ratelimited(ss->dev, "ERROR: Some SGs are NULL\n");
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
545
op->ss = algt->ss;
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
549
dev_err(op->ss->dev, "ERROR: Cannot allocate fallback for %s %ld\n",
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
558
err = pm_runtime_resume_and_get(op->ss->dev);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
573
pm_runtime_put(op->ss->dev);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
581
struct sun4i_ss_ctx *ss = op->ss;
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
594
dev_dbg(ss->dev, "ERROR: Invalid keylen %u\n", keylen);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
60
spin_lock_irqsave(&ss->slock, flags);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
63
writesl(ss->base + SS_KEY0 + i * 4, &op->key[i], 1);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
68
writesl(ss->base + SS_IV0 + i * 4, &v, 1);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
71
writel(mode, ss->base + SS_CTL);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
86
dev_err_ratelimited(ss->dev, "ERROR: sg_miter return null\n");
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c
94
writesl(ss->base + SS_RXFIFO, mi.addr + oi, todo);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
240
if (!ss_algs[i].ss)
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
274
struct sun4i_ss_ctx *ss = dev_get_drvdata(dev);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
276
reset_control_assert(ss->reset);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
278
clk_disable_unprepare(ss->ssclk);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
279
clk_disable_unprepare(ss->busclk);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
285
struct sun4i_ss_ctx *ss = dev_get_drvdata(dev);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
289
err = clk_prepare_enable(ss->busclk);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
291
dev_err(ss->dev, "Cannot prepare_enable busclk\n");
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
295
err = clk_prepare_enable(ss->ssclk);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
297
dev_err(ss->dev, "Cannot prepare_enable ssclk\n");
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
301
err = reset_control_deassert(ss->reset);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
303
dev_err(ss->dev, "Cannot deassert reset control\n");
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
322
static int sun4i_ss_pm_init(struct sun4i_ss_ctx *ss)
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
326
pm_runtime_use_autosuspend(ss->dev);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
327
pm_runtime_set_autosuspend_delay(ss->dev, 2000);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
329
err = pm_runtime_set_suspended(ss->dev);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
332
pm_runtime_enable(ss->dev);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
336
static void sun4i_ss_pm_exit(struct sun4i_ss_ctx *ss)
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
338
pm_runtime_disable(ss->dev);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
348
struct sun4i_ss_ctx *ss;
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
353
ss = devm_kzalloc(&pdev->dev, sizeof(*ss), GFP_KERNEL);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
354
if (!ss)
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
357
ss->base = devm_platform_ioremap_resource(pdev, 0);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
358
if (IS_ERR(ss->base)) {
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
360
return PTR_ERR(ss->base);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
363
ss->variant = of_device_get_match_data(&pdev->dev);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
364
if (!ss->variant) {
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
369
ss->ssclk = devm_clk_get(&pdev->dev, "mod");
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
370
if (IS_ERR(ss->ssclk)) {
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
371
err = PTR_ERR(ss->ssclk);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
377
ss->busclk = devm_clk_get(&pdev->dev, "ahb");
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
378
if (IS_ERR(ss->busclk)) {
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
379
err = PTR_ERR(ss->busclk);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
385
ss->reset = devm_reset_control_get_optional(&pdev->dev, "ahb");
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
386
if (IS_ERR(ss->reset))
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
387
return PTR_ERR(ss->reset);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
388
if (!ss->reset)
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
395
err = clk_set_rate(ss->ssclk, cr_mod);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
406
cr = clk_get_rate(ss->busclk);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
414
cr = clk_get_rate(ss->ssclk);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
426
ss->dev = &pdev->dev;
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
427
platform_set_drvdata(pdev, ss);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
429
spin_lock_init(&ss->slock);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
431
err = sun4i_ss_pm_init(ss);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
442
err = pm_runtime_resume_and_get(ss->dev);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
446
writel(SS_ENABLED, ss->base + SS_CTL);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
447
v = readl(ss->base + SS_CTL);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
451
writel(0, ss->base + SS_CTL);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
453
pm_runtime_put_sync(ss->dev);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
456
ss_algs[i].ss = ss;
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
461
dev_err(ss->dev, "Fail to register %s\n",
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
469
dev_err(ss->dev, "Fail to register %s\n",
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
477
dev_err(ss->dev, "Fail to register %s\n",
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
485
ss->dbgfs_dir = debugfs_create_dir("sun4i-ss", NULL);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
486
ss->dbgfs_stats = debugfs_create_file("stats", 0444, ss->dbgfs_dir, ss,
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
506
sun4i_ss_pm_exit(ss);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
513
struct sun4i_ss_ctx *ss = platform_get_drvdata(pdev);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c
529
sun4i_ss_pm_exit(ss);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-hash.c
196
struct sun4i_ss_ctx *ss = tfmctx->ss;
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-hash.c
204
dev_dbg(ss->dev, "%s %s bc=%llu len=%u mode=%x wl=%u h0=%0x",
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-hash.c
214
dev_err(ss->dev, "Cannot process too large request\n");
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-hash.c
226
spin_lock_bh(&ss->slock);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-hash.c
235
writel(op->hash[i], ss->base + SS_IV0 + i * 4);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-hash.c
238
writel(op->mode | SS_ENABLED | ivmode, ss->base + SS_CTL);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-hash.c
248
dev_err(ss->dev, "ERROR: Bound error %u %u\n",
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-hash.c
269
dev_dbg(ss->dev, "We can DMA\n");
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-hash.c
28
op->ss = algt->ss;
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-hash.c
30
err = pm_runtime_resume_and_get(op->ss->dev);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-hash.c
304
writesl(ss->base + SS_RXFIFO, op->buf,
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-hash.c
316
writesl(ss->base + SS_RXFIFO, mi.addr + in_i, todo);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-hash.c
322
spaces = readl(ss->base + SS_FCSR);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-hash.c
362
writel(op->mode | SS_ENABLED | SS_DATA_END, ss->base + SS_CTL);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-hash.c
365
v = readl(ss->base + SS_CTL);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-hash.c
369
dev_err_ratelimited(ss->dev,
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-hash.c
386
op->hash[i] = readl(ss->base + SS_MD0 + i * 4);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-hash.c
412
writesl(ss->base + SS_RXFIFO, op->buf, nwait);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-hash.c
43
pm_runtime_put(op->ss->dev);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-hash.c
454
writesl(ss->base + SS_RXFIFO, bf, j);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-hash.c
457
writel(op->mode | SS_ENABLED | SS_DATA_END, ss->base + SS_CTL);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-hash.c
466
v = readl(ss->base + SS_CTL);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-hash.c
470
dev_err_ratelimited(ss->dev,
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-hash.c
489
v = readl(ss->base + SS_MD0 + i * 4);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-hash.c
490
if (ss->variant->sha1_in_be)
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-hash.c
497
v = readl(ss->base + SS_MD0 + i * 4);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-hash.c
503
writel(0, ss->base + SS_CTL);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-hash.c
504
spin_unlock_bh(&ss->slock);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-prng.c
11
memcpy(algt->ss->seed, seed, slen);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-prng.c
26
struct sun4i_ss_ctx *ss;
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-prng.c
30
ss = algt->ss;
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-prng.c
32
err = pm_runtime_resume_and_get(ss->dev);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-prng.c
41
spin_lock_bh(&ss->slock);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-prng.c
43
writel(mode, ss->base + SS_CTL);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-prng.c
48
writel(ss->seed[i], ss->base + SS_KEY0 + i * 4);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-prng.c
52
readsl(ss->base + SS_TXFIFO, data, len / 4);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-prng.c
58
v = readl(ss->base + SS_KEY0 + i * 4);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-prng.c
59
ss->seed[i] = v;
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-prng.c
63
writel(0, ss->base + SS_CTL);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-prng.c
64
spin_unlock_bh(&ss->slock);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-prng.c
66
pm_runtime_put(ss->dev);
drivers/crypto/allwinner/sun4i-ss/sun4i-ss.h
169
struct sun4i_ss_ctx *ss;
drivers/crypto/allwinner/sun4i-ss/sun4i-ss.h
180
struct sun4i_ss_ctx *ss;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
124
struct sun8i_ss_dev *ss = op->ss;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
130
struct sun8i_ss_flow *sf = &ss->flows[rctx->flow];
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
150
a = dma_map_single(ss->dev, sf->iv[i], ivsize, DMA_TO_DEVICE);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
151
if (dma_mapping_error(ss->dev, a)) {
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
153
dev_err(ss->dev, "Cannot DMA MAP IV\n");
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
176
dma_unmap_single(ss->dev, rctx->p_iv[i], ivsize, DMA_TO_DEVICE);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
187
struct sun8i_ss_dev *ss = op->ss;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
191
struct sun8i_ss_flow *sf = &ss->flows[rctx->flow];
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
203
dev_dbg(ss->dev, "%s %s %u %x IV(%p %u) key=%u\n", __func__,
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
213
rctx->op_mode = ss->variant->op_mode[algt->ss_blockmode];
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
214
rctx->method = ss->variant->alg_cipher[algt->ss_algo_id];
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
217
rctx->p_key = dma_map_single(ss->dev, op->key, op->keylen, DMA_TO_DEVICE);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
218
if (dma_mapping_error(ss->dev, rctx->p_key)) {
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
219
dev_err(ss->dev, "Cannot DMA MAP KEY\n");
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
231
nr_sgs = dma_map_sg(ss->dev, areq->src, nsgs, DMA_BIDIRECTIONAL);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
233
dev_err(ss->dev, "Invalid sg number %d\n", nr_sgs);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
239
nr_sgs = dma_map_sg(ss->dev, areq->src, nsgs, DMA_TO_DEVICE);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
241
dev_err(ss->dev, "Invalid sg number %d\n", nr_sgs);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
245
nr_sgd = dma_map_sg(ss->dev, areq->dst, nsgd, DMA_FROM_DEVICE);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
247
dev_err(ss->dev, "Invalid sg number %d\n", nr_sgd);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
262
dev_dbg(ss->dev, "%s total=%u SGS(%d %u off=%d) todo=%u\n", __func__,
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
270
dev_err(ss->dev, "remaining len %d\n", len);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
284
dev_dbg(ss->dev, "%s total=%u SGD(%d %u off=%d) todo=%u\n", __func__,
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
292
dev_err(ss->dev, "remaining len %d\n", len);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
297
err = sun8i_ss_run_task(ss, rctx, crypto_tfm_alg_name(areq->base.tfm));
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
301
dma_unmap_sg(ss->dev, areq->src, nsgs, DMA_BIDIRECTIONAL);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
303
dma_unmap_sg(ss->dev, areq->src, nsgs, DMA_TO_DEVICE);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
304
dma_unmap_sg(ss->dev, areq->dst, nsgd, DMA_FROM_DEVICE);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
310
dma_unmap_single(ss->dev, rctx->p_iv[i], ivsize, DMA_TO_DEVICE);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
325
dma_unmap_single(ss->dev, rctx->p_key, op->keylen, DMA_TO_DEVICE);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
359
e = sun8i_ss_get_engine_number(op->ss);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
360
engine = op->ss->flows[e].engine;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
380
e = sun8i_ss_get_engine_number(op->ss);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
381
engine = op->ss->flows[e].engine;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
399
op->ss = algt->ss;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
403
dev_err(op->ss->dev, "ERROR: Cannot allocate fallback for %s %ld\n",
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
415
err = pm_runtime_resume_and_get(op->ss->dev);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
417
dev_err(op->ss->dev, "pm error %d\n", err);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
433
pm_runtime_put_sync(op->ss->dev);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
440
struct sun8i_ss_dev *ss = op->ss;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
450
dev_dbg(ss->dev, "ERROR: Invalid keylen %u\n", keylen);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
469
struct sun8i_ss_dev *ss = op->ss;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
472
dev_dbg(ss->dev, "Invalid keylen %u\n", keylen);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
107
mutex_lock(&ss->mlock);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
108
writel(rctx->p_key, ss->base + SS_KEY_ADR_REG);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
113
writel(rctx->p_iv[0], ss->base + SS_IV_ADR_REG);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
115
writel(rctx->t_dst[i - 1].addr + rctx->t_dst[i - 1].len * 4 - ivlen, ss->base + SS_IV_ADR_REG);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
117
writel(rctx->p_iv[i], ss->base + SS_IV_ADR_REG);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
121
dev_dbg(ss->dev,
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
128
writel(rctx->t_src[i].addr, ss->base + SS_SRC_ADR_REG);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
129
writel(rctx->t_dst[i].addr, ss->base + SS_DST_ADR_REG);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
130
writel(rctx->t_src[i].len, ss->base + SS_LEN_ADR_REG);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
132
reinit_completion(&ss->flows[flow].complete);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
133
ss->flows[flow].status = 0;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
136
writel(v, ss->base + SS_CTL_REG);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
137
mutex_unlock(&ss->mlock);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
138
wait_for_completion_interruptible_timeout(&ss->flows[flow].complete,
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
140
if (ss->flows[flow].status == 0) {
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
141
dev_err(ss->dev, "DMA timeout for %s\n", name);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
151
struct sun8i_ss_dev *ss = (struct sun8i_ss_dev *)data;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
155
p = readl(ss->base + SS_INT_STA_REG);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
158
writel(BIT(flow), ss->base + SS_INT_STA_REG);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
159
ss->flows[flow].status = 1;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
160
complete(&ss->flows[flow].complete);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
472
struct sun8i_ss_dev *ss __maybe_unused = seq->private;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
478
ss->flows[i].stat_req);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
484
if (!ss_algs[i].ss)
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
533
static void sun8i_ss_free_flows(struct sun8i_ss_dev *ss, int i)
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
536
crypto_engine_exit(ss->flows[i].engine);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
544
static int allocate_flows(struct sun8i_ss_dev *ss)
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
548
ss->flows = devm_kcalloc(ss->dev, MAXFLOW, sizeof(struct sun8i_ss_flow),
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
550
if (!ss->flows)
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
554
init_completion(&ss->flows[i].complete);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
556
ss->flows[i].biv = devm_kmalloc(ss->dev, AES_BLOCK_SIZE,
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
558
if (!ss->flows[i].biv) {
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
564
ss->flows[i].iv[j] = devm_kmalloc(ss->dev, AES_BLOCK_SIZE,
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
566
if (!ss->flows[i].iv[j]) {
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
573
ss->flows[i].pad = devm_kmalloc(ss->dev, MAX_PAD_SIZE,
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
575
if (!ss->flows[i].pad) {
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
579
ss->flows[i].result =
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
580
devm_kmalloc(ss->dev, max(SHA256_DIGEST_SIZE,
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
583
if (!ss->flows[i].result) {
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
588
ss->flows[i].engine = crypto_engine_alloc_init(ss->dev, true);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
589
if (!ss->flows[i].engine) {
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
590
dev_err(ss->dev, "Cannot allocate engine\n");
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
595
err = crypto_engine_start(ss->flows[i].engine);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
597
dev_err(ss->dev, "Cannot start engine\n");
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
603
sun8i_ss_free_flows(ss, i);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
613
struct sun8i_ss_dev *ss = dev_get_drvdata(dev);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
616
reset_control_assert(ss->reset);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
618
clk_disable_unprepare(ss->ssclks[i]);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
62
int sun8i_ss_get_engine_number(struct sun8i_ss_dev *ss)
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
624
struct sun8i_ss_dev *ss = dev_get_drvdata(dev);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
628
if (!ss->variant->ss_clks[i].name)
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
630
err = clk_prepare_enable(ss->ssclks[i]);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
632
dev_err(ss->dev, "Cannot prepare_enable %s\n",
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
633
ss->variant->ss_clks[i].name);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
637
err = reset_control_deassert(ss->reset);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
639
dev_err(ss->dev, "Cannot deassert reset control\n");
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
64
return atomic_inc_return(&ss->flow) % MAXFLOW;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
643
writel(BIT(0) | BIT(1), ss->base + SS_INT_CTL_REG);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
655
static int sun8i_ss_pm_init(struct sun8i_ss_dev *ss)
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
659
pm_runtime_use_autosuspend(ss->dev);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
660
pm_runtime_set_autosuspend_delay(ss->dev, 2000);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
662
err = pm_runtime_set_suspended(ss->dev);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
665
pm_runtime_enable(ss->dev);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
669
static void sun8i_ss_pm_exit(struct sun8i_ss_dev *ss)
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
67
int sun8i_ss_run_task(struct sun8i_ss_dev *ss, struct sun8i_cipher_req_ctx *rctx,
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
671
pm_runtime_disable(ss->dev);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
674
static int sun8i_ss_register_algs(struct sun8i_ss_dev *ss)
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
680
ss_algs[i].ss = ss;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
684
ss_method = ss->variant->alg_cipher[id];
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
686
dev_info(ss->dev,
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
689
ss_algs[i].ss = NULL;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
693
ss_method = ss->variant->op_mode[id];
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
695
dev_info(ss->dev, "DEBUG: Blockmode of %s not supported\n",
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
697
ss_algs[i].ss = NULL;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
700
dev_info(ss->dev, "DEBUG: Register %s\n",
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
704
dev_err(ss->dev, "Fail to register %s\n",
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
706
ss_algs[i].ss = NULL;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
713
dev_err(ss->dev, "Fail to register %s\n",
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
715
ss_algs[i].ss = NULL;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
720
ss_method = ss->variant->alg_hash[id];
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
722
dev_info(ss->dev,
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
725
ss_algs[i].ss = NULL;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
728
dev_info(ss->dev, "Register %s\n",
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
732
dev_err(ss->dev, "ERROR: Fail to register %s\n",
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
734
ss_algs[i].ss = NULL;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
739
ss_algs[i].ss = NULL;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
740
dev_err(ss->dev, "ERROR: tried to register an unknown algo\n");
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
746
static void sun8i_ss_unregister_algs(struct sun8i_ss_dev *ss)
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
751
if (!ss_algs[i].ss)
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
755
dev_info(ss->dev, "Unregister %d %s\n", i,
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
76
ss->flows[flow].stat_req++;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
760
dev_info(ss->dev, "Unregister %d %s\n", i,
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
765
dev_info(ss->dev, "Unregister %d %s\n", i,
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
773
static int sun8i_ss_get_clks(struct sun8i_ss_dev *ss)
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
779
if (!ss->variant->ss_clks[i].name)
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
781
ss->ssclks[i] = devm_clk_get(ss->dev, ss->variant->ss_clks[i].name);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
782
if (IS_ERR(ss->ssclks[i])) {
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
783
err = PTR_ERR(ss->ssclks[i]);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
784
dev_err(ss->dev, "Cannot get %s SS clock err=%d\n",
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
785
ss->variant->ss_clks[i].name, err);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
788
cr = clk_get_rate(ss->ssclks[i]);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
791
if (ss->variant->ss_clks[i].freq > 0 &&
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
792
cr != ss->variant->ss_clks[i].freq) {
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
793
dev_info(ss->dev, "Set %s clock to %lu (%lu Mhz) from %lu (%lu Mhz)\n",
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
794
ss->variant->ss_clks[i].name,
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
795
ss->variant->ss_clks[i].freq,
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
796
ss->variant->ss_clks[i].freq / 1000000,
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
798
err = clk_set_rate(ss->ssclks[i], ss->variant->ss_clks[i].freq);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
800
dev_err(ss->dev, "Fail to set %s clk speed to %lu hz\n",
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
801
ss->variant->ss_clks[i].name,
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
802
ss->variant->ss_clks[i].freq);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
804
if (ss->variant->ss_clks[i].max_freq > 0 &&
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
805
cr > ss->variant->ss_clks[i].max_freq)
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
806
dev_warn(ss->dev, "Frequency for %s (%lu hz) is higher than datasheet's recommendation (%lu hz)",
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
807
ss->variant->ss_clks[i].name, cr,
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
808
ss->variant->ss_clks[i].max_freq);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
815
struct sun8i_ss_dev *ss;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
819
ss = devm_kzalloc(&pdev->dev, sizeof(*ss), GFP_KERNEL);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
820
if (!ss)
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
823
ss->dev = &pdev->dev;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
824
platform_set_drvdata(pdev, ss);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
826
ss->variant = of_device_get_match_data(&pdev->dev);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
827
if (!ss->variant) {
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
832
ss->base = devm_platform_ioremap_resource(pdev, 0);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
833
if (IS_ERR(ss->base))
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
834
return PTR_ERR(ss->base);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
836
err = sun8i_ss_get_clks(ss);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
844
ss->reset = devm_reset_control_get(&pdev->dev, NULL);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
845
if (IS_ERR(ss->reset))
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
846
return dev_err_probe(&pdev->dev, PTR_ERR(ss->reset),
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
849
mutex_init(&ss->mlock);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
851
err = allocate_flows(ss);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
855
err = sun8i_ss_pm_init(ss);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
859
err = devm_request_irq(&pdev->dev, irq, ss_irq_handler, 0, "sun8i-ss", ss);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
861
dev_err(ss->dev, "Cannot request SecuritySystem IRQ (err=%d)\n", err);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
865
err = sun8i_ss_register_algs(ss);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
869
err = pm_runtime_resume_and_get(ss->dev);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
873
v = readl(ss->base + SS_CTL_REG);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
878
pm_runtime_put_sync(ss->dev);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
887
dbgfs_dir, ss,
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
891
ss->dbgfs_dir = dbgfs_dir;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
892
ss->dbgfs_stats = dbgfs_stats;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
898
sun8i_ss_unregister_algs(ss);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
900
sun8i_ss_pm_exit(ss);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
902
sun8i_ss_free_flows(ss, MAXFLOW - 1);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
908
struct sun8i_ss_dev *ss = platform_get_drvdata(pdev);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
910
sun8i_ss_unregister_algs(ss);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
913
debugfs_remove_recursive(ss->dbgfs_dir);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
916
sun8i_ss_free_flows(ss, MAXFLOW - 1);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
918
sun8i_ss_pm_exit(ss);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
103
op->ss = algt->ss;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
109
dev_err(algt->ss->dev, "Fallback driver could no be loaded\n");
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
123
err = pm_runtime_get_sync(op->ss->dev);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
128
pm_runtime_put_noidle(op->ss->dev);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
141
pm_runtime_put_sync_suspend(tfmctx->ss->dev);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
286
static int sun8i_ss_run_hash_task(struct sun8i_ss_dev *ss,
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
295
ss->flows[flow].stat_req++;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
310
mutex_lock(&ss->mlock);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
313
writel(rctx->t_dst[i - 1].addr, ss->base + SS_KEY_ADR_REG);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
314
writel(rctx->t_dst[i - 1].addr, ss->base + SS_IV_ADR_REG);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
317
dev_dbg(ss->dev,
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
323
writel(rctx->t_src[i].addr, ss->base + SS_SRC_ADR_REG);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
324
writel(rctx->t_dst[i].addr, ss->base + SS_DST_ADR_REG);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
325
writel(rctx->t_src[i].len, ss->base + SS_LEN_ADR_REG);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
326
writel(BIT(0) | BIT(1), ss->base + SS_INT_CTL_REG);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
328
reinit_completion(&ss->flows[flow].complete);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
329
ss->flows[flow].status = 0;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
332
writel(v, ss->base + SS_CTL_REG);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
333
mutex_unlock(&ss->mlock);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
334
wait_for_completion_interruptible_timeout(&ss->flows[flow].complete,
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
336
if (ss->flows[flow].status == 0) {
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
337
dev_err(ss->dev, "DMA timeout for %s\n", name);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
400
struct sun8i_ss_dev *ss;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
408
ss = algt->ss;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
41
dev_err(tfmctx->ss->dev, "shash digest error ret=%d\n", ret);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
410
e = sun8i_ss_get_engine_number(ss);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
412
engine = ss->flows[e].engine;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
486
struct sun8i_ss_dev *ss;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
504
ss = algt->ss;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
511
result = ss->flows[rctx->flow].result;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
512
pad = ss->flows[rctx->flow].pad;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
524
rctx->method = ss->variant->alg_hash[algt->ss_algo_id];
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
526
nr_sgs = dma_map_sg(ss->dev, areq->src, sg_nents(areq->src), DMA_TO_DEVICE);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
528
dev_err(ss->dev, "Invalid sg number %d\n", nr_sgs);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
533
addr_res = dma_map_single(ss->dev, result, digestsize, DMA_FROM_DEVICE);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
534
if (dma_mapping_error(ss->dev, addr_res)) {
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
535
dev_err(ss->dev, "DMA map dest\n");
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
565
dev_err(ss->dev, "remaining len %d\n", len);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
584
addr_xpad = dma_map_single(ss->dev, tfmctx->ipad, bs, DMA_TO_DEVICE);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
585
err = dma_mapping_error(ss->dev, addr_xpad);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
587
dev_err(ss->dev, "Fail to create DMA mapping of ipad\n");
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
605
addr_res = dma_map_single(ss->dev, result, digestsize, DMA_FROM_DEVICE);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
606
if (dma_mapping_error(ss->dev, addr_res)) {
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
607
dev_err(ss->dev, "Fail to create DMA mapping of result\n");
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
611
addr_xpad = dma_map_single(ss->dev, tfmctx->opad, bs, DMA_TO_DEVICE);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
612
err = dma_mapping_error(ss->dev, addr_xpad);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
614
dev_err(ss->dev, "Fail to create DMA mapping of opad\n");
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
644
addr_pad = dma_map_single(ss->dev, pad, j * 4, DMA_TO_DEVICE);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
645
if (dma_mapping_error(ss->dev, addr_pad)) {
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
646
dev_err(ss->dev, "DMA error on padding SG\n");
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
655
err = sun8i_ss_run_hash_task(ss, rctx, crypto_tfm_alg_name(areq->base.tfm));
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
682
dma_unmap_single(ss->dev, addr_pad, j * 4, DMA_TO_DEVICE);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
686
dma_unmap_single(ss->dev, addr_xpad, bs, DMA_TO_DEVICE);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
688
dma_unmap_single(ss->dev, addr_res, digestsize, DMA_FROM_DEVICE);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c
691
dma_unmap_sg(ss->dev, areq->src, sg_nents(areq->src),
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c
108
dma_iv = dma_map_single(ss->dev, ctx->seed, ctx->slen, DMA_TO_DEVICE);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c
109
if (dma_mapping_error(ss->dev, dma_iv)) {
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c
110
dev_err(ss->dev, "Cannot DMA MAP IV\n");
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c
115
dma_dst = dma_map_single(ss->dev, d, todo, DMA_FROM_DEVICE);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c
116
if (dma_mapping_error(ss->dev, dma_dst)) {
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c
117
dev_err(ss->dev, "Cannot DMA MAP DST\n");
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c
122
err = pm_runtime_resume_and_get(ss->dev);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c
127
mutex_lock(&ss->mlock);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c
128
writel(dma_iv, ss->base + SS_IV_ADR_REG);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c
130
writel(dma_iv, ss->base + SS_KEY_ADR_REG);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c
131
writel(dma_dst, ss->base + SS_DST_ADR_REG);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c
132
writel(todo / 4, ss->base + SS_LEN_ADR_REG);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c
134
reinit_completion(&ss->flows[flow].complete);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c
135
ss->flows[flow].status = 0;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c
139
writel(v, ss->base + SS_CTL_REG);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c
141
wait_for_completion_interruptible_timeout(&ss->flows[flow].complete,
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c
143
if (ss->flows[flow].status == 0) {
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c
144
dev_err(ss->dev, "DMA timeout for PRNG (size=%u)\n", todo);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c
159
mutex_unlock(&ss->mlock);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c
161
pm_runtime_put(ss->dev);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c
164
dma_unmap_single(ss->dev, dma_dst, todo, DMA_FROM_DEVICE);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c
166
dma_unmap_single(ss->dev, dma_iv, ctx->slen, DMA_TO_DEVICE);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c
64
struct sun8i_ss_dev *ss;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c
73
ss = algt->ss;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c
76
dev_err(ss->dev, "The PRNG is not seeded\n");
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c
95
flow = sun8i_ss_get_engine_number(ss);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss.h
212
struct sun8i_ss_dev *ss;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss.h
233
struct sun8i_ss_dev *ss;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss.h
274
struct sun8i_ss_dev *ss;
drivers/crypto/allwinner/sun8i-ss/sun8i-ss.h
300
int sun8i_ss_get_engine_number(struct sun8i_ss_dev *ss);
drivers/crypto/allwinner/sun8i-ss/sun8i-ss.h
302
int sun8i_ss_run_task(struct sun8i_ss_dev *ss, struct sun8i_cipher_req_ctx *rctx, const char *name);
drivers/crypto/marvell/octeontx/otx_cptvf_algs.c
545
int ss = crypto_shash_statesize(ctx->hashalg);
drivers/crypto/marvell/octeontx/otx_cptvf_algs.c
547
ctx->ipad = kzalloc(ss, GFP_KERNEL);
drivers/crypto/marvell/octeontx/otx_cptvf_algs.c
553
ctx->opad = kzalloc(ss, GFP_KERNEL);
drivers/crypto/marvell/octeontx2/otx2_cptvf_algs.c
638
int ss = crypto_shash_statesize(ctx->hashalg);
drivers/crypto/marvell/octeontx2/otx2_cptvf_algs.c
640
ctx->ipad = kzalloc(ss, GFP_KERNEL);
drivers/crypto/marvell/octeontx2/otx2_cptvf_algs.c
647
ctx->opad = kzalloc(ss, GFP_KERNEL);
drivers/crypto/padlock-sha.c
84
unsigned int ss = crypto_shash_coresize(desc->tfm);
drivers/crypto/padlock-sha.c
87
memcpy(state, in, ss);
drivers/crypto/padlock-sha.c
90
state[ss / 8 - 1] &= ~(bs - 1);
drivers/extcon/extcon-rtk-type-c.c
296
bool ss = true;
drivers/extcon/extcon-rtk-type-c.c
329
(union extcon_property_value)(int)ss);
drivers/extcon/extcon-rtk-type-c.c
341
(union extcon_property_value)(int)ss);
drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c
796
struct amdgpu_atom_ss *ss,
drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c
881
ss->percentage = percentage;
drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c
883
ss->rate = rate;
drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c
900
struct amdgpu_atom_ss *ss,
drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c
920
memset(ss, 0, sizeof(struct amdgpu_atom_ss));
drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c
936
ss->percentage =
drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c
938
ss->type = ss_assign->v1.ucSpreadSpectrumMode;
drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c
939
ss->rate = le16_to_cpu(ss_assign->v1.usSpreadRateInKhz);
drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c
940
ss->percentage_divider = 100;
drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c
954
ss->percentage =
drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c
956
ss->type = ss_assign->v2.ucSpreadSpectrumMode;
drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c
957
ss->rate = le16_to_cpu(ss_assign->v2.usSpreadRateIn10Hz);
drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c
958
ss->percentage_divider = 100;
drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c
962
ss->rate /= 100;
drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c
976
ss->percentage =
drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c
978
ss->type = ss_assign->v3.ucSpreadSpectrumMode;
drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c
979
ss->rate = le16_to_cpu(ss_assign->v3.usSpreadRateIn10Hz);
drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c
982
ss->percentage_divider = 1000;
drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c
984
ss->percentage_divider = 100;
drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c
987
ss->rate /= 100;
drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c
989
amdgpu_atombios_get_igp_ss_overrides(adev, ss, id);
drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.h
152
struct amdgpu_atom_ss *ss,
drivers/gpu/drm/amd/amdgpu/amdgpu_mode.h
490
struct amdgpu_atom_ss ss;
drivers/gpu/drm/amd/amdgpu/atombios_crtc.c
244
struct amdgpu_atom_ss *ss)
drivers/gpu/drm/amd/amdgpu/atombios_crtc.c
256
if (ss->percentage == 0)
drivers/gpu/drm/amd/amdgpu/atombios_crtc.c
258
if (ss->type & ATOM_EXTERNAL_SS_MASK)
drivers/gpu/drm/amd/amdgpu/atombios_crtc.c
278
args.v3.ucSpreadSpectrumType = ss->type & ATOM_SS_CENTRE_SPREAD_MODE_MASK;
drivers/gpu/drm/amd/amdgpu/atombios_crtc.c
292
args.v3.usSpreadSpectrumAmount = cpu_to_le16(ss->amount);
drivers/gpu/drm/amd/amdgpu/atombios_crtc.c
293
args.v3.usSpreadSpectrumStep = cpu_to_le16(ss->step);
drivers/gpu/drm/amd/amdgpu/atombios_crtc.c
339
if (amdgpu_crtc->ss.refdiv) {
drivers/gpu/drm/amd/amdgpu/atombios_crtc.c
341
amdgpu_crtc->pll_reference_div = amdgpu_crtc->ss.refdiv;
drivers/gpu/drm/amd/amdgpu/atombios_crtc.c
393
if (amdgpu_crtc->ss_enabled && amdgpu_crtc->ss.percentage)
drivers/gpu/drm/amd/amdgpu/atombios_crtc.c
406
if (amdgpu_crtc->ss_enabled && amdgpu_crtc->ss.percentage)
drivers/gpu/drm/amd/amdgpu/atombios_crtc.c
587
struct amdgpu_atom_ss *ss)
drivers/gpu/drm/amd/amdgpu/atombios_crtc.c
637
if (ss_enabled && (ss->type & ATOM_EXTERNAL_SS_MASK))
drivers/gpu/drm/amd/amdgpu/atombios_crtc.c
650
if ((ss_enabled && (ss->type & ATOM_EXTERNAL_SS_MASK)) &&
drivers/gpu/drm/amd/amdgpu/atombios_crtc.c
680
if ((ss_enabled && (ss->type & ATOM_EXTERNAL_SS_MASK)) &&
drivers/gpu/drm/amd/amdgpu/atombios_crtc.c
780
amdgpu_atombios_get_asic_ss_info(adev, &amdgpu_crtc->ss,
drivers/gpu/drm/amd/amdgpu/atombios_crtc.c
787
&amdgpu_crtc->ss,
drivers/gpu/drm/amd/amdgpu/atombios_crtc.c
794
&amdgpu_crtc->ss,
drivers/gpu/drm/amd/amdgpu/atombios_crtc.c
801
&amdgpu_crtc->ss,
drivers/gpu/drm/amd/amdgpu/atombios_crtc.c
857
amdgpu_crtc->crtc_id, &amdgpu_crtc->ss);
drivers/gpu/drm/amd/amdgpu/atombios_crtc.c
862
amdgpu_crtc->bpc, amdgpu_crtc->ss_enabled, &amdgpu_crtc->ss);
drivers/gpu/drm/amd/amdgpu/atombios_crtc.c
868
(u32)amdgpu_crtc->ss.percentage) /
drivers/gpu/drm/amd/amdgpu/atombios_crtc.c
869
(100 * (u32)amdgpu_crtc->ss.percentage_divider);
drivers/gpu/drm/amd/amdgpu/atombios_crtc.c
870
amdgpu_crtc->ss.amount = (amount / 10) & ATOM_PPLL_SS_AMOUNT_V2_FBDIV_MASK;
drivers/gpu/drm/amd/amdgpu/atombios_crtc.c
871
amdgpu_crtc->ss.amount |= ((amount - (amount / 10)) << ATOM_PPLL_SS_AMOUNT_V2_NFRAC_SHIFT) &
drivers/gpu/drm/amd/amdgpu/atombios_crtc.c
873
if (amdgpu_crtc->ss.type & ATOM_PPLL_SS_TYPE_V2_CENTRE_SPREAD)
drivers/gpu/drm/amd/amdgpu/atombios_crtc.c
874
step_size = (4 * amount * ref_div * ((u32)amdgpu_crtc->ss.rate * 2048)) /
drivers/gpu/drm/amd/amdgpu/atombios_crtc.c
877
step_size = (2 * amount * ref_div * ((u32)amdgpu_crtc->ss.rate * 2048)) /
drivers/gpu/drm/amd/amdgpu/atombios_crtc.c
879
amdgpu_crtc->ss.step = step_size;
drivers/gpu/drm/amd/amdgpu/atombios_crtc.c
882
amdgpu_crtc->crtc_id, &amdgpu_crtc->ss);
drivers/gpu/drm/amd/amdgpu/atombios_crtc.h
54
struct amdgpu_atom_ss *ss);
drivers/gpu/drm/amd/amdgpu/dce_v10_0.c
2545
struct amdgpu_atom_ss ss;
drivers/gpu/drm/amd/amdgpu/dce_v10_0.c
2585
0, 0, ATOM_DISABLE, 0, 0, 0, 0, 0, false, &ss);
drivers/gpu/drm/amd/amdgpu/dce_v6_0.c
2513
struct amdgpu_atom_ss ss;
drivers/gpu/drm/amd/amdgpu/dce_v6_0.c
2552
0, 0, ATOM_DISABLE, 0, 0, 0, 0, 0, false, &ss);
drivers/gpu/drm/amd/amdgpu/dce_v8_0.c
2464
struct amdgpu_atom_ss ss;
drivers/gpu/drm/amd/amdgpu/dce_v8_0.c
2503
0, 0, ATOM_DISABLE, 0, 0, 0, 0, 0, false, &ss);
drivers/gpu/drm/amd/amdgpu/dce_v8_0.c
2511
0, 0, ATOM_DISABLE, 0, 0, 0, 0, 0, false, &ss);
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
3002
spll_table->ss[i] = cpu_to_be32(tmp);
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
3424
struct amdgpu_atom_ss ss;
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
3426
pi->sclk_ss = amdgpu_atombios_get_asic_ss_info(adev, &ss,
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
3428
pi->mclk_ss = amdgpu_atombios_get_asic_ss_info(adev, &ss,
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
5363
struct amdgpu_atom_ss ss;
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
5366
if (amdgpu_atombios_get_asic_ss_info(adev, &ss,
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
5368
u32 clk_s = reference_clock * 5 / (reference_divider * ss.rate);
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
5369
u32 clk_v = 4 * ss.percentage * fbdiv / (clk_s * 10000);
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
5454
struct amdgpu_atom_ss ss;
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
5466
if (amdgpu_atombios_get_asic_ss_info(adev, &ss,
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
5468
u32 clks = reference_clock * 5 / ss.rate;
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
5469
u32 clkv = (u32)((((131 * ss.percentage * ss.rate) / 100) * tmp) / freq_nom);
drivers/gpu/drm/amd/pm/legacy-dpm/sislands_smc.h
339
uint32_t ss[256];
drivers/gpu/drm/i915/gt/intel_sseu.c
102
int s, ss, i;
drivers/gpu/drm/i915/gt/intel_sseu.c
105
for (ss = 0; ss < sseu->max_subslices; ss++) {
drivers/gpu/drm/i915/gt/intel_sseu.c
108
ss * eu_stride;
drivers/gpu/drm/i915/gt/intel_sseu.c
109
u16 mask = sseu_get_eus(sseu, s, ss);
drivers/gpu/drm/i915/gt/intel_sseu.c
136
int s, ss, i;
drivers/gpu/drm/i915/gt/intel_sseu.c
139
for (ss = 0; ss < sseu->max_subslices; ss++) {
drivers/gpu/drm/i915/gt/intel_sseu.c
140
i = s * ss_stride * BITS_PER_BYTE + ss;
drivers/gpu/drm/i915/gt/intel_sseu.c
142
if (!intel_sseu_has_subslice(sseu, s, ss))
drivers/gpu/drm/i915/gt/intel_sseu.c
156
int ss;
drivers/gpu/drm/i915/gt/intel_sseu.c
161
for (ss = 0; ss < sseu->max_subslices; ss++)
drivers/gpu/drm/i915/gt/intel_sseu.c
162
if (intel_sseu_has_subslice(sseu, 0, ss))
drivers/gpu/drm/i915/gt/intel_sseu.c
163
sseu_set_eus(sseu, 0, ss, eu_en);
drivers/gpu/drm/i915/gt/intel_sseu.c
172
int ss;
drivers/gpu/drm/i915/gt/intel_sseu.c
181
for (ss = 0; ss < sseu->max_subslices; ss++)
drivers/gpu/drm/i915/gt/intel_sseu.c
182
if (intel_sseu_has_subslice(sseu, 0, ss))
drivers/gpu/drm/i915/gt/intel_sseu.c
183
sseu_set_eus(sseu, 0, ss, eu_en);
drivers/gpu/drm/i915/gt/intel_sseu.c
384
int s, ss;
drivers/gpu/drm/i915/gt/intel_sseu.c
412
for (ss = 0; ss < sseu->max_subslices; ss++) {
drivers/gpu/drm/i915/gt/intel_sseu.c
416
if (!intel_sseu_has_subslice(sseu, s, ss))
drivers/gpu/drm/i915/gt/intel_sseu.c
420
eu_disabled_mask = (eu_disable >> (ss * 8)) & eu_mask;
drivers/gpu/drm/i915/gt/intel_sseu.c
422
sseu_set_eus(sseu, s, ss, ~eu_disabled_mask & eu_mask);
drivers/gpu/drm/i915/gt/intel_sseu.c
433
sseu->subslice_7eu[s] |= BIT(ss);
drivers/gpu/drm/i915/gt/intel_sseu.c
466
#define IS_SS_DISABLED(ss) (!(sseu->subslice_mask.hsw[0] & BIT(ss)))
drivers/gpu/drm/i915/gt/intel_sseu.c
486
int s, ss;
drivers/gpu/drm/i915/gt/intel_sseu.c
523
for (ss = 0; ss < sseu->max_subslices; ss++) {
drivers/gpu/drm/i915/gt/intel_sseu.c
527
if (!intel_sseu_has_subslice(sseu, s, ss))
drivers/gpu/drm/i915/gt/intel_sseu.c
532
eu_disable[s] >> (ss * sseu->max_eus_per_subslice);
drivers/gpu/drm/i915/gt/intel_sseu.c
534
sseu_set_eus(sseu, s, ss, ~eu_disabled_mask & 0xFF);
drivers/gpu/drm/i915/gt/intel_sseu.c
542
sseu->subslice_7eu[s] |= 1 << ss;
drivers/gpu/drm/i915/gt/intel_sseu.c
573
int s, ss;
drivers/gpu/drm/i915/gt/intel_sseu.c
620
for (ss = 0; ss < sseu->max_subslices; ss++) {
drivers/gpu/drm/i915/gt/intel_sseu.c
621
sseu_set_eus(sseu, s, ss,
drivers/gpu/drm/i915/gt/intel_sseu.c
74
int s, ss, total = 0;
drivers/gpu/drm/i915/gt/intel_sseu.c
77
for (ss = 0; ss < sseu->max_subslices; ss++)
drivers/gpu/drm/i915/gt/intel_sseu.c
79
total += hweight16(sseu->eu_mask.xehp[ss]);
drivers/gpu/drm/i915/gt/intel_sseu.c
809
int s, ss;
drivers/gpu/drm/i915/gt/intel_sseu.c
81
total += hweight16(sseu->eu_mask.hsw[s][ss]);
drivers/gpu/drm/i915/gt/intel_sseu.c
817
for (ss = 0; ss < sseu->max_subslices; ss++) {
drivers/gpu/drm/i915/gt/intel_sseu.c
818
u16 enabled_eus = sseu_get_eus(sseu, s, ss);
drivers/gpu/drm/i915/gt/intel_sseu.c
821
ss, hweight16(enabled_eus), enabled_eus);
drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c
100
eu_cnt = 2 * hweight32(eu_reg[2 * s + ss / 2] &
drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c
101
eu_mask[ss % 2]);
drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c
118
int s, ss;
drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c
147
for (ss = 0; ss < info->sseu.max_subslices; ss++) {
drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c
151
if (!(s_reg[s] & (GEN9_PGCTL_SS_ACK(ss))))
drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c
155
sseu->subslice_mask.hsw[s] |= BIT(ss);
drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c
158
eu_cnt = eu_reg[2 * s + ss / 2] & eu_mask[ss % 2];
drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c
24
int ss;
drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c
31
for (ss = 0; ss < ss_max; ss++) {
drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c
34
if (sig1[ss] & CHV_SS_PG_ENABLE)
drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c
39
sseu->subslice_mask.hsw[0] |= BIT(ss);
drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c
40
eu_cnt = ((sig1[ss] & CHV_EU08_PG_ENABLE) ? 0 : 2) +
drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c
41
((sig1[ss] & CHV_EU19_PG_ENABLE) ? 0 : 2) +
drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c
42
((sig1[ss] & CHV_EU210_PG_ENABLE) ? 0 : 2) +
drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c
43
((sig2[ss] & CHV_EU311_PG_ENABLE) ? 0 : 2);
drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c
58
int s, ss;
drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c
92
for (ss = 0; ss < info->sseu.max_subslices; ss++) {
drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c
96
!(s_reg[s] & (GEN9_PGCTL_SS_ACK(ss))))
drivers/gpu/drm/i915/gt/intel_workarounds.c
554
u8 ss;
drivers/gpu/drm/i915/gt/intel_workarounds.c
569
ss = ffs(gt->info.sseu.subslice_7eu[i]) - 1;
drivers/gpu/drm/i915/gt/intel_workarounds.c
570
vals[i] = 3 - ss;
drivers/gpu/drm/imx/dcss/dcss-crtc.c
103
dcss_ss_sync_set(dcss->ss, &vm,
drivers/gpu/drm/imx/dcss/dcss-crtc.c
98
dcss_ss_subsam_set(dcss->ss);
drivers/gpu/drm/imx/dcss/dcss-dev.c
103
dcss_ss_exit(dcss->ss);
drivers/gpu/drm/imx/dcss/dcss-dev.c
122
dcss_ss_exit(dcss->ss);
drivers/gpu/drm/imx/dcss/dcss-dev.c
43
dcss_ss_shutoff(dcss->ss);
drivers/gpu/drm/imx/dcss/dcss-dev.c
60
dcss_ss_enable(dcss->ss);
drivers/gpu/drm/imx/dcss/dcss-dev.h
157
void dcss_ss_exit(struct dcss_ss *ss);
drivers/gpu/drm/imx/dcss/dcss-dev.h
158
void dcss_ss_enable(struct dcss_ss *ss);
drivers/gpu/drm/imx/dcss/dcss-dev.h
159
void dcss_ss_shutoff(struct dcss_ss *ss);
drivers/gpu/drm/imx/dcss/dcss-dev.h
160
void dcss_ss_subsam_set(struct dcss_ss *ss);
drivers/gpu/drm/imx/dcss/dcss-dev.h
161
void dcss_ss_sync_set(struct dcss_ss *ss, struct videomode *vm,
drivers/gpu/drm/imx/dcss/dcss-dev.h
73
struct dcss_ss *ss;
drivers/gpu/drm/imx/dcss/dcss-ss.c
100
ss->base_ofs = ss_base;
drivers/gpu/drm/imx/dcss/dcss-ss.c
101
ss->ctx_id = CTX_SB_HP;
drivers/gpu/drm/imx/dcss/dcss-ss.c
106
void dcss_ss_exit(struct dcss_ss *ss)
drivers/gpu/drm/imx/dcss/dcss-ss.c
109
dcss_writel(0, ss->base_reg + DCSS_SS_SYS_CTRL);
drivers/gpu/drm/imx/dcss/dcss-ss.c
112
void dcss_ss_subsam_set(struct dcss_ss *ss)
drivers/gpu/drm/imx/dcss/dcss-ss.c
114
dcss_ss_write(ss, 0x41614161, DCSS_SS_COEFF);
drivers/gpu/drm/imx/dcss/dcss-ss.c
115
dcss_ss_write(ss, 0, DCSS_SS_MODE);
drivers/gpu/drm/imx/dcss/dcss-ss.c
116
dcss_ss_write(ss, 0x03ff0000, DCSS_SS_CLIP_CB);
drivers/gpu/drm/imx/dcss/dcss-ss.c
117
dcss_ss_write(ss, 0x03ff0000, DCSS_SS_CLIP_CR);
drivers/gpu/drm/imx/dcss/dcss-ss.c
120
void dcss_ss_sync_set(struct dcss_ss *ss, struct videomode *vm,
drivers/gpu/drm/imx/dcss/dcss-ss.c
134
dcss_ss_write(ss, (lrc_y << LRC_Y_POS) | lrc_x, DCSS_SS_DISPLAY);
drivers/gpu/drm/imx/dcss/dcss-ss.c
140
dcss_ss_write(ss, (phsync ? SYNC_POL : 0) |
drivers/gpu/drm/imx/dcss/dcss-ss.c
147
dcss_ss_write(ss, (pvsync ? SYNC_POL : 0) |
drivers/gpu/drm/imx/dcss/dcss-ss.c
154
dcss_ss_write(ss, SYNC_POL | ((u32)de_ulc_y << ULC_Y_POS) | de_ulc_x,
drivers/gpu/drm/imx/dcss/dcss-ss.c
161
dcss_ss_write(ss, (de_lrc_y << LRC_Y_POS) | de_lrc_x, DCSS_SS_DE_LRC);
drivers/gpu/drm/imx/dcss/dcss-ss.c
164
void dcss_ss_enable(struct dcss_ss *ss)
drivers/gpu/drm/imx/dcss/dcss-ss.c
166
dcss_ss_write(ss, RUN_EN, DCSS_SS_SYS_CTRL);
drivers/gpu/drm/imx/dcss/dcss-ss.c
167
ss->in_use = true;
drivers/gpu/drm/imx/dcss/dcss-ss.c
170
void dcss_ss_shutoff(struct dcss_ss *ss)
drivers/gpu/drm/imx/dcss/dcss-ss.c
172
dcss_writel(0, ss->base_reg + DCSS_SS_SYS_CTRL);
drivers/gpu/drm/imx/dcss/dcss-ss.c
173
ss->in_use = false;
drivers/gpu/drm/imx/dcss/dcss-ss.c
73
static void dcss_ss_write(struct dcss_ss *ss, u32 val, u32 ofs)
drivers/gpu/drm/imx/dcss/dcss-ss.c
75
if (!ss->in_use)
drivers/gpu/drm/imx/dcss/dcss-ss.c
76
dcss_writel(val, ss->base_reg + ofs);
drivers/gpu/drm/imx/dcss/dcss-ss.c
78
dcss_ctxld_write(ss->ctxld, ss->ctx_id, val,
drivers/gpu/drm/imx/dcss/dcss-ss.c
79
ss->base_ofs + ofs);
drivers/gpu/drm/imx/dcss/dcss-ss.c
84
struct dcss_ss *ss;
drivers/gpu/drm/imx/dcss/dcss-ss.c
86
ss = devm_kzalloc(dcss->dev, sizeof(*ss), GFP_KERNEL);
drivers/gpu/drm/imx/dcss/dcss-ss.c
87
if (!ss)
drivers/gpu/drm/imx/dcss/dcss-ss.c
90
dcss->ss = ss;
drivers/gpu/drm/imx/dcss/dcss-ss.c
91
ss->dev = dcss->dev;
drivers/gpu/drm/imx/dcss/dcss-ss.c
92
ss->ctxld = dcss->ctxld;
drivers/gpu/drm/imx/dcss/dcss-ss.c
94
ss->base_reg = devm_ioremap(ss->dev, ss_base, SZ_4K);
drivers/gpu/drm/imx/dcss/dcss-ss.c
95
if (!ss->base_reg) {
drivers/gpu/drm/imx/dcss/dcss-ss.c
96
dev_err(ss->dev, "ss: unable to remap ss base\n");
drivers/gpu/drm/nouveau/nvkm/subdev/devinit/nv04.c
185
new_ramdac580(uint32_t reg1, bool ss, uint32_t ramdac580)
drivers/gpu/drm/nouveau/nvkm/subdev/devinit/nv04.c
189
if (ss) /* single stage pll mode */
drivers/gpu/drm/radeon/atombios_crtc.c
1001
&radeon_crtc->ss,
drivers/gpu/drm/radeon/atombios_crtc.c
1006
&radeon_crtc->ss,
drivers/gpu/drm/radeon/atombios_crtc.c
1017
&radeon_crtc->ss,
drivers/gpu/drm/radeon/atombios_crtc.c
1023
&radeon_crtc->ss,
drivers/gpu/drm/radeon/atombios_crtc.c
1030
&radeon_crtc->ss,
drivers/gpu/drm/radeon/atombios_crtc.c
1038
&radeon_crtc->ss,
drivers/gpu/drm/radeon/atombios_crtc.c
1103
radeon_crtc->crtc_id, &radeon_crtc->ss);
drivers/gpu/drm/radeon/atombios_crtc.c
1108
radeon_crtc->bpc, radeon_crtc->ss_enabled, &radeon_crtc->ss);
drivers/gpu/drm/radeon/atombios_crtc.c
1115
(u32)radeon_crtc->ss.percentage) /
drivers/gpu/drm/radeon/atombios_crtc.c
1116
(100 * (u32)radeon_crtc->ss.percentage_divider);
drivers/gpu/drm/radeon/atombios_crtc.c
1117
radeon_crtc->ss.amount = (amount / 10) & ATOM_PPLL_SS_AMOUNT_V2_FBDIV_MASK;
drivers/gpu/drm/radeon/atombios_crtc.c
1118
radeon_crtc->ss.amount |= ((amount - (amount / 10)) << ATOM_PPLL_SS_AMOUNT_V2_NFRAC_SHIFT) &
drivers/gpu/drm/radeon/atombios_crtc.c
1120
if (radeon_crtc->ss.type & ATOM_PPLL_SS_TYPE_V2_CENTRE_SPREAD)
drivers/gpu/drm/radeon/atombios_crtc.c
1121
step_size = (4 * amount * ref_div * ((u32)radeon_crtc->ss.rate * 2048)) /
drivers/gpu/drm/radeon/atombios_crtc.c
1124
step_size = (2 * amount * ref_div * ((u32)radeon_crtc->ss.rate * 2048)) /
drivers/gpu/drm/radeon/atombios_crtc.c
1126
radeon_crtc->ss.step = step_size;
drivers/gpu/drm/radeon/atombios_crtc.c
1130
radeon_crtc->crtc_id, &radeon_crtc->ss);
drivers/gpu/drm/radeon/atombios_crtc.c
1991
struct radeon_atom_ss ss;
drivers/gpu/drm/radeon/atombios_crtc.c
1992
bool ss_enabled = radeon_atombios_get_asic_ss_info(rdev, &ss,
drivers/gpu/drm/radeon/atombios_crtc.c
1996
atombios_crtc_program_ss(rdev, ATOM_DISABLE, ATOM_DCPLL, -1, &ss);
drivers/gpu/drm/radeon/atombios_crtc.c
2000
atombios_crtc_program_ss(rdev, ATOM_ENABLE, ATOM_DCPLL, -1, &ss);
drivers/gpu/drm/radeon/atombios_crtc.c
2114
struct radeon_atom_ss ss;
drivers/gpu/drm/radeon/atombios_crtc.c
2157
0, 0, ATOM_DISABLE, 0, 0, 0, 0, 0, false, &ss);
drivers/gpu/drm/radeon/atombios_crtc.c
2166
0, 0, ATOM_DISABLE, 0, 0, 0, 0, 0, false, &ss);
drivers/gpu/drm/radeon/atombios_crtc.c
447
struct radeon_atom_ss *ss)
drivers/gpu/drm/radeon/atombios_crtc.c
459
if (ss->percentage == 0)
drivers/gpu/drm/radeon/atombios_crtc.c
461
if (ss->type & ATOM_EXTERNAL_SS_MASK)
drivers/gpu/drm/radeon/atombios_crtc.c
482
args.v3.ucSpreadSpectrumType = ss->type & ATOM_SS_CENTRE_SPREAD_MODE_MASK;
drivers/gpu/drm/radeon/atombios_crtc.c
496
args.v3.usSpreadSpectrumAmount = cpu_to_le16(ss->amount);
drivers/gpu/drm/radeon/atombios_crtc.c
497
args.v3.usSpreadSpectrumStep = cpu_to_le16(ss->step);
drivers/gpu/drm/radeon/atombios_crtc.c
500
args.v2.usSpreadSpectrumPercentage = cpu_to_le16(ss->percentage);
drivers/gpu/drm/radeon/atombios_crtc.c
501
args.v2.ucSpreadSpectrumType = ss->type & ATOM_SS_CENTRE_SPREAD_MODE_MASK;
drivers/gpu/drm/radeon/atombios_crtc.c
515
args.v2.usSpreadSpectrumAmount = cpu_to_le16(ss->amount);
drivers/gpu/drm/radeon/atombios_crtc.c
516
args.v2.usSpreadSpectrumStep = cpu_to_le16(ss->step);
drivers/gpu/drm/radeon/atombios_crtc.c
519
args.v1.usSpreadSpectrumPercentage = cpu_to_le16(ss->percentage);
drivers/gpu/drm/radeon/atombios_crtc.c
520
args.v1.ucSpreadSpectrumType = ss->type & ATOM_SS_CENTRE_SPREAD_MODE_MASK;
drivers/gpu/drm/radeon/atombios_crtc.c
521
args.v1.ucSpreadSpectrumStep = ss->step;
drivers/gpu/drm/radeon/atombios_crtc.c
522
args.v1.ucSpreadSpectrumDelay = ss->delay;
drivers/gpu/drm/radeon/atombios_crtc.c
523
args.v1.ucSpreadSpectrumRange = ss->range;
drivers/gpu/drm/radeon/atombios_crtc.c
527
if ((enable == ATOM_DISABLE) || (ss->percentage == 0) ||
drivers/gpu/drm/radeon/atombios_crtc.c
528
(ss->type & ATOM_EXTERNAL_SS_MASK)) {
drivers/gpu/drm/radeon/atombios_crtc.c
532
args.lvds_ss_2.usSpreadSpectrumPercentage = cpu_to_le16(ss->percentage);
drivers/gpu/drm/radeon/atombios_crtc.c
533
args.lvds_ss_2.ucSpreadSpectrumType = ss->type & ATOM_SS_CENTRE_SPREAD_MODE_MASK;
drivers/gpu/drm/radeon/atombios_crtc.c
534
args.lvds_ss_2.ucSpreadSpectrumStep = ss->step;
drivers/gpu/drm/radeon/atombios_crtc.c
535
args.lvds_ss_2.ucSpreadSpectrumDelay = ss->delay;
drivers/gpu/drm/radeon/atombios_crtc.c
536
args.lvds_ss_2.ucSpreadSpectrumRange = ss->range;
drivers/gpu/drm/radeon/atombios_crtc.c
543
args.lvds_ss.usSpreadSpectrumPercentage = cpu_to_le16(ss->percentage);
drivers/gpu/drm/radeon/atombios_crtc.c
544
args.lvds_ss.ucSpreadSpectrumType = ss->type & ATOM_SS_CENTRE_SPREAD_MODE_MASK;
drivers/gpu/drm/radeon/atombios_crtc.c
545
args.lvds_ss.ucSpreadSpectrumStepSize_Delay = (ss->step & 3) << 2;
drivers/gpu/drm/radeon/atombios_crtc.c
546
args.lvds_ss.ucSpreadSpectrumStepSize_Delay |= (ss->delay & 7) << 4;
drivers/gpu/drm/radeon/atombios_crtc.c
622
if (radeon_crtc->ss.refdiv) {
drivers/gpu/drm/radeon/atombios_crtc.c
624
radeon_crtc->pll_reference_div = radeon_crtc->ss.refdiv;
drivers/gpu/drm/radeon/atombios_crtc.c
690
if (radeon_crtc->ss_enabled && radeon_crtc->ss.percentage)
drivers/gpu/drm/radeon/atombios_crtc.c
703
if (radeon_crtc->ss_enabled && radeon_crtc->ss.percentage)
drivers/gpu/drm/radeon/atombios_crtc.c
827
struct radeon_atom_ss *ss)
drivers/gpu/drm/radeon/atombios_crtc.c
877
if (ss_enabled && (ss->type & ATOM_EXTERNAL_SS_MASK))
drivers/gpu/drm/radeon/atombios_crtc.c
890
if (ss_enabled && (ss->type & ATOM_EXTERNAL_SS_MASK))
drivers/gpu/drm/radeon/atombios_crtc.c
919
if (ss_enabled && (ss->type & ATOM_EXTERNAL_SS_MASK))
drivers/gpu/drm/radeon/atombios_crtc.c
989
radeon_atombios_get_asic_ss_info(rdev, &radeon_crtc->ss,
drivers/gpu/drm/radeon/atombios_crtc.c
996
&radeon_crtc->ss,
drivers/gpu/drm/radeon/ci_dpm.c
2784
struct radeon_atom_ss ss;
drivers/gpu/drm/radeon/ci_dpm.c
2796
if (radeon_atombios_get_asic_ss_info(rdev, &ss,
drivers/gpu/drm/radeon/ci_dpm.c
2798
u32 clks = reference_clock * 5 / ss.rate;
drivers/gpu/drm/radeon/ci_dpm.c
2799
u32 clkv = (u32)((((131 * ss.percentage * ss.rate) / 100) * tmp) / freq_nom);
drivers/gpu/drm/radeon/ci_dpm.c
3144
struct radeon_atom_ss ss;
drivers/gpu/drm/radeon/ci_dpm.c
3147
if (radeon_atombios_get_asic_ss_info(rdev, &ss,
drivers/gpu/drm/radeon/ci_dpm.c
3149
u32 clk_s = reference_clock * 5 / (reference_divider * ss.rate);
drivers/gpu/drm/radeon/ci_dpm.c
3150
u32 clk_v = 4 * ss.percentage * fbdiv / (clk_s * 10000);
drivers/gpu/drm/radeon/cypress_dpm.c
553
struct radeon_atom_ss ss;
drivers/gpu/drm/radeon/cypress_dpm.c
556
if (radeon_atombios_get_asic_ss_info(rdev, &ss,
drivers/gpu/drm/radeon/cypress_dpm.c
564
clk_s = reference_clock * 5 / (decoded_ref * ss.rate);
drivers/gpu/drm/radeon/cypress_dpm.c
565
clk_v = ss.percentage *
drivers/gpu/drm/radeon/ni_dpm.c
2041
struct radeon_atom_ss ss;
drivers/gpu/drm/radeon/ni_dpm.c
2044
if (radeon_atombios_get_asic_ss_info(rdev, &ss,
drivers/gpu/drm/radeon/ni_dpm.c
2046
u32 clk_s = reference_clock * 5 / (reference_divider * ss.rate);
drivers/gpu/drm/radeon/ni_dpm.c
2047
u32 clk_v = 4 * ss.percentage * fbdiv / (clk_s * 10000);
drivers/gpu/drm/radeon/ni_dpm.c
2146
spll_table->ss[i] = cpu_to_be32(tmp);
drivers/gpu/drm/radeon/ni_dpm.c
2237
struct radeon_atom_ss ss;
drivers/gpu/drm/radeon/ni_dpm.c
2240
if (radeon_atombios_get_asic_ss_info(rdev, &ss,
drivers/gpu/drm/radeon/ni_dpm.c
2248
clk_s = reference_clock * 5 / (decoded_ref * ss.rate);
drivers/gpu/drm/radeon/ni_dpm.c
2249
clk_v = ss.percentage *
drivers/gpu/drm/radeon/nislands_smc.h
291
uint32_t ss[256];
drivers/gpu/drm/radeon/radeon_atombios.c
1378
struct radeon_atom_ss *ss,
drivers/gpu/drm/radeon/radeon_atombios.c
1389
memset(ss, 0, sizeof(struct radeon_atom_ss));
drivers/gpu/drm/radeon/radeon_atombios.c
1401
ss->percentage =
drivers/gpu/drm/radeon/radeon_atombios.c
1403
ss->type = ss_assign->ucSpreadSpectrumType;
drivers/gpu/drm/radeon/radeon_atombios.c
1404
ss->step = ss_assign->ucSS_Step;
drivers/gpu/drm/radeon/radeon_atombios.c
1405
ss->delay = ss_assign->ucSS_Delay;
drivers/gpu/drm/radeon/radeon_atombios.c
1406
ss->range = ss_assign->ucSS_Range;
drivers/gpu/drm/radeon/radeon_atombios.c
1407
ss->refdiv = ss_assign->ucRecommendedRef_Div;
drivers/gpu/drm/radeon/radeon_atombios.c
1418
struct radeon_atom_ss *ss,
drivers/gpu/drm/radeon/radeon_atombios.c
1487
ss->percentage = percentage;
drivers/gpu/drm/radeon/radeon_atombios.c
1489
ss->rate = rate;
drivers/gpu/drm/radeon/radeon_atombios.c
1506
struct radeon_atom_ss *ss,
drivers/gpu/drm/radeon/radeon_atombios.c
1526
memset(ss, 0, sizeof(struct radeon_atom_ss));
drivers/gpu/drm/radeon/radeon_atombios.c
1542
ss->percentage =
drivers/gpu/drm/radeon/radeon_atombios.c
1544
ss->type = ss_assign->v1.ucSpreadSpectrumMode;
drivers/gpu/drm/radeon/radeon_atombios.c
1545
ss->rate = le16_to_cpu(ss_assign->v1.usSpreadRateInKhz);
drivers/gpu/drm/radeon/radeon_atombios.c
1546
ss->percentage_divider = 100;
drivers/gpu/drm/radeon/radeon_atombios.c
1560
ss->percentage =
drivers/gpu/drm/radeon/radeon_atombios.c
1562
ss->type = ss_assign->v2.ucSpreadSpectrumMode;
drivers/gpu/drm/radeon/radeon_atombios.c
1563
ss->rate = le16_to_cpu(ss_assign->v2.usSpreadRateIn10Hz);
drivers/gpu/drm/radeon/radeon_atombios.c
1564
ss->percentage_divider = 100;
drivers/gpu/drm/radeon/radeon_atombios.c
1568
ss->rate /= 100;
drivers/gpu/drm/radeon/radeon_atombios.c
1582
ss->percentage =
drivers/gpu/drm/radeon/radeon_atombios.c
1584
ss->type = ss_assign->v3.ucSpreadSpectrumMode;
drivers/gpu/drm/radeon/radeon_atombios.c
1585
ss->rate = le16_to_cpu(ss_assign->v3.usSpreadRateIn10Hz);
drivers/gpu/drm/radeon/radeon_atombios.c
1588
ss->percentage_divider = 1000;
drivers/gpu/drm/radeon/radeon_atombios.c
1590
ss->percentage_divider = 100;
drivers/gpu/drm/radeon/radeon_atombios.c
1593
ss->rate /= 100;
drivers/gpu/drm/radeon/radeon_atombios.c
1595
radeon_atombios_get_igp_ss_overrides(rdev, ss, id);
drivers/gpu/drm/radeon/radeon_mode.h
352
struct radeon_atom_ss ss;
drivers/gpu/drm/radeon/radeon_mode.h
766
struct radeon_atom_ss *ss,
drivers/gpu/drm/radeon/radeon_mode.h
769
struct radeon_atom_ss *ss,
drivers/gpu/drm/radeon/rv6xx_dpm.c
1933
struct radeon_atom_ss ss;
drivers/gpu/drm/radeon/rv6xx_dpm.c
1980
pi->sclk_ss = radeon_atombios_get_asic_ss_info(rdev, &ss,
drivers/gpu/drm/radeon/rv6xx_dpm.c
1982
pi->mclk_ss = radeon_atombios_get_asic_ss_info(rdev, &ss,
drivers/gpu/drm/radeon/rv6xx_dpm.c
554
struct radeon_atom_ss ss;
drivers/gpu/drm/radeon/rv6xx_dpm.c
564
if (radeon_atombios_get_asic_ss_info(rdev, &ss,
drivers/gpu/drm/radeon/rv6xx_dpm.c
568
ss.rate,
drivers/gpu/drm/radeon/rv6xx_dpm.c
569
ss.percentage,
drivers/gpu/drm/radeon/rv6xx_dpm.c
572
clk_s = rv6xx_calculate_spread_spectrum_clk_s(ss.rate,
drivers/gpu/drm/radeon/rv6xx_dpm.c
657
struct radeon_atom_ss ss;
drivers/gpu/drm/radeon/rv6xx_dpm.c
682
if (radeon_atombios_get_asic_ss_info(rdev, &ss,
drivers/gpu/drm/radeon/rv6xx_dpm.c
686
ss.rate,
drivers/gpu/drm/radeon/rv6xx_dpm.c
687
ss.percentage,
drivers/gpu/drm/radeon/rv6xx_dpm.c
690
clk_s = rv6xx_calculate_spread_spectrum_clk_s(ss.rate,
drivers/gpu/drm/radeon/rv730_dpm.c
164
struct radeon_atom_ss ss;
drivers/gpu/drm/radeon/rv730_dpm.c
167
if (radeon_atombios_get_asic_ss_info(rdev, &ss,
drivers/gpu/drm/radeon/rv730_dpm.c
170
u32 clk_s = reference_clock * 5 / (reference_divider * ss.rate);
drivers/gpu/drm/radeon/rv730_dpm.c
171
u32 clk_v = ss.percentage * dividers.fb_div / (clk_s * 10000);
drivers/gpu/drm/radeon/rv730_dpm.c
89
struct radeon_atom_ss ss;
drivers/gpu/drm/radeon/rv730_dpm.c
92
if (radeon_atombios_get_asic_ss_info(rdev, &ss,
drivers/gpu/drm/radeon/rv730_dpm.c
94
u32 clk_s = reference_clock * 5 / (reference_divider * ss.rate);
drivers/gpu/drm/radeon/rv730_dpm.c
95
u32 clk_v = ss.percentage * fbdiv / (clk_s * 10000);
drivers/gpu/drm/radeon/rv740_dpm.c
158
struct radeon_atom_ss ss;
drivers/gpu/drm/radeon/rv740_dpm.c
161
if (radeon_atombios_get_asic_ss_info(rdev, &ss,
drivers/gpu/drm/radeon/rv740_dpm.c
163
u32 clk_s = reference_clock * 5 / (reference_divider * ss.rate);
drivers/gpu/drm/radeon/rv740_dpm.c
164
u32 clk_v = 4 * ss.percentage * fbdiv / (clk_s * 10000);
drivers/gpu/drm/radeon/rv740_dpm.c
245
struct radeon_atom_ss ss;
drivers/gpu/drm/radeon/rv740_dpm.c
248
if (radeon_atombios_get_asic_ss_info(rdev, &ss,
drivers/gpu/drm/radeon/rv740_dpm.c
256
clk_s = reference_clock * 5 / (decoded_ref * ss.rate);
drivers/gpu/drm/radeon/rv740_dpm.c
257
clk_v = 0x40000 * ss.percentage *
drivers/gpu/drm/radeon/rv770_dpm.c
2331
struct radeon_atom_ss ss;
drivers/gpu/drm/radeon/rv770_dpm.c
2333
pi->sclk_ss = radeon_atombios_get_asic_ss_info(rdev, &ss,
drivers/gpu/drm/radeon/rv770_dpm.c
2335
pi->mclk_ss = radeon_atombios_get_asic_ss_info(rdev, &ss,
drivers/gpu/drm/radeon/rv770_dpm.c
540
struct radeon_atom_ss ss;
drivers/gpu/drm/radeon/rv770_dpm.c
543
if (radeon_atombios_get_asic_ss_info(rdev, &ss,
drivers/gpu/drm/radeon/rv770_dpm.c
545
u32 clk_s = reference_clock * 5 / (reference_divider * ss.rate);
drivers/gpu/drm/radeon/rv770_dpm.c
546
u32 clk_v = ss.percentage * fbdiv / (clk_s * 10000);
drivers/gpu/drm/radeon/si_dpm.c
2833
spll_table->ss[i] = cpu_to_be32(tmp);
drivers/gpu/drm/radeon/si_dpm.c
4768
struct radeon_atom_ss ss;
drivers/gpu/drm/radeon/si_dpm.c
4771
if (radeon_atombios_get_asic_ss_info(rdev, &ss,
drivers/gpu/drm/radeon/si_dpm.c
4773
u32 clk_s = reference_clock * 5 / (reference_divider * ss.rate);
drivers/gpu/drm/radeon/si_dpm.c
4774
u32 clk_v = 4 * ss.percentage * fbdiv / (clk_s * 10000);
drivers/gpu/drm/radeon/si_dpm.c
4859
struct radeon_atom_ss ss;
drivers/gpu/drm/radeon/si_dpm.c
4871
if (radeon_atombios_get_asic_ss_info(rdev, &ss,
drivers/gpu/drm/radeon/si_dpm.c
4873
u32 clks = reference_clock * 5 / ss.rate;
drivers/gpu/drm/radeon/si_dpm.c
4874
u32 clkv = (u32)((((131 * ss.percentage * ss.rate) / 100) * tmp) / freq_nom);
drivers/gpu/drm/radeon/sislands_smc.h
343
uint32_t ss[256];
drivers/gpu/drm/xe/xe_devcoredump.c
103
drm_printf(&p, "Reason: %s\n", ss->reason);
drivers/gpu/drm/xe/xe_devcoredump.c
107
ts = ktime_to_timespec64(ss->snapshot_time);
drivers/gpu/drm/xe/xe_devcoredump.c
109
ts = ktime_to_timespec64(ss->boot_time);
drivers/gpu/drm/xe/xe_devcoredump.c
111
drm_printf(&p, "Process: %s [%d]\n", ss->process_name, ss->pid);
drivers/gpu/drm/xe/xe_devcoredump.c
114
drm_printf(&p, "\n**** GT #%d ****\n", ss->gt->info.id);
drivers/gpu/drm/xe/xe_devcoredump.c
115
drm_printf(&p, "\tTile: %d\n", ss->gt->tile->id);
drivers/gpu/drm/xe/xe_devcoredump.c
118
xe_guc_log_snapshot_print(ss->guc.log, &p);
drivers/gpu/drm/xe/xe_devcoredump.c
120
xe_guc_ct_snapshot_print(ss->guc.ct, &p);
drivers/gpu/drm/xe/xe_devcoredump.c
123
xe_guc_exec_queue_snapshot_print(ss->ge, &p);
drivers/gpu/drm/xe/xe_devcoredump.c
126
xe_sched_job_snapshot_print(ss->job, &p);
drivers/gpu/drm/xe/xe_devcoredump.c
130
if (ss->hwe[i])
drivers/gpu/drm/xe/xe_devcoredump.c
131
xe_engine_snapshot_print(ss->hwe[i], &p);
drivers/gpu/drm/xe/xe_devcoredump.c
134
xe_vm_snapshot_print(ss->vm, &p);
drivers/gpu/drm/xe/xe_devcoredump.c
139
static void xe_devcoredump_snapshot_free(struct xe_devcoredump_snapshot *ss)
drivers/gpu/drm/xe/xe_devcoredump.c
143
kfree(ss->reason);
drivers/gpu/drm/xe/xe_devcoredump.c
144
ss->reason = NULL;
drivers/gpu/drm/xe/xe_devcoredump.c
146
xe_guc_log_snapshot_free(ss->guc.log);
drivers/gpu/drm/xe/xe_devcoredump.c
147
ss->guc.log = NULL;
drivers/gpu/drm/xe/xe_devcoredump.c
149
xe_guc_ct_snapshot_free(ss->guc.ct);
drivers/gpu/drm/xe/xe_devcoredump.c
150
ss->guc.ct = NULL;
drivers/gpu/drm/xe/xe_devcoredump.c
152
xe_guc_capture_put_matched_nodes(&ss->gt->uc.guc);
drivers/gpu/drm/xe/xe_devcoredump.c
153
ss->matched_node = NULL;
drivers/gpu/drm/xe/xe_devcoredump.c
155
xe_guc_exec_queue_snapshot_free(ss->ge);
drivers/gpu/drm/xe/xe_devcoredump.c
156
ss->ge = NULL;
drivers/gpu/drm/xe/xe_devcoredump.c
158
xe_sched_job_snapshot_free(ss->job);
drivers/gpu/drm/xe/xe_devcoredump.c
159
ss->job = NULL;
drivers/gpu/drm/xe/xe_devcoredump.c
162
if (ss->hwe[i]) {
drivers/gpu/drm/xe/xe_devcoredump.c
163
xe_hw_engine_snapshot_free(ss->hwe[i]);
drivers/gpu/drm/xe/xe_devcoredump.c
164
ss->hwe[i] = NULL;
drivers/gpu/drm/xe/xe_devcoredump.c
167
xe_vm_snapshot_free(ss->vm);
drivers/gpu/drm/xe/xe_devcoredump.c
168
ss->vm = NULL;
drivers/gpu/drm/xe/xe_devcoredump.c
193
struct xe_devcoredump_snapshot *ss;
drivers/gpu/drm/xe/xe_devcoredump.c
203
ss = &coredump->snapshot;
drivers/gpu/drm/xe/xe_devcoredump.c
206
flush_work(&ss->work);
drivers/gpu/drm/xe/xe_devcoredump.c
208
pm_needed = ss->read.size > XE_DEVCOREDUMP_CHUNK_MAX;
drivers/gpu/drm/xe/xe_devcoredump.c
210
xe_pm_runtime_get(gt_to_xe(ss->gt));
drivers/gpu/drm/xe/xe_devcoredump.c
214
if (!ss->read.buffer) {
drivers/gpu/drm/xe/xe_devcoredump.c
219
if (offset >= ss->read.size)
drivers/gpu/drm/xe/xe_devcoredump.c
226
if (offset >= ss->read.chunk_position + XE_DEVCOREDUMP_CHUNK_MAX ||
drivers/gpu/drm/xe/xe_devcoredump.c
227
offset < ss->read.chunk_position) {
drivers/gpu/drm/xe/xe_devcoredump.c
228
ss->read.chunk_position = new_chunk_position *
drivers/gpu/drm/xe/xe_devcoredump.c
231
__xe_devcoredump_read(ss->read.buffer,
drivers/gpu/drm/xe/xe_devcoredump.c
233
ss->read.chunk_position, coredump);
drivers/gpu/drm/xe/xe_devcoredump.c
236
byte_copied = count < ss->read.size - offset ? count :
drivers/gpu/drm/xe/xe_devcoredump.c
237
ss->read.size - offset;
drivers/gpu/drm/xe/xe_devcoredump.c
238
memcpy(buffer, ss->read.buffer + chunk_offset, byte_copied);
drivers/gpu/drm/xe/xe_devcoredump.c
244
xe_pm_runtime_put(gt_to_xe(ss->gt));
drivers/gpu/drm/xe/xe_devcoredump.c
275
struct xe_devcoredump_snapshot *ss = container_of(work, typeof(*ss), work);
drivers/gpu/drm/xe/xe_devcoredump.c
276
struct xe_devcoredump *coredump = container_of(ss, typeof(*coredump), snapshot);
drivers/gpu/drm/xe/xe_devcoredump.c
284
dev_coredumpm_timeout(gt_to_xe(ss->gt)->drm.dev, THIS_MODULE, coredump, 0, GFP_KERNEL,
drivers/gpu/drm/xe/xe_devcoredump.c
291
xe_with_force_wake(fw_ref, gt_to_fw(ss->gt), XE_FORCEWAKE_ALL) {
drivers/gpu/drm/xe/xe_devcoredump.c
293
xe_gt_info(ss->gt, "failed to get forcewake for coredump capture\n");
drivers/gpu/drm/xe/xe_devcoredump.c
294
xe_vm_snapshot_capture_delayed(ss->vm);
drivers/gpu/drm/xe/xe_devcoredump.c
295
xe_guc_exec_queue_snapshot_capture_delayed(ss->ge);
drivers/gpu/drm/xe/xe_devcoredump.c
298
ss->read.chunk_position = 0;
drivers/gpu/drm/xe/xe_devcoredump.c
301
ss->read.size = __xe_devcoredump_read(NULL, LONG_MAX, 0, coredump);
drivers/gpu/drm/xe/xe_devcoredump.c
303
if (ss->read.size > XE_DEVCOREDUMP_CHUNK_MAX) {
drivers/gpu/drm/xe/xe_devcoredump.c
304
ss->read.buffer = kvmalloc(XE_DEVCOREDUMP_CHUNK_MAX,
drivers/gpu/drm/xe/xe_devcoredump.c
306
if (!ss->read.buffer)
drivers/gpu/drm/xe/xe_devcoredump.c
309
__xe_devcoredump_read(ss->read.buffer,
drivers/gpu/drm/xe/xe_devcoredump.c
313
ss->read.buffer = kvmalloc(ss->read.size, GFP_USER);
drivers/gpu/drm/xe/xe_devcoredump.c
314
if (!ss->read.buffer)
drivers/gpu/drm/xe/xe_devcoredump.c
317
__xe_devcoredump_read(ss->read.buffer, ss->read.size, 0,
drivers/gpu/drm/xe/xe_devcoredump.c
319
xe_devcoredump_snapshot_free(ss);
drivers/gpu/drm/xe/xe_devcoredump.c
327
struct xe_devcoredump_snapshot *ss = &coredump->snapshot;
drivers/gpu/drm/xe/xe_devcoredump.c
332
ss->snapshot_time = ktime_get_real();
drivers/gpu/drm/xe/xe_devcoredump.c
333
ss->boot_time = ktime_get_boottime();
drivers/gpu/drm/xe/xe_devcoredump.c
337
ss->pid = q->vm->xef->pid;
drivers/gpu/drm/xe/xe_devcoredump.c
340
strscpy(ss->process_name, process_name);
drivers/gpu/drm/xe/xe_devcoredump.c
342
ss->gt = q->gt;
drivers/gpu/drm/xe/xe_devcoredump.c
343
INIT_WORK(&ss->work, xe_devcoredump_deferred_snap_work);
drivers/gpu/drm/xe/xe_devcoredump.c
350
ss->guc.log = xe_guc_log_snapshot_capture(&guc->log, true);
drivers/gpu/drm/xe/xe_devcoredump.c
351
ss->guc.ct = xe_guc_ct_snapshot_capture(&guc->ct);
drivers/gpu/drm/xe/xe_devcoredump.c
352
ss->ge = xe_guc_exec_queue_snapshot_capture(q);
drivers/gpu/drm/xe/xe_devcoredump.c
354
ss->job = xe_sched_job_snapshot_capture(job);
drivers/gpu/drm/xe/xe_devcoredump.c
355
ss->vm = xe_vm_snapshot_capture(q->vm);
drivers/gpu/drm/xe/xe_devcoredump.c
359
queue_work(system_unbound_wq, &ss->work);
drivers/gpu/drm/xe/xe_devcoredump.c
87
struct xe_devcoredump_snapshot *ss;
drivers/gpu/drm/xe/xe_devcoredump.c
94
ss = &coredump->snapshot;
drivers/gpu/drm/xe/xe_guc_capture.c
1883
struct xe_devcoredump_snapshot *ss;
drivers/gpu/drm/xe/xe_guc_capture.c
1899
ss = &xe->devcoredump.snapshot;
drivers/gpu/drm/xe/xe_guc_capture.c
1900
if (ss->matched_node && ss->matched_node->source == XE_ENGINE_CAPTURE_SOURCE_GUC)
drivers/gpu/drm/xe/xe_guc_capture.c
1901
return ss->matched_node;
drivers/infiniband/hw/hfi1/rc.c
1002
ss = NULL;
drivers/infiniband/hw/hfi1/rc.c
1027
ss = NULL;
drivers/infiniband/hw/hfi1/rc.c
1082
ss = &wpriv->ss;
drivers/infiniband/hw/hfi1/rc.c
1125
ss = &wpriv->ss;
drivers/infiniband/hw/hfi1/rc.c
1148
ps->s_txreq->ss = ss;
drivers/infiniband/hw/hfi1/rc.c
160
ps->s_txreq->ss = &qp->s_ack_rdma_sge;
drivers/infiniband/hw/hfi1/rc.c
213
ps->s_txreq->ss = NULL;
drivers/infiniband/hw/hfi1/rc.c
230
ps->s_txreq->ss = &qp->s_ack_rdma_sge;
drivers/infiniband/hw/hfi1/rc.c
288
&ps->s_txreq->ss);
drivers/infiniband/hw/hfi1/rc.c
308
ps->s_txreq->ss = &qp->s_ack_rdma_sge;
drivers/infiniband/hw/hfi1/rc.c
350
ps->s_txreq->ss = NULL;
drivers/infiniband/hw/hfi1/rc.c
393
struct rvt_sge_state *ss = NULL;
drivers/infiniband/hw/hfi1/rc.c
541
ss = &qp->s_sge;
drivers/infiniband/hw/hfi1/rc.c
638
ss = NULL;
drivers/infiniband/hw/hfi1/rc.c
750
ss = NULL;
drivers/infiniband/hw/hfi1/rc.c
824
ss = &wpriv->ss;
drivers/infiniband/hw/hfi1/rc.c
865
ss = NULL;
drivers/infiniband/hw/hfi1/rc.c
913
ss = &qp->s_sge;
drivers/infiniband/hw/hfi1/rc.c
958
ss = &qp->s_sge;
drivers/infiniband/hw/hfi1/rc.h
35
static inline u32 restart_sge(struct rvt_sge_state *ss, struct rvt_swqe *wqe,
drivers/infiniband/hw/hfi1/rc.h
41
return rvt_restart_sge(ss, wqe, len);
drivers/infiniband/hw/hfi1/sdma.c
220
static void sdma_get(struct sdma_state *ss)
drivers/infiniband/hw/hfi1/sdma.c
222
kref_get(&ss->kref);
drivers/infiniband/hw/hfi1/sdma.c
227
struct sdma_state *ss =
drivers/infiniband/hw/hfi1/sdma.c
230
complete(&ss->comp);
drivers/infiniband/hw/hfi1/sdma.c
233
static void sdma_put(struct sdma_state *ss)
drivers/infiniband/hw/hfi1/sdma.c
235
kref_put(&ss->kref, sdma_complete);
drivers/infiniband/hw/hfi1/sdma.c
238
static void sdma_finalput(struct sdma_state *ss)
drivers/infiniband/hw/hfi1/sdma.c
240
sdma_put(ss);
drivers/infiniband/hw/hfi1/sdma.c
241
wait_for_completion(&ss->comp);
drivers/infiniband/hw/hfi1/sdma.c
2504
struct sdma_state *ss = &sde->state;
drivers/infiniband/hw/hfi1/sdma.c
2510
sdma_state_names[ss->current_state],
drivers/infiniband/hw/hfi1/sdma.c
2514
switch (ss->current_state) {
drivers/infiniband/hw/hfi1/sdma.c
2527
ss->go_s99_running = 1;
drivers/infiniband/hw/hfi1/sdma.c
2577
ss->go_s99_running = 1;
drivers/infiniband/hw/hfi1/sdma.c
2587
ss->go_s99_running = 0;
drivers/infiniband/hw/hfi1/sdma.c
2614
sdma_set_state(sde, ss->go_s99_running ?
drivers/infiniband/hw/hfi1/sdma.c
2619
ss->go_s99_running = 1;
drivers/infiniband/hw/hfi1/sdma.c
2628
ss->go_s99_running = 0;
drivers/infiniband/hw/hfi1/sdma.c
2657
ss->go_s99_running = 1;
drivers/infiniband/hw/hfi1/sdma.c
2696
ss->go_s99_running = 1;
drivers/infiniband/hw/hfi1/sdma.c
2707
ss->go_s99_running = 0;
drivers/infiniband/hw/hfi1/sdma.c
2716
ss->go_s99_running = 0;
drivers/infiniband/hw/hfi1/sdma.c
2735
sdma_set_state(sde, ss->go_s99_running ?
drivers/infiniband/hw/hfi1/sdma.c
2740
ss->go_s99_running = 1;
drivers/infiniband/hw/hfi1/sdma.c
2749
ss->go_s99_running = 0;
drivers/infiniband/hw/hfi1/sdma.c
2758
ss->go_s99_running = 0;
drivers/infiniband/hw/hfi1/sdma.c
2780
ss->go_s99_running = 1;
drivers/infiniband/hw/hfi1/sdma.c
2790
ss->go_s99_running = 0;
drivers/infiniband/hw/hfi1/sdma.c
2799
ss->go_s99_running = 0;
drivers/infiniband/hw/hfi1/sdma.c
2821
ss->go_s99_running = 1;
drivers/infiniband/hw/hfi1/sdma.c
2831
ss->go_s99_running = 0;
drivers/infiniband/hw/hfi1/sdma.c
2859
ss->go_s99_running = 1;
drivers/infiniband/hw/hfi1/sdma.c
2868
ss->go_s99_running = 0;
drivers/infiniband/hw/hfi1/sdma.c
2898
ss->go_s99_running = 1;
drivers/infiniband/hw/hfi1/sdma.c
2910
ss->go_s99_running = 0;
drivers/infiniband/hw/hfi1/sdma.c
2918
sdma_set_state(sde, ss->go_s99_running ?
drivers/infiniband/hw/hfi1/sdma.c
2963
ss->go_s99_running = 0;
drivers/infiniband/hw/hfi1/sdma.c
2978
ss->last_event = event;
drivers/infiniband/hw/hfi1/sdma.c
616
struct sdma_state *ss = &sde->state;
drivers/infiniband/hw/hfi1/sdma.c
619
sdma_put(ss);
drivers/infiniband/hw/hfi1/sdma.c
634
struct sdma_state *ss = &sde->state;
drivers/infiniband/hw/hfi1/sdma.c
640
sdma_state_names[ss->current_state],
drivers/infiniband/hw/hfi1/sdma.c
644
ss->previous_state = ss->current_state;
drivers/infiniband/hw/hfi1/sdma.c
645
ss->previous_op = ss->current_op;
drivers/infiniband/hw/hfi1/sdma.c
646
ss->current_state = next_state;
drivers/infiniband/hw/hfi1/sdma.c
648
if (ss->previous_state != sdma_state_s99_running &&
drivers/infiniband/hw/hfi1/sdma.c
665
ss->go_s99_running = 0;
drivers/infiniband/hw/hfi1/sdma.c
668
ss->go_s99_running = 1;
drivers/infiniband/hw/hfi1/sdma.c
670
ss->current_op = op;
drivers/infiniband/hw/hfi1/sdma.c
671
sdma_sendctrl(sde, ss->current_op);
drivers/infiniband/hw/hfi1/tid_rdma.c
1089
struct rvt_sge_state *ss, bool *last)
drivers/infiniband/hw/hfi1/tid_rdma.c
1092
struct rvt_sge *sge = &ss->sge;
drivers/infiniband/hw/hfi1/tid_rdma.c
1097
while (length && req->isge < ss->num_sge) {
drivers/infiniband/hw/hfi1/tid_rdma.c
1104
if (++req->isge < ss->num_sge)
drivers/infiniband/hw/hfi1/tid_rdma.c
1105
*sge = ss->sg_list[req->isge - 1];
drivers/infiniband/hw/hfi1/tid_rdma.c
1118
*last = req->isge != ss->num_sge;
drivers/infiniband/hw/hfi1/tid_rdma.c
1177
struct rvt_sge_state *ss, bool *last)
drivers/infiniband/hw/hfi1/tid_rdma.c
1190
npages = kern_find_pages(flow, pages, ss, last);
drivers/infiniband/hw/hfi1/tid_rdma.c
1462
struct rvt_sge_state *ss, bool *last)
drivers/infiniband/hw/hfi1/tid_rdma.c
1489
if (kern_get_phys_blocks(flow, qpriv->pages, ss, last)) {
drivers/infiniband/hw/hfi1/tid_rdma.c
1727
wpriv->ss.sge.vaddr = req_addr;
drivers/infiniband/hw/hfi1/tid_rdma.c
1728
wpriv->ss.sge.sge_length = req_len;
drivers/infiniband/hw/hfi1/tid_rdma.c
1729
wpriv->ss.sge.length = wpriv->ss.sge.sge_length;
drivers/infiniband/hw/hfi1/tid_rdma.c
1734
wpriv->ss.sge.mr = NULL;
drivers/infiniband/hw/hfi1/tid_rdma.c
1735
wpriv->ss.sge.m = 0;
drivers/infiniband/hw/hfi1/tid_rdma.c
1736
wpriv->ss.sge.n = 0;
drivers/infiniband/hw/hfi1/tid_rdma.c
1738
wpriv->ss.sg_list = NULL;
drivers/infiniband/hw/hfi1/tid_rdma.c
1739
wpriv->ss.total_len = wpriv->ss.sge.sge_length;
drivers/infiniband/hw/hfi1/tid_rdma.c
1740
wpriv->ss.num_sge = 1;
drivers/infiniband/hw/hfi1/tid_rdma.c
2490
struct rvt_sge_state ss;
drivers/infiniband/hw/hfi1/tid_rdma.c
2501
len = restart_sge(&ss, req->e.swqe, ipsn, pmtu);
drivers/infiniband/hw/hfi1/tid_rdma.c
2504
rvt_copy_sge(qp, &ss, packet->payload, pmtu, false,
drivers/infiniband/hw/hfi1/tid_rdma.c
3569
ret = hfi1_kern_exp_rcv_setup(req, &req->ss, &last);
drivers/infiniband/hw/hfi1/tid_rdma.c
3768
req->ss.sge = e->rdma_sge;
drivers/infiniband/hw/hfi1/tid_rdma.c
3769
req->ss.num_sge = 1;
drivers/infiniband/hw/hfi1/tid_rdma.c
3838
struct rvt_sge_state **ss)
drivers/infiniband/hw/hfi1/tid_rdma.c
3894
epriv->ss.sge.vaddr = resp_addr;
drivers/infiniband/hw/hfi1/tid_rdma.c
3895
epriv->ss.sge.sge_length = resp_len;
drivers/infiniband/hw/hfi1/tid_rdma.c
3896
epriv->ss.sge.length = epriv->ss.sge.sge_length;
drivers/infiniband/hw/hfi1/tid_rdma.c
3901
epriv->ss.sge.mr = NULL;
drivers/infiniband/hw/hfi1/tid_rdma.c
3902
epriv->ss.sge.m = 0;
drivers/infiniband/hw/hfi1/tid_rdma.c
3903
epriv->ss.sge.n = 0;
drivers/infiniband/hw/hfi1/tid_rdma.c
3905
epriv->ss.sg_list = NULL;
drivers/infiniband/hw/hfi1/tid_rdma.c
3906
epriv->ss.total_len = epriv->ss.sge.sge_length;
drivers/infiniband/hw/hfi1/tid_rdma.c
3907
epriv->ss.num_sge = 1;
drivers/infiniband/hw/hfi1/tid_rdma.c
3909
*ss = &epriv->ss;
drivers/infiniband/hw/hfi1/tid_rdma.c
3910
*len = epriv->ss.total_len;
drivers/infiniband/hw/hfi1/tid_rdma.c
4311
struct rvt_sge_state ss;
drivers/infiniband/hw/hfi1/tid_rdma.c
4333
ss.sge = e->rdma_sge;
drivers/infiniband/hw/hfi1/tid_rdma.c
4334
ss.sg_list = NULL;
drivers/infiniband/hw/hfi1/tid_rdma.c
4335
ss.num_sge = 1;
drivers/infiniband/hw/hfi1/tid_rdma.c
4336
ss.total_len = req->total_len;
drivers/infiniband/hw/hfi1/tid_rdma.c
4337
rvt_skip_sge(&ss, len, false);
drivers/infiniband/hw/hfi1/tid_rdma.c
4338
rvt_copy_sge(qp, &ss, packet->payload, pmtu, false,
drivers/infiniband/hw/hfi1/tid_rdma.c
5016
struct rvt_sge_state *ss = &qp->s_sge;
drivers/infiniband/hw/hfi1/tid_rdma.c
5131
ss = &priv->tid_ss;
drivers/infiniband/hw/hfi1/tid_rdma.c
5150
ss = NULL;
drivers/infiniband/hw/hfi1/tid_rdma.c
5166
ps->s_txreq->ss = ss;
drivers/infiniband/hw/hfi1/tid_rdma.c
5316
ps->s_txreq->ss = NULL;
drivers/infiniband/hw/hfi1/tid_rdma.h
106
struct rvt_sge_state ss; /* SGE state for TID RDMA requests */
drivers/infiniband/hw/hfi1/tid_rdma.h
211
struct rvt_sge_state *ss, bool *last);
drivers/infiniband/hw/hfi1/tid_rdma.h
283
struct rvt_sge_state **ss);
drivers/infiniband/hw/hfi1/uc.c
230
ps->s_txreq->ss = &qp->s_sge;
drivers/infiniband/hw/hfi1/ud.c
510
ps->s_txreq->ss = &qp->s_sge;
drivers/infiniband/hw/hfi1/verbs.c
1038
if (ss) {
drivers/infiniband/hw/hfi1/verbs.c
1040
void *addr = ss->sge.vaddr;
drivers/infiniband/hw/hfi1/verbs.c
1041
u32 slen = rvt_get_sge_length(&ss->sge, len);
drivers/infiniband/hw/hfi1/verbs.c
1043
rvt_update_sge(ss, slen, false);
drivers/infiniband/hw/hfi1/verbs.c
659
struct rvt_sge_state *ss = tx->ss;
drivers/infiniband/hw/hfi1/verbs.c
660
struct rvt_sge *sg_list = ss->sg_list;
drivers/infiniband/hw/hfi1/verbs.c
661
struct rvt_sge sge = ss->sge;
drivers/infiniband/hw/hfi1/verbs.c
662
u8 num_sge = ss->num_sge;
drivers/infiniband/hw/hfi1/verbs.c
667
len = rvt_get_sge_length(&ss->sge, length);
drivers/infiniband/hw/hfi1/verbs.c
672
ss->sge.vaddr,
drivers/infiniband/hw/hfi1/verbs.c
676
rvt_update_sge(ss, len, false);
drivers/infiniband/hw/hfi1/verbs.c
682
ss->sge = sge;
drivers/infiniband/hw/hfi1/verbs.c
683
ss->num_sge = num_sge;
drivers/infiniband/hw/hfi1/verbs.c
684
ss->sg_list = sg_list;
drivers/infiniband/hw/hfi1/verbs.c
773
if (tx->ss) {
drivers/infiniband/hw/hfi1/verbs.c
942
struct rvt_sge_state *ss = ps->s_txreq->ss;
drivers/infiniband/hw/hfi1/verbs.h
177
struct rvt_sge_state ss; /* Used for TID RDMA READ Request */
drivers/infiniband/hw/hfi1/verbs.h
181
struct rvt_sge_state ss; /* used for TID WRITE RESP */
drivers/infiniband/hw/hfi1/verbs_txreq.h
22
struct rvt_sge_state *ss;
drivers/infiniband/sw/rdmavt/mr.c
489
bool rvt_ss_has_lkey(struct rvt_sge_state *ss, u32 lkey)
drivers/infiniband/sw/rdmavt/mr.c
494
if (!ss->num_sge)
drivers/infiniband/sw/rdmavt/mr.c
497
rval = rvt_mr_has_lkey(ss->sge.mr, lkey);
drivers/infiniband/sw/rdmavt/mr.c
499
for (i = 0; !rval && i < ss->num_sge - 1; i++)
drivers/infiniband/sw/rdmavt/mr.c
500
rval = rvt_mr_has_lkey(ss->sg_list[i].mr, lkey);
drivers/infiniband/sw/rdmavt/qp.c
2271
struct rvt_sge_state *ss;
drivers/infiniband/sw/rdmavt/qp.c
2276
ss = &qp->r_sge;
drivers/infiniband/sw/rdmavt/qp.c
2277
ss->sg_list = qp->r_sg_list;
drivers/infiniband/sw/rdmavt/qp.c
2283
ret = rvt_lkey_ok(rkt, pd, j ? &ss->sg_list[j - 1] : &ss->sge,
drivers/infiniband/sw/rdmavt/qp.c
2291
ss->num_sge = j;
drivers/infiniband/sw/rdmavt/qp.c
2292
ss->total_len = qp->r_len;
drivers/infiniband/sw/rdmavt/qp.c
2297
struct rvt_sge *sge = --j ? &ss->sg_list[j - 1] : &ss->sge;
drivers/infiniband/sw/rdmavt/qp.c
2301
ss->num_sge = 0;
drivers/infiniband/sw/rdmavt/qp.c
2810
void rvt_copy_sge(struct rvt_qp *qp, struct rvt_sge_state *ss,
drivers/infiniband/sw/rdmavt/qp.c
2814
struct rvt_sge *sge = &ss->sge;
drivers/infiniband/sw/rdmavt/qp.c
2864
rvt_update_sge(ss, len, release);
drivers/infiniband/sw/rdmavt/rc.c
162
u32 rvt_restart_sge(struct rvt_sge_state *ss, struct rvt_swqe *wqe, u32 len)
drivers/infiniband/sw/rdmavt/rc.c
164
ss->sge = wqe->sg_list[0];
drivers/infiniband/sw/rdmavt/rc.c
165
ss->sg_list = wqe->sg_list + 1;
drivers/infiniband/sw/rdmavt/rc.c
166
ss->num_sge = wqe->wr.num_sge;
drivers/infiniband/sw/rdmavt/rc.c
167
ss->total_len = wqe->length;
drivers/infiniband/sw/rdmavt/rc.c
168
rvt_skip_sge(ss, len, false);
drivers/infiniband/ulp/ipoib/ipoib_main.c
2448
struct sockaddr_storage *ss)
drivers/infiniband/ulp/ipoib/ipoib_main.c
2450
union ib_gid *gid = (union ib_gid *)(ss->__data + 4);
drivers/infiniband/ulp/ipoib/ipoib_main.c
2458
if (memcmp(dev->dev_addr, ss->__data,
drivers/infiniband/ulp/ipoib/ipoib_main.c
2471
struct sockaddr_storage *ss = addr;
drivers/infiniband/ulp/ipoib/ipoib_main.c
2477
ret = ipoib_check_lladdr(dev, ss);
drivers/infiniband/ulp/ipoib/ipoib_main.c
2481
set_base_guid(priv, (union ib_gid *)(ss->__data + 4));
drivers/infiniband/ulp/rtrs/rtrs-srv.c
565
struct rtrs_path *ss = &srv_path->s;
drivers/infiniband/ulp/rtrs/rtrs-srv.c
645
rtrs_err(ss, "rtrs_iu_alloc(), err: %pe\n", ERR_PTR(err));
drivers/infiniband/ulp/srp/ib_srp.c
3429
ret = srp_parse_in(net, &target->rdma_cm.src.ss, p,
drivers/infiniband/ulp/srp/ib_srp.c
3446
ret = srp_parse_in(net, &target->rdma_cm.dst.ss, p,
drivers/infiniband/ulp/srp/ib_srp.h
248
struct sockaddr_storage ss;
drivers/infiniband/ulp/srp/ib_srp.h
254
struct sockaddr_storage ss;
drivers/mailbox/pcc.c
524
struct acpi_pcct_subspace *ss = (struct acpi_pcct_subspace *) header;
drivers/mailbox/pcc.c
526
if (ss->header.type < ACPI_PCCT_TYPE_RESERVED)
drivers/media/pci/solo6x10/solo6x10-g723.c
118
static int snd_solo_pcm_open(struct snd_pcm_substream *ss)
drivers/media/pci/solo6x10/solo6x10-g723.c
120
struct solo_dev *solo_dev = snd_pcm_substream_chip(ss);
drivers/media/pci/solo6x10/solo6x10-g723.c
136
ss->runtime->hw = snd_solo_pcm_hw;
drivers/media/pci/solo6x10/solo6x10-g723.c
138
snd_pcm_substream_chip(ss) = solo_pcm;
drivers/media/pci/solo6x10/solo6x10-g723.c
147
static int snd_solo_pcm_close(struct snd_pcm_substream *ss)
drivers/media/pci/solo6x10/solo6x10-g723.c
149
struct solo_snd_pcm *solo_pcm = snd_pcm_substream_chip(ss);
drivers/media/pci/solo6x10/solo6x10-g723.c
151
snd_pcm_substream_chip(ss) = solo_pcm->solo_dev;
drivers/media/pci/solo6x10/solo6x10-g723.c
159
static int snd_solo_pcm_trigger(struct snd_pcm_substream *ss, int cmd)
drivers/media/pci/solo6x10/solo6x10-g723.c
161
struct solo_snd_pcm *solo_pcm = snd_pcm_substream_chip(ss);
drivers/media/pci/solo6x10/solo6x10-g723.c
193
static int snd_solo_pcm_prepare(struct snd_pcm_substream *ss)
drivers/media/pci/solo6x10/solo6x10-g723.c
198
static snd_pcm_uframes_t snd_solo_pcm_pointer(struct snd_pcm_substream *ss)
drivers/media/pci/solo6x10/solo6x10-g723.c
200
struct solo_snd_pcm *solo_pcm = snd_pcm_substream_chip(ss);
drivers/media/pci/solo6x10/solo6x10-g723.c
207
static int snd_solo_pcm_copy(struct snd_pcm_substream *ss, int channel,
drivers/media/pci/solo6x10/solo6x10-g723.c
211
struct solo_snd_pcm *solo_pcm = snd_pcm_substream_chip(ss);
drivers/media/pci/solo6x10/solo6x10-g723.c
221
(ss->number * G723_PERIOD_BYTES),
drivers/media/pci/solo6x10/solo6x10-g723.c
294
struct snd_pcm_substream *ss;
drivers/media/pci/solo6x10/solo6x10-g723.c
310
for (i = 0, ss = pcm->streams[SNDRV_PCM_STREAM_CAPTURE].substream;
drivers/media/pci/solo6x10/solo6x10-g723.c
311
ss; ss = ss->next, i++)
drivers/media/pci/solo6x10/solo6x10-g723.c
312
sprintf(ss->name, "Camera #%d Audio", i);
drivers/media/pci/solo6x10/solo6x10-g723.c
80
struct snd_pcm_substream *ss;
drivers/media/pci/solo6x10/solo6x10-g723.c
83
for (ss = pstr->substream; ss != NULL; ss = ss->next) {
drivers/media/pci/solo6x10/solo6x10-g723.c
84
if (snd_pcm_substream_chip(ss) == NULL)
drivers/media/pci/solo6x10/solo6x10-g723.c
88
if (snd_pcm_substream_chip(ss) == solo_dev)
drivers/media/pci/solo6x10/solo6x10-g723.c
92
solo_pcm = snd_pcm_substream_chip(ss);
drivers/media/pci/solo6x10/solo6x10-g723.c
96
snd_pcm_period_elapsed(ss);
drivers/media/pci/tw686x/tw686x-audio.c
104
static int tw686x_pcm_open(struct snd_pcm_substream *ss)
drivers/media/pci/tw686x/tw686x-audio.c
106
struct tw686x_dev *dev = snd_pcm_substream_chip(ss);
drivers/media/pci/tw686x/tw686x-audio.c
107
struct tw686x_audio_channel *ac = &dev->audio_channels[ss->number];
drivers/media/pci/tw686x/tw686x-audio.c
108
struct snd_pcm_runtime *rt = ss->runtime;
drivers/media/pci/tw686x/tw686x-audio.c
111
ac->ss = ss;
drivers/media/pci/tw686x/tw686x-audio.c
121
static int tw686x_pcm_close(struct snd_pcm_substream *ss)
drivers/media/pci/tw686x/tw686x-audio.c
123
struct tw686x_dev *dev = snd_pcm_substream_chip(ss);
drivers/media/pci/tw686x/tw686x-audio.c
124
struct tw686x_audio_channel *ac = &dev->audio_channels[ss->number];
drivers/media/pci/tw686x/tw686x-audio.c
126
ac->ss = NULL;
drivers/media/pci/tw686x/tw686x-audio.c
130
static int tw686x_pcm_prepare(struct snd_pcm_substream *ss)
drivers/media/pci/tw686x/tw686x-audio.c
132
struct tw686x_dev *dev = snd_pcm_substream_chip(ss);
drivers/media/pci/tw686x/tw686x-audio.c
133
struct tw686x_audio_channel *ac = &dev->audio_channels[ss->number];
drivers/media/pci/tw686x/tw686x-audio.c
134
struct snd_pcm_runtime *rt = ss->runtime;
drivers/media/pci/tw686x/tw686x-audio.c
135
unsigned int period_size = snd_pcm_lib_period_bytes(ss);
drivers/media/pci/tw686x/tw686x-audio.c
211
static int tw686x_pcm_trigger(struct snd_pcm_substream *ss, int cmd)
drivers/media/pci/tw686x/tw686x-audio.c
213
struct tw686x_dev *dev = snd_pcm_substream_chip(ss);
drivers/media/pci/tw686x/tw686x-audio.c
214
struct tw686x_audio_channel *ac = &dev->audio_channels[ss->number];
drivers/media/pci/tw686x/tw686x-audio.c
250
static snd_pcm_uframes_t tw686x_pcm_pointer(struct snd_pcm_substream *ss)
drivers/media/pci/tw686x/tw686x-audio.c
252
struct tw686x_dev *dev = snd_pcm_substream_chip(ss);
drivers/media/pci/tw686x/tw686x-audio.c
253
struct tw686x_audio_channel *ac = &dev->audio_channels[ss->number];
drivers/media/pci/tw686x/tw686x-audio.c
255
return bytes_to_frames(ss->runtime, ac->ptr);
drivers/media/pci/tw686x/tw686x-audio.c
270
struct snd_pcm_substream *ss;
drivers/media/pci/tw686x/tw686x-audio.c
283
for (i = 0, ss = pcm->streams[SNDRV_PCM_STREAM_CAPTURE].substream;
drivers/media/pci/tw686x/tw686x-audio.c
284
ss; ss = ss->next, i++)
drivers/media/pci/tw686x/tw686x-audio.c
285
snprintf(ss->name, sizeof(ss->name), "vch%u audio", i);
drivers/media/pci/tw686x/tw686x-audio.c
48
if (!ac->ss || !ac->curr_bufs[0] || !ac->curr_bufs[1]) {
drivers/media/pci/tw686x/tw686x-audio.c
77
snd_pcm_period_elapsed(ac->ss);
drivers/media/pci/tw686x/tw686x.h
67
struct snd_pcm_substream *ss;
drivers/net/bonding/bond_alb.c
1026
struct sockaddr_storage ss;
drivers/net/bonding/bond_alb.c
1036
memcpy(ss.__data, addr, len);
drivers/net/bonding/bond_alb.c
1037
ss.ss_family = dev->type;
drivers/net/bonding/bond_alb.c
1038
if (dev_set_mac_address(dev, &ss, NULL)) {
drivers/net/bonding/bond_alb.c
1243
struct sockaddr_storage ss;
drivers/net/bonding/bond_alb.c
1267
memcpy(ss.__data, bond->dev->dev_addr, bond->dev->addr_len);
drivers/net/bonding/bond_alb.c
1268
ss.ss_family = bond->dev->type;
drivers/net/bonding/bond_alb.c
1276
dev_set_mac_address(rollback_slave->dev, &ss, NULL);
drivers/net/bonding/bond_alb.c
1755
struct sockaddr_storage ss;
drivers/net/bonding/bond_alb.c
1761
bond_hw_addr_copy(ss.__data, bond->dev->dev_addr,
drivers/net/bonding/bond_alb.c
1763
ss.ss_family = bond->dev->type;
drivers/net/bonding/bond_alb.c
1765
dev_set_mac_address(new_slave->dev, &ss, NULL);
drivers/net/bonding/bond_alb.c
1788
struct sockaddr_storage *ss = addr;
drivers/net/bonding/bond_alb.c
1793
if (!is_valid_ether_addr(ss->__data))
drivers/net/bonding/bond_alb.c
1800
dev_addr_set(bond_dev, ss->__data);
drivers/net/bonding/bond_main.c
1017
struct sockaddr_storage ss;
drivers/net/bonding/bond_main.c
1043
bond_hw_addr_copy(ss.__data,
drivers/net/bonding/bond_main.c
1046
ss.ss_family = new_active->dev->type;
drivers/net/bonding/bond_main.c
1048
bond_hw_addr_copy(ss.__data, bond->dev->dev_addr,
drivers/net/bonding/bond_main.c
1050
ss.ss_family = bond->dev->type;
drivers/net/bonding/bond_main.c
1053
rv = dev_set_mac_address(new_active->dev, &ss, NULL);
drivers/net/bonding/bond_main.c
1063
bond_hw_addr_copy(ss.__data, tmp_mac,
drivers/net/bonding/bond_main.c
1065
ss.ss_family = old_active->dev->type;
drivers/net/bonding/bond_main.c
1067
rv = dev_set_mac_address(old_active->dev, &ss, NULL);
drivers/net/bonding/bond_main.c
1892
struct sockaddr_storage ss;
drivers/net/bonding/bond_main.c
2055
memcpy(ss.__data, bond_dev->dev_addr, bond_dev->addr_len);
drivers/net/bonding/bond_main.c
2063
eth_random_addr(ss.__data);
drivers/net/bonding/bond_main.c
2068
ss.ss_family = slave_dev->type;
drivers/net/bonding/bond_main.c
2069
res = dev_set_mac_address(slave_dev, &ss, extack);
drivers/net/bonding/bond_main.c
2377
bond_hw_addr_copy(ss.__data, new_slave->perm_hwaddr,
drivers/net/bonding/bond_main.c
2379
ss.ss_family = slave_dev->type;
drivers/net/bonding/bond_main.c
2380
dev_set_mac_address(slave_dev, &ss, NULL);
drivers/net/bonding/bond_main.c
2421
struct sockaddr_storage ss;
drivers/net/bonding/bond_main.c
2572
bond_hw_addr_copy(ss.__data, slave->perm_hwaddr,
drivers/net/bonding/bond_main.c
2574
ss.ss_family = slave_dev->type;
drivers/net/bonding/bond_main.c
2575
dev_set_mac_address(slave_dev, &ss, NULL);
drivers/net/bonding/bond_main.c
4822
struct sockaddr_storage *ss = addr, tmp_ss;
drivers/net/bonding/bond_main.c
4839
if (!is_valid_ether_addr(ss->__data))
drivers/net/bonding/bond_main.c
4860
dev_addr_set(bond_dev, ss->__data);
drivers/net/ethernet/amd/xgbe/xgbe-dev.c
721
unsigned int ss;
drivers/net/ethernet/amd/xgbe/xgbe-dev.c
725
ss = 0x07;
drivers/net/ethernet/amd/xgbe/xgbe-dev.c
728
ss = 0x03;
drivers/net/ethernet/amd/xgbe/xgbe-dev.c
731
ss = 0x02;
drivers/net/ethernet/amd/xgbe/xgbe-dev.c
734
ss = 0x00;
drivers/net/ethernet/amd/xgbe/xgbe-dev.c
740
if (XGMAC_IOREAD_BITS(pdata, MAC_TCR, SS) != ss)
drivers/net/ethernet/amd/xgbe/xgbe-dev.c
741
XGMAC_IOWRITE_BITS(pdata, MAC_TCR, SS, ss);
drivers/net/ethernet/broadcom/bgmac.c
1374
struct ethtool_stats *ss, uint64_t *data)
drivers/net/ethernet/chelsio/cxgb/cxgb2.c
460
struct sge_port_stats ss;
drivers/net/ethernet/chelsio/cxgb/cxgb2.c
464
t1_sge_get_port_stats(adapter->sge, dev->if_port, &ss);
drivers/net/ethernet/chelsio/cxgb/cxgb2.c
504
*data++ = ss.rx_cso_good;
drivers/net/ethernet/chelsio/cxgb/cxgb2.c
505
*data++ = ss.tx_cso;
drivers/net/ethernet/chelsio/cxgb/cxgb2.c
506
*data++ = ss.tx_tso;
drivers/net/ethernet/chelsio/cxgb/cxgb2.c
507
*data++ = ss.vlan_xtract;
drivers/net/ethernet/chelsio/cxgb/cxgb2.c
508
*data++ = ss.vlan_insert;
drivers/net/ethernet/chelsio/cxgb/cxgb2.c
509
*data++ = ss.tx_need_hdrroom;
drivers/net/ethernet/chelsio/cxgb/sge.c
978
struct sge_port_stats *ss)
drivers/net/ethernet/chelsio/cxgb/sge.c
982
memset(ss, 0, sizeof(*ss));
drivers/net/ethernet/chelsio/cxgb/sge.c
986
ss->rx_cso_good += st->rx_cso_good;
drivers/net/ethernet/chelsio/cxgb/sge.c
987
ss->tx_cso += st->tx_cso;
drivers/net/ethernet/chelsio/cxgb/sge.c
988
ss->tx_tso += st->tx_tso;
drivers/net/ethernet/chelsio/cxgb/sge.c
989
ss->tx_need_hdrroom += st->tx_need_hdrroom;
drivers/net/ethernet/chelsio/cxgb/sge.c
990
ss->vlan_xtract += st->vlan_xtract;
drivers/net/ethernet/chelsio/cxgb/sge.c
991
ss->vlan_insert += st->vlan_insert;
drivers/net/ethernet/intel/idpf/idpf_singleq_txrx.c
192
struct libeth_sq_napi_stats ss = { };
drivers/net/ethernet/intel/idpf/idpf_singleq_txrx.c
195
.ss = &ss,
drivers/net/ethernet/intel/idpf/idpf_singleq_txrx.c
484
struct libeth_sq_napi_stats ss = { };
drivers/net/ethernet/intel/idpf/idpf_singleq_txrx.c
490
.ss = &ss,
drivers/net/ethernet/intel/idpf/idpf_singleq_txrx.c
563
*cleaned += ss.packets;
drivers/net/ethernet/intel/idpf/idpf_singleq_txrx.c
566
u64_stats_add(&tx_q->q_stats.packets, ss.packets);
drivers/net/ethernet/intel/idpf/idpf_singleq_txrx.c
567
u64_stats_add(&tx_q->q_stats.bytes, ss.bytes);
drivers/net/ethernet/intel/idpf/idpf_singleq_txrx.c
575
__netif_txq_completed_wake(nq, ss.packets, ss.bytes,
drivers/net/ethernet/intel/idpf/idpf_txrx.c
2070
.ss = cleaned,
drivers/net/ethernet/intel/idpf/idpf_txrx.c
2134
.ss = cleaned,
drivers/net/ethernet/intel/idpf/idpf_txrx.c
2603
struct libeth_sq_napi_stats ss = { };
drivers/net/ethernet/intel/idpf/idpf_txrx.c
2607
.ss = &ss,
drivers/net/ethernet/intel/idpf/idpf_txrx.c
61
struct libeth_sq_napi_stats ss = { };
drivers/net/ethernet/intel/idpf/idpf_txrx.c
66
.ss = &ss,
drivers/net/ethernet/intel/idpf/xdp.c
298
struct libeth_xdpsq_napi_stats ss = { };
drivers/net/ethernet/intel/idpf/xdp.c
306
.xss = &ss,
drivers/net/ethernet/intel/idpf/xsk.c
170
struct libeth_xdpsq_napi_stats ss = { };
drivers/net/ethernet/intel/idpf/xsk.c
176
.xss = &ss,
drivers/net/ethernet/intel/idpf/xsk.c
203
struct libeth_xdpsq_napi_stats ss = { };
drivers/net/ethernet/intel/idpf/xsk.c
210
.xss = &ss,
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1012
ss = &mgp->ss[i];
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1013
cmd.data0 = MYRI10GE_LOWPART_TO_U32(ss->rx_done.bus);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1014
cmd.data1 = MYRI10GE_HIGHPART_TO_U32(ss->rx_done.bus);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1023
ss = &mgp->ss[i];
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1024
ss->irq_claim =
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1044
ss = &mgp->ss[i];
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1046
ss->dca_tag = (__iomem __be32 *)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1049
ss->dca_tag = NULL;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1058
ss = &mgp->ss[i];
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1060
memset(ss->rx_done.entry, 0, bytes);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1061
ss->tx.req = 0;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1062
ss->tx.done = 0;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1063
ss->tx.pkt_start = 0;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1064
ss->tx.pkt_done = 0;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1065
ss->rx_big.cnt = 0;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1066
ss->rx_small.cnt = 0;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1067
ss->rx_done.idx = 0;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1068
ss->rx_done.cnt = 0;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1069
ss->tx.wake_queue = 0;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1070
ss->tx.stop_queue = 0;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1097
myri10ge_write_dca(struct myri10ge_slice_state *ss, int cpu, int tag)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1099
ss->cached_dca_tag = tag;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1100
put_be32(htonl(tag), ss->dca_tag);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1103
static inline void myri10ge_update_dca(struct myri10ge_slice_state *ss)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1108
if (cpu != ss->cpu) {
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1109
tag = dca3_get_tag(&ss->mgp->pdev->dev, cpu);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1110
if (ss->cached_dca_tag != tag)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1111
myri10ge_write_dca(ss, cpu, tag);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1112
ss->cpu = cpu;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1122
if (mgp->ss[0].dca_tag == NULL || mgp->dca_enabled)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1138
mgp->ss[i].cpu = -1;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1139
mgp->ss[i].cached_dca_tag = -1;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1140
myri10ge_update_dca(&mgp->ss[i]);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1317
myri10ge_rx_done(struct myri10ge_slice_state *ss, int len, __wsum csum)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1319
struct myri10ge_priv *mgp = ss->mgp;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1329
rx = &ss->rx_small;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1332
rx = &ss->rx_big;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1341
skb = napi_get_frags(&ss->napi);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1343
ss->stats.rx_dropped++;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1379
skb_record_rx_queue(skb, ss - &mgp->ss[0]);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1381
napi_gro_frags(&ss->napi);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1387
myri10ge_tx_done(struct myri10ge_slice_state *ss, int mcp_index)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1389
struct pci_dev *pdev = ss->mgp->pdev;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1390
struct myri10ge_tx_buf *tx = &ss->tx;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1409
ss->stats.tx_bytes += skb->len;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1410
ss->stats.tx_packets++;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1426
dev_queue = netdev_get_tx_queue(ss->dev, ss - ss->mgp->ss);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1436
if ((ss->mgp->dev->real_num_tx_queues > 1) &&
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1449
ss->mgp->running == MYRI10GE_ETH_RUNNING) {
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1456
myri10ge_clean_rx_done(struct myri10ge_slice_state *ss, int budget)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1458
struct myri10ge_rx_done *rx_done = &ss->rx_done;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1459
struct myri10ge_priv *mgp = ss->mgp;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1473
rx_ok = myri10ge_rx_done(ss, length, checksum);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1482
ss->stats.rx_packets += rx_packets;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1483
ss->stats.rx_bytes += rx_bytes;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1486
if (ss->rx_small.fill_cnt - ss->rx_small.cnt < myri10ge_fill_thresh)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1487
myri10ge_alloc_rx_pages(mgp, &ss->rx_small,
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1489
if (ss->rx_big.fill_cnt - ss->rx_big.cnt < myri10ge_fill_thresh)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1490
myri10ge_alloc_rx_pages(mgp, &ss->rx_big, mgp->big_bytes, 0);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1497
struct mcp_irq_data *stats = mgp->ss[0].fw_stats;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1532
struct myri10ge_slice_state *ss =
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1537
if (ss->mgp->dca_enabled)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1538
myri10ge_update_dca(ss);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1541
work_done = myri10ge_clean_rx_done(ss, budget);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1545
put_be32(htonl(3), ss->irq_claim);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1552
struct myri10ge_slice_state *ss = arg;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1553
struct myri10ge_priv *mgp = ss->mgp;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1554
struct mcp_irq_data *stats = ss->fw_stats;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1555
struct myri10ge_tx_buf *tx = &ss->tx;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1561
if ((mgp->dev->real_num_tx_queues == 1) && (ss != mgp->ss)) {
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1562
napi_schedule(&ss->napi);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1573
napi_schedule(&ss->napi);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1590
myri10ge_tx_done(ss, (int)send_done_count);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1603
if (ss == mgp->ss)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1606
put_be32(htonl(3), ss->irq_claim + 1);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1723
ring->rx_mini_max_pending = mgp->ss[0].rx_small.mask + 1;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1724
ring->rx_max_pending = mgp->ss[0].rx_big.mask + 1;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1726
ring->tx_max_pending = mgp->ss[0].tx.mask + 1;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1804
struct myri10ge_slice_state *ss;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1825
data[i++] = (unsigned int)(mgp->ss[0].dca_tag != NULL);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1831
ss = &mgp->ss[0];
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1832
data[i++] = (unsigned int)ntohl(ss->fw_stats->link_up);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1833
data[i++] = (unsigned int)ntohl(ss->fw_stats->dropped_link_overflow);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1835
(unsigned int)ntohl(ss->fw_stats->dropped_link_error_or_filtered);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1836
data[i++] = (unsigned int)ntohl(ss->fw_stats->dropped_pause);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1837
data[i++] = (unsigned int)ntohl(ss->fw_stats->dropped_bad_phy);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1838
data[i++] = (unsigned int)ntohl(ss->fw_stats->dropped_bad_crc32);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1839
data[i++] = (unsigned int)ntohl(ss->fw_stats->dropped_unicast_filtered);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1841
(unsigned int)ntohl(ss->fw_stats->dropped_multicast_filtered);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1842
data[i++] = (unsigned int)ntohl(ss->fw_stats->dropped_runt);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1843
data[i++] = (unsigned int)ntohl(ss->fw_stats->dropped_overrun);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1844
data[i++] = (unsigned int)ntohl(ss->fw_stats->dropped_no_small_buffer);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1845
data[i++] = (unsigned int)ntohl(ss->fw_stats->dropped_no_big_buffer);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1848
ss = &mgp->ss[slice];
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1850
data[i++] = (unsigned int)ss->tx.pkt_start;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1851
data[i++] = (unsigned int)ss->tx.pkt_done;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1852
data[i++] = (unsigned int)ss->tx.req;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1853
data[i++] = (unsigned int)ss->tx.done;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1854
data[i++] = (unsigned int)ss->rx_small.cnt;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1855
data[i++] = (unsigned int)ss->rx_big.cnt;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1856
data[i++] = (unsigned int)ss->tx.wake_queue;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1857
data[i++] = (unsigned int)ss->tx.stop_queue;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1858
data[i++] = (unsigned int)ss->tx.linearized;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1946
static int myri10ge_allocate_rings(struct myri10ge_slice_state *ss)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1948
struct myri10ge_priv *mgp = ss->mgp;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1957
slice = ss - mgp->ss;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1971
ss->tx.mask = tx_ring_entries - 1;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1972
ss->rx_small.mask = ss->rx_big.mask = rx_ring_entries - 1;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1979
* sizeof(*ss->tx.req_list);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
198
struct myri10ge_slice_state *ss;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1980
ss->tx.req_bytes = kzalloc(bytes, GFP_KERNEL);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1981
if (ss->tx.req_bytes == NULL)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1985
ss->tx.req_list = (struct mcp_kreq_ether_send *)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1986
ALIGN((unsigned long)ss->tx.req_bytes, 8);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1987
ss->tx.queue_active = 0;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1989
bytes = rx_ring_entries * sizeof(*ss->rx_small.shadow);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1990
ss->rx_small.shadow = kzalloc(bytes, GFP_KERNEL);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1991
if (ss->rx_small.shadow == NULL)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1994
bytes = rx_ring_entries * sizeof(*ss->rx_big.shadow);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1995
ss->rx_big.shadow = kzalloc(bytes, GFP_KERNEL);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
1996
if (ss->rx_big.shadow == NULL)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2001
bytes = tx_ring_entries * sizeof(*ss->tx.info);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2002
ss->tx.info = kzalloc(bytes, GFP_KERNEL);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2003
if (ss->tx.info == NULL)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2006
bytes = rx_ring_entries * sizeof(*ss->rx_small.info);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2007
ss->rx_small.info = kzalloc(bytes, GFP_KERNEL);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2008
if (ss->rx_small.info == NULL)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2011
bytes = rx_ring_entries * sizeof(*ss->rx_big.info);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2012
ss->rx_big.info = kzalloc(bytes, GFP_KERNEL);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2013
if (ss->rx_big.info == NULL)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2017
ss->rx_big.cnt = 0;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2018
ss->rx_small.cnt = 0;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2019
ss->rx_big.fill_cnt = 0;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2020
ss->rx_small.fill_cnt = 0;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2021
ss->rx_small.page_offset = MYRI10GE_ALLOC_SIZE;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2022
ss->rx_big.page_offset = MYRI10GE_ALLOC_SIZE;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2023
ss->rx_small.watchdog_needed = 0;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2024
ss->rx_big.watchdog_needed = 0;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2026
ss->rx_small.fill_cnt = ss->rx_small.mask + 1;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2028
myri10ge_alloc_rx_pages(mgp, &ss->rx_small,
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2032
if (ss->rx_small.fill_cnt < ss->rx_small.mask + 1) {
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2034
slice, ss->rx_small.fill_cnt);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2038
myri10ge_alloc_rx_pages(mgp, &ss->rx_big, mgp->big_bytes, 0);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2039
if (ss->rx_big.fill_cnt < ss->rx_big.mask + 1) {
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2041
slice, ss->rx_big.fill_cnt);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2048
for (i = ss->rx_big.cnt; i < ss->rx_big.fill_cnt; i++) {
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2049
int idx = i & ss->rx_big.mask;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2050
myri10ge_unmap_rx_page(mgp->pdev, &ss->rx_big.info[idx],
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2052
put_page(ss->rx_big.info[idx].page);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2057
ss->rx_small.fill_cnt = ss->rx_small.cnt;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2058
for (i = ss->rx_small.cnt; i < ss->rx_small.fill_cnt; i++) {
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2059
int idx = i & ss->rx_small.mask;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2060
myri10ge_unmap_rx_page(mgp->pdev, &ss->rx_small.info[idx],
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2062
put_page(ss->rx_small.info[idx].page);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2065
kfree(ss->rx_big.info);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2068
kfree(ss->rx_small.info);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2071
kfree(ss->tx.info);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2074
kfree(ss->rx_big.shadow);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2077
kfree(ss->rx_small.shadow);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2080
kfree(ss->tx.req_bytes);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2081
ss->tx.req_bytes = NULL;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2082
ss->tx.req_list = NULL;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2088
static void myri10ge_free_rings(struct myri10ge_slice_state *ss)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2090
struct myri10ge_priv *mgp = ss->mgp;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2096
if (ss->tx.req_list == NULL)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2099
for (i = ss->rx_big.cnt; i < ss->rx_big.fill_cnt; i++) {
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2100
idx = i & ss->rx_big.mask;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2101
if (i == ss->rx_big.fill_cnt - 1)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2102
ss->rx_big.info[idx].page_offset = MYRI10GE_ALLOC_SIZE;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2103
myri10ge_unmap_rx_page(mgp->pdev, &ss->rx_big.info[idx],
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2105
put_page(ss->rx_big.info[idx].page);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2109
ss->rx_small.fill_cnt = ss->rx_small.cnt;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2110
for (i = ss->rx_small.cnt; i < ss->rx_small.fill_cnt; i++) {
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2111
idx = i & ss->rx_small.mask;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2112
if (i == ss->rx_small.fill_cnt - 1)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2113
ss->rx_small.info[idx].page_offset =
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2115
myri10ge_unmap_rx_page(mgp->pdev, &ss->rx_small.info[idx],
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2117
put_page(ss->rx_small.info[idx].page);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2119
tx = &ss->tx;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2130
ss->stats.tx_dropped++;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2145
kfree(ss->rx_big.info);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2147
kfree(ss->rx_small.info);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2149
kfree(ss->tx.info);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2151
kfree(ss->rx_big.shadow);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2153
kfree(ss->rx_small.shadow);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2155
kfree(ss->tx.req_bytes);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2156
ss->tx.req_bytes = NULL;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2157
ss->tx.req_list = NULL;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2163
struct myri10ge_slice_state *ss;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2195
ss = &mgp->ss[i];
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2196
snprintf(ss->irq_desc, sizeof(ss->irq_desc),
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2199
myri10ge_intr, 0, ss->irq_desc,
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2200
ss);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2207
&mgp->ss[i]);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2216
mgp->dev->name, &mgp->ss[0]);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2233
free_irq(mgp->msix_vectors[i].vector, &mgp->ss[i]);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2235
free_irq(pdev->irq, &mgp->ss[0]);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2246
struct myri10ge_slice_state *ss;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2249
ss = &mgp->ss[slice];
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2257
ss->tx.lanai = (struct mcp_kreq_ether_send __iomem *)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2265
ss->rx_small.lanai = (struct mcp_kreq_ether_recv __iomem *)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2270
ss->rx_big.lanai = (struct mcp_kreq_ether_recv __iomem *)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2273
ss->tx.send_go = (__iomem __be32 *)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2275
ss->tx.send_stop = (__iomem __be32 *)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2284
struct myri10ge_slice_state *ss;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2287
ss = &mgp->ss[slice];
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2288
cmd.data0 = MYRI10GE_LOWPART_TO_U32(ss->fw_stats_bus);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2289
cmd.data1 = MYRI10GE_HIGHPART_TO_U32(ss->fw_stats_bus);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2293
dma_addr_t bus = ss->fw_stats_bus;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2312
struct myri10ge_slice_state *ss;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2407
ss = &mgp->ss[slice];
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2414
status = myri10ge_allocate_rings(ss);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2429
napi_enable(&(ss)->napi);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2479
napi_disable(&mgp->ss[slice].napi);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2482
myri10ge_free_rings(&mgp->ss[i]);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2500
if (mgp->ss[0].tx.req_bytes == NULL)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2506
napi_disable(&mgp->ss[i].napi);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2532
myri10ge_free_rings(&mgp->ss[i]);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2648
struct myri10ge_slice_state *ss;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2663
ss = &mgp->ss[queue];
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2665
tx = &ss->tx;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2742
ss->stats.tx_dropped += 1;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2907
ss->stats.tx_dropped += 1;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2917
struct myri10ge_slice_state *ss;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2940
ss = &mgp->ss[skb_get_queue_mapping(skb)];
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2942
ss->stats.tx_dropped += 1;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
2954
slice_stats = &mgp->ss[i].stats;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3368
myri10ge_check_slice(struct myri10ge_slice_state *ss, int *reset_needed,
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3371
struct myri10ge_priv *mgp = ss->mgp;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3372
int slice = ss - mgp->ss;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3374
if (ss->tx.req != ss->tx.done &&
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3375
ss->tx.done == ss->watchdog_tx_done &&
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3376
ss->watchdog_tx_req != ss->watchdog_tx_done) {
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3385
slice, ss->tx.queue_active, ss->tx.req,
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3386
ss->tx.done, ss->tx.pkt_start,
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3387
ss->tx.pkt_done,
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3388
(int)ntohl(mgp->ss[slice].fw_stats->
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3391
ss->stuck = 1;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3394
if (ss->watchdog_tx_done != ss->tx.done ||
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3395
ss->watchdog_rx_done != ss->rx_done.cnt) {
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3398
ss->watchdog_tx_done = ss->tx.done;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3399
ss->watchdog_tx_req = ss->tx.req;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3400
ss->watchdog_rx_done = ss->rx_done.cnt;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3411
struct myri10ge_slice_state *ss;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3458
rx_pause_cnt = ntohl(mgp->ss[0].fw_stats->dropped_pause);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3460
ss = mgp->ss;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3461
if (ss->stuck) {
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3462
myri10ge_check_slice(ss, &reset_needed,
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3465
ss->stuck = 0;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3498
struct myri10ge_slice_state *ss;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3505
rx_pause_cnt = ntohl(mgp->ss[0].fw_stats->dropped_pause);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3510
ss = &mgp->ss[i];
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3511
if (ss->rx_small.watchdog_needed) {
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3512
myri10ge_alloc_rx_pages(mgp, &ss->rx_small,
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3515
if (ss->rx_small.fill_cnt - ss->rx_small.cnt >=
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3517
ss->rx_small.watchdog_needed = 0;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3519
if (ss->rx_big.watchdog_needed) {
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3520
myri10ge_alloc_rx_pages(mgp, &ss->rx_big,
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3522
if (ss->rx_big.fill_cnt - ss->rx_big.cnt >=
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3524
ss->rx_big.watchdog_needed = 0;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3526
myri10ge_check_slice(ss, &reset_needed, &busy_slice_cnt,
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3551
struct myri10ge_slice_state *ss;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3556
if (mgp->ss == NULL)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3560
ss = &mgp->ss[i];
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3561
if (ss->rx_done.entry != NULL) {
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3563
sizeof(*ss->rx_done.entry);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3565
ss->rx_done.entry, ss->rx_done.bus);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3566
ss->rx_done.entry = NULL;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3568
if (ss->fw_stats != NULL) {
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3569
bytes = sizeof(*ss->fw_stats);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3571
ss->fw_stats, ss->fw_stats_bus);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3572
ss->fw_stats = NULL;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3574
__netif_napi_del(&ss->napi);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3578
kfree(mgp->ss);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3579
mgp->ss = NULL;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3584
struct myri10ge_slice_state *ss;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3589
bytes = sizeof(*mgp->ss) * mgp->num_slices;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3590
mgp->ss = kzalloc(bytes, GFP_KERNEL);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3591
if (mgp->ss == NULL) {
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3596
ss = &mgp->ss[i];
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3597
bytes = mgp->max_intr_slots * sizeof(*ss->rx_done.entry);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3598
ss->rx_done.entry = dma_alloc_coherent(&pdev->dev, bytes,
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3599
&ss->rx_done.bus,
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3601
if (ss->rx_done.entry == NULL)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3603
bytes = sizeof(*ss->fw_stats);
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3604
ss->fw_stats = dma_alloc_coherent(&pdev->dev, bytes,
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3605
&ss->fw_stats_bus,
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3607
if (ss->fw_stats == NULL)
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3609
ss->mgp = mgp;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3610
ss->dev = mgp->dev;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
3611
netif_napi_add_weight(ss->dev, &ss->napi, myri10ge_poll,
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
927
struct myri10ge_slice_state *ss;
drivers/net/ethernet/myricom/myri10ge/myri10ge.c
955
bytes = mgp->max_intr_slots * sizeof(*mgp->ss[0].rx_done.entry);
drivers/net/macvlan.c
1304
struct sockaddr_storage ss;
drivers/net/macvlan.c
1306
ss.ss_family = port->dev->type;
drivers/net/macvlan.c
1307
memcpy(&ss.__data, port->perm_addr, port->dev->addr_len);
drivers/net/macvlan.c
1308
dev_set_mac_address(port->dev, &ss, NULL);
drivers/net/ovpn/bind.c
23
struct ovpn_bind *ovpn_bind_from_sockaddr(const struct sockaddr_storage *ss)
drivers/net/ovpn/bind.c
28
if (ss->ss_family == AF_INET)
drivers/net/ovpn/bind.c
30
else if (ss->ss_family == AF_INET6)
drivers/net/ovpn/bind.c
39
memcpy(&bind->remote, ss, sa_len);
drivers/net/ovpn/netlink.c
106
ss->ss_family = AF_UNSPEC;
drivers/net/ovpn/netlink.c
112
ss->ss_family = AF_INET;
drivers/net/ovpn/netlink.c
115
ss->ss_family = AF_INET6;
drivers/net/ovpn/netlink.c
121
switch (ss->ss_family) {
drivers/net/ovpn/netlink.c
127
sin6 = (struct sockaddr_in6 *)ss;
drivers/net/ovpn/netlink.c
134
ss->ss_family = AF_INET;
drivers/net/ovpn/netlink.c
138
sin = (struct sockaddr_in *)ss;
drivers/net/ovpn/netlink.c
282
struct sockaddr_storage ss = {};
drivers/net/ovpn/netlink.c
290
if (ovpn_nl_attr_sockaddr_remote(attrs, &ss)) {
drivers/net/ovpn/netlink.c
298
ret = ovpn_peer_reset_sockaddr(peer, &ss, local_ip);
drivers/net/ovpn/netlink.c
330
peer->id, &ss,
drivers/net/ovpn/netlink.c
98
struct sockaddr_storage *ss)
drivers/net/ovpn/peer.c
139
const struct sockaddr_storage *ss,
drivers/net/ovpn/peer.c
148
bind = ovpn_bind_from_sockaddr(ss);
drivers/net/ovpn/peer.c
153
if (ss->ss_family == AF_INET) {
drivers/net/ovpn/peer.c
155
} else if (ss->ss_family == AF_INET6) {
drivers/net/ovpn/peer.c
160
ss->ss_family, peer->id);
drivers/net/ovpn/peer.c
195
struct sockaddr_storage ss;
drivers/net/ovpn/peer.c
217
sa = (struct sockaddr_in *)&ss;
drivers/net/ovpn/peer.c
245
sa6 = (struct sockaddr_in6 *)&ss;
drivers/net/ovpn/peer.c
281
(struct sockaddr_storage *)&ss,
drivers/net/ovpn/peer.c
286
netdev_name(peer->ovpn->dev), peer->id, &ss);
drivers/net/ovpn/peer.c
380
struct sockaddr_storage *ss)
drivers/net/ovpn/peer.c
387
sa4 = (struct sockaddr_in *)ss;
drivers/net/ovpn/peer.c
393
sa6 = (struct sockaddr_in6 *)ss;
drivers/net/ovpn/peer.c
513
const struct sockaddr_storage *ss)
drivers/net/ovpn/peer.c
522
if (ss->ss_family != bind->remote.in4.sin_family)
drivers/net/ovpn/peer.c
525
switch (ss->ss_family) {
drivers/net/ovpn/peer.c
527
sa4 = (struct sockaddr_in *)ss;
drivers/net/ovpn/peer.c
534
sa6 = (struct sockaddr_in6 *)ss;
drivers/net/ovpn/peer.c
558
struct sockaddr_storage *ss)
drivers/net/ovpn/peer.c
564
if (likely(tmp && ovpn_peer_transp_match(tmp, ss) &&
drivers/net/ovpn/peer.c
583
struct sockaddr_storage ss = { 0 };
drivers/net/ovpn/peer.c
589
sa_len = ovpn_peer_skb_to_sockaddr(skb, &ss);
drivers/net/ovpn/peer.c
594
return ovpn_peer_get_by_transp_addr_p2p(ovpn, &ss);
drivers/net/ovpn/peer.c
598
slot = ovpn_get_hash_slot(ovpn->peers->by_transp_addr, &ss, sa_len);
drivers/net/ovpn/peer.c
603
if (!ovpn_peer_transp_match(tmp, &ss))
drivers/net/ovpn/peer.h
160
const struct sockaddr_storage *ss,
drivers/net/phy/qcom/qca807x.c
439
int ss, err;
drivers/net/phy/qcom/qca807x.c
449
ss = phy_read(phydev, AT803X_SPECIFIC_STATUS);
drivers/net/phy/qcom/qca807x.c
450
if (ss < 0)
drivers/net/phy/qcom/qca807x.c
451
return ss;
drivers/net/phy/qcom/qca807x.c
455
if (ss & AT803X_SS_SPEED_DUPLEX_RESOLVED) {
drivers/net/phy/qcom/qca807x.c
456
switch (FIELD_GET(AT803X_SS_SPEED_MASK, ss)) {
drivers/net/phy/qcom/qca807x.c
465
if (ss & AT803X_SS_DUPLEX)
drivers/net/phy/qcom/qcom-phy-lib.c
233
int ss;
drivers/net/phy/qcom/qcom-phy-lib.c
239
ss = phy_read(phydev, AT803X_SPECIFIC_STATUS);
drivers/net/phy/qcom/qcom-phy-lib.c
240
if (ss < 0)
drivers/net/phy/qcom/qcom-phy-lib.c
241
return ss;
drivers/net/phy/qcom/qcom-phy-lib.c
243
if (ss & AT803X_SS_SPEED_DUPLEX_RESOLVED) {
drivers/net/phy/qcom/qcom-phy-lib.c
250
speed = ss & ss_mask.speed_mask;
drivers/net/phy/qcom/qcom-phy-lib.c
267
if (ss & AT803X_SS_DUPLEX)
drivers/net/phy/qcom/qcom-phy-lib.c
272
if (ss & AT803X_SS_MDIX)
drivers/net/tap.c
1003
netif_get_mac_address((struct sockaddr *)&ss, dev_net(tap->dev),
drivers/net/tap.c
1006
copy_to_user(&ifr->ifr_hwaddr, &ss, sizeof(ifr->ifr_hwaddr)))
drivers/net/tap.c
1013
if (copy_from_user(&ss, &ifr->ifr_hwaddr, sizeof(ifr->ifr_hwaddr)))
drivers/net/tap.c
1024
ret = dev_set_mac_address_user(tap->dev, &ss, NULL);
drivers/net/tap.c
926
struct sockaddr_storage ss;
drivers/net/usb/r8152.c
1704
struct sockaddr_storage *ss)
drivers/net/usb/r8152.c
1772
memcpy(ss->__data, buf, 6);
drivers/net/usb/r8152.c
1775
"Using pass-thru MAC addr %pM\n", ss->__data);
drivers/net/usb/r8152.c
1783
struct sockaddr_storage *ss)
drivers/net/usb/r8152.c
1788
ss->ss_family = dev->type;
drivers/net/usb/r8152.c
1790
ret = eth_platform_get_mac_address(&tp->udev->dev, ss->__data);
drivers/net/usb/r8152.c
1793
ret = pla_ocp_read(tp, PLA_IDR, 8, ss->__data);
drivers/net/usb/r8152.c
1798
ret = vendor_mac_passthru_addr_read(tp, ss);
drivers/net/usb/r8152.c
1801
ss->__data);
drivers/net/usb/r8152.c
1807
} else if (!is_valid_ether_addr(ss->__data)) {
drivers/net/usb/r8152.c
1809
ss->__data);
drivers/net/usb/r8152.c
1811
ether_addr_copy(ss->__data, dev->dev_addr);
drivers/net/usb/r8152.c
1813
ss->__data);
drivers/net/usb/r8152.c
1823
struct sockaddr_storage ss;
drivers/net/usb/r8152.c
1826
ret = determine_ethernet_addr(tp, &ss);
drivers/net/usb/r8152.c
1831
eth_hw_addr_set(dev, ss.__data);
drivers/net/usb/r8152.c
1833
ret = __rtl8152_set_mac_address(dev, &ss, in_resume);
drivers/net/usb/r8152.c
8422
struct sockaddr_storage ss;
drivers/net/usb/r8152.c
8430
if (determine_ethernet_addr(tp, &ss) >= 0)
drivers/net/usb/r8152.c
8431
dev_set_mac_address(tp->netdev, &ss, NULL);
drivers/net/wireless/ath/ath10k/wmi.h
2185
#define WMI_VHT_MAX_MCS_4_SS_MASK(r, ss) ((3 & (r)) << (((ss) - 1) << 1))
drivers/net/wireless/ath/ath9k/eeprom.c
461
int16_t ss;
drivers/net/wireless/ath/ath9k/eeprom.c
600
ss = (int16_t)(0 - (minPwrT4[i] / 2));
drivers/net/wireless/ath/ath9k/eeprom.c
602
ss = 0;
drivers/net/wireless/ath/ath9k/eeprom.c
604
ss = (int16_t)((pPdGainBoundaries[i - 1] -
drivers/net/wireless/ath/ath9k/eeprom.c
611
while ((ss < 0) && (k < (AR5416_NUM_PDADC_VALUES - 1))) {
drivers/net/wireless/ath/ath9k/eeprom.c
612
tmpVal = (int16_t)(vpdTableI[i][0] + ss * vpdStep);
drivers/net/wireless/ath/ath9k/eeprom.c
614
ss++;
drivers/net/wireless/ath/ath9k/eeprom.c
623
while ((ss < maxIndex) && (k < (AR5416_NUM_PDADC_VALUES - 1))) {
drivers/net/wireless/ath/ath9k/eeprom.c
624
pPDADCValues[k++] = vpdTableI[i][ss++];
drivers/net/wireless/ath/ath9k/eeprom.c
632
while ((ss <= tgtIndex) &&
drivers/net/wireless/ath/ath9k/eeprom.c
635
(ss - maxIndex + 1) * vpdStep));
drivers/net/wireless/ath/ath9k/eeprom.c
638
ss++;
drivers/net/wireless/realtek/rtw88/debug.c
788
u8 ss, rate_id;
drivers/net/wireless/realtek/rtw88/debug.c
828
for (ss = 0; ss < efuse->hw_cap.nss; ss++) {
drivers/net/wireless/realtek/rtw88/debug.c
829
rate_id = DESC_RATEMCS0 + ss * 8;
drivers/net/wireless/realtek/rtw88/debug.c
831
ss * 8, ss * 8 + 7,
drivers/net/wireless/realtek/rtw88/debug.c
842
for (ss = 0; ss < efuse->hw_cap.nss; ss++) {
drivers/net/wireless/realtek/rtw88/debug.c
843
rate_id = DESC_RATEVHT1SS_MCS0 + ss * 10;
drivers/net/wireless/realtek/rtw88/debug.c
845
ss + 1,
drivers/pci/of_property.c
74
u32 ss;
drivers/pci/of_property.c
77
ss = OF_PCI_ADDR_SPACE_IO;
drivers/pci/of_property.c
79
ss = OF_PCI_ADDR_SPACE_MEM64;
drivers/pci/of_property.c
81
ss = OF_PCI_ADDR_SPACE_MEM32;
drivers/pci/of_property.c
89
*flags |= FIELD_PREP(OF_PCI_ADDR_FIELD_SS, ss);
drivers/perf/dwc_pcie_pmu.c
322
u32 lo, hi, ss;
drivers/perf/dwc_pcie_pmu.c
335
ss = hi;
drivers/perf/dwc_pcie_pmu.c
343
} while (hi != ss);
drivers/ps3/ps3av_cmd.c
610
info->pb2.ss = 0;
drivers/scsi/megaraid/megaraid_mbox.c
1496
char *ss;
drivers/scsi/megaraid/megaraid_mbox.c
1792
ss = rdev->fast_load ? skip : scan;
drivers/scsi/megaraid/megaraid_mbox.c
1796
adapter->host->host_no, ss, SCP2CHANNEL(scp),
drivers/scsi/scsi_proto_test.c
28
} ss = { .arr = { 0x80, 0, 0x12, 0x34, 0x3f } };
drivers/scsi/scsi_proto_test.c
29
KUNIT_EXPECT_EQ(test, ss.s.perm + 0, 1);
drivers/scsi/scsi_proto_test.c
30
KUNIT_EXPECT_EQ(test, get_unaligned_be16(&ss.s.stream_identifier),
drivers/scsi/scsi_proto_test.c
32
KUNIT_EXPECT_EQ(test, ss.s.rel_lifetime + 0, 0x3f);
drivers/spi/spi-sh-msiof.c
219
static void sh_msiof_spi_set_pin_regs(struct sh_msiof_spi_priv *p, u32 ss,
drivers/spi/spi-sh-msiof.c
244
ss < MAX_SS ? ss : 0));
drivers/spi/spi-sh-msiof.c
488
u32 ss;
drivers/spi/spi-sh-msiof.c
492
ss = ctlr->unused_native_cs;
drivers/spi/spi-sh-msiof.c
495
ss = spi_get_chipselect(spi, 0);
drivers/spi/spi-sh-msiof.c
498
sh_msiof_spi_set_pin_regs(p, ss, spi->mode & SPI_CPOL,
drivers/spi/spi-sh.c
100
static void spi_sh_set_bit(struct spi_sh_data *ss, unsigned long val,
drivers/spi/spi-sh.c
105
tmp = spi_sh_read(ss, offset);
drivers/spi/spi-sh.c
107
spi_sh_write(ss, tmp, offset);
drivers/spi/spi-sh.c
110
static void spi_sh_clear_bit(struct spi_sh_data *ss, unsigned long val,
drivers/spi/spi-sh.c
115
tmp = spi_sh_read(ss, offset);
drivers/spi/spi-sh.c
117
spi_sh_write(ss, tmp, offset);
drivers/spi/spi-sh.c
120
static void clear_fifo(struct spi_sh_data *ss)
drivers/spi/spi-sh.c
122
spi_sh_set_bit(ss, SPI_SH_RSTF, SPI_SH_CR2);
drivers/spi/spi-sh.c
123
spi_sh_clear_bit(ss, SPI_SH_RSTF, SPI_SH_CR2);
drivers/spi/spi-sh.c
126
static int spi_sh_wait_receive_buffer(struct spi_sh_data *ss)
drivers/spi/spi-sh.c
130
while (spi_sh_read(ss, SPI_SH_CR1) & SPI_SH_RBE) {
drivers/spi/spi-sh.c
138
static int spi_sh_wait_write_buffer_empty(struct spi_sh_data *ss)
drivers/spi/spi-sh.c
142
while (!(spi_sh_read(ss, SPI_SH_CR1) & SPI_SH_TBE)) {
drivers/spi/spi-sh.c
150
static int spi_sh_send(struct spi_sh_data *ss, struct spi_message *mesg,
drivers/spi/spi-sh.c
160
spi_sh_set_bit(ss, SPI_SH_SSA, SPI_SH_CR1);
drivers/spi/spi-sh.c
166
!(spi_sh_read(ss, SPI_SH_CR4) &
drivers/spi/spi-sh.c
168
!(spi_sh_read(ss, SPI_SH_CR1) & SPI_SH_TBF);
drivers/spi/spi-sh.c
170
spi_sh_write(ss, (unsigned long)data[i], SPI_SH_TBR);
drivers/spi/spi-sh.c
172
if (spi_sh_read(ss, SPI_SH_CR4) & SPI_SH_WPABRT) {
drivers/spi/spi-sh.c
174
spi_sh_set_bit(ss, SPI_SH_WPABRT, SPI_SH_CR4);
drivers/spi/spi-sh.c
185
ss->cr1 &= ~SPI_SH_TBE;
drivers/spi/spi-sh.c
186
spi_sh_set_bit(ss, SPI_SH_TBE, SPI_SH_CR4);
drivers/spi/spi-sh.c
187
ret = wait_event_interruptible_timeout(ss->wait,
drivers/spi/spi-sh.c
188
ss->cr1 & SPI_SH_TBE,
drivers/spi/spi-sh.c
190
if (ret == 0 && !(ss->cr1 & SPI_SH_TBE)) {
drivers/spi/spi-sh.c
198
spi_sh_clear_bit(ss, SPI_SH_SSD | SPI_SH_SSDB, SPI_SH_CR1);
drivers/spi/spi-sh.c
199
spi_sh_set_bit(ss, SPI_SH_SSA, SPI_SH_CR1);
drivers/spi/spi-sh.c
201
ss->cr1 &= ~SPI_SH_TBE;
drivers/spi/spi-sh.c
202
spi_sh_set_bit(ss, SPI_SH_TBE, SPI_SH_CR4);
drivers/spi/spi-sh.c
203
ret = wait_event_interruptible_timeout(ss->wait,
drivers/spi/spi-sh.c
204
ss->cr1 & SPI_SH_TBE,
drivers/spi/spi-sh.c
206
if (ret == 0 && (ss->cr1 & SPI_SH_TBE)) {
drivers/spi/spi-sh.c
215
static int spi_sh_receive(struct spi_sh_data *ss, struct spi_message *mesg,
drivers/spi/spi-sh.c
225
spi_sh_write(ss, SPI_SH_MAX_BYTE, SPI_SH_CR3);
drivers/spi/spi-sh.c
227
spi_sh_write(ss, t->len, SPI_SH_CR3);
drivers/spi/spi-sh.c
229
spi_sh_clear_bit(ss, SPI_SH_SSD | SPI_SH_SSDB, SPI_SH_CR1);
drivers/spi/spi-sh.c
230
spi_sh_set_bit(ss, SPI_SH_SSA, SPI_SH_CR1);
drivers/spi/spi-sh.c
232
spi_sh_wait_write_buffer_empty(ss);
drivers/spi/spi-sh.c
237
ss->cr1 &= ~SPI_SH_RBF;
drivers/spi/spi-sh.c
238
spi_sh_set_bit(ss, SPI_SH_RBF, SPI_SH_CR4);
drivers/spi/spi-sh.c
239
ret = wait_event_interruptible_timeout(ss->wait,
drivers/spi/spi-sh.c
240
ss->cr1 & SPI_SH_RBF,
drivers/spi/spi-sh.c
243
spi_sh_read(ss, SPI_SH_CR1) & SPI_SH_RBE) {
drivers/spi/spi-sh.c
251
if (spi_sh_wait_receive_buffer(ss))
drivers/spi/spi-sh.c
253
data[i] = (unsigned char)spi_sh_read(ss, SPI_SH_RBR);
drivers/spi/spi-sh.c
262
clear_fifo(ss);
drivers/spi/spi-sh.c
263
spi_sh_write(ss, 1, SPI_SH_CR3);
drivers/spi/spi-sh.c
265
spi_sh_write(ss, 0, SPI_SH_CR3);
drivers/spi/spi-sh.c
274
struct spi_sh_data *ss = spi_controller_get_devdata(ctlr);
drivers/spi/spi-sh.c
280
spi_sh_clear_bit(ss, SPI_SH_SSA, SPI_SH_CR1);
drivers/spi/spi-sh.c
289
ret = spi_sh_send(ss, mesg, t);
drivers/spi/spi-sh.c
294
ret = spi_sh_receive(ss, mesg, t);
drivers/spi/spi-sh.c
304
clear_fifo(ss);
drivers/spi/spi-sh.c
305
spi_sh_set_bit(ss, SPI_SH_SSD, SPI_SH_CR1);
drivers/spi/spi-sh.c
308
spi_sh_clear_bit(ss, SPI_SH_SSA | SPI_SH_SSDB | SPI_SH_SSD,
drivers/spi/spi-sh.c
311
clear_fifo(ss);
drivers/spi/spi-sh.c
321
spi_sh_clear_bit(ss, SPI_SH_SSA | SPI_SH_SSDB | SPI_SH_SSD,
drivers/spi/spi-sh.c
323
clear_fifo(ss);
drivers/spi/spi-sh.c
330
struct spi_sh_data *ss = spi_controller_get_devdata(spi->controller);
drivers/spi/spi-sh.c
334
spi_sh_write(ss, 0xfe, SPI_SH_CR1); /* SPI sycle stop */
drivers/spi/spi-sh.c
335
spi_sh_write(ss, 0x00, SPI_SH_CR1); /* CR1 init */
drivers/spi/spi-sh.c
336
spi_sh_write(ss, 0x00, SPI_SH_CR3); /* CR3 init */
drivers/spi/spi-sh.c
338
clear_fifo(ss);
drivers/spi/spi-sh.c
341
spi_sh_write(ss, spi_sh_read(ss, SPI_SH_CR2) | 0x07, SPI_SH_CR2);
drivers/spi/spi-sh.c
349
struct spi_sh_data *ss = spi_controller_get_devdata(spi->controller);
drivers/spi/spi-sh.c
353
spi_sh_clear_bit(ss, SPI_SH_SSA | SPI_SH_SSDB | SPI_SH_SSD,
drivers/spi/spi-sh.c
359
struct spi_sh_data *ss = (struct spi_sh_data *)_ss;
drivers/spi/spi-sh.c
362
cr1 = spi_sh_read(ss, SPI_SH_CR1);
drivers/spi/spi-sh.c
364
ss->cr1 |= SPI_SH_TBE;
drivers/spi/spi-sh.c
366
ss->cr1 |= SPI_SH_TBF;
drivers/spi/spi-sh.c
368
ss->cr1 |= SPI_SH_RBE;
drivers/spi/spi-sh.c
370
ss->cr1 |= SPI_SH_RBF;
drivers/spi/spi-sh.c
372
if (ss->cr1) {
drivers/spi/spi-sh.c
373
spi_sh_clear_bit(ss, ss->cr1, SPI_SH_CR4);
drivers/spi/spi-sh.c
374
wake_up(&ss->wait);
drivers/spi/spi-sh.c
382
struct spi_sh_data *ss = platform_get_drvdata(pdev);
drivers/spi/spi-sh.c
384
spi_unregister_controller(ss->host);
drivers/spi/spi-sh.c
385
free_irq(ss->irq, ss);
drivers/spi/spi-sh.c
392
struct spi_sh_data *ss;
drivers/spi/spi-sh.c
412
ss = spi_controller_get_devdata(host);
drivers/spi/spi-sh.c
413
platform_set_drvdata(pdev, ss);
drivers/spi/spi-sh.c
417
ss->width = 8;
drivers/spi/spi-sh.c
420
ss->width = 32;
drivers/spi/spi-sh.c
426
ss->irq = irq;
drivers/spi/spi-sh.c
427
ss->host = host;
drivers/spi/spi-sh.c
428
ss->addr = devm_ioremap(&pdev->dev, res->start, resource_size(res));
drivers/spi/spi-sh.c
429
if (ss->addr == NULL) {
drivers/spi/spi-sh.c
433
init_waitqueue_head(&ss->wait);
drivers/spi/spi-sh.c
435
ret = request_irq(irq, spi_sh_irq, 0, "spi_sh", ss);
drivers/spi/spi-sh.c
456
free_irq(irq, ss);
drivers/spi/spi-sh.c
81
static void spi_sh_write(struct spi_sh_data *ss, unsigned long data,
drivers/spi/spi-sh.c
84
if (ss->width == 8)
drivers/spi/spi-sh.c
85
iowrite8(data, ss->addr + (offset >> 2));
drivers/spi/spi-sh.c
86
else if (ss->width == 32)
drivers/spi/spi-sh.c
87
iowrite32(data, ss->addr + offset);
drivers/spi/spi-sh.c
90
static unsigned long spi_sh_read(struct spi_sh_data *ss, unsigned long offset)
drivers/spi/spi-sh.c
92
if (ss->width == 8)
drivers/spi/spi-sh.c
93
return ioread8(ss->addr + (offset >> 2));
drivers/spi/spi-sh.c
94
else if (ss->width == 32)
drivers/spi/spi-sh.c
95
return ioread32(ss->addr + offset);
drivers/spi/spi-sprd.c
1004
struct sprd_spi *ss = spi_controller_get_devdata(sctlr);
drivers/spi/spi-sprd.c
1007
ret = pm_runtime_get_sync(ss->dev);
drivers/spi/spi-sprd.c
1009
dev_err(ss->dev, "failed to resume SPI controller\n");
drivers/spi/spi-sprd.c
1014
if (ss->dma.enable)
drivers/spi/spi-sprd.c
1015
sprd_spi_dma_release(ss);
drivers/spi/spi-sprd.c
1016
clk_disable_unprepare(ss->clk);
drivers/spi/spi-sprd.c
1025
struct sprd_spi *ss = spi_controller_get_devdata(sctlr);
drivers/spi/spi-sprd.c
1027
if (ss->dma.enable)
drivers/spi/spi-sprd.c
1028
sprd_spi_dma_release(ss);
drivers/spi/spi-sprd.c
1030
clk_disable_unprepare(ss->clk);
drivers/spi/spi-sprd.c
1038
struct sprd_spi *ss = spi_controller_get_devdata(sctlr);
drivers/spi/spi-sprd.c
1041
ret = clk_prepare_enable(ss->clk);
drivers/spi/spi-sprd.c
1045
if (!ss->dma.enable)
drivers/spi/spi-sprd.c
1048
ret = sprd_spi_dma_request(ss);
drivers/spi/spi-sprd.c
1050
clk_disable_unprepare(ss->clk);
drivers/spi/spi-sprd.c
168
int (*read_bufs)(struct sprd_spi *ss, u32 len);
drivers/spi/spi-sprd.c
169
int (*write_bufs)(struct sprd_spi *ss, u32 len);
drivers/spi/spi-sprd.c
172
static u32 sprd_spi_transfer_max_timeout(struct sprd_spi *ss,
drivers/spi/spi-sprd.c
180
u32 bit_time_us = DIV_ROUND_UP(USEC_PER_SEC, ss->hw_speed_hz);
drivers/spi/spi-sprd.c
186
u32 interval_cycle = SPRD_SPI_FIFO_SIZE * ss->word_delay;
drivers/spi/spi-sprd.c
188
ss->src_clk);
drivers/spi/spi-sprd.c
193
static int sprd_spi_wait_for_tx_end(struct sprd_spi *ss, struct spi_transfer *t)
drivers/spi/spi-sprd.c
198
us = sprd_spi_transfer_max_timeout(ss, t);
drivers/spi/spi-sprd.c
199
ret = readl_relaxed_poll_timeout(ss->base + SPRD_SPI_INT_RAW_STS, val,
drivers/spi/spi-sprd.c
202
dev_err(ss->dev, "SPI error, spi send timeout!\n");
drivers/spi/spi-sprd.c
206
ret = readl_relaxed_poll_timeout(ss->base + SPRD_SPI_STS2, val,
drivers/spi/spi-sprd.c
209
dev_err(ss->dev, "SPI error, spi busy timeout!\n");
drivers/spi/spi-sprd.c
213
writel_relaxed(SPRD_SPI_TX_END_INT_CLR, ss->base + SPRD_SPI_INT_CLR);
drivers/spi/spi-sprd.c
218
static int sprd_spi_wait_for_rx_end(struct sprd_spi *ss, struct spi_transfer *t)
drivers/spi/spi-sprd.c
223
us = sprd_spi_transfer_max_timeout(ss, t);
drivers/spi/spi-sprd.c
224
ret = readl_relaxed_poll_timeout(ss->base + SPRD_SPI_INT_RAW_STS, val,
drivers/spi/spi-sprd.c
227
dev_err(ss->dev, "SPI error, spi rx timeout!\n");
drivers/spi/spi-sprd.c
231
writel_relaxed(SPRD_SPI_RX_END_INT_CLR, ss->base + SPRD_SPI_INT_CLR);
drivers/spi/spi-sprd.c
236
static void sprd_spi_tx_req(struct sprd_spi *ss)
drivers/spi/spi-sprd.c
238
writel_relaxed(SPRD_SPI_SW_TX_REQ, ss->base + SPRD_SPI_CTL12);
drivers/spi/spi-sprd.c
241
static void sprd_spi_rx_req(struct sprd_spi *ss)
drivers/spi/spi-sprd.c
243
writel_relaxed(SPRD_SPI_SW_RX_REQ, ss->base + SPRD_SPI_CTL12);
drivers/spi/spi-sprd.c
246
static void sprd_spi_enter_idle(struct sprd_spi *ss)
drivers/spi/spi-sprd.c
248
u32 val = readl_relaxed(ss->base + SPRD_SPI_CTL1);
drivers/spi/spi-sprd.c
251
writel_relaxed(val, ss->base + SPRD_SPI_CTL1);
drivers/spi/spi-sprd.c
254
static void sprd_spi_set_transfer_bits(struct sprd_spi *ss, u32 bits)
drivers/spi/spi-sprd.c
256
u32 val = readl_relaxed(ss->base + SPRD_SPI_CTL0);
drivers/spi/spi-sprd.c
261
writel_relaxed(val, ss->base + SPRD_SPI_CTL0);
drivers/spi/spi-sprd.c
264
static void sprd_spi_set_tx_length(struct sprd_spi *ss, u32 length)
drivers/spi/spi-sprd.c
266
u32 val = readl_relaxed(ss->base + SPRD_SPI_CTL8);
drivers/spi/spi-sprd.c
271
writel_relaxed(val, ss->base + SPRD_SPI_CTL8);
drivers/spi/spi-sprd.c
274
writel_relaxed(val, ss->base + SPRD_SPI_CTL9);
drivers/spi/spi-sprd.c
277
static void sprd_spi_set_rx_length(struct sprd_spi *ss, u32 length)
drivers/spi/spi-sprd.c
279
u32 val = readl_relaxed(ss->base + SPRD_SPI_CTL10);
drivers/spi/spi-sprd.c
284
writel_relaxed(val, ss->base + SPRD_SPI_CTL10);
drivers/spi/spi-sprd.c
287
writel_relaxed(val, ss->base + SPRD_SPI_CTL11);
drivers/spi/spi-sprd.c
293
struct sprd_spi *ss = spi_controller_get_devdata(sctlr);
drivers/spi/spi-sprd.c
296
val = readl_relaxed(ss->base + SPRD_SPI_CTL0);
drivers/spi/spi-sprd.c
300
writel_relaxed(val, ss->base + SPRD_SPI_CTL0);
drivers/spi/spi-sprd.c
303
writel_relaxed(val, ss->base + SPRD_SPI_CTL0);
drivers/spi/spi-sprd.c
307
static int sprd_spi_write_only_receive(struct sprd_spi *ss, u32 len)
drivers/spi/spi-sprd.c
312
val = readl_relaxed(ss->base + SPRD_SPI_CTL4);
drivers/spi/spi-sprd.c
314
writel_relaxed(val, ss->base + SPRD_SPI_CTL4);
drivers/spi/spi-sprd.c
317
val = readl_relaxed(ss->base + SPRD_SPI_CTL4);
drivers/spi/spi-sprd.c
319
writel_relaxed(val, ss->base + SPRD_SPI_CTL4);
drivers/spi/spi-sprd.c
322
val = readl_relaxed(ss->base + SPRD_SPI_CTL4);
drivers/spi/spi-sprd.c
324
writel_relaxed(val, ss->base + SPRD_SPI_CTL4);
drivers/spi/spi-sprd.c
329
static int sprd_spi_write_bufs_u8(struct sprd_spi *ss, u32 len)
drivers/spi/spi-sprd.c
331
u8 *tx_p = (u8 *)ss->tx_buf;
drivers/spi/spi-sprd.c
335
writeb_relaxed(tx_p[i], ss->base + SPRD_SPI_TXD);
drivers/spi/spi-sprd.c
337
ss->tx_buf += i;
drivers/spi/spi-sprd.c
341
static int sprd_spi_write_bufs_u16(struct sprd_spi *ss, u32 len)
drivers/spi/spi-sprd.c
343
u16 *tx_p = (u16 *)ss->tx_buf;
drivers/spi/spi-sprd.c
347
writew_relaxed(tx_p[i], ss->base + SPRD_SPI_TXD);
drivers/spi/spi-sprd.c
349
ss->tx_buf += i << 1;
drivers/spi/spi-sprd.c
353
static int sprd_spi_write_bufs_u32(struct sprd_spi *ss, u32 len)
drivers/spi/spi-sprd.c
355
u32 *tx_p = (u32 *)ss->tx_buf;
drivers/spi/spi-sprd.c
359
writel_relaxed(tx_p[i], ss->base + SPRD_SPI_TXD);
drivers/spi/spi-sprd.c
361
ss->tx_buf += i << 2;
drivers/spi/spi-sprd.c
365
static int sprd_spi_read_bufs_u8(struct sprd_spi *ss, u32 len)
drivers/spi/spi-sprd.c
367
u8 *rx_p = (u8 *)ss->rx_buf;
drivers/spi/spi-sprd.c
371
rx_p[i] = readb_relaxed(ss->base + SPRD_SPI_TXD);
drivers/spi/spi-sprd.c
373
ss->rx_buf += i;
drivers/spi/spi-sprd.c
377
static int sprd_spi_read_bufs_u16(struct sprd_spi *ss, u32 len)
drivers/spi/spi-sprd.c
379
u16 *rx_p = (u16 *)ss->rx_buf;
drivers/spi/spi-sprd.c
383
rx_p[i] = readw_relaxed(ss->base + SPRD_SPI_TXD);
drivers/spi/spi-sprd.c
385
ss->rx_buf += i << 1;
drivers/spi/spi-sprd.c
389
static int sprd_spi_read_bufs_u32(struct sprd_spi *ss, u32 len)
drivers/spi/spi-sprd.c
391
u32 *rx_p = (u32 *)ss->rx_buf;
drivers/spi/spi-sprd.c
395
rx_p[i] = readl_relaxed(ss->base + SPRD_SPI_TXD);
drivers/spi/spi-sprd.c
397
ss->rx_buf += i << 2;
drivers/spi/spi-sprd.c
403
struct sprd_spi *ss = spi_controller_get_devdata(sdev->controller);
drivers/spi/spi-sprd.c
404
u32 trans_len = ss->trans_len, len;
drivers/spi/spi-sprd.c
410
if (ss->trans_mode & SPRD_SPI_TX_MODE) {
drivers/spi/spi-sprd.c
411
sprd_spi_set_tx_length(ss, len);
drivers/spi/spi-sprd.c
412
write_size += ss->write_bufs(ss, len);
drivers/spi/spi-sprd.c
418
if (ss->hw_mode & SPI_3WIRE || ss->hw_mode & SPI_TX_DUAL)
drivers/spi/spi-sprd.c
419
sprd_spi_tx_req(ss);
drivers/spi/spi-sprd.c
421
ret = sprd_spi_wait_for_tx_end(ss, t);
drivers/spi/spi-sprd.c
423
sprd_spi_set_rx_length(ss, len);
drivers/spi/spi-sprd.c
429
if (ss->hw_mode & SPI_3WIRE || ss->hw_mode & SPI_TX_DUAL)
drivers/spi/spi-sprd.c
430
sprd_spi_rx_req(ss);
drivers/spi/spi-sprd.c
432
write_size += ss->write_bufs(ss, len);
drivers/spi/spi-sprd.c
434
ret = sprd_spi_wait_for_rx_end(ss, t);
drivers/spi/spi-sprd.c
440
if (ss->trans_mode & SPRD_SPI_RX_MODE)
drivers/spi/spi-sprd.c
441
read_size += ss->read_bufs(ss, len);
drivers/spi/spi-sprd.c
446
if (ss->trans_mode & SPRD_SPI_TX_MODE)
drivers/spi/spi-sprd.c
451
sprd_spi_enter_idle(ss);
drivers/spi/spi-sprd.c
456
static void sprd_spi_irq_enable(struct sprd_spi *ss)
drivers/spi/spi-sprd.c
462
ss->base + SPRD_SPI_INT_CLR);
drivers/spi/spi-sprd.c
464
val = readl_relaxed(ss->base + SPRD_SPI_INT_EN);
drivers/spi/spi-sprd.c
467
ss->base + SPRD_SPI_INT_EN);
drivers/spi/spi-sprd.c
470
static void sprd_spi_irq_disable(struct sprd_spi *ss)
drivers/spi/spi-sprd.c
472
writel_relaxed(0, ss->base + SPRD_SPI_INT_EN);
drivers/spi/spi-sprd.c
475
static void sprd_spi_dma_enable(struct sprd_spi *ss, bool enable)
drivers/spi/spi-sprd.c
477
u32 val = readl_relaxed(ss->base + SPRD_SPI_CTL2);
drivers/spi/spi-sprd.c
484
writel_relaxed(val, ss->base + SPRD_SPI_CTL2);
drivers/spi/spi-sprd.c
516
static int sprd_spi_dma_rx_config(struct sprd_spi *ss, struct spi_transfer *t)
drivers/spi/spi-sprd.c
518
struct dma_chan *dma_chan = ss->dma.dma_chan[SPRD_SPI_RX];
drivers/spi/spi-sprd.c
520
.src_addr = ss->phy_base,
drivers/spi/spi-sprd.c
521
.src_addr_width = ss->dma.width,
drivers/spi/spi-sprd.c
522
.dst_addr_width = ss->dma.width,
drivers/spi/spi-sprd.c
523
.dst_maxburst = ss->dma.fragmens_len,
drivers/spi/spi-sprd.c
531
return ss->dma.rx_len;
drivers/spi/spi-sprd.c
534
static int sprd_spi_dma_tx_config(struct sprd_spi *ss, struct spi_transfer *t)
drivers/spi/spi-sprd.c
536
struct dma_chan *dma_chan = ss->dma.dma_chan[SPRD_SPI_TX];
drivers/spi/spi-sprd.c
538
.dst_addr = ss->phy_base,
drivers/spi/spi-sprd.c
539
.src_addr_width = ss->dma.width,
drivers/spi/spi-sprd.c
540
.dst_addr_width = ss->dma.width,
drivers/spi/spi-sprd.c
541
.src_maxburst = ss->dma.fragmens_len,
drivers/spi/spi-sprd.c
552
static int sprd_spi_dma_request(struct sprd_spi *ss)
drivers/spi/spi-sprd.c
554
ss->dma.dma_chan[SPRD_SPI_RX] = dma_request_chan(ss->dev, "rx_chn");
drivers/spi/spi-sprd.c
555
if (IS_ERR_OR_NULL(ss->dma.dma_chan[SPRD_SPI_RX]))
drivers/spi/spi-sprd.c
556
return dev_err_probe(ss->dev, PTR_ERR(ss->dma.dma_chan[SPRD_SPI_RX]),
drivers/spi/spi-sprd.c
559
ss->dma.dma_chan[SPRD_SPI_TX] = dma_request_chan(ss->dev, "tx_chn");
drivers/spi/spi-sprd.c
560
if (IS_ERR_OR_NULL(ss->dma.dma_chan[SPRD_SPI_TX])) {
drivers/spi/spi-sprd.c
561
dma_release_channel(ss->dma.dma_chan[SPRD_SPI_RX]);
drivers/spi/spi-sprd.c
562
return dev_err_probe(ss->dev, PTR_ERR(ss->dma.dma_chan[SPRD_SPI_TX]),
drivers/spi/spi-sprd.c
569
static void sprd_spi_dma_release(struct sprd_spi *ss)
drivers/spi/spi-sprd.c
571
if (ss->dma.dma_chan[SPRD_SPI_RX])
drivers/spi/spi-sprd.c
572
dma_release_channel(ss->dma.dma_chan[SPRD_SPI_RX]);
drivers/spi/spi-sprd.c
574
if (ss->dma.dma_chan[SPRD_SPI_TX])
drivers/spi/spi-sprd.c
575
dma_release_channel(ss->dma.dma_chan[SPRD_SPI_TX]);
drivers/spi/spi-sprd.c
581
struct sprd_spi *ss = spi_controller_get_devdata(sdev->controller);
drivers/spi/spi-sprd.c
582
u32 trans_len = ss->trans_len;
drivers/spi/spi-sprd.c
585
reinit_completion(&ss->xfer_completion);
drivers/spi/spi-sprd.c
586
sprd_spi_irq_enable(ss);
drivers/spi/spi-sprd.c
587
if (ss->trans_mode & SPRD_SPI_TX_MODE) {
drivers/spi/spi-sprd.c
588
write_size = sprd_spi_dma_tx_config(ss, t);
drivers/spi/spi-sprd.c
589
sprd_spi_set_tx_length(ss, trans_len);
drivers/spi/spi-sprd.c
595
if (ss->hw_mode & SPI_3WIRE || ss->hw_mode & SPI_TX_DUAL)
drivers/spi/spi-sprd.c
596
sprd_spi_tx_req(ss);
drivers/spi/spi-sprd.c
598
sprd_spi_set_rx_length(ss, trans_len);
drivers/spi/spi-sprd.c
604
if (ss->hw_mode & SPI_3WIRE || ss->hw_mode & SPI_TX_DUAL)
drivers/spi/spi-sprd.c
605
sprd_spi_rx_req(ss);
drivers/spi/spi-sprd.c
607
write_size = ss->write_bufs(ss, trans_len);
drivers/spi/spi-sprd.c
612
dev_err(ss->dev, "failed to write, ret = %d\n", ret);
drivers/spi/spi-sprd.c
616
if (ss->trans_mode & SPRD_SPI_RX_MODE) {
drivers/spi/spi-sprd.c
624
ss->dma.rx_len = t->len > ss->dma.fragmens_len ?
drivers/spi/spi-sprd.c
625
(t->len - t->len % ss->dma.fragmens_len) :
drivers/spi/spi-sprd.c
627
ret = sprd_spi_dma_rx_config(ss, t);
drivers/spi/spi-sprd.c
635
sprd_spi_dma_enable(ss, true);
drivers/spi/spi-sprd.c
636
wait_for_completion(&(ss->xfer_completion));
drivers/spi/spi-sprd.c
638
if (ss->trans_mode & SPRD_SPI_TX_MODE)
drivers/spi/spi-sprd.c
641
ret = ss->dma.rx_len;
drivers/spi/spi-sprd.c
644
sprd_spi_dma_enable(ss, false);
drivers/spi/spi-sprd.c
645
sprd_spi_enter_idle(ss);
drivers/spi/spi-sprd.c
646
sprd_spi_irq_disable(ss);
drivers/spi/spi-sprd.c
651
static void sprd_spi_set_speed(struct sprd_spi *ss, u32 speed_hz)
drivers/spi/spi-sprd.c
657
u32 clk_div = DIV_ROUND_UP(ss->src_clk, speed_hz << 1) - 1;
drivers/spi/spi-sprd.c
660
ss->hw_speed_hz = (ss->src_clk >> 1) / (clk_div + 1);
drivers/spi/spi-sprd.c
661
writel_relaxed(clk_div, ss->base + SPRD_SPI_CLKD);
drivers/spi/spi-sprd.c
664
static int sprd_spi_init_hw(struct sprd_spi *ss, struct spi_transfer *t)
drivers/spi/spi-sprd.c
673
val = readl_relaxed(ss->base + SPRD_SPI_CTL0);
drivers/spi/spi-sprd.c
676
val |= ss->hw_mode & SPI_CPHA ? SPRD_SPI_NG_RX : SPRD_SPI_NG_TX;
drivers/spi/spi-sprd.c
677
val |= ss->hw_mode & SPI_CPOL ? SPRD_SPI_SCK_REV : 0;
drivers/spi/spi-sprd.c
678
writel_relaxed(val, ss->base + SPRD_SPI_CTL0);
drivers/spi/spi-sprd.c
688
ss->word_delay = interval * 4 + 10;
drivers/spi/spi-sprd.c
689
writel_relaxed(interval, ss->base + SPRD_SPI_CTL5);
drivers/spi/spi-sprd.c
692
writel_relaxed(1, ss->base + SPRD_SPI_FIFO_RST);
drivers/spi/spi-sprd.c
693
writel_relaxed(0, ss->base + SPRD_SPI_FIFO_RST);
drivers/spi/spi-sprd.c
696
val = readl_relaxed(ss->base + SPRD_SPI_CTL7);
drivers/spi/spi-sprd.c
699
if (ss->hw_mode & SPI_3WIRE)
drivers/spi/spi-sprd.c
704
if (ss->hw_mode & SPI_TX_DUAL)
drivers/spi/spi-sprd.c
709
writel_relaxed(val, ss->base + SPRD_SPI_CTL7);
drivers/spi/spi-sprd.c
717
struct sprd_spi *ss = spi_controller_get_devdata(sdev->controller);
drivers/spi/spi-sprd.c
722
ss->len = t->len;
drivers/spi/spi-sprd.c
723
ss->tx_buf = t->tx_buf;
drivers/spi/spi-sprd.c
724
ss->rx_buf = t->rx_buf;
drivers/spi/spi-sprd.c
726
ss->hw_mode = sdev->mode;
drivers/spi/spi-sprd.c
727
ret = sprd_spi_init_hw(ss, t);
drivers/spi/spi-sprd.c
732
sprd_spi_set_speed(ss, t->speed_hz);
drivers/spi/spi-sprd.c
733
sprd_spi_set_transfer_bits(ss, bits_per_word);
drivers/spi/spi-sprd.c
742
ss->trans_len = t->len;
drivers/spi/spi-sprd.c
743
ss->read_bufs = sprd_spi_read_bufs_u8;
drivers/spi/spi-sprd.c
744
ss->write_bufs = sprd_spi_write_bufs_u8;
drivers/spi/spi-sprd.c
745
ss->dma.width = DMA_SLAVE_BUSWIDTH_1_BYTE;
drivers/spi/spi-sprd.c
746
ss->dma.fragmens_len = SPRD_SPI_DMA_STEP;
drivers/spi/spi-sprd.c
749
ss->trans_len = t->len >> 1;
drivers/spi/spi-sprd.c
750
ss->read_bufs = sprd_spi_read_bufs_u16;
drivers/spi/spi-sprd.c
751
ss->write_bufs = sprd_spi_write_bufs_u16;
drivers/spi/spi-sprd.c
752
ss->dma.width = DMA_SLAVE_BUSWIDTH_2_BYTES;
drivers/spi/spi-sprd.c
753
ss->dma.fragmens_len = SPRD_SPI_DMA_STEP << 1;
drivers/spi/spi-sprd.c
756
ss->trans_len = t->len >> 2;
drivers/spi/spi-sprd.c
757
ss->read_bufs = sprd_spi_read_bufs_u32;
drivers/spi/spi-sprd.c
758
ss->write_bufs = sprd_spi_write_bufs_u32;
drivers/spi/spi-sprd.c
759
ss->dma.width = DMA_SLAVE_BUSWIDTH_4_BYTES;
drivers/spi/spi-sprd.c
760
ss->dma.fragmens_len = SPRD_SPI_DMA_STEP << 2;
drivers/spi/spi-sprd.c
767
val = readl_relaxed(ss->base + SPRD_SPI_CTL1);
drivers/spi/spi-sprd.c
774
writel_relaxed(val | mode, ss->base + SPRD_SPI_CTL1);
drivers/spi/spi-sprd.c
776
ss->trans_mode = mode;
drivers/spi/spi-sprd.c
782
if (ss->trans_mode == SPRD_SPI_RX_MODE)
drivers/spi/spi-sprd.c
783
ss->write_bufs = sprd_spi_write_only_receive;
drivers/spi/spi-sprd.c
816
struct sprd_spi *ss = (struct sprd_spi *)data;
drivers/spi/spi-sprd.c
817
u32 val = readl_relaxed(ss->base + SPRD_SPI_INT_MASK_STS);
drivers/spi/spi-sprd.c
820
writel_relaxed(SPRD_SPI_TX_END_CLR, ss->base + SPRD_SPI_INT_CLR);
drivers/spi/spi-sprd.c
821
if (!(ss->trans_mode & SPRD_SPI_RX_MODE))
drivers/spi/spi-sprd.c
822
complete(&ss->xfer_completion);
drivers/spi/spi-sprd.c
828
writel_relaxed(SPRD_SPI_RX_END_CLR, ss->base + SPRD_SPI_INT_CLR);
drivers/spi/spi-sprd.c
829
if (ss->dma.rx_len < ss->len) {
drivers/spi/spi-sprd.c
830
ss->rx_buf += ss->dma.rx_len;
drivers/spi/spi-sprd.c
831
ss->dma.rx_len +=
drivers/spi/spi-sprd.c
832
ss->read_bufs(ss, ss->len - ss->dma.rx_len);
drivers/spi/spi-sprd.c
834
complete(&ss->xfer_completion);
drivers/spi/spi-sprd.c
842
static int sprd_spi_irq_init(struct platform_device *pdev, struct sprd_spi *ss)
drivers/spi/spi-sprd.c
846
ss->irq = platform_get_irq(pdev, 0);
drivers/spi/spi-sprd.c
847
if (ss->irq < 0)
drivers/spi/spi-sprd.c
848
return ss->irq;
drivers/spi/spi-sprd.c
850
ret = devm_request_irq(&pdev->dev, ss->irq, sprd_spi_handle_irq,
drivers/spi/spi-sprd.c
851
0, pdev->name, ss);
drivers/spi/spi-sprd.c
854
ss->irq, ret);
drivers/spi/spi-sprd.c
859
static int sprd_spi_clk_init(struct platform_device *pdev, struct sprd_spi *ss)
drivers/spi/spi-sprd.c
875
ss->clk = devm_clk_get(&pdev->dev, "enable");
drivers/spi/spi-sprd.c
876
if (IS_ERR(ss->clk)) {
drivers/spi/spi-sprd.c
878
return PTR_ERR(ss->clk);
drivers/spi/spi-sprd.c
882
ss->src_clk = clk_get_rate(clk_spi);
drivers/spi/spi-sprd.c
884
ss->src_clk = SPRD_SPI_DEFAULT_SOURCE;
drivers/spi/spi-sprd.c
892
struct sprd_spi *ss = spi_controller_get_devdata(sctlr);
drivers/spi/spi-sprd.c
894
return ss->dma.enable && (t->len > SPRD_SPI_FIFO_SIZE);
drivers/spi/spi-sprd.c
897
static int sprd_spi_dma_init(struct platform_device *pdev, struct sprd_spi *ss)
drivers/spi/spi-sprd.c
901
ret = sprd_spi_dma_request(ss);
drivers/spi/spi-sprd.c
913
ss->dma.enable = true;
drivers/spi/spi-sprd.c
922
struct sprd_spi *ss;
drivers/spi/spi-sprd.c
926
sctlr = spi_alloc_host(&pdev->dev, sizeof(*ss));
drivers/spi/spi-sprd.c
930
ss = spi_controller_get_devdata(sctlr);
drivers/spi/spi-sprd.c
931
ss->base = devm_platform_get_and_ioremap_resource(pdev, 0, &res);
drivers/spi/spi-sprd.c
932
if (IS_ERR(ss->base)) {
drivers/spi/spi-sprd.c
933
ret = PTR_ERR(ss->base);
drivers/spi/spi-sprd.c
937
ss->phy_base = res->start;
drivers/spi/spi-sprd.c
938
ss->dev = &pdev->dev;
drivers/spi/spi-sprd.c
945
sctlr->max_speed_hz = min_t(u32, ss->src_clk >> 1,
drivers/spi/spi-sprd.c
948
init_completion(&ss->xfer_completion);
drivers/spi/spi-sprd.c
950
ret = sprd_spi_clk_init(pdev, ss);
drivers/spi/spi-sprd.c
954
ret = sprd_spi_irq_init(pdev, ss);
drivers/spi/spi-sprd.c
958
ret = sprd_spi_dma_init(pdev, ss);
drivers/spi/spi-sprd.c
962
ret = clk_prepare_enable(ss->clk);
drivers/spi/spi-sprd.c
992
clk_disable_unprepare(ss->clk);
drivers/spi/spi-sprd.c
994
sprd_spi_dma_release(ss);
drivers/staging/greybus/uart.c
594
struct serial_struct *ss)
drivers/staging/greybus/uart.c
598
ss->line = gb_tty->minor;
drivers/staging/greybus/uart.c
600
ss->close_delay = jiffies_to_msecs(gb_tty->port.close_delay) / 10;
drivers/staging/greybus/uart.c
601
ss->closing_wait =
drivers/staging/greybus/uart.c
611
struct serial_struct *ss)
drivers/staging/greybus/uart.c
618
close_delay = msecs_to_jiffies(ss->close_delay * 10);
drivers/staging/greybus/uart.c
619
closing_wait = ss->closing_wait == ASYNC_CLOSING_WAIT_NONE ?
drivers/staging/greybus/uart.c
621
msecs_to_jiffies(ss->closing_wait * 10);
drivers/tty/amiserial.c
892
static int get_serial_info(struct tty_struct *tty, struct serial_struct *ss)
drivers/tty/amiserial.c
903
ss->line = tty->index;
drivers/tty/amiserial.c
904
ss->port = state->port;
drivers/tty/amiserial.c
905
ss->flags = state->tport.flags;
drivers/tty/amiserial.c
906
ss->xmit_fifo_size = XMIT_FIFO_SIZE;
drivers/tty/amiserial.c
907
ss->baud_base = state->baud_base;
drivers/tty/amiserial.c
908
ss->close_delay = close_delay;
drivers/tty/amiserial.c
909
ss->closing_wait = closing_wait;
drivers/tty/amiserial.c
910
ss->custom_divisor = state->custom_divisor;
drivers/tty/amiserial.c
915
static int set_serial_info(struct tty_struct *tty, struct serial_struct *ss)
drivers/tty/amiserial.c
924
change_spd = ((ss->flags ^ port->flags) & ASYNC_SPD_MASK) ||
drivers/tty/amiserial.c
925
ss->custom_divisor != state->custom_divisor;
drivers/tty/amiserial.c
926
if (ss->irq || ss->port != state->port ||
drivers/tty/amiserial.c
927
ss->xmit_fifo_size != XMIT_FIFO_SIZE) {
drivers/tty/amiserial.c
932
close_delay = msecs_to_jiffies(ss->close_delay * 10);
drivers/tty/amiserial.c
933
closing_wait = ss->closing_wait;
drivers/tty/amiserial.c
938
if ((ss->baud_base != state->baud_base) ||
drivers/tty/amiserial.c
941
((ss->flags & ~ASYNC_USR_MASK) !=
drivers/tty/amiserial.c
947
(ss->flags & ASYNC_USR_MASK));
drivers/tty/amiserial.c
948
state->custom_divisor = ss->custom_divisor;
drivers/tty/amiserial.c
952
if (ss->baud_base < 9600) {
drivers/tty/amiserial.c
962
state->baud_base = ss->baud_base;
drivers/tty/amiserial.c
964
(ss->flags & ASYNC_FLAGS));
drivers/tty/amiserial.c
965
state->custom_divisor = ss->custom_divisor;
drivers/tty/amiserial.c
973
if (ss->flags & ASYNC_SPD_MASK)
drivers/tty/ipwireless/tty.c
250
struct serial_struct *ss)
drivers/tty/ipwireless/tty.c
260
ss->type = PORT_UNKNOWN;
drivers/tty/ipwireless/tty.c
261
ss->line = tty->index;
drivers/tty/ipwireless/tty.c
262
ss->baud_base = 115200;
drivers/tty/ipwireless/tty.c
267
struct serial_struct *ss)
drivers/tty/moxa.c
2073
struct serial_struct *ss)
drivers/tty/moxa.c
2080
ss->type = info->type;
drivers/tty/moxa.c
2081
ss->line = info->port.tty->index;
drivers/tty/moxa.c
2082
ss->flags = info->port.flags;
drivers/tty/moxa.c
2083
ss->baud_base = 921600;
drivers/tty/moxa.c
2084
ss->close_delay = jiffies_to_msecs(info->port.close_delay) / 10;
drivers/tty/moxa.c
2091
struct serial_struct *ss)
drivers/tty/moxa.c
2099
close_delay = msecs_to_jiffies(ss->close_delay * 10);
drivers/tty/moxa.c
2104
ss->type != info->type ||
drivers/tty/moxa.c
2105
((ss->flags & ~ASYNC_USR_MASK) !=
drivers/tty/moxa.c
2112
MoxaSetFifo(info, ss->type == PORT_16550A);
drivers/tty/moxa.c
2114
info->type = ss->type;
drivers/tty/mxser.c
1001
((ss->flags & ~ASYNC_USR_MASK) != (port->flags & ~ASYNC_USR_MASK)))
drivers/tty/mxser.c
1005
(ss->flags & ASYNC_USR_MASK);
drivers/tty/mxser.c
1012
(ss->flags & ASYNC_FLAGS));
drivers/tty/mxser.c
1016
(ss->baud_base != MXSER_BAUD_BASE ||
drivers/tty/mxser.c
1017
ss->custom_divisor !=
drivers/tty/mxser.c
1019
if (ss->custom_divisor == 0)
drivers/tty/mxser.c
1022
baud = ss->baud_base / ss->custom_divisor;
drivers/tty/mxser.c
1026
info->type = ss->type;
drivers/tty/mxser.c
948
struct serial_struct *ss)
drivers/tty/mxser.c
961
ss->type = info->type;
drivers/tty/mxser.c
962
ss->line = tty->index;
drivers/tty/mxser.c
963
ss->port = info->ioaddr;
drivers/tty/mxser.c
964
ss->irq = info->board->irq;
drivers/tty/mxser.c
965
ss->flags = info->port.flags;
drivers/tty/mxser.c
966
ss->baud_base = MXSER_BAUD_BASE;
drivers/tty/mxser.c
967
ss->close_delay = close_delay;
drivers/tty/mxser.c
968
ss->closing_wait = closing_wait;
drivers/tty/mxser.c
969
ss->custom_divisor = MXSER_CUSTOM_DIVISOR;
drivers/tty/mxser.c
975
struct serial_struct *ss)
drivers/tty/mxser.c
987
if (ss->irq != info->board->irq || ss->port != info->ioaddr)
drivers/tty/mxser.c
992
close_delay = msecs_to_jiffies(ss->close_delay * 10);
drivers/tty/mxser.c
993
closing_wait = ss->closing_wait;
drivers/tty/mxser.c
998
if ((ss->baud_base != MXSER_BAUD_BASE) ||
drivers/tty/serial/serial_core.c
1036
static int uart_set_info_user(struct tty_struct *tty, struct serial_struct *ss)
drivers/tty/serial/serial_core.c
1050
return uart_set_info(tty, port, state, ss);
drivers/tty/serial/serial_core.c
828
struct serial_struct *ss)
drivers/tty/serial/serial_core.c
833
return uart_get_info(port, ss) < 0 ? -EIO : 0;
drivers/tty/tty_io.c
2613
static int tty_set_serial(struct tty_struct *tty, struct serial_struct *ss)
drivers/tty/tty_io.c
2617
flags = ss->flags & ASYNC_DEPRECATED;
drivers/tty/tty_io.c
2626
return tty->ops->set_serial(tty, ss);
drivers/tty/tty_io.c
2629
static int tty_tiocsserial(struct tty_struct *tty, struct serial_struct __user *ss)
drivers/tty/tty_io.c
2633
if (copy_from_user(&v, ss, sizeof(*ss)))
drivers/tty/tty_io.c
2639
static int tty_tiocgserial(struct tty_struct *tty, struct serial_struct __user *ss)
drivers/tty/tty_io.c
2648
if (!err && copy_to_user(ss, &v, sizeof(v)))
drivers/tty/tty_io.c
2834
struct serial_struct32 __user *ss)
drivers/tty/tty_io.c
2839
if (copy_from_user(&v32, ss, sizeof(*ss)))
drivers/tty/tty_io.c
2852
struct serial_struct32 __user *ss)
drivers/tty/tty_io.c
2870
if (copy_to_user(ss, &v32, sizeof(v32)))
drivers/usb/class/cdc-acm.c
971
static int get_serial_info(struct tty_struct *tty, struct serial_struct *ss)
drivers/usb/class/cdc-acm.c
975
ss->line = acm->minor;
drivers/usb/class/cdc-acm.c
977
ss->close_delay = jiffies_to_msecs(acm->port.close_delay) / 10;
drivers/usb/class/cdc-acm.c
978
ss->closing_wait = acm->port.closing_wait == ASYNC_CLOSING_WAIT_NONE ?
drivers/usb/class/cdc-acm.c
985
static int set_serial_info(struct tty_struct *tty, struct serial_struct *ss)
drivers/usb/class/cdc-acm.c
991
close_delay = msecs_to_jiffies(ss->close_delay * 10);
drivers/usb/class/cdc-acm.c
992
closing_wait = ss->closing_wait == ASYNC_CLOSING_WAIT_NONE ?
drivers/usb/class/cdc-acm.c
994
msecs_to_jiffies(ss->closing_wait * 10);
drivers/usb/core/hub.c
1512
u32 delay = __le16_to_cpu(hub->descriptor->u.ss.wHubDelay);
drivers/usb/core/hub.c
237
hub->descriptor->u.ss.bHubHdrDecLat * 100;
drivers/usb/core/hub.c
245
total_mel += (__le16_to_cpu(hub->descriptor->u.ss.wHubDelay) +
drivers/usb/core/hub.c
2606
if (le16_to_cpu(hub->descriptor->u.ss.DeviceRemovable)
drivers/usb/core/hub.c
6528
u16 port_removable = le16_to_cpu(desc->u.ss.DeviceRemovable);
drivers/usb/core/hub.c
6544
desc->u.ss.DeviceRemovable = cpu_to_le16(port_removable);
drivers/usb/gadget/composite.c
683
int ss = 0;
drivers/usb/gadget/composite.c
690
ss = 1;
drivers/usb/gadget/composite.c
701
} else if (ss) {
drivers/usb/gadget/config.c
109
struct usb_descriptor_header **ss,
drivers/usb/gadget/config.c
118
ssp = ss;
drivers/usb/gadget/config.c
130
if (ss) {
drivers/usb/gadget/config.c
131
f->ss_descriptors = usb_copy_descriptors(ss);
drivers/usb/gadget/function/f_printer.c
213
struct usb_endpoint_descriptor *ss)
drivers/usb/gadget/function/f_printer.c
218
return ss;
drivers/usb/gadget/function/f_sourcesink.c
321
struct f_sourcesink *ss = func_to_ss(f);
drivers/usb/gadget/function/f_sourcesink.c
332
if (ss->bulk_maxburst > 15)
drivers/usb/gadget/function/f_sourcesink.c
333
ss->bulk_maxburst = 15;
drivers/usb/gadget/function/f_sourcesink.c
335
ss_source_comp_desc.bMaxBurst = ss->bulk_maxburst;
drivers/usb/gadget/function/f_sourcesink.c
336
ss_sink_comp_desc.bMaxBurst = ss->bulk_maxburst;
drivers/usb/gadget/function/f_sourcesink.c
339
ss->in_ep = usb_ep_autoconfig(cdev->gadget, &fs_source_desc);
drivers/usb/gadget/function/f_sourcesink.c
340
if (!ss->in_ep) {
drivers/usb/gadget/function/f_sourcesink.c
347
ss->out_ep = usb_ep_autoconfig(cdev->gadget, &fs_sink_desc);
drivers/usb/gadget/function/f_sourcesink.c
348
if (!ss->out_ep)
drivers/usb/gadget/function/f_sourcesink.c
352
if (ss->isoc_interval < 1)
drivers/usb/gadget/function/f_sourcesink.c
353
ss->isoc_interval = 1;
drivers/usb/gadget/function/f_sourcesink.c
354
if (ss->isoc_interval > 16)
drivers/usb/gadget/function/f_sourcesink.c
355
ss->isoc_interval = 16;
drivers/usb/gadget/function/f_sourcesink.c
356
if (ss->isoc_mult > 2)
drivers/usb/gadget/function/f_sourcesink.c
357
ss->isoc_mult = 2;
drivers/usb/gadget/function/f_sourcesink.c
358
if (ss->isoc_maxburst > 15)
drivers/usb/gadget/function/f_sourcesink.c
359
ss->isoc_maxburst = 15;
drivers/usb/gadget/function/f_sourcesink.c
362
fs_iso_source_desc.wMaxPacketSize = ss->isoc_maxpacket > 1023 ?
drivers/usb/gadget/function/f_sourcesink.c
363
1023 : ss->isoc_maxpacket;
drivers/usb/gadget/function/f_sourcesink.c
364
fs_iso_source_desc.bInterval = ss->isoc_interval;
drivers/usb/gadget/function/f_sourcesink.c
365
fs_iso_sink_desc.wMaxPacketSize = ss->isoc_maxpacket > 1023 ?
drivers/usb/gadget/function/f_sourcesink.c
366
1023 : ss->isoc_maxpacket;
drivers/usb/gadget/function/f_sourcesink.c
367
fs_iso_sink_desc.bInterval = ss->isoc_interval;
drivers/usb/gadget/function/f_sourcesink.c
370
ss->iso_in_ep = usb_ep_autoconfig(cdev->gadget, &fs_iso_source_desc);
drivers/usb/gadget/function/f_sourcesink.c
371
if (!ss->iso_in_ep)
drivers/usb/gadget/function/f_sourcesink.c
374
ss->iso_out_ep = usb_ep_autoconfig(cdev->gadget, &fs_iso_sink_desc);
drivers/usb/gadget/function/f_sourcesink.c
375
if (!ss->iso_out_ep) {
drivers/usb/gadget/function/f_sourcesink.c
376
usb_ep_autoconfig_release(ss->iso_in_ep);
drivers/usb/gadget/function/f_sourcesink.c
377
ss->iso_in_ep = NULL;
drivers/usb/gadget/function/f_sourcesink.c
389
if (ss->isoc_maxpacket > 1024)
drivers/usb/gadget/function/f_sourcesink.c
390
ss->isoc_maxpacket = 1024;
drivers/usb/gadget/function/f_sourcesink.c
401
hs_iso_source_desc.wMaxPacketSize = ss->isoc_maxpacket;
drivers/usb/gadget/function/f_sourcesink.c
402
hs_iso_source_desc.wMaxPacketSize |= ss->isoc_mult << 11;
drivers/usb/gadget/function/f_sourcesink.c
403
hs_iso_source_desc.bInterval = ss->isoc_interval;
drivers/usb/gadget/function/f_sourcesink.c
407
hs_iso_sink_desc.wMaxPacketSize = ss->isoc_maxpacket;
drivers/usb/gadget/function/f_sourcesink.c
408
hs_iso_sink_desc.wMaxPacketSize |= ss->isoc_mult << 11;
drivers/usb/gadget/function/f_sourcesink.c
409
hs_iso_sink_desc.bInterval = ss->isoc_interval;
drivers/usb/gadget/function/f_sourcesink.c
423
ss_iso_source_desc.wMaxPacketSize = ss->isoc_maxpacket;
drivers/usb/gadget/function/f_sourcesink.c
424
ss_iso_source_desc.bInterval = ss->isoc_interval;
drivers/usb/gadget/function/f_sourcesink.c
425
ss_iso_source_comp_desc.bmAttributes = ss->isoc_mult;
drivers/usb/gadget/function/f_sourcesink.c
426
ss_iso_source_comp_desc.bMaxBurst = ss->isoc_maxburst;
drivers/usb/gadget/function/f_sourcesink.c
427
ss_iso_source_comp_desc.wBytesPerInterval = ss->isoc_maxpacket *
drivers/usb/gadget/function/f_sourcesink.c
428
(ss->isoc_mult + 1) * (ss->isoc_maxburst + 1);
drivers/usb/gadget/function/f_sourcesink.c
432
ss_iso_sink_desc.wMaxPacketSize = ss->isoc_maxpacket;
drivers/usb/gadget/function/f_sourcesink.c
433
ss_iso_sink_desc.bInterval = ss->isoc_interval;
drivers/usb/gadget/function/f_sourcesink.c
434
ss_iso_sink_comp_desc.bmAttributes = ss->isoc_mult;
drivers/usb/gadget/function/f_sourcesink.c
435
ss_iso_sink_comp_desc.bMaxBurst = ss->isoc_maxburst;
drivers/usb/gadget/function/f_sourcesink.c
436
ss_iso_sink_comp_desc.wBytesPerInterval = ss->isoc_maxpacket *
drivers/usb/gadget/function/f_sourcesink.c
437
(ss->isoc_mult + 1) * (ss->isoc_maxburst + 1);
drivers/usb/gadget/function/f_sourcesink.c
447
f->name, ss->in_ep->name, ss->out_ep->name,
drivers/usb/gadget/function/f_sourcesink.c
448
ss->iso_in_ep ? ss->iso_in_ep->name : "<none>",
drivers/usb/gadget/function/f_sourcesink.c
449
ss->iso_out_ep ? ss->iso_out_ep->name : "<none>");
drivers/usb/gadget/function/f_sourcesink.c
469
static int check_read_data(struct f_sourcesink *ss, struct usb_request *req)
drivers/usb/gadget/function/f_sourcesink.c
473
struct usb_composite_dev *cdev = ss->function.config->cdev;
drivers/usb/gadget/function/f_sourcesink.c
474
int max_packet_size = le16_to_cpu(ss->out_ep->desc->wMaxPacketSize);
drivers/usb/gadget/function/f_sourcesink.c
476
if (ss->pattern == 2)
drivers/usb/gadget/function/f_sourcesink.c
480
switch (ss->pattern) {
drivers/usb/gadget/function/f_sourcesink.c
501
usb_ep_set_halt(ss->out_ep);
drivers/usb/gadget/function/f_sourcesink.c
512
struct f_sourcesink *ss = ep->driver_data;
drivers/usb/gadget/function/f_sourcesink.c
514
switch (ss->pattern) {
drivers/usb/gadget/function/f_sourcesink.c
530
struct f_sourcesink *ss = ep->driver_data;
drivers/usb/gadget/function/f_sourcesink.c
534
if (!ss)
drivers/usb/gadget/function/f_sourcesink.c
537
cdev = ss->function.config->cdev;
drivers/usb/gadget/function/f_sourcesink.c
542
if (ep == ss->out_ep) {
drivers/usb/gadget/function/f_sourcesink.c
543
check_read_data(ss, req);
drivers/usb/gadget/function/f_sourcesink.c
544
if (ss->pattern != 2)
drivers/usb/gadget/function/f_sourcesink.c
555
if (ep == ss->out_ep)
drivers/usb/gadget/function/f_sourcesink.c
556
check_read_data(ss, req);
drivers/usb/gadget/function/f_sourcesink.c
583
static int source_sink_start_ep(struct f_sourcesink *ss, bool is_in,
drivers/usb/gadget/function/f_sourcesink.c
594
size = ss->isoc_maxpacket *
drivers/usb/gadget/function/f_sourcesink.c
595
(ss->isoc_mult + 1) *
drivers/usb/gadget/function/f_sourcesink.c
596
(ss->isoc_maxburst + 1);
drivers/usb/gadget/function/f_sourcesink.c
599
size = ss->isoc_maxpacket * (ss->isoc_mult + 1);
drivers/usb/gadget/function/f_sourcesink.c
602
size = ss->isoc_maxpacket > 1023 ?
drivers/usb/gadget/function/f_sourcesink.c
603
1023 : ss->isoc_maxpacket;
drivers/usb/gadget/function/f_sourcesink.c
606
ep = is_in ? ss->iso_in_ep : ss->iso_out_ep;
drivers/usb/gadget/function/f_sourcesink.c
607
qlen = ss->iso_qlen;
drivers/usb/gadget/function/f_sourcesink.c
609
ep = is_in ? ss->in_ep : ss->out_ep;
drivers/usb/gadget/function/f_sourcesink.c
610
qlen = ss->bulk_qlen;
drivers/usb/gadget/function/f_sourcesink.c
611
size = ss->buflen;
drivers/usb/gadget/function/f_sourcesink.c
622
else if (ss->pattern != 2)
drivers/usb/gadget/function/f_sourcesink.c
629
cdev = ss->function.config->cdev;
drivers/usb/gadget/function/f_sourcesink.c
641
static void disable_source_sink(struct f_sourcesink *ss)
drivers/usb/gadget/function/f_sourcesink.c
645
cdev = ss->function.config->cdev;
drivers/usb/gadget/function/f_sourcesink.c
646
disable_endpoints(cdev, ss->in_ep, ss->out_ep, ss->iso_in_ep,
drivers/usb/gadget/function/f_sourcesink.c
647
ss->iso_out_ep);
drivers/usb/gadget/function/f_sourcesink.c
648
VDBG(cdev, "%s disabled\n", ss->function.name);
drivers/usb/gadget/function/f_sourcesink.c
652
enable_source_sink(struct usb_composite_dev *cdev, struct f_sourcesink *ss,
drivers/usb/gadget/function/f_sourcesink.c
660
ep = ss->in_ep;
drivers/usb/gadget/function/f_sourcesink.c
661
result = config_ep_by_speed(cdev->gadget, &(ss->function), ep);
drivers/usb/gadget/function/f_sourcesink.c
667
ep->driver_data = ss;
drivers/usb/gadget/function/f_sourcesink.c
669
result = source_sink_start_ep(ss, true, false, speed);
drivers/usb/gadget/function/f_sourcesink.c
672
ep = ss->in_ep;
drivers/usb/gadget/function/f_sourcesink.c
678
ep = ss->out_ep;
drivers/usb/gadget/function/f_sourcesink.c
679
result = config_ep_by_speed(cdev->gadget, &(ss->function), ep);
drivers/usb/gadget/function/f_sourcesink.c
685
ep->driver_data = ss;
drivers/usb/gadget/function/f_sourcesink.c
687
result = source_sink_start_ep(ss, false, false, speed);
drivers/usb/gadget/function/f_sourcesink.c
690
ep = ss->out_ep;
drivers/usb/gadget/function/f_sourcesink.c
699
ep = ss->iso_in_ep;
drivers/usb/gadget/function/f_sourcesink.c
701
result = config_ep_by_speed(cdev->gadget, &(ss->function), ep);
drivers/usb/gadget/function/f_sourcesink.c
707
ep->driver_data = ss;
drivers/usb/gadget/function/f_sourcesink.c
709
result = source_sink_start_ep(ss, true, true, speed);
drivers/usb/gadget/function/f_sourcesink.c
712
ep = ss->iso_in_ep;
drivers/usb/gadget/function/f_sourcesink.c
720
ep = ss->iso_out_ep;
drivers/usb/gadget/function/f_sourcesink.c
722
result = config_ep_by_speed(cdev->gadget, &(ss->function), ep);
drivers/usb/gadget/function/f_sourcesink.c
728
ep->driver_data = ss;
drivers/usb/gadget/function/f_sourcesink.c
730
result = source_sink_start_ep(ss, false, true, speed);
drivers/usb/gadget/function/f_sourcesink.c
737
ss->cur_alt = alt;
drivers/usb/gadget/function/f_sourcesink.c
739
DBG(cdev, "%s enabled, alt intf %d\n", ss->function.name, alt);
drivers/usb/gadget/function/f_sourcesink.c
746
struct f_sourcesink *ss = func_to_ss(f);
drivers/usb/gadget/function/f_sourcesink.c
749
disable_source_sink(ss);
drivers/usb/gadget/function/f_sourcesink.c
750
return enable_source_sink(cdev, ss, alt);
drivers/usb/gadget/function/f_sourcesink.c
755
struct f_sourcesink *ss = func_to_ss(f);
drivers/usb/gadget/function/f_sourcesink.c
757
return ss->cur_alt;
drivers/usb/gadget/function/f_sourcesink.c
762
struct f_sourcesink *ss = func_to_ss(f);
drivers/usb/gadget/function/f_sourcesink.c
764
disable_source_sink(ss);
drivers/usb/gadget/function/f_sourcesink.c
844
struct f_sourcesink *ss;
drivers/usb/gadget/function/f_sourcesink.c
847
ss = kzalloc_obj(*ss);
drivers/usb/gadget/function/f_sourcesink.c
848
if (!ss)
drivers/usb/gadget/function/f_sourcesink.c
857
ss->pattern = ss_opts->pattern;
drivers/usb/gadget/function/f_sourcesink.c
858
ss->isoc_interval = ss_opts->isoc_interval;
drivers/usb/gadget/function/f_sourcesink.c
859
ss->isoc_maxpacket = ss_opts->isoc_maxpacket;
drivers/usb/gadget/function/f_sourcesink.c
860
ss->isoc_mult = ss_opts->isoc_mult;
drivers/usb/gadget/function/f_sourcesink.c
861
ss->isoc_maxburst = ss_opts->isoc_maxburst;
drivers/usb/gadget/function/f_sourcesink.c
862
ss->buflen = ss_opts->bulk_buflen;
drivers/usb/gadget/function/f_sourcesink.c
863
ss->bulk_maxburst = ss_opts->bulk_maxburst;
drivers/usb/gadget/function/f_sourcesink.c
864
ss->bulk_qlen = ss_opts->bulk_qlen;
drivers/usb/gadget/function/f_sourcesink.c
865
ss->iso_qlen = ss_opts->iso_qlen;
drivers/usb/gadget/function/f_sourcesink.c
867
ss->function.name = "source/sink";
drivers/usb/gadget/function/f_sourcesink.c
868
ss->function.bind = sourcesink_bind;
drivers/usb/gadget/function/f_sourcesink.c
869
ss->function.set_alt = sourcesink_set_alt;
drivers/usb/gadget/function/f_sourcesink.c
870
ss->function.get_alt = sourcesink_get_alt;
drivers/usb/gadget/function/f_sourcesink.c
871
ss->function.disable = sourcesink_disable;
drivers/usb/gadget/function/f_sourcesink.c
872
ss->function.setup = sourcesink_setup;
drivers/usb/gadget/function/f_sourcesink.c
873
ss->function.strings = sourcesink_strings;
drivers/usb/gadget/function/f_sourcesink.c
875
ss->function.free_func = sourcesink_free_func;
drivers/usb/gadget/function/f_sourcesink.c
877
return &ss->function;
drivers/usb/gadget/function/u_audio.c
179
substream = prm->ss;
drivers/usb/gadget/function/u_audio.c
336
prm->ss = substream;
drivers/usb/gadget/function/u_audio.c
340
prm->ss = NULL;
drivers/usb/gadget/function/u_audio.c
347
if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK && !prm->ss)
drivers/usb/gadget/function/u_audio.c
43
struct snd_pcm_substream *ss;
drivers/usb/gadget/udc/aspeed-vhub/dev.c
361
struct usb_ss_ep_comp_descriptor *ss)
drivers/usb/gadget/udc/aspeed-vhub/dev.c
377
if (usb_gadget_ep_match_desc(gadget, u_ep, desc, ss)) {
drivers/usb/gadget/udc/dummy_hcd.c
2098
desc->u.ss.bHubHdrDecLat = 0x04; /* Worst case: 0.4 micro sec*/
drivers/usb/gadget/udc/dummy_hcd.c
2099
desc->u.ss.DeviceRemovable = 0;
drivers/usb/host/xhci-hub.c
353
desc->u.ss.bHubHdrDecLat = 0;
drivers/usb/host/xhci-hub.c
354
desc->u.ss.wHubDelay = 0;
drivers/usb/host/xhci-hub.c
364
desc->u.ss.DeviceRemovable = cpu_to_le16(port_removable);
drivers/usb/misc/usbtest.c
765
struct usb_ss_cap_descriptor *ss;
drivers/usb/misc/usbtest.c
767
ss = (struct usb_ss_cap_descriptor *) buf;
drivers/usb/misc/usbtest.c
769
if (ss->bLength != USB_DT_USB_SS_CAP_SIZE) {
drivers/usb/misc/usbtest.c
778
if (ss->bmAttributes & ~0x02) { /* reserved == 0 */
drivers/usb/misc/usbtest.c
784
if (le16_to_cpu(ss->wSpeedSupported) & ~0x0f) { /* reserved == 0 */
drivers/usb/serial/f81232.c
792
static void f81232_get_serial(struct tty_struct *tty, struct serial_struct *ss)
drivers/usb/serial/f81232.c
797
ss->baud_base = priv->baud_base;
drivers/usb/serial/f81534.c
1133
static void f81534_get_serial_info(struct tty_struct *tty, struct serial_struct *ss)
drivers/usb/serial/f81534.c
1140
ss->baud_base = port_priv->baud_base;
drivers/usb/serial/ftdi_sio.c
1428
static void get_serial_info(struct tty_struct *tty, struct serial_struct *ss)
drivers/usb/serial/ftdi_sio.c
1434
ss->flags = priv->flags;
drivers/usb/serial/ftdi_sio.c
1435
ss->baud_base = priv->baud_base;
drivers/usb/serial/ftdi_sio.c
1436
ss->custom_divisor = priv->custom_divisor;
drivers/usb/serial/ftdi_sio.c
1440
static int set_serial_info(struct tty_struct *tty, struct serial_struct *ss)
drivers/usb/serial/ftdi_sio.c
1449
if ((ss->flags ^ priv->flags) & ~ASYNC_USR_MASK) {
drivers/usb/serial/ftdi_sio.c
1458
priv->flags = ss->flags & ASYNC_FLAGS;
drivers/usb/serial/ftdi_sio.c
1459
priv->custom_divisor = ss->custom_divisor;
drivers/usb/serial/ti_usb_3410_5052.c
1384
static void ti_get_serial_info(struct tty_struct *tty, struct serial_struct *ss)
drivers/usb/serial/ti_usb_3410_5052.c
1389
ss->baud_base = tport->tp_tdev->td_is_3410 ? 921600 : 460800;
drivers/usb/serial/ti_usb_3410_5052.c
332
static void ti_get_serial_info(struct tty_struct *tty, struct serial_struct *ss);
drivers/usb/serial/usb-serial.c
439
static int serial_get_serial(struct tty_struct *tty, struct serial_struct *ss)
drivers/usb/serial/usb-serial.c
452
ss->line = port->minor;
drivers/usb/serial/usb-serial.c
453
ss->close_delay = close_delay;
drivers/usb/serial/usb-serial.c
454
ss->closing_wait = closing_wait;
drivers/usb/serial/usb-serial.c
457
port->serial->type->get_serial(tty, ss);
drivers/usb/serial/usb-serial.c
464
static int serial_set_serial(struct tty_struct *tty, struct serial_struct *ss)
drivers/usb/serial/usb-serial.c
471
close_delay = msecs_to_jiffies(ss->close_delay * 10);
drivers/usb/serial/usb-serial.c
472
closing_wait = ss->closing_wait;
drivers/usb/serial/usb-serial.c
487
ret = port->serial->type->set_serial(tty, ss);
drivers/usb/serial/whiteheat.c
436
static void whiteheat_get_serial(struct tty_struct *tty, struct serial_struct *ss)
drivers/usb/serial/whiteheat.c
438
ss->baud_base = 460800;
drivers/usb/serial/whiteheat.c
83
struct serial_struct *ss);
drivers/usb/storage/onetouch.c
163
static int onetouch_connect_input(struct us_data *ss)
drivers/usb/storage/onetouch.c
165
struct usb_device *udev = ss->pusb_dev;
drivers/usb/storage/onetouch.c
173
interface = ss->pusb_intf->cur_altsetting;
drivers/usb/storage/onetouch.c
240
ss->extra_destructor = onetouch_release_input;
drivers/usb/storage/onetouch.c
241
ss->extra = onetouch;
drivers/usb/storage/onetouch.c
243
ss->suspend_resume_hook = usb_onetouch_pm_hook;
drivers/usb/storage/onetouch.c
33
static int onetouch_connect_input(struct us_data *ss);
drivers/usb/usbip/vhci_hcd.c
295
desc->u.ss.bHubHdrDecLat = 0x04; /* Worst case: 0.4 micro sec*/
drivers/usb/usbip/vhci_hcd.c
296
desc->u.ss.DeviceRemovable = 0xffff;
drivers/video/fbdev/leo.c
206
struct leo_ld_ss0 __iomem *ss = par->ld_ss0;
drivers/video/fbdev/leo.c
216
sbus_writel(0xffffffff, &ss->wid);
drivers/video/fbdev/leo.c
217
sbus_writel(0xffff, &ss->wmask);
drivers/video/fbdev/leo.c
218
sbus_writel(0, &ss->vclipmin);
drivers/video/fbdev/leo.c
219
sbus_writel(par->extent, &ss->vclipmax);
drivers/video/fbdev/leo.c
220
sbus_writel(0, &ss->fg);
drivers/video/fbdev/leo.c
221
sbus_writel(0xff000000, &ss->planemask);
drivers/video/fbdev/leo.c
222
sbus_writel(0x310850, &ss->rop);
drivers/video/fbdev/leo.c
223
sbus_writel(0, &ss->widclip);
drivers/video/fbdev/leo.c
234
sbus_writel(1, &ss->wid);
drivers/video/fbdev/leo.c
235
sbus_writel(0x00ffffff, &ss->planemask);
drivers/video/fbdev/leo.c
236
sbus_writel(0x310b90, &ss->rop);
fs/nfs/dns_resolve.c
21
struct sockaddr_storage *ss, size_t salen)
fs/nfs/dns_resolve.c
23
struct sockaddr *sa = (struct sockaddr *)ss;
fs/nfs/dns_resolve.c
343
size_t namelen, struct sockaddr_storage *ss, size_t salen)
fs/nfs/dns_resolve.c
356
memcpy(ss, &item->addr, item->addrlen);
fs/nfs/nfs4_fs.h
302
size_t nfs_parse_server_name(char *string, size_t len, struct sockaddr_storage *ss,
fs/nfs/nfs4namespace.c
167
size_t nfs_parse_server_name(char *string, size_t len, struct sockaddr_storage *ss,
fs/nfs/nfs4namespace.c
170
struct sockaddr *sa = (struct sockaddr *)ss;
fs/nfs/nfs4namespace.c
177
ret = nfs_dns_resolve_name(net, string, len, ss, salen);
fs/smb/client/connect.c
78
struct sockaddr_storage ss;
fs/smb/client/connect.c
89
ss = server->dstaddr;
fs/smb/client/connect.c
94
(struct sockaddr *)&ss);
fs/smb/client/connect.c
97
memcpy(&server->dstaddr, &ss, sizeof(server->dstaddr));
fs/smb/client/dfs_cache.c
1100
struct sockaddr_storage ss;
fs/smb/client/dfs_cache.c
1111
rc = dns_resolve_unc(server->dns_dom, s1, (struct sockaddr *)&ss);
fs/smb/client/dfs_cache.c
1116
match = cifs_match_ipaddr((struct sockaddr *)&server->dstaddr, (struct sockaddr *)&ss);
fs/smb/client/misc.c
967
struct sockaddr_storage ss;
fs/smb/client/misc.c
975
(struct sockaddr *)&ss);
fs/smb/client/misc.c
980
*result = cifs_match_ipaddr((struct sockaddr *)&server->dstaddr, (struct sockaddr *)&ss);
fs/smb/client/sess.c
350
struct sockaddr_storage ss;
fs/smb/client/sess.c
370
ss = server->dstaddr;
fs/smb/client/sess.c
389
if (!cifs_match_ipaddr((struct sockaddr *) &ss,
fs/smb/client/sess.c
432
&ss);
fs/unicode/mkutf8data.c
2970
const char *ss;
fs/unicode/mkutf8data.c
3000
u8c->ss = NULL;
fs/unicode/mkutf8data.c
3144
u8c->ss = u8c->s;
fs/unicode/mkutf8data.c
3158
u8c->s = u8c->ss;
fs/unicode/mkutf8data.c
3166
u8c->ss = NULL;
fs/unicode/utf8-norm.c
429
u8c->ss = NULL;
fs/unicode/utf8-norm.c
561
u8c->ss = u8c->s;
fs/unicode/utf8-norm.c
575
u8c->s = u8c->ss;
fs/unicode/utf8-norm.c
583
u8c->ss = NULL;
fs/unicode/utf8n.h
38
const char *ss;
include/hyperv/hvgdk_mini.h
866
struct hv_x64_segment_register ss;
include/hyperv/hvhdk.h
100
struct hv_x64_segment_register ss;
include/linux/bpf.h
3900
void bpf_stream_stage_init(struct bpf_stream_stage *ss);
include/linux/bpf.h
3901
void bpf_stream_stage_free(struct bpf_stream_stage *ss);
include/linux/bpf.h
3903
int bpf_stream_stage_printk(struct bpf_stream_stage *ss, const char *fmt, ...);
include/linux/bpf.h
3904
int bpf_stream_stage_commit(struct bpf_stream_stage *ss, struct bpf_prog *prog,
include/linux/bpf.h
3906
int bpf_stream_stage_dump_stack(struct bpf_stream_stage *ss);
include/linux/bpf.h
3908
#define bpf_stream_printk(ss, ...) bpf_stream_stage_printk(&ss, __VA_ARGS__)
include/linux/bpf.h
3909
#define bpf_stream_dump_stack(ss) bpf_stream_stage_dump_stack(&ss)
include/linux/bpf.h
3911
#define bpf_stream_stage(ss, prog, stream_id, expr) \
include/linux/bpf.h
3913
bpf_stream_stage_init(&ss); \
include/linux/bpf.h
3915
bpf_stream_stage_commit(&ss, prog, stream_id); \
include/linux/bpf.h
3916
bpf_stream_stage_free(&ss); \
include/linux/cgroup-defs.h
184
struct cgroup_subsys *ss;
include/linux/cgroup-defs.h
715
struct cgroup_subsys *ss; /* NULL for cgroup core files */
include/linux/cgroup.h
103
#define cgroup_subsys_on_dfl(ss) \
include/linux/cgroup.h
104
static_branch_likely(&ss ## _on_dfl_key)
include/linux/cgroup.h
107
struct cgroup_subsys_state *css_from_id(int id, struct cgroup_subsys *ss);
include/linux/cgroup.h
109
struct cgroup_subsys *ss);
include/linux/cgroup.h
111
struct cgroup_subsys *ss);
include/linux/cgroup.h
113
struct cgroup_subsys *ss);
include/linux/cgroup.h
122
int cgroup_add_dfl_cftypes(struct cgroup_subsys *ss, struct cftype *cfts);
include/linux/cgroup.h
123
int cgroup_add_legacy_cftypes(struct cgroup_subsys *ss, struct cftype *cfts);
include/linux/cgroup.h
124
int cgroup_add_cftypes(struct cgroup_subsys *ss, struct cftype *cfts);
include/linux/cgroup.h
368
WARN_ON(css->ss != NULL);
include/linux/cgroup.h
53
struct cgroup_subsys *ss;
include/linux/cgroup.h
96
#define cgroup_subsys_enabled(ss) \
include/linux/cgroup.h
97
static_branch_likely(&ss ## _enabled_key)
include/linux/netdevice.h
4310
int netif_set_mac_address(struct net_device *dev, struct sockaddr_storage *ss,
include/linux/netdevice.h
4312
int dev_set_mac_address(struct net_device *dev, struct sockaddr_storage *ss,
include/linux/netdevice.h
4314
int dev_set_mac_address_user(struct net_device *dev, struct sockaddr_storage *ss,
include/linux/pe.h
253
uint16_t ss; /* relative stack segment */
include/linux/usb/gadget.h
910
struct usb_descriptor_header **ss,
include/linux/usb/serial.h
277
void (*get_serial)(struct tty_struct *tty, struct serial_struct *ss);
include/linux/usb/serial.h
278
int (*set_serial)(struct tty_struct *tty, struct serial_struct *ss);
include/net/libeth/tx.h
108
struct libeth_sq_napi_stats *ss;
include/net/libeth/tx.h
142
cp->ss->packets += sqe->packets;
include/net/libeth/tx.h
143
cp->ss->bytes += sqe->bytes;
include/net/libeth/xdp.h
1329
libeth_xdp_buff_stats_frags(struct libeth_rq_napi_stats *ss,
include/net/libeth/xdp.h
1335
ss->bytes += sinfo->xdp_frags_size;
include/net/libeth/xdp.h
1336
ss->fragments += sinfo->nr_frags + 1;
include/net/libeth/xdp.h
1533
#define libeth_xdp_run_pass(xdp, bq, napi, ss, desc, run, populate) \
include/net/libeth/xdp.h
1534
__libeth_xdp_run_pass(xdp, bq, napi, ss, desc, libeth_xdp_prep_desc, \
include/net/libeth/xdp.h
1659
struct napi_struct *napi, struct libeth_rq_napi_stats *ss, \
include/net/libeth/xdp.h
1662
return libeth_##pfx##_run_pass(xdp, bq, napi, ss, desc, run, \
include/rdma/rdmavt_mr.h
114
static inline void rvt_update_sge(struct rvt_sge_state *ss, u32 length,
include/rdma/rdmavt_mr.h
117
struct rvt_sge *sge = &ss->sge;
include/rdma/rdmavt_mr.h
125
if (--ss->num_sge)
include/rdma/rdmavt_mr.h
126
*sge = *ss->sg_list++;
include/rdma/rdmavt_mr.h
138
static inline void rvt_skip_sge(struct rvt_sge_state *ss, u32 length,
include/rdma/rdmavt_mr.h
141
struct rvt_sge *sge = &ss->sge;
include/rdma/rdmavt_mr.h
147
rvt_update_sge(ss, len, release);
include/rdma/rdmavt_mr.h
152
bool rvt_ss_has_lkey(struct rvt_sge_state *ss, u32 lkey);
include/rdma/rdmavt_mr.h
93
static inline void rvt_put_ss(struct rvt_sge_state *ss)
include/rdma/rdmavt_mr.h
95
while (ss->num_sge) {
include/rdma/rdmavt_mr.h
96
rvt_put_mr(ss->sge.mr);
include/rdma/rdmavt_mr.h
97
if (--ss->num_sge)
include/rdma/rdmavt_mr.h
98
ss->sge = *ss->sg_list++;
include/rdma/rdmavt_qp.h
652
u32 rvt_restart_sge(struct rvt_sge_state *ss, struct rvt_swqe *wqe, u32 len);
include/rdma/rdmavt_qp.h
887
void rvt_copy_sge(struct rvt_qp *qp, struct rvt_sge_state *ss,
include/sound/soc-dai.h
497
#define snd_soc_dai_get_dma_data(dai, ss) snd_soc_dai_dma_data_get(dai, ss->stream)
include/sound/soc-dai.h
505
#define snd_soc_dai_set_dma_data(dai, ss, data) snd_soc_dai_dma_data_set(dai, ss->stream, data)
include/uapi/linux/netfilter/nfnetlink_osf.h
58
__u16 ss, mss;
include/uapi/linux/usb/ch11.h
280
} __attribute__ ((packed)) ss;
include/uapi/video/uvesafb.h
19
__u16 ss;
kernel/bpf/arena.c
934
struct bpf_stream_stage ss;
kernel/bpf/arena.c
955
bpf_stream_stage(ss, prog, BPF_STDERR, ({
kernel/bpf/arena.c
956
bpf_stream_printk(ss, "ERROR: Arena %s access at unmapped address 0x%lx\n",
kernel/bpf/arena.c
958
bpf_stream_dump_stack(ss);
kernel/bpf/core.c
3251
struct bpf_stream_stage ss;
kernel/bpf/core.c
3257
bpf_stream_stage(ss, prog, BPF_STDERR, ({
kernel/bpf/core.c
3258
bpf_stream_printk(ss, "ERROR: Timeout detected for may_goto instruction\n");
kernel/bpf/core.c
3259
bpf_stream_dump_stack(ss);
kernel/bpf/rqspinlock.c
675
struct bpf_stream_stage ss;
kernel/bpf/rqspinlock.c
681
bpf_stream_stage(ss, prog, BPF_STDERR, ({
kernel/bpf/rqspinlock.c
682
bpf_stream_printk(ss, "ERROR: %s for bpf_res_spin_lock%s\n", str, irqsave ? "_irqsave" : "");
kernel/bpf/rqspinlock.c
683
bpf_stream_printk(ss, "Attempted lock = 0x%px\n", lock);
kernel/bpf/rqspinlock.c
684
bpf_stream_printk(ss, "Total held locks = %d\n", rqh->cnt);
kernel/bpf/rqspinlock.c
686
bpf_stream_printk(ss, "Held lock[%2d] = 0x%px\n", i, rqh->locks[i]);
kernel/bpf/rqspinlock.c
687
bpf_stream_dump_stack(ss);
kernel/bpf/stream.c
251
struct bpf_stream_stage ss;
kernel/bpf/stream.c
260
bpf_stream_stage(ss, prog, stream_id, ({
kernel/bpf/stream.c
261
bpf_stream_dump_stack(ss);
kernel/bpf/stream.c
296
void bpf_stream_stage_init(struct bpf_stream_stage *ss)
kernel/bpf/stream.c
298
init_llist_head(&ss->log);
kernel/bpf/stream.c
299
ss->len = 0;
kernel/bpf/stream.c
302
void bpf_stream_stage_free(struct bpf_stream_stage *ss)
kernel/bpf/stream.c
306
node = llist_del_all(&ss->log);
kernel/bpf/stream.c
310
int bpf_stream_stage_printk(struct bpf_stream_stage *ss, const char *fmt, ...)
kernel/bpf/stream.c
322
ss->len += ret;
kernel/bpf/stream.c
324
ret = __bpf_stream_push_str(&ss->log, buf->buf, ret);
kernel/bpf/stream.c
329
int bpf_stream_stage_commit(struct bpf_stream_stage *ss, struct bpf_prog *prog,
kernel/bpf/stream.c
340
ret = bpf_stream_consume_capacity(stream, ss->len);
kernel/bpf/stream.c
344
list = llist_del_all(&ss->log);
kernel/bpf/stream.c
358
struct bpf_stream_stage *ss;
kernel/bpf/stream.c
376
ctxp->err = bpf_stream_stage_printk(ctxp->ss, "%pS\n %s @ %s:%d\n",
kernel/bpf/stream.c
381
ctxp->err = bpf_stream_stage_printk(ctxp->ss, "%pS\n", (void *)(long)ip);
kernel/bpf/stream.c
385
int bpf_stream_stage_dump_stack(struct bpf_stream_stage *ss)
kernel/bpf/stream.c
387
struct dump_stack_ctx ctx = { .ss = ss };
kernel/bpf/stream.c
390
ret = bpf_stream_stage_printk(ss, "CPU: %d UID: %d PID: %d Comm: %s\n",
kernel/bpf/stream.c
395
ret = bpf_stream_stage_printk(ss, "Call trace:\n");
kernel/bpf/stream.c
401
return bpf_stream_stage_printk(ss, "\n");
kernel/cgroup/cgroup-internal.h
183
#define for_each_subsys(ss, ssid) \
kernel/cgroup/cgroup-internal.h
185
(((ss) = cgroup_subsys[ssid]) || true); (ssid)++)
kernel/cgroup/cgroup-internal.h
278
int ss_rstat_init(struct cgroup_subsys *ss);
kernel/cgroup/cgroup-v1.c
1042
struct cgroup_subsys *ss;
kernel/cgroup/cgroup-v1.c
1048
for_each_subsys(ss, i)
kernel/cgroup/cgroup-v1.c
1050
!cgroup1_subsys_absent(ss))
kernel/cgroup/cgroup-v1.c
1168
struct cgroup_subsys *ss;
kernel/cgroup/cgroup-v1.c
1183
for_each_subsys(ss, i) {
kernel/cgroup/cgroup-v1.c
1185
ss->root == &cgrp_dfl_root)
kernel/cgroup/cgroup-v1.c
1188
if (!percpu_ref_tryget_live(&ss->root->cgrp.self.refcnt))
kernel/cgroup/cgroup-v1.c
1190
cgroup_put(&ss->root->cgrp);
kernel/cgroup/cgroup-v1.c
1337
struct cgroup_subsys *ss;
kernel/cgroup/cgroup-v1.c
1355
for_each_subsys(ss, i) {
kernel/cgroup/cgroup-v1.c
1356
if (strcmp(token, ss->name) &&
kernel/cgroup/cgroup-v1.c
1357
strcmp(token, ss->legacy_name))
kernel/cgroup/cgroup-v1.c
53
static bool cgroup1_subsys_absent(struct cgroup_subsys *ss)
kernel/cgroup/cgroup-v1.c
56
return ss->legacy_cftypes == NULL && ss->dfl_cftypes;
kernel/cgroup/cgroup-v1.c
679
struct cgroup_subsys *ss;
kernel/cgroup/cgroup-v1.c
689
for_each_subsys(ss, i) {
kernel/cgroup/cgroup-v1.c
690
cgrp_v1_visible |= ss->root != &cgrp_dfl_root;
kernel/cgroup/cgroup-v1.c
692
if (!proc_show_all && cgroup1_subsys_absent(ss))
kernel/cgroup/cgroup-v1.c
696
ss->legacy_name, ss->root->hierarchy_id,
kernel/cgroup/cgroup-v1.c
697
atomic_read(&ss->root->nr_cgrps),
kernel/cgroup/cgroup-v1.c
886
struct cgroup_subsys *ss;
kernel/cgroup/cgroup-v1.c
889
for_each_subsys(ss, ssid)
kernel/cgroup/cgroup-v1.c
891
seq_show_option(seq, ss->legacy_name, NULL);
kernel/cgroup/cgroup-v1.c
944
struct cgroup_subsys *ss;
kernel/cgroup/cgroup-v1.c
955
for_each_subsys(ss, i) {
kernel/cgroup/cgroup-v1.c
956
if (strcmp(param->key, ss->legacy_name) ||
kernel/cgroup/cgroup-v1.c
957
cgroup1_subsys_absent(ss))
kernel/cgroup/cgroup.c
1106
struct cgroup_subsys *ss;
kernel/cgroup/cgroup.c
1116
for_each_subsys(ss, i) {
kernel/cgroup/cgroup.c
1122
template[i] = cgroup_e_css_by_mask(cgrp, ss);
kernel/cgroup/cgroup.c
1227
struct cgroup_subsys *ss;
kernel/cgroup/cgroup.c
1289
for_each_subsys(ss, ssid) {
kernel/cgroup/cgroup.c
1586
struct cgroup_subsys *ss = cft->ss;
kernel/cgroup/cgroup.c
1588
if (cft->ss && !(cft->flags & CFTYPE_NO_PREFIX) &&
kernel/cgroup/cgroup.c
1593
dbg, cgroup_on_dfl(cgrp) ? ss->name : ss->legacy_name,
kernel/cgroup/cgroup.c
1639
struct cgroup_subsys *ss;
kernel/cgroup/cgroup.c
1649
do_each_subsys_mask(ss, ssid, cur_ss_mask) {
kernel/cgroup/cgroup.c
1650
new_ss_mask |= ss->depends_on;
kernel/cgroup/cgroup.c
1748
struct cgroup_subsys_state *css = cgroup_css(cgrp, cft->ss);
kernel/cgroup/cgroup.c
1787
list_for_each_entry(cfts, &css->ss->cfts, node)
kernel/cgroup/cgroup.c
1830
list_for_each_entry(cfts, &css->ss->cfts, node) {
kernel/cgroup/cgroup.c
1843
list_for_each_entry(cfts, &css->ss->cfts, node) {
kernel/cgroup/cgroup.c
1854
struct cgroup_subsys *ss;
kernel/cgroup/cgroup.c
1860
do_each_subsys_mask(ss, ssid, ss_mask) {
kernel/cgroup/cgroup.c
1866
if (css_next_child(NULL, cgroup_css(&ss->root->cgrp, ss)) &&
kernel/cgroup/cgroup.c
1867
!ss->implicit_on_dfl)
kernel/cgroup/cgroup.c
1871
if (ss->root != &cgrp_dfl_root && dst_root != &cgrp_dfl_root)
kernel/cgroup/cgroup.c
1878
if (ss->root == &cgrp_dfl_root)
kernel/cgroup/cgroup.c
1895
do_each_subsys_mask(ss, ssid, ss_mask) {
kernel/cgroup/cgroup.c
1896
struct cgroup_root *src_root = ss->root;
kernel/cgroup/cgroup.c
1898
struct cgroup_subsys_state *css = cgroup_css(scgrp, ss);
kernel/cgroup/cgroup.c
1902
WARN_ON(!css || cgroup_css(dcgrp, ss));
kernel/cgroup/cgroup.c
1914
ss->root = dst_root;
kernel/cgroup/cgroup.c
1918
WARN_ON(!list_empty(&dcgrp->e_csets[ss->id]));
kernel/cgroup/cgroup.c
1919
list_for_each_entry_safe(cset, cset_pos, &scgrp->e_csets[ss->id],
kernel/cgroup/cgroup.c
1920
e_cset_node[ss->id]) {
kernel/cgroup/cgroup.c
1921
list_move_tail(&cset->e_cset_node[ss->id],
kernel/cgroup/cgroup.c
1922
&dcgrp->e_csets[ss->id]);
kernel/cgroup/cgroup.c
1931
if (it->cset_head == &scgrp->e_csets[ss->id])
kernel/cgroup/cgroup.c
1932
it->cset_head = &dcgrp->e_csets[ss->id];
kernel/cgroup/cgroup.c
1948
ss->name, ret);
kernel/cgroup/cgroup.c
1950
if (ss->bind)
kernel/cgroup/cgroup.c
1951
ss->bind(css);
kernel/cgroup/cgroup.c
2105
struct cgroup_subsys *ss;
kernel/cgroup/cgroup.c
2120
for_each_subsys(ss, ssid)
kernel/cgroup/cgroup.c
2696
struct cgroup_subsys *ss;
kernel/cgroup/cgroup.c
2703
do_each_subsys_mask(ss, ssid, mgctx->ss_mask) {
kernel/cgroup/cgroup.c
2704
if (ss->can_attach) {
kernel/cgroup/cgroup.c
2706
ret = ss->can_attach(tset);
kernel/cgroup/cgroup.c
2750
do_each_subsys_mask(ss, ssid, mgctx->ss_mask) {
kernel/cgroup/cgroup.c
2751
if (ss->attach) {
kernel/cgroup/cgroup.c
2753
ss->attach(tset);
kernel/cgroup/cgroup.c
2763
do_each_subsys_mask(ss, ssid, mgctx->ss_mask) {
kernel/cgroup/cgroup.c
2766
if (ss->cancel_attach) {
kernel/cgroup/cgroup.c
2768
ss->cancel_attach(tset);
kernel/cgroup/cgroup.c
282
struct cgroup_subsys *ss);
kernel/cgroup/cgroup.c
2933
struct cgroup_subsys *ss;
kernel/cgroup/cgroup.c
2964
for_each_subsys(ss, ssid)
kernel/cgroup/cgroup.c
3138
struct cgroup_subsys *ss;
kernel/cgroup/cgroup.c
3142
do_each_subsys_mask(ss, ssid, ss_mask) {
kernel/cgroup/cgroup.c
3145
seq_puts(seq, ss->name);
kernel/cgroup/cgroup.c
3261
struct cgroup_subsys *ss;
kernel/cgroup/cgroup.c
3268
for_each_subsys(ss, ssid) {
kernel/cgroup/cgroup.c
3269
struct cgroup_subsys_state *css = cgroup_css(dsct, ss);
kernel/cgroup/cgroup.c
3352
struct cgroup_subsys *ss = css->ss;
kernel/cgroup/cgroup.c
3355
if (cgroup_control(cgrp) & (1 << ss->id))
kernel/cgroup/cgroup.c
3357
if (!(cgroup_ss_mask(cgrp) & (1 << ss->id)))
kernel/cgroup/cgroup.c
3359
return cgroup_on_dfl(cgrp) && ss->implicit_on_dfl;
kernel/cgroup/cgroup.c
3379
struct cgroup_subsys *ss;
kernel/cgroup/cgroup.c
3383
for_each_subsys(ss, ssid) {
kernel/cgroup/cgroup.c
3384
struct cgroup_subsys_state *css = cgroup_css(dsct, ss);
kernel/cgroup/cgroup.c
3386
if (!(cgroup_ss_mask(dsct) & (1 << ss->id)))
kernel/cgroup/cgroup.c
3390
css = css_create(dsct, ss);
kernel/cgroup/cgroup.c
3425
struct cgroup_subsys *ss;
kernel/cgroup/cgroup.c
3429
for_each_subsys(ss, ssid) {
kernel/cgroup/cgroup.c
3430
struct cgroup_subsys_state *css = cgroup_css(dsct, ss);
kernel/cgroup/cgroup.c
3438
!(cgroup_ss_mask(dsct) & (1 << ss->id))) {
kernel/cgroup/cgroup.c
3442
if (ss->css_reset)
kernel/cgroup/cgroup.c
3443
ss->css_reset(css);
kernel/cgroup/cgroup.c
3548
struct cgroup_subsys *ss;
kernel/cgroup/cgroup.c
3560
do_each_subsys_mask(ss, ssid, ~cgrp_dfl_inhibit_ss_mask) {
kernel/cgroup/cgroup.c
3562
strcmp(tok + 1, ss->name))
kernel/cgroup/cgroup.c
3584
for_each_subsys(ss, ssid) {
kernel/cgroup/cgroup.c
3898
struct cgroup_subsys *ss)
kernel/cgroup/cgroup.c
3903
css = cgroup_css(cgrp, ss);
kernel/cgroup/cgroup.c
3914
struct cgroup_subsys *ss = cgroup_subsys[ssid];
kernel/cgroup/cgroup.c
3918
if (!ss->css_extra_stat_show)
kernel/cgroup/cgroup.c
3921
css = cgroup_tryget_css(cgrp, ss);
kernel/cgroup/cgroup.c
3925
ret = ss->css_extra_stat_show(seq, css);
kernel/cgroup/cgroup.c
3933
struct cgroup_subsys *ss = cgroup_subsys[ssid];
kernel/cgroup/cgroup.c
3937
if (!ss->css_local_stat_show)
kernel/cgroup/cgroup.c
3940
css = cgroup_tryget_css(cgrp, ss);
kernel/cgroup/cgroup.c
3944
ret = ss->css_local_stat_show(seq, css);
kernel/cgroup/cgroup.c
4320
css = cgroup_css(cgrp, cft->ss);
kernel/cgroup/cgroup.c
4491
struct cgroup_subsys *ss = cfts[0].ss;
kernel/cgroup/cgroup.c
4492
struct cgroup *root = &ss->root->cgrp;
kernel/cgroup/cgroup.c
4499
css_for_each_descendant_pre(css, cgroup_css(root, ss)) {
kernel/cgroup/cgroup.c
4524
cft->ss = NULL;
kernel/cgroup/cgroup.c
4532
static int cgroup_init_cftypes(struct cgroup_subsys *ss, struct cftype *cfts)
kernel/cgroup/cgroup.c
4540
WARN_ON(cft->ss || cft->kf_ops);
kernel/cgroup/cgroup.c
4566
cft->ss = ss;
kernel/cgroup/cgroup.c
4623
int cgroup_add_cftypes(struct cgroup_subsys *ss, struct cftype *cfts)
kernel/cgroup/cgroup.c
4627
if (!cgroup_ssid_enabled(ss->id))
kernel/cgroup/cgroup.c
4633
ret = cgroup_init_cftypes(ss, cfts);
kernel/cgroup/cgroup.c
4639
list_add_tail(&cfts->node, &ss->cfts);
kernel/cgroup/cgroup.c
4656
int cgroup_add_dfl_cftypes(struct cgroup_subsys *ss, struct cftype *cfts)
kernel/cgroup/cgroup.c
4662
return cgroup_add_cftypes(ss, cfts);
kernel/cgroup/cgroup.c
4673
int cgroup_add_legacy_cftypes(struct cgroup_subsys *ss, struct cftype *cfts)
kernel/cgroup/cgroup.c
4679
return cgroup_add_cftypes(ss, cfts);
kernel/cgroup/cgroup.c
4988
if (it->ss) {
kernel/cgroup/cgroup.c
4989
cset = container_of(l, struct css_set, e_cset_node[it->ss->id]);
kernel/cgroup/cgroup.c
5156
it->ss = css->ss;
kernel/cgroup/cgroup.c
5159
if (CGROUP_HAS_SUBSYS_CONFIG && it->ss)
kernel/cgroup/cgroup.c
5160
it->cset_pos = &css->cgroup->e_csets[css->ss->id];
kernel/cgroup/cgroup.c
524
struct cgroup_subsys *ss)
kernel/cgroup/cgroup.c
526
if (CGROUP_HAS_SUBSYS_CONFIG && ss)
kernel/cgroup/cgroup.c
527
return rcu_dereference_check(cgrp->subsys[ss->id],
kernel/cgroup/cgroup.c
544
struct cgroup_subsys *ss)
kernel/cgroup/cgroup.c
548
if (!ss)
kernel/cgroup/cgroup.c
555
while (!(cgroup_ss_mask(cgrp) & (1 << ss->id))) {
kernel/cgroup/cgroup.c
5583
struct cgroup_subsys *ss = css->ss;
kernel/cgroup/cgroup.c
5594
ss->css_free(css);
kernel/cgroup/cgroup.c
5595
cgroup_idr_remove(&ss->css_idr, id);
kernel/cgroup/cgroup.c
561
return cgroup_css(cgrp, ss);
kernel/cgroup/cgroup.c
5634
struct cgroup_subsys *ss = css->ss;
kernel/cgroup/cgroup.c
5647
cgroup_idr_replace(&ss->css_idr, NULL, css->id);
kernel/cgroup/cgroup.c
5648
if (ss->css_released)
kernel/cgroup/cgroup.c
5649
ss->css_released(css);
kernel/cgroup/cgroup.c
5651
cgrp->nr_dying_subsys[ss->id]--;
kernel/cgroup/cgroup.c
5662
parent_cgrp->nr_dying_subsys[ss->id]--;
kernel/cgroup/cgroup.c
5707
struct cgroup_subsys *ss, struct cgroup *cgrp)
kernel/cgroup/cgroup.c
5715
css->ss = ss;
kernel/cgroup/cgroup.c
5723
css->parent = cgroup_css(cgroup_parent(cgrp), ss);
kernel/cgroup/cgroup.c
5727
BUG_ON(cgroup_css(cgrp, ss));
kernel/cgroup/cgroup.c
5733
struct cgroup_subsys *ss = css->ss;
kernel/cgroup/cgroup.c
5738
if (ss->css_online)
kernel/cgroup/cgroup.c
5739
ret = ss->css_online(css);
kernel/cgroup/cgroup.c
5742
rcu_assign_pointer(css->cgroup->subsys[ss->id], css);
kernel/cgroup/cgroup.c
5757
struct cgroup_subsys *ss = css->ss;
kernel/cgroup/cgroup.c
5764
if (ss->css_offline)
kernel/cgroup/cgroup.c
5765
ss->css_offline(css);
kernel/cgroup/cgroup.c
5768
RCU_INIT_POINTER(css->cgroup->subsys[ss->id], NULL);
kernel/cgroup/cgroup.c
5772
css->cgroup->nr_dying_subsys[ss->id]++;
kernel/cgroup/cgroup.c
5779
css->cgroup->nr_dying_subsys[ss->id]++;
kernel/cgroup/cgroup.c
578
struct cgroup_subsys *ss)
kernel/cgroup/cgroup.c
5793
struct cgroup_subsys *ss)
kernel/cgroup/cgroup.c
5796
struct cgroup_subsys_state *parent_css = cgroup_css(parent, ss);
kernel/cgroup/cgroup.c
5802
css = ss->css_alloc(parent_css);
kernel/cgroup/cgroup.c
5808
init_and_link_css(css, ss, cgrp);
kernel/cgroup/cgroup.c
5814
err = cgroup_idr_alloc(&ss->css_idr, NULL, 2, 0, GFP_KERNEL);
kernel/cgroup/cgroup.c
5825
cgroup_idr_replace(&ss->css_idr, css, css->id);
kernel/cgroup/cgroup.c
586
css = cgroup_css(cgrp, ss);
kernel/cgroup/cgroup.c
593
return init_css_set.subsys[ss->id];
kernel/cgroup/cgroup.c
608
struct cgroup_subsys *ss)
kernel/cgroup/cgroup.c
6100
if (css->ss->css_killed)
kernel/cgroup/cgroup.c
6101
css->ss->css_killed(css);
kernel/cgroup/cgroup.c
618
css = cgroup_css(cgrp, ss);
kernel/cgroup/cgroup.c
625
css = init_css_set.subsys[ss->id];
kernel/cgroup/cgroup.c
6327
static void __init cgroup_init_subsys(struct cgroup_subsys *ss, bool early)
kernel/cgroup/cgroup.c
6331
pr_debug("Initializing cgroup subsys %s\n", ss->name);
kernel/cgroup/cgroup.c
6335
idr_init(&ss->css_idr);
kernel/cgroup/cgroup.c
6336
INIT_LIST_HEAD(&ss->cfts);
kernel/cgroup/cgroup.c
6339
ss->root = &cgrp_dfl_root;
kernel/cgroup/cgroup.c
6340
css = ss->css_alloc(NULL);
kernel/cgroup/cgroup.c
6343
init_and_link_css(css, ss, &cgrp_dfl_root.cgrp);
kernel/cgroup/cgroup.c
6355
css->id = cgroup_idr_alloc(&ss->css_idr, css, 1, 2, GFP_KERNEL);
kernel/cgroup/cgroup.c
6358
BUG_ON(ss_rstat_init(ss));
kernel/cgroup/cgroup.c
6366
init_css_set.subsys[ss->id] = css;
kernel/cgroup/cgroup.c
6368
have_fork_callback |= (bool)ss->fork << ss->id;
kernel/cgroup/cgroup.c
6369
have_exit_callback |= (bool)ss->exit << ss->id;
kernel/cgroup/cgroup.c
6370
have_release_callback |= (bool)ss->release << ss->id;
kernel/cgroup/cgroup.c
6371
have_canfork_callback |= (bool)ss->can_fork << ss->id;
kernel/cgroup/cgroup.c
6392
struct cgroup_subsys *ss;
kernel/cgroup/cgroup.c
6401
for_each_subsys(ss, i) {
kernel/cgroup/cgroup.c
6402
WARN(!ss->css_alloc || !ss->css_free || ss->name || ss->id,
kernel/cgroup/cgroup.c
6404
i, cgroup_subsys_name[i], ss->css_alloc, ss->css_free,
kernel/cgroup/cgroup.c
6405
ss->id, ss->name);
kernel/cgroup/cgroup.c
6408
WARN(ss->early_init && ss->css_rstat_flush,
kernel/cgroup/cgroup.c
6411
ss->id = i;
kernel/cgroup/cgroup.c
6412
ss->name = cgroup_subsys_name[i];
kernel/cgroup/cgroup.c
6413
if (!ss->legacy_name)
kernel/cgroup/cgroup.c
6414
ss->legacy_name = cgroup_subsys_name[i];
kernel/cgroup/cgroup.c
6416
if (ss->early_init)
kernel/cgroup/cgroup.c
6417
cgroup_init_subsys(ss, true);
kernel/cgroup/cgroup.c
6430
struct cgroup_subsys *ss;
kernel/cgroup/cgroup.c
6458
for_each_subsys(ss, ssid) {
kernel/cgroup/cgroup.c
6459
if (ss->early_init) {
kernel/cgroup/cgroup.c
6461
init_css_set.subsys[ss->id];
kernel/cgroup/cgroup.c
6463
css->id = cgroup_idr_alloc(&ss->css_idr, css, 1, 2,
kernel/cgroup/cgroup.c
6467
cgroup_init_subsys(ss, false);
kernel/cgroup/cgroup.c
6483
ss->legacy_name);
kernel/cgroup/cgroup.c
6485
cgrp_dfl_root.subsys_mask |= 1 << ss->id;
kernel/cgroup/cgroup.c
6488
WARN_ON(ss->implicit_on_dfl && !ss->threaded);
kernel/cgroup/cgroup.c
6490
if (ss->implicit_on_dfl)
kernel/cgroup/cgroup.c
6491
cgrp_dfl_implicit_ss_mask |= 1 << ss->id;
kernel/cgroup/cgroup.c
6492
else if (!ss->dfl_cftypes)
kernel/cgroup/cgroup.c
6493
cgrp_dfl_inhibit_ss_mask |= 1 << ss->id;
kernel/cgroup/cgroup.c
6495
if (ss->threaded)
kernel/cgroup/cgroup.c
6496
cgrp_dfl_threaded_ss_mask |= 1 << ss->id;
kernel/cgroup/cgroup.c
6498
if (ss->dfl_cftypes == ss->legacy_cftypes) {
kernel/cgroup/cgroup.c
6499
WARN_ON(cgroup_add_cftypes(ss, ss->dfl_cftypes));
kernel/cgroup/cgroup.c
6501
WARN_ON(cgroup_add_dfl_cftypes(ss, ss->dfl_cftypes));
kernel/cgroup/cgroup.c
6502
WARN_ON(cgroup_add_legacy_cftypes(ss, ss->legacy_cftypes));
kernel/cgroup/cgroup.c
6505
if (ss->bind)
kernel/cgroup/cgroup.c
6506
ss->bind(init_css_set.subsys[ssid]);
kernel/cgroup/cgroup.c
6642
struct cgroup_subsys *ss;
kernel/cgroup/cgroup.c
6656
for_each_subsys(ss, ssid)
kernel/cgroup/cgroup.c
6659
ss->legacy_name);
kernel/cgroup/cgroup.c
6907
struct cgroup_subsys *ss;
kernel/cgroup/cgroup.c
6914
do_each_subsys_mask(ss, i, have_canfork_callback) {
kernel/cgroup/cgroup.c
6915
ret = ss->can_fork(child, kargs->cset);
kernel/cgroup/cgroup.c
6923
for_each_subsys(ss, j) {
kernel/cgroup/cgroup.c
6926
if (ss->cancel_fork)
kernel/cgroup/cgroup.c
6927
ss->cancel_fork(child, kargs->cset);
kernel/cgroup/cgroup.c
6947
struct cgroup_subsys *ss;
kernel/cgroup/cgroup.c
6950
for_each_subsys(ss, i)
kernel/cgroup/cgroup.c
6951
if (ss->cancel_fork)
kernel/cgroup/cgroup.c
6952
ss->cancel_fork(child, kargs->cset);
kernel/cgroup/cgroup.c
6972
struct cgroup_subsys *ss;
kernel/cgroup/cgroup.c
698
if (CGROUP_HAS_SUBSYS_CONFIG && cft->ss)
kernel/cgroup/cgroup.c
699
return rcu_dereference_raw(cgrp->subsys[cft->ss->id]);
kernel/cgroup/cgroup.c
7034
do_each_subsys_mask(ss, i, have_fork_callback) {
kernel/cgroup/cgroup.c
7035
ss->fork(child);
kernel/cgroup/cgroup.c
7063
struct cgroup_subsys *ss;
kernel/cgroup/cgroup.c
7067
do_each_subsys_mask(ss, i, have_exit_callback) {
kernel/cgroup/cgroup.c
7068
ss->exit(tsk);
kernel/cgroup/cgroup.c
7157
struct cgroup_subsys *ss;
kernel/cgroup/cgroup.c
7160
do_each_subsys_mask(ss, ssid, have_release_callback) {
kernel/cgroup/cgroup.c
7161
ss->release(task);
kernel/cgroup/cgroup.c
7181
struct cgroup_subsys *ss;
kernel/cgroup/cgroup.c
7189
for_each_subsys(ss, i) {
kernel/cgroup/cgroup.c
7190
if (strcmp(token, ss->name) &&
kernel/cgroup/cgroup.c
7191
strcmp(token, ss->legacy_name))
kernel/cgroup/cgroup.c
7196
ss->name);
kernel/cgroup/cgroup.c
7238
struct cgroup_subsys *ss)
kernel/cgroup/cgroup.c
7259
css = cgroup_css(cgrp, ss);
kernel/cgroup/cgroup.c
7276
struct cgroup_subsys_state *css_from_id(int id, struct cgroup_subsys *ss)
kernel/cgroup/cgroup.c
7279
return idr_find(&ss->css_idr, id);
kernel/cgroup/cgroup.c
729
#define do_each_subsys_mask(ss, ssid, ss_mask) do { \
kernel/cgroup/cgroup.c
736
(ss) = cgroup_subsys[ssid]; \
kernel/cgroup/cgroup.c
7485
struct cgroup_subsys *ss;
kernel/cgroup/cgroup.c
7495
for_each_subsys(ss, ssid)
kernel/cgroup/cgroup.c
7496
ret += show_delegatable_files(ss->dfl_cftypes, buf + ret,
kernel/cgroup/cgroup.c
965
struct cgroup_subsys *ss;
kernel/cgroup/cgroup.c
968
for_each_subsys(ss, i)
kernel/cgroup/cgroup.c
978
struct cgroup_subsys *ss;
kernel/cgroup/cgroup.c
989
for_each_subsys(ss, ssid) {
kernel/cgroup/debug.c
203
struct cgroup_subsys *ss;
kernel/cgroup/debug.c
212
for_each_subsys(ss, i) {
kernel/cgroup/debug.c
213
css = rcu_dereference_check(cgrp->subsys[ss->id], true);
kernel/cgroup/debug.c
223
seq_printf(seq, "%2d: %-4s\t- %p[%d] %d%s\n", ss->id, ss->name,
kernel/cgroup/debug.c
235
struct cgroup_subsys *ss;
kernel/cgroup/debug.c
240
for_each_subsys(ss, ssid) {
kernel/cgroup/debug.c
245
seq_puts(seq, ss->name);
kernel/cgroup/debug.c
44
struct cgroup_subsys *ss;
kernel/cgroup/debug.c
62
for_each_subsys(ss, i) {
kernel/cgroup/debug.c
63
css = cset->subsys[ss->id];
kernel/cgroup/debug.c
66
seq_printf(seq, "%2d: %-4s\t- %p[%d]\n", ss->id, ss->name,
kernel/cgroup/rstat.c
124
lhead = ss_lhead_cpu(css->ss, cpu);
kernel/cgroup/rstat.c
157
static void css_process_update_tree(struct cgroup_subsys *ss, int cpu)
kernel/cgroup/rstat.c
159
struct llist_head *lhead = ss_lhead_cpu(ss, cpu);
kernel/cgroup/rstat.c
214
lockdep_assert_held(ss_rstat_lock(head->ss));
kernel/cgroup/rstat.c
25
return css_is_self(css) || css->ss->css_rstat_flush != NULL;
kernel/cgroup/rstat.c
287
css_process_update_tree(root->ss, cpu);
kernel/cgroup/rstat.c
360
__acquires(ss_rstat_lock(css->ss))
kernel/cgroup/rstat.c
366
lock = ss_rstat_lock(css->ss);
kernel/cgroup/rstat.c
377
__releases(ss_rstat_lock(css->ss))
kernel/cgroup/rstat.c
382
lock = ss_rstat_lock(css->ss);
kernel/cgroup/rstat.c
40
static spinlock_t *ss_rstat_lock(struct cgroup_subsys *ss)
kernel/cgroup/rstat.c
42
if (ss)
kernel/cgroup/rstat.c
425
pos->ss->css_rstat_flush(pos, cpu);
kernel/cgroup/rstat.c
43
return &ss->rstat_ss_lock;
kernel/cgroup/rstat.c
446
} else if (css->ss->css_rstat_flush == NULL)
kernel/cgroup/rstat.c
48
static inline struct llist_head *ss_lhead_cpu(struct cgroup_subsys *ss, int cpu)
kernel/cgroup/rstat.c
50
if (ss)
kernel/cgroup/rstat.c
51
return per_cpu_ptr(ss->lhead, cpu);
kernel/cgroup/rstat.c
518
int __init ss_rstat_init(struct cgroup_subsys *ss)
kernel/cgroup/rstat.c
522
if (ss) {
kernel/cgroup/rstat.c
523
ss->lhead = alloc_percpu(struct llist_head);
kernel/cgroup/rstat.c
524
if (!ss->lhead)
kernel/cgroup/rstat.c
528
spin_lock_init(ss_rstat_lock(ss));
kernel/cgroup/rstat.c
530
init_llist_head(ss_lhead_cpu(ss, cpu));
kernel/signal.c
4387
do_sigaltstack (const stack_t *ss, stack_t *oss, unsigned long sp,
kernel/signal.c
4401
if (ss) {
kernel/signal.c
4402
void __user *ss_sp = ss->ss_sp;
kernel/signal.c
4403
size_t ss_size = ss->ss_size;
kernel/signal.c
4404
unsigned ss_flags = ss->ss_flags;
lib/zstd/common/cpu.h
155
D(ss, 27)
mm/bpf_memcontrol.c
53
if (root_mem_cgroup->css.ss != css->ss) {
mm/bpf_memcontrol.c
55
int ssid = root_mem_cgroup->css.ss->id;
net/bluetooth/bnep/core.c
561
struct bnep_session *s, *ss;
net/bluetooth/bnep/core.c
586
ss = __bnep_get_session(dst);
net/bluetooth/bnep/core.c
587
if (ss && ss->state == BT_CONNECTED) {
net/ceph/messenger.c
1180
struct sockaddr_storage ss = addr->in_addr; /* align */
net/ceph/messenger.c
1181
struct in_addr *addr4 = &((struct sockaddr_in *)&ss)->sin_addr;
net/ceph/messenger.c
1182
struct in6_addr *addr6 = &((struct sockaddr_in6 *)&ss)->sin6_addr;
net/ceph/messenger.c
1184
switch (ss.ss_family) {
net/ceph/messenger.c
168
struct sockaddr_storage ss = addr->in_addr; /* align */
net/ceph/messenger.c
169
struct sockaddr_in *in4 = (struct sockaddr_in *)&ss;
net/ceph/messenger.c
170
struct sockaddr_in6 *in6 = (struct sockaddr_in6 *)&ss;
net/ceph/messenger.c
175
switch (ss.ss_family) {
net/ceph/messenger.c
190
ss.ss_family);
net/ceph/messenger.c
437
struct sockaddr_storage ss = con->peer_addr.in_addr; /* align */
net/ceph/messenger.c
448
ret = sock_create_kern(read_pnet(&con->msgr->net), ss.ss_family,
net/ceph/messenger.c
463
ret = kernel_connect(sock, (struct sockaddr_unsized *)&ss, sizeof(ss),
net/core/dev.c
10001
int netif_set_mac_address(struct net_device *dev, struct sockaddr_storage *ss,
net/core/dev.c
10009
if (ss->ss_family != dev->type)
net/core/dev.c
10013
err = netif_pre_changeaddr_notify(dev, ss->__data, extack);
net/core/dev.c
10016
if (memcmp(dev->dev_addr, ss->__data, dev->addr_len)) {
net/core/dev.c
10017
err = ops->ndo_set_mac_address(dev, ss);
net/core/dev_api.c
330
int dev_set_mac_address(struct net_device *dev, struct sockaddr_storage *ss,
net/core/dev_api.c
336
ret = netif_set_mac_address(dev, ss, extack);
net/core/dev_api.c
88
struct sockaddr_storage *ss,
net/core/dev_api.c
95
ret = netif_set_mac_address(dev, ss, extack);
net/core/rtnetlink.c
3122
struct sockaddr_storage ss = { };
net/core/rtnetlink.c
3130
ss.ss_family = dev->type;
net/core/rtnetlink.c
3131
memcpy(ss.__data, nla_data(tb[IFLA_ADDRESS]), dev->addr_len);
net/core/rtnetlink.c
3132
err = netif_set_mac_address(dev, &ss, extack);
net/ipv4/igmp.c
2716
struct sockaddr_storage ss;
net/ipv4/igmp.c
2718
psin = (struct sockaddr_in *)&ss;
net/ipv4/igmp.c
2719
memset(&ss, 0, sizeof(ss));
net/ipv4/igmp.c
2723
&ss, sizeof(ss)))
net/ipv4/igmp.c
2725
ss_offset += sizeof(ss);
net/ipv6/mcast.c
617
struct sockaddr_storage ss;
net/ipv6/mcast.c
619
psin6 = (struct sockaddr_in6 *)&ss;
net/ipv6/mcast.c
620
memset(&ss, 0, sizeof(ss));
net/ipv6/mcast.c
623
if (copy_to_sockptr_offset(optval, ss_offset, &ss, sizeof(ss)))
net/ipv6/mcast.c
625
ss_offset += sizeof(ss);
net/netfilter/nfnetlink.c
158
nfnetlink_find_client(u16 type, const struct nfnetlink_subsystem *ss)
net/netfilter/nfnetlink.c
162
if (cb_id >= ss->cb_count)
net/netfilter/nfnetlink.c
165
return &ss->cb[cb_id];
net/netfilter/nfnetlink.c
221
const struct nfnetlink_subsystem *ss;
net/netfilter/nfnetlink.c
232
ss = nfnetlink_get_subsys(type);
net/netfilter/nfnetlink.c
233
if (!ss) {
net/netfilter/nfnetlink.c
238
ss = nfnetlink_get_subsys(type);
net/netfilter/nfnetlink.c
239
if (!ss)
net/netfilter/nfnetlink.c
247
nc = nfnetlink_find_client(type, ss);
net/netfilter/nfnetlink.c
270
if (ss->cb[cb_id].attr_count > NFNL_MAX_ATTR_COUNT) {
net/netfilter/nfnetlink.c
275
err = nla_parse_deprecated(cda, ss->cb[cb_id].attr_count,
net/netfilter/nfnetlink.c
277
ss->cb[cb_id].policy, extack);
net/netfilter/nfnetlink.c
296
if (nfnl_dereference_protected(subsys_id) != ss ||
net/netfilter/nfnetlink.c
297
nfnetlink_find_client(type, ss) != nc) {
net/netfilter/nfnetlink.c
376
const struct nfnetlink_subsystem *ss;
net/netfilter/nfnetlink.c
395
ss = nfnl_dereference_protected(subsys_id);
net/netfilter/nfnetlink.c
396
if (!ss) {
net/netfilter/nfnetlink.c
401
ss = nfnl_dereference_protected(subsys_id);
net/netfilter/nfnetlink.c
402
if (!ss)
net/netfilter/nfnetlink.c
411
if (!ss->valid_genid || !ss->commit || !ss->abort) {
net/netfilter/nfnetlink.c
417
if (!try_module_get(ss->owner)) {
net/netfilter/nfnetlink.c
423
if (!ss->valid_genid(net, genid)) {
net/netfilter/nfnetlink.c
424
module_put(ss->owner);
net/netfilter/nfnetlink.c
487
nc = nfnetlink_find_client(type, ss);
net/netfilter/nfnetlink.c
514
if (ss->cb[cb_id].attr_count > NFNL_MAX_ATTR_COUNT) {
net/netfilter/nfnetlink.c
520
ss->cb[cb_id].attr_count,
net/netfilter/nfnetlink.c
522
ss->cb[cb_id].policy, &extack);
net/netfilter/nfnetlink.c
570
ss->abort(net, oskb, NFNL_ABORT_AUTOLOAD);
net/netfilter/nfnetlink.c
573
module_put(ss->owner);
net/netfilter/nfnetlink.c
576
err = ss->commit(net, oskb);
net/netfilter/nfnetlink.c
581
ss->abort(net, oskb, NFNL_ABORT_NONE);
net/netfilter/nfnetlink.c
595
err = ss->abort(net, oskb, abort_action);
net/netfilter/nfnetlink.c
599
module_put(ss->owner);
net/netfilter/nfnetlink.c
607
module_put(ss->owner);
net/netfilter/nfnetlink.c
712
const struct nfnetlink_subsystem *ss;
net/netfilter/nfnetlink.c
721
ss = nfnetlink_get_subsys(type << 8);
net/netfilter/nfnetlink.c
723
if (!ss)
net/netfilter/nfnetlink_osf.c
75
if (ctx->totlen != f->ss || !nf_osf_ttl(skb, ttl_check, f->ttl))
net/rds/tcp_listen.c
385
struct sockaddr_storage ss;
net/rds/tcp_listen.c
408
sin6 = (struct sockaddr_in6 *)&ss;
net/rds/tcp_listen.c
416
sin = (struct sockaddr_in *)&ss;
net/rds/tcp_listen.c
423
ret = kernel_bind(sock, (struct sockaddr_unsized *)&ss, addr_len);
scripts/dtc/util.c
138
const char *ss, *se;
scripts/dtc/util.c
151
ss = s;
scripts/dtc/util.c
156
if (*s != '\0' || s == ss)
sound/parisc/harmony.c
284
snd_harmony_playback_trigger(struct snd_pcm_substream *ss, int cmd)
sound/parisc/harmony.c
286
struct snd_harmony *h = snd_pcm_substream_chip(ss);
sound/parisc/harmony.c
318
snd_harmony_capture_trigger(struct snd_pcm_substream *ss, int cmd)
sound/parisc/harmony.c
320
struct snd_harmony *h = snd_pcm_substream_chip(ss);
sound/parisc/harmony.c
382
snd_harmony_playback_prepare(struct snd_pcm_substream *ss)
sound/parisc/harmony.c
384
struct snd_harmony *h = snd_pcm_substream_chip(ss);
sound/parisc/harmony.c
385
struct snd_pcm_runtime *rt = ss->runtime;
sound/parisc/harmony.c
390
h->pbuf.size = snd_pcm_lib_buffer_bytes(ss);
sound/parisc/harmony.c
391
h->pbuf.count = snd_pcm_lib_period_bytes(ss);
sound/parisc/harmony.c
412
snd_harmony_capture_prepare(struct snd_pcm_substream *ss)
sound/parisc/harmony.c
414
struct snd_harmony *h = snd_pcm_substream_chip(ss);
sound/parisc/harmony.c
415
struct snd_pcm_runtime *rt = ss->runtime;
sound/parisc/harmony.c
420
h->cbuf.size = snd_pcm_lib_buffer_bytes(ss);
sound/parisc/harmony.c
421
h->cbuf.count = snd_pcm_lib_period_bytes(ss);
sound/parisc/harmony.c
442
snd_harmony_playback_pointer(struct snd_pcm_substream *ss)
sound/parisc/harmony.c
444
struct snd_pcm_runtime *rt = ss->runtime;
sound/parisc/harmony.c
445
struct snd_harmony *h = snd_pcm_substream_chip(ss);
sound/parisc/harmony.c
471
snd_harmony_capture_pointer(struct snd_pcm_substream *ss)
sound/parisc/harmony.c
473
struct snd_pcm_runtime *rt = ss->runtime;
sound/parisc/harmony.c
474
struct snd_harmony *h = snd_pcm_substream_chip(ss);
sound/parisc/harmony.c
500
snd_harmony_playback_open(struct snd_pcm_substream *ss)
sound/parisc/harmony.c
502
struct snd_harmony *h = snd_pcm_substream_chip(ss);
sound/parisc/harmony.c
503
struct snd_pcm_runtime *rt = ss->runtime;
sound/parisc/harmony.c
506
h->psubs = ss;
sound/parisc/harmony.c
519
snd_harmony_capture_open(struct snd_pcm_substream *ss)
sound/parisc/harmony.c
521
struct snd_harmony *h = snd_pcm_substream_chip(ss);
sound/parisc/harmony.c
522
struct snd_pcm_runtime *rt = ss->runtime;
sound/parisc/harmony.c
525
h->csubs = ss;
sound/parisc/harmony.c
538
snd_harmony_playback_close(struct snd_pcm_substream *ss)
sound/parisc/harmony.c
540
struct snd_harmony *h = snd_pcm_substream_chip(ss);
sound/parisc/harmony.c
546
snd_harmony_capture_close(struct snd_pcm_substream *ss)
sound/parisc/harmony.c
548
struct snd_harmony *h = snd_pcm_substream_chip(ss);
sound/pci/ad1889.c
294
snd_ad1889_playback_open(struct snd_pcm_substream *ss)
sound/pci/ad1889.c
296
struct snd_ad1889 *chip = snd_pcm_substream_chip(ss);
sound/pci/ad1889.c
297
struct snd_pcm_runtime *rt = ss->runtime;
sound/pci/ad1889.c
299
chip->psubs = ss;
sound/pci/ad1889.c
306
snd_ad1889_capture_open(struct snd_pcm_substream *ss)
sound/pci/ad1889.c
308
struct snd_ad1889 *chip = snd_pcm_substream_chip(ss);
sound/pci/ad1889.c
309
struct snd_pcm_runtime *rt = ss->runtime;
sound/pci/ad1889.c
311
chip->csubs = ss;
sound/pci/ad1889.c
318
snd_ad1889_playback_close(struct snd_pcm_substream *ss)
sound/pci/ad1889.c
320
struct snd_ad1889 *chip = snd_pcm_substream_chip(ss);
sound/pci/ad1889.c
326
snd_ad1889_capture_close(struct snd_pcm_substream *ss)
sound/pci/ad1889.c
328
struct snd_ad1889 *chip = snd_pcm_substream_chip(ss);
sound/pci/ad1889.c
334
snd_ad1889_playback_prepare(struct snd_pcm_substream *ss)
sound/pci/ad1889.c
336
struct snd_ad1889 *chip = snd_pcm_substream_chip(ss);
sound/pci/ad1889.c
337
struct snd_pcm_runtime *rt = ss->runtime;
sound/pci/ad1889.c
338
unsigned int size = snd_pcm_lib_buffer_bytes(ss);
sound/pci/ad1889.c
339
unsigned int count = snd_pcm_lib_period_bytes(ss);
sound/pci/ad1889.c
382
snd_ad1889_capture_prepare(struct snd_pcm_substream *ss)
sound/pci/ad1889.c
384
struct snd_ad1889 *chip = snd_pcm_substream_chip(ss);
sound/pci/ad1889.c
385
struct snd_pcm_runtime *rt = ss->runtime;
sound/pci/ad1889.c
386
unsigned int size = snd_pcm_lib_buffer_bytes(ss);
sound/pci/ad1889.c
387
unsigned int count = snd_pcm_lib_period_bytes(ss);
sound/pci/ad1889.c
431
snd_ad1889_playback_trigger(struct snd_pcm_substream *ss, int cmd)
sound/pci/ad1889.c
434
struct snd_ad1889 *chip = snd_pcm_substream_chip(ss);
sound/pci/ad1889.c
472
snd_ad1889_capture_trigger(struct snd_pcm_substream *ss, int cmd)
sound/pci/ad1889.c
475
struct snd_ad1889 *chip = snd_pcm_substream_chip(ss);
sound/pci/ad1889.c
507
snd_ad1889_playback_pointer(struct snd_pcm_substream *ss)
sound/pci/ad1889.c
510
struct snd_ad1889 *chip = snd_pcm_substream_chip(ss);
sound/pci/ad1889.c
521
return bytes_to_frames(ss->runtime, ptr);
sound/pci/ad1889.c
526
snd_ad1889_capture_pointer(struct snd_pcm_substream *ss)
sound/pci/ad1889.c
529
struct snd_ad1889 *chip = snd_pcm_substream_chip(ss);
sound/pci/ad1889.c
540
return bytes_to_frames(ss->runtime, ptr);
sound/pci/echoaudio/echoaudio.c
1811
int ss, st;
sound/pci/echoaudio/echoaudio.c
1821
for (ss = 0; ss < DSP_MAXPIPES; ss++) {
sound/pci/echoaudio/echoaudio.c
1824
substream = chip->substream[ss];
sound/pci/echoaudio/echoaudio.c
874
struct snd_pcm_substream *ss;
sound/pci/echoaudio/echoaudio.c
878
for (ss = pcm->streams[stream].substream; ss; ss = ss->next)
sound/pci/echoaudio/echoaudio.c
879
snd_pcm_set_managed_buffer(ss, SNDRV_DMA_TYPE_DEV_SG,
sound/pci/echoaudio/echoaudio.c
881
ss->number ? 0 : 128<<10,
sound/pci/rme9652/hdspm.c
6137
levels->speed = ss;
sound/soc/au1x/dbdma2.c
185
static inline struct au1xpsc_audio_dmadata *to_dmadata(struct snd_pcm_substream *ss,
sound/soc/au1x/dbdma2.c
189
return &pcd[ss->stream];
sound/soc/au1x/dma.c
176
static inline struct alchemy_pcm_ctx *ss_to_ctx(struct snd_pcm_substream *ss,
sound/soc/au1x/dma.c
182
static inline struct audio_stream *ss_to_as(struct snd_pcm_substream *ss,
sound/soc/au1x/dma.c
185
struct alchemy_pcm_ctx *ctx = ss_to_ctx(ss, component);
sound/soc/au1x/dma.c
186
return &(ctx->stream[ss->stream]);
sound/soc/au1x/dma.c
268
struct snd_pcm_substream *ss)
sound/soc/au1x/dma.c
270
struct audio_stream *stream = ss_to_as(ss, component);
sound/soc/au1x/dma.c
277
return bytes_to_frames(ss->runtime, location);
sound/soc/intel/avs/cldma.c
71
unsigned int ss;
sound/soc/intel/avs/cldma.c
73
ss = cl->buffer_size - offset;
sound/soc/intel/avs/cldma.c
74
memcpy(cl->dmab_data.area + offset, cl->position, ss);
sound/soc/intel/avs/cldma.c
76
size -= ss;
sound/soc/intel/avs/cldma.c
77
cl->position += ss;
sound/soc/intel/avs/cldma.c
78
cl->remaining -= ss;
sound/soc/meson/aiu-fifo.c
26
static struct snd_soc_dai *aiu_fifo_dai(struct snd_pcm_substream *ss)
sound/soc/meson/aiu-fifo.c
28
struct snd_soc_pcm_runtime *rtd = snd_soc_substream_to_rtd(ss);
sound/soc/meson/axg-fifo.c
101
struct axg_fifo *fifo = axg_fifo_data(ss);
sound/soc/meson/axg-fifo.c
102
struct snd_pcm_runtime *runtime = ss->runtime;
sound/soc/meson/axg-fifo.c
112
struct snd_pcm_substream *ss,
sound/soc/meson/axg-fifo.c
115
struct snd_pcm_runtime *runtime = ss->runtime;
sound/soc/meson/axg-fifo.c
116
struct axg_fifo *fifo = axg_fifo_data(ss);
sound/soc/meson/axg-fifo.c
157
struct snd_pcm_substream *ss,
sound/soc/meson/axg-fifo.c
160
struct axg_fifo *fifo = axg_fifo_data(ss);
sound/soc/meson/axg-fifo.c
161
struct snd_pcm_runtime *runtime = ss->runtime;
sound/soc/meson/axg-fifo.c
164
ret = axg_fifo_pcm_hw_params(component, ss, params);
sound/soc/meson/axg-fifo.c
176
struct snd_pcm_substream *ss)
sound/soc/meson/axg-fifo.c
178
struct axg_fifo *fifo = axg_fifo_data(ss);
sound/soc/meson/axg-fifo.c
202
struct snd_pcm_substream *ss = dev_id;
sound/soc/meson/axg-fifo.c
203
struct axg_fifo *fifo = axg_fifo_data(ss);
sound/soc/meson/axg-fifo.c
211
dev_dbg(axg_fifo_dev(ss), "unexpected irq - STS 0x%02x\n",
sound/soc/meson/axg-fifo.c
215
snd_pcm_period_elapsed(ss);
sound/soc/meson/axg-fifo.c
223
struct snd_pcm_substream *ss)
sound/soc/meson/axg-fifo.c
225
struct axg_fifo *fifo = axg_fifo_data(ss);
sound/soc/meson/axg-fifo.c
226
struct device *dev = axg_fifo_dev(ss);
sound/soc/meson/axg-fifo.c
229
snd_soc_set_runtime_hwparams(ss, &axg_fifo_hw);
sound/soc/meson/axg-fifo.c
235
ret = snd_pcm_hw_constraint_step(ss->runtime, 0,
sound/soc/meson/axg-fifo.c
241
ret = snd_pcm_hw_constraint_step(ss->runtime, 0,
sound/soc/meson/axg-fifo.c
250
IRQF_ONESHOT, dev_name(dev), ss);
sound/soc/meson/axg-fifo.c
284
free_irq(fifo->irq, ss);
sound/soc/meson/axg-fifo.c
290
struct snd_pcm_substream *ss)
sound/soc/meson/axg-fifo.c
292
struct axg_fifo *fifo = axg_fifo_data(ss);
sound/soc/meson/axg-fifo.c
302
free_irq(fifo->irq, ss);
sound/soc/meson/axg-fifo.c
47
static struct snd_soc_dai *axg_fifo_dai(struct snd_pcm_substream *ss)
sound/soc/meson/axg-fifo.c
49
struct snd_soc_pcm_runtime *rtd = snd_soc_substream_to_rtd(ss);
sound/soc/meson/axg-fifo.c
54
static struct axg_fifo *axg_fifo_data(struct snd_pcm_substream *ss)
sound/soc/meson/axg-fifo.c
56
struct snd_soc_dai *dai = axg_fifo_dai(ss);
sound/soc/meson/axg-fifo.c
61
static struct device *axg_fifo_dev(struct snd_pcm_substream *ss)
sound/soc/meson/axg-fifo.c
63
struct snd_soc_dai *dai = axg_fifo_dai(ss);
sound/soc/meson/axg-fifo.c
75
struct snd_pcm_substream *ss, int cmd)
sound/soc/meson/axg-fifo.c
77
struct axg_fifo *fifo = axg_fifo_data(ss);
sound/soc/meson/axg-fifo.c
99
struct snd_pcm_substream *ss)
sound/soc/meson/axg-fifo.h
76
struct snd_pcm_substream *ss);
sound/soc/meson/axg-fifo.h
78
struct snd_pcm_substream *ss);
sound/soc/meson/axg-fifo.h
80
struct snd_pcm_substream *ss,
sound/soc/meson/axg-fifo.h
83
struct snd_pcm_substream *ss,
sound/soc/meson/axg-fifo.h
86
struct snd_pcm_substream *ss);
sound/soc/meson/axg-fifo.h
88
struct snd_pcm_substream *ss);
sound/soc/meson/axg-fifo.h
90
struct snd_pcm_substream *ss, int cmd);
sound/soc/renesas/siu_pcm.c
292
struct snd_pcm_substream *ss)
sound/soc/renesas/siu_pcm.c
297
struct siu_port *port_info = siu_port_info(ss);
sound/soc/renesas/siu_pcm.c
300
struct device *dev = ss->pcm->card->dev;
sound/soc/renesas/siu_pcm.c
309
if (ss->stream == SNDRV_PCM_STREAM_PLAYBACK) {
sound/soc/renesas/siu_pcm.c
328
siu_stream->substream = ss;
sound/soc/renesas/siu_pcm.c
334
struct snd_pcm_substream *ss)
sound/soc/renesas/siu_pcm.c
337
struct device *dev = ss->pcm->card->dev;
sound/soc/renesas/siu_pcm.c
338
struct siu_port *port_info = siu_port_info(ss);
sound/soc/renesas/siu_pcm.c
343
if (ss->stream == SNDRV_PCM_STREAM_PLAYBACK)
sound/soc/renesas/siu_pcm.c
357
struct snd_pcm_substream *ss)
sound/soc/renesas/siu_pcm.c
360
struct siu_port *port_info = siu_port_info(ss);
sound/soc/renesas/siu_pcm.c
361
struct device *dev = ss->pcm->card->dev;
sound/soc/renesas/siu_pcm.c
366
if (ss->stream == SNDRV_PCM_STREAM_PLAYBACK)
sound/soc/renesas/siu_pcm.c
373
siu_stream->buf_bytes = snd_pcm_lib_buffer_bytes(ss);
sound/soc/renesas/siu_pcm.c
374
siu_stream->period_bytes = snd_pcm_lib_period_bytes(ss);
sound/soc/renesas/siu_pcm.c
404
struct snd_pcm_substream *ss, int cmd)
sound/soc/renesas/siu_pcm.c
407
struct device *dev = ss->pcm->card->dev;
sound/soc/renesas/siu_pcm.c
408
struct siu_port *port_info = siu_port_info(ss);
sound/soc/renesas/siu_pcm.c
416
if (ss->stream == SNDRV_PCM_STREAM_PLAYBACK)
sound/soc/renesas/siu_pcm.c
427
if (ss->stream == SNDRV_PCM_STREAM_PLAYBACK)
sound/soc/renesas/siu_pcm.c
448
struct snd_pcm_substream *ss)
sound/soc/renesas/siu_pcm.c
450
struct device *dev = ss->pcm->card->dev;
sound/soc/renesas/siu_pcm.c
453
struct siu_port *port_info = siu_port_info(ss);
sound/soc/renesas/siu_pcm.c
454
struct snd_pcm_runtime *rt = ss->runtime;
sound/soc/renesas/siu_pcm.c
458
if (ss->stream == SNDRV_PCM_STREAM_PLAYBACK)
sound/soc/renesas/siu_pcm.c
480
return bytes_to_frames(ss->runtime, ptr);
sound/soc/ti/omap-hdmi.c
41
struct hdmi_audio_data *card_drvdata_substream(struct snd_pcm_substream *ss)
sound/soc/ti/omap-hdmi.c
43
struct snd_soc_pcm_runtime *rtd = snd_soc_substream_to_rtd(ss);
tools/arch/x86/include/uapi/asm/kvm.h
152
struct kvm_segment cs, ds, es, fs, gs, ss;
tools/arch/x86/include/uapi/asm/kvm.h
163
struct kvm_segment cs, ds, es, fs, gs, ss;
tools/objtool/signal.c
104
stack_t ss;
tools/objtool/signal.c
109
ss.ss_sp = malloc(SIGSTKSZ);
tools/objtool/signal.c
110
if (!ss.ss_sp) {
tools/objtool/signal.c
114
ss.ss_size = SIGSTKSZ;
tools/objtool/signal.c
115
ss.ss_flags = 0;
tools/objtool/signal.c
117
if (sigaltstack(&ss, NULL) == -1) {
tools/perf/builtin-trace.c
4830
struct syscall_stats *ss = pos->pvalue;
tools/perf/builtin-trace.c
4831
struct stats *st = &ss->stats;
tools/perf/builtin-trace.c
4833
entry[i].stats = ss;
tools/perf/util/symbol-elf.c
1040
bool symsrc__possibly_runtime(struct symsrc *ss)
tools/perf/util/symbol-elf.c
1042
return ss->dynsym || ss->opdsec;
tools/perf/util/symbol-elf.c
1045
bool symsrc__has_symtab(struct symsrc *ss)
tools/perf/util/symbol-elf.c
1047
return ss->symtab != NULL;
tools/perf/util/symbol-elf.c
1050
void symsrc__destroy(struct symsrc *ss)
tools/perf/util/symbol-elf.c
1052
zfree(&ss->name);
tools/perf/util/symbol-elf.c
1053
elf_end(ss->elf);
tools/perf/util/symbol-elf.c
1054
close(ss->fd);
tools/perf/util/symbol-elf.c
1143
int symsrc__init(struct symsrc *ss, struct dso *dso, const char *name,
tools/perf/util/symbol-elf.c
1215
ss->is_64_bit = (gelf_getclass(elf) == ELFCLASS64);
tools/perf/util/symbol-elf.c
1217
ss->symtab_idx = 0;
tools/perf/util/symbol-elf.c
1218
ss->symtab = elf_section_by_name(elf, &ehdr, &ss->symshdr, ".symtab",
tools/perf/util/symbol-elf.c
1219
&ss->symtab_idx);
tools/perf/util/symbol-elf.c
1220
if (ss->symshdr.sh_type != SHT_SYMTAB)
tools/perf/util/symbol-elf.c
1221
ss->symtab = NULL;
tools/perf/util/symbol-elf.c
1223
ss->dynsym_idx = 0;
tools/perf/util/symbol-elf.c
1224
ss->dynsym = elf_section_by_name(elf, &ehdr, &ss->dynshdr, ".dynsym",
tools/perf/util/symbol-elf.c
1225
&ss->dynsym_idx);
tools/perf/util/symbol-elf.c
1226
if (ss->dynshdr.sh_type != SHT_DYNSYM)
tools/perf/util/symbol-elf.c
1227
ss->dynsym = NULL;
tools/perf/util/symbol-elf.c
1229
ss->opdidx = 0;
tools/perf/util/symbol-elf.c
1230
ss->opdsec = elf_section_by_name(elf, &ehdr, &ss->opdshdr, ".opd",
tools/perf/util/symbol-elf.c
1231
&ss->opdidx);
tools/perf/util/symbol-elf.c
1232
if (ss->opdshdr.sh_type != SHT_PROGBITS)
tools/perf/util/symbol-elf.c
1233
ss->opdsec = NULL;
tools/perf/util/symbol-elf.c
1236
ss->adjust_symbols = true;
tools/perf/util/symbol-elf.c
1238
ss->adjust_symbols = elf__needs_adjust_symbols(ehdr);
tools/perf/util/symbol-elf.c
1240
ss->name = strdup(name);
tools/perf/util/symbol-elf.c
1241
if (!ss->name) {
tools/perf/util/symbol-elf.c
1246
ss->elf = elf;
tools/perf/util/symbol-elf.c
1247
ss->fd = fd;
tools/perf/util/symbol-elf.c
1248
ss->ehdr = ehdr;
tools/perf/util/symbol-elf.c
1249
ss->type = type;
tools/perf/util/symbol-elf.c
604
int dso__synthesize_plt_symbols(struct dso *dso, struct symsrc *ss)
tools/perf/util/symbol-elf.c
621
elf = ss->elf;
tools/perf/util/symbol-elf.c
622
ehdr = ss->ehdr;
tools/perf/util/symbol-elf.c
681
if (shdr_rel_plt.sh_link == ss->dynsym_idx) {
tools/perf/util/symbol-elf.c
682
scn_dynsym = ss->dynsym;
tools/perf/util/symbol-elf.c
683
shdr_dynsym = ss->dynshdr;
tools/perf/util/symbol-elf.c
684
} else if (shdr_rel_plt.sh_link == ss->symtab_idx) {
tools/perf/util/symbol-elf.c
689
scn_dynsym = ss->symtab;
tools/perf/util/symbol-elf.c
690
shdr_dynsym = ss->symshdr;
tools/perf/util/symbol-minimal.c
238
int symsrc__init(struct symsrc *ss, struct dso *dso, const char *name,
tools/perf/util/symbol-minimal.c
245
ss->name = strdup(name);
tools/perf/util/symbol-minimal.c
246
if (!ss->name)
tools/perf/util/symbol-minimal.c
249
ss->fd = fd;
tools/perf/util/symbol-minimal.c
250
ss->type = type;
tools/perf/util/symbol-minimal.c
260
bool symsrc__possibly_runtime(struct symsrc *ss __maybe_unused)
tools/perf/util/symbol-minimal.c
266
bool symsrc__has_symtab(struct symsrc *ss __maybe_unused)
tools/perf/util/symbol-minimal.c
271
void symsrc__destroy(struct symsrc *ss)
tools/perf/util/symbol-minimal.c
273
zfree(&ss->name);
tools/perf/util/symbol-minimal.c
274
close(ss->fd);
tools/perf/util/symbol-minimal.c
278
struct symsrc *ss __maybe_unused)
tools/perf/util/symbol-minimal.c
322
struct symsrc *ss,
tools/perf/util/symbol-minimal.c
329
ret = fd__is_64_bit(ss->fd);
tools/perf/util/symbol-minimal.c
333
if (filename__read_build_id(ss->name, &bid) > 0)
tools/perf/util/symbol.c
1758
struct symsrc *ss = &ss_[ss_pos];
tools/perf/util/symbol.c
1795
sirc = symsrc__init(ss, dso, name, symtab_type);
tools/perf/util/symbol.c
1808
if (!syms_ss && symsrc__has_symtab(ss)) {
tools/perf/util/symbol.c
1809
syms_ss = ss;
tools/perf/util/symbol.c
1815
if (!runtime_ss && symsrc__possibly_runtime(ss)) {
tools/perf/util/symbol.c
1816
runtime_ss = ss;
tools/perf/util/symbol.c
1829
symsrc__destroy(ss);
tools/perf/util/symbol.c
1880
struct symsrc ss;
tools/perf/util/symbol.c
1894
if (symsrc__init(&ss, dso, symfs_vmlinux, symtab_type)) {
tools/perf/util/symbol.c
1910
err = dso__load_sym(dso, map, &ss, &ss, 0);
tools/perf/util/symbol.c
1911
symsrc__destroy(&ss);
tools/perf/util/symbol.h
183
int dso__synthesize_plt_symbols(struct dso *dso, struct symsrc *ss);
tools/perf/util/symsrc.h
41
int symsrc__init(struct symsrc *ss, struct dso *dso, const char *name, enum dso_binary_type type);
tools/perf/util/symsrc.h
42
void symsrc__destroy(struct symsrc *ss);
tools/perf/util/symsrc.h
44
bool symsrc__has_symtab(struct symsrc *ss);
tools/perf/util/symsrc.h
45
bool symsrc__possibly_runtime(struct symsrc *ss);
tools/testing/cxl/test/mem.c
1115
struct cxl_mbox_set_shutdown_state_in *ss = cmd->payload_in;
tools/testing/cxl/test/mem.c
1117
if (cmd->size_in != sizeof(*ss))
tools/testing/cxl/test/mem.c
1123
mdata->shutdown_state = ss->state;
tools/testing/selftests/bpf/benchs/bench_sockmap.c
136
static void init_addr(struct sockaddr_storage *ss,
tools/testing/selftests/bpf/benchs/bench_sockmap.c
139
struct sockaddr_in *addr4 = memset(ss, 0, sizeof(*ss));
tools/testing/selftests/bpf/prog_tests/cls_redirect.c
305
struct sockaddr_storage ss;
tools/testing/selftests/bpf/prog_tests/cls_redirect.c
31
struct sockaddr_storage ss;
tools/testing/selftests/bpf/prog_tests/cls_redirect.c
314
slen = prepare_addr(&ss, families[i]);
tools/testing/selftests/bpf/prog_tests/cls_redirect.c
318
if (CHECK_FAIL(!set_up_conn(&ss, slen, SOCK_DGRAM,
tools/testing/selftests/bpf/prog_tests/cls_redirect.c
32
socklen_t slen = sizeof(ss);
tools/testing/selftests/bpf/prog_tests/cls_redirect.c
323
if (CHECK_FAIL(!set_up_conn(&ss, slen, SOCK_STREAM,
tools/testing/selftests/bpf/prog_tests/cls_redirect.c
38
if (CHECK_FAIL(getsockname(*server, (struct sockaddr *)&ss, &slen)))
tools/testing/selftests/bpf/prog_tests/cls_redirect.c
41
*conn = connect_to_addr(type, &ss, slen, NULL);
tools/testing/selftests/bpf/prog_tests/sk_assign.c
80
struct sockaddr_storage ss;
tools/testing/selftests/bpf/prog_tests/sk_assign.c
81
socklen_t slen = sizeof(ss);
tools/testing/selftests/bpf/prog_tests/sk_assign.c
84
if (CHECK_FAIL(getsockname(fd, (struct sockaddr *)&ss, &slen)))
tools/testing/selftests/bpf/prog_tests/sk_assign.c
87
switch (ss.ss_family) {
tools/testing/selftests/bpf/prog_tests/sk_assign.c
89
port = ((struct sockaddr_in *)&ss)->sin_port;
tools/testing/selftests/bpf/prog_tests/sk_assign.c
92
port = ((struct sockaddr_in6 *)&ss)->sin6_port;
tools/testing/selftests/bpf/prog_tests/sk_assign.c
95
CHECK(1, "Invalid address family", "%d\n", ss.ss_family);
tools/testing/selftests/bpf/prog_tests/sk_lookup.c
289
static void v4_to_v6(struct sockaddr_storage *ss)
tools/testing/selftests/bpf/prog_tests/sk_lookup.c
291
struct sockaddr_in6 *v6 = (struct sockaddr_in6 *)ss;
tools/testing/selftests/bpf/prog_tests/sk_lookup.c
292
struct sockaddr_in v4 = *(struct sockaddr_in *)ss;
tools/testing/selftests/bpf/prog_tests/sock_iter_batch.c
822
skel->rodata->ss = 0;
tools/testing/selftests/bpf/prog_tests/sock_iter_batch.c
894
skel->rodata->ss = TCP_LISTEN;
tools/testing/selftests/bpf/prog_tests/socket_helpers.h
151
static inline struct sockaddr *sockaddr(struct sockaddr_storage *ss)
tools/testing/selftests/bpf/prog_tests/socket_helpers.h
153
return (struct sockaddr *)ss;
tools/testing/selftests/bpf/prog_tests/socket_helpers.h
156
static inline void init_addr_loopback4(struct sockaddr_storage *ss,
tools/testing/selftests/bpf/prog_tests/socket_helpers.h
159
struct sockaddr_in *addr4 = memset(ss, 0, sizeof(*ss));
tools/testing/selftests/bpf/prog_tests/socket_helpers.h
167
static inline void init_addr_loopback6(struct sockaddr_storage *ss,
tools/testing/selftests/bpf/prog_tests/socket_helpers.h
170
struct sockaddr_in6 *addr6 = memset(ss, 0, sizeof(*ss));
tools/testing/selftests/bpf/prog_tests/socket_helpers.h
178
static inline void init_addr_loopback_unix(struct sockaddr_storage *ss,
tools/testing/selftests/bpf/prog_tests/socket_helpers.h
181
struct sockaddr_un *addr = memset(ss, 0, sizeof(*ss));
tools/testing/selftests/bpf/prog_tests/socket_helpers.h
187
static inline void init_addr_loopback_vsock(struct sockaddr_storage *ss,
tools/testing/selftests/bpf/prog_tests/socket_helpers.h
190
struct sockaddr_vm *addr = memset(ss, 0, sizeof(*ss));
tools/testing/selftests/bpf/prog_tests/socket_helpers.h
198
static inline void init_addr_loopback(int family, struct sockaddr_storage *ss,
tools/testing/selftests/bpf/prog_tests/socket_helpers.h
203
init_addr_loopback4(ss, len);
tools/testing/selftests/bpf/prog_tests/socket_helpers.h
206
init_addr_loopback6(ss, len);
tools/testing/selftests/bpf/prog_tests/socket_helpers.h
209
init_addr_loopback_unix(ss, len);
tools/testing/selftests/bpf/prog_tests/socket_helpers.h
212
init_addr_loopback_vsock(ss, len);
tools/testing/selftests/bpf/prog_tests/uprobe_syscall.c
170
case offsetof(struct pt_regs, ss):
tools/testing/selftests/bpf/progs/profiler.inc.h
268
int subsys_id = BPF_CORE_READ(subsys, ss, id);
tools/testing/selftests/bpf/progs/profiler.inc.h
271
root_kernfs = BPF_CORE_READ(subsys, ss, root, kf_root, kn);
tools/testing/selftests/bpf/progs/sock_iter_batch.c
26
volatile const unsigned int ss;
tools/testing/selftests/bpf/progs/sock_iter_batch.c
46
(ss && sk->sk_state != ss) ||
tools/testing/selftests/cgroup/test_memcontrol.c
1030
struct stat ss;
tools/testing/selftests/cgroup/test_memcontrol.c
1065
if (fstat(swap_peak_fd, &ss))
tools/testing/selftests/cgroup/test_memcontrol.c
1068
if ((ss.st_mode & S_IWUSR) == 0) {
tools/testing/selftests/cgroup/test_memcontrol.c
253
struct stat ss;
tools/testing/selftests/cgroup/test_memcontrol.c
295
if (fstat(peak_fd, &ss))
tools/testing/selftests/cgroup/test_memcontrol.c
298
if ((ss.st_mode & S_IWUSR) == 0) {
tools/testing/selftests/kvm/include/x86/processor.h
508
uint16_t ss;
tools/testing/selftests/kvm/include/x86/processor.h
511
: /* output */ [ss]"=rm"(ss));
tools/testing/selftests/kvm/include/x86/processor.h
512
return ss;
tools/testing/selftests/kvm/include/x86/svm.h
191
struct vmcb_seg ss;
tools/testing/selftests/kvm/lib/x86/processor.c
127
segment_dump(stream, &sregs->ss, indent + 2);
tools/testing/selftests/kvm/lib/x86/svm.c
104
vmcb_set_seg(&save->ss, get_ss(), 0, -1U, data_seg_attr);
tools/testing/selftests/net/mptcp/mptcp_connect.c
1075
static void check_sockaddr(int pf, struct sockaddr_storage *ss,
tools/testing/selftests/net/mptcp/mptcp_connect.c
1085
sin = (void *)ss;
tools/testing/selftests/net/mptcp/mptcp_connect.c
1091
sin6 = (void *)ss;
tools/testing/selftests/net/mptcp/mptcp_connect.c
1104
if (ss->ss_family != pf)
tools/testing/selftests/net/mptcp/mptcp_connect.c
1106
(int)ss->ss_family, pf);
tools/testing/selftests/net/mptcp/mptcp_connect.c
1109
static void check_getpeername(int fd, struct sockaddr_storage *ss, socklen_t salen)
tools/testing/selftests/net/mptcp/mptcp_connect.c
1124
if (memcmp(ss, &peerss, peersalen)) {
tools/testing/selftests/net/mptcp/mptcp_connect.c
1130
xgetnameinfo((struct sockaddr *)ss, salen,
tools/testing/selftests/net/mptcp/mptcp_connect.c
1143
struct sockaddr_storage ss;
tools/testing/selftests/net/mptcp/mptcp_connect.c
1144
socklen_t salen = sizeof(ss);
tools/testing/selftests/net/mptcp/mptcp_connect.c
1150
if (getpeername(fd, (struct sockaddr *)&ss, &salen) < 0) {
tools/testing/selftests/net/mptcp/mptcp_connect.c
1155
xgetnameinfo((struct sockaddr *)&ss, salen,
tools/testing/selftests/net/mptcp/mptcp_connect.c
1179
struct sockaddr_storage ss;
tools/testing/selftests/net/mptcp/mptcp_connect.c
1201
salen = sizeof(ss);
tools/testing/selftests/net/mptcp/mptcp_connect.c
1202
remotesock = accept(listensock, (struct sockaddr *)&ss, &salen);
tools/testing/selftests/net/mptcp/mptcp_connect.c
1205
check_sockaddr(pf, &ss, salen);
tools/testing/selftests/net/mptcp/mptcp_connect.c
1206
check_getpeername(remotesock, &ss, salen);
tools/testing/selftests/net/sctp_hello.c
101
set_addr(&ss, argv[3], argv[4], &len);
tools/testing/selftests/net/sctp_hello.c
102
ret = bind(lsk, (struct sockaddr *)&ss, len);
tools/testing/selftests/net/sctp_hello.c
11
static void set_addr(struct sockaddr_storage *ss, char *ip, char *port, int *len)
tools/testing/selftests/net/sctp_hello.c
13
if (ss->ss_family == AF_INET) {
tools/testing/selftests/net/sctp_hello.c
14
struct sockaddr_in *a = (struct sockaddr_in *)ss;
tools/testing/selftests/net/sctp_hello.c
20
struct sockaddr_in6 *a = (struct sockaddr_in6 *)ss;
tools/testing/selftests/net/sctp_hello.c
31
struct sockaddr_storage ss;
tools/testing/selftests/net/sctp_hello.c
39
bzero((void *)&ss, sizeof(ss));
tools/testing/selftests/net/sctp_hello.c
40
ss.ss_family = !strcmp(argv[2], "-4") ? AF_INET : AF_INET6;
tools/testing/selftests/net/sctp_hello.c
41
csk = socket(ss.ss_family, SOCK_STREAM, IPPROTO_SCTP);
tools/testing/selftests/net/sctp_hello.c
48
set_addr(&ss, argv[5], argv[6], &len);
tools/testing/selftests/net/sctp_hello.c
49
ret = bind(csk, (struct sockaddr *)&ss, len);
tools/testing/selftests/net/sctp_hello.c
56
set_addr(&ss, argv[3], argv[4], &len);
tools/testing/selftests/net/sctp_hello.c
57
ret = connect(csk, (struct sockaddr *)&ss, len);
tools/testing/selftests/net/sctp_hello.c
69
struct sockaddr_storage ss;
tools/testing/selftests/net/sctp_hello.c
85
ss.ss_family = !strcmp(argv[2], "-4") ? AF_INET : AF_INET6;
tools/testing/selftests/net/sctp_hello.c
86
lsk = socket(ss.ss_family, SOCK_STREAM, IPPROTO_SCTP);
tools/testing/selftests/net/tcp_port_share.c
20
struct sockaddr_storage ss;
tools/testing/selftests/powerpc/tm/tm-signal-context-force-tm.c
111
stack_t ss;
tools/testing/selftests/powerpc/tm/tm-signal-context-force-tm.c
127
ss.ss_sp = mmap(NULL, SIGSTKSZ, PROT_READ | PROT_WRITE,
tools/testing/selftests/powerpc/tm/tm-signal-context-force-tm.c
129
ss.ss_size = SIGSTKSZ;
tools/testing/selftests/powerpc/tm/tm-signal-context-force-tm.c
130
ss.ss_flags = 0;
tools/testing/selftests/powerpc/tm/tm-signal-context-force-tm.c
132
if (ss.ss_sp == (void *)-1) {
tools/testing/selftests/powerpc/tm/tm-signal-context-force-tm.c
138
if (madvise(ss.ss_sp, SIGSTKSZ, MADV_DONTNEED)) {
tools/testing/selftests/powerpc/tm/tm-signal-context-force-tm.c
147
if (sigaltstack(&ss, NULL)) {
tools/testing/selftests/powerpc/tm/tm-signal-pagefault.c
226
stack_t ss;
tools/testing/selftests/powerpc/tm/tm-signal-pagefault.c
239
ss.ss_sp = get_uf_mem(SIGSTKSZ, NULL);
tools/testing/selftests/powerpc/tm/tm-signal-pagefault.c
240
ss.ss_size = SIGSTKSZ;
tools/testing/selftests/powerpc/tm/tm-signal-pagefault.c
241
ss.ss_flags = 0;
tools/testing/selftests/powerpc/tm/tm-signal-pagefault.c
242
if (sigaltstack(&ss, NULL) == -1) {
tools/testing/selftests/x86/amx.c
243
stack_t ss;
tools/testing/selftests/x86/amx.c
246
memset(&ss, 0, sizeof(ss));
tools/testing/selftests/x86/amx.c
247
ss.ss_size = size;
tools/testing/selftests/x86/amx.c
248
ss.ss_sp = addr;
tools/testing/selftests/x86/amx.c
250
rc = sigaltstack(&ss, NULL);
tools/testing/selftests/x86/entry_from_vm86.c
246
v86.regs.ss = load_addr / 16;
tools/testing/selftests/x86/entry_from_vm86.c
313
v86.regs.ss = 0;
tools/testing/selftests/x86/fsgsbase.c
637
unsigned short ss;
tools/testing/selftests/x86/fsgsbase.c
639
asm volatile ("mov %%ss, %0" : "=rm" (ss));
tools/testing/selftests/x86/fsgsbase.c
645
test_wrbase(ss, 0);
tools/testing/selftests/x86/fsgsbase.c
646
test_wrbase(ss, 1);
tools/testing/selftests/x86/fsgsbase.c
647
test_wrbase(ss, 0x200000000);
tools/testing/selftests/x86/fsgsbase.c
648
test_wrbase(ss, 0xffffffffffffffff);
tools/testing/selftests/x86/mov_ss_trap.c
135
asm volatile ("mov %%ss, %[ss]" : [ss] "=m" (ss));
tools/testing/selftests/x86/mov_ss_trap.c
136
printf("\tSS = 0x%hx, &SS = 0x%p\n", ss, &ss);
tools/testing/selftests/x86/mov_ss_trap.c
146
asm volatile ("mov %[ss], %[tmp]" : [tmp] "=r" (nr) : [ss] "m" (ss));
tools/testing/selftests/x86/mov_ss_trap.c
149
asm volatile ("mov %[ss], %%ss; int3" :: [ss] "m" (ss));
tools/testing/selftests/x86/mov_ss_trap.c
152
asm volatile ("mov %[ss], %%ss; .byte 0xcd, 0x3" :: [ss] "m" (ss));
tools/testing/selftests/x86/mov_ss_trap.c
155
asm volatile ("mov %[ss], %%ss; .byte 0x2e, 0x2e; int3" :: [ss] "m" (ss));
tools/testing/selftests/x86/mov_ss_trap.c
158
asm volatile ("mov %[ss], %%ss; .fill 14,1,0x2e; int3" :: [ss] "m" (ss));
tools/testing/selftests/x86/mov_ss_trap.c
162
asm volatile ("mov %[ss], %%ss; int $4" :: [ss] "m" (ss));
tools/testing/selftests/x86/mov_ss_trap.c
169
: [tmp] "+r" (nr) : [ss] "m" (ss));
tools/testing/selftests/x86/mov_ss_trap.c
178
asm volatile ("mov %[ss], %%ss; .byte 0xf1" :: [ss] "m" (ss));
tools/testing/selftests/x86/mov_ss_trap.c
184
asm volatile ("mov %[ss], %%ss; cli" :: [ss] "m" (ss));
tools/testing/selftests/x86/mov_ss_trap.c
191
: [tmp] "=r" (nr) : [ss] "m" (ss));
tools/testing/selftests/x86/mov_ss_trap.c
201
asm volatile ("mov %[ss], %%ss; int $1" :: [ss] "m" (ss));
tools/testing/selftests/x86/mov_ss_trap.c
221
: "+a" (nr) : [ss] "m" (ss)
tools/testing/selftests/x86/mov_ss_trap.c
231
asm volatile ("mov %[ss], %%ss; breakpoint_insn: nop" :: [ss] "m" (ss));
tools/testing/selftests/x86/mov_ss_trap.c
250
: [ss] "m" (ss) : "flags", "rcx"
tools/testing/selftests/x86/mov_ss_trap.c
264
: "+a" (nr) : [ss] "m" (ss)
tools/testing/selftests/x86/mov_ss_trap.c
47
unsigned short ss;
tools/testing/selftests/x86/mov_ss_trap.c
66
dr0 = (unsigned long)&ss;
tools/testing/selftests/x86/nx_stack.c
200
stack_t ss = {};
tools/testing/selftests/x86/nx_stack.c
201
ss.ss_sp = p;
tools/testing/selftests/x86/nx_stack.c
202
ss.ss_size = len;
tools/testing/selftests/x86/nx_stack.c
203
int rv = sigaltstack(&ss, NULL);
tools/testing/selftests/x86/sigaltstack.c
34
stack_t ss;
tools/testing/selftests/x86/sigaltstack.c
36
memset(&ss, 0, sizeof(ss));
tools/testing/selftests/x86/sigaltstack.c
37
ss.ss_size = size;
tools/testing/selftests/x86/sigaltstack.c
38
ss.ss_sp = start;
tools/testing/selftests/x86/sigaltstack.c
40
return sigaltstack(&ss, NULL);
tools/testing/selftests/x86/sigreturn.c
281
unsigned short cs, gs, fs, ss;
tools/testing/selftests/x86/sigreturn.c
287
return &sels->ss;
tools/testing/selftests/x86/sigreturn.c
464
unsigned short ss;
tools/testing/selftests/x86/sigreturn.c
465
asm ("mov %%ss,%0" : "=r" (ss));
tools/testing/selftests/x86/sigreturn.c
471
ss, *ssptr(ctx), (unsigned long long)asm_ss);
tools/testing/selftests/x86/sigreturn.c
648
if (req_sels->ss != res_sels->ss) {
tools/testing/selftests/x86/sigreturn.c
650
req_sels->ss, res_sels->ss);
tools/testing/selftests/x86/sigreturn.c
681
static int test_bad_iret(int cs_bits, unsigned short ss, int force_cs)
tools/testing/selftests/x86/sigreturn.c
688
sig_ss = ss;
tools/usb/usbip/src/usbipd.c
311
struct sockaddr_storage ss;
tools/usb/usbip/src/usbipd.c
312
socklen_t len = sizeof(ss);
tools/usb/usbip/src/usbipd.c
316
memset(&ss, 0, sizeof(ss));
tools/usb/usbip/src/usbipd.c
318
connfd = accept(listenfd, (struct sockaddr *)&ss, &len);
tools/usb/usbip/src/usbipd.c
324
rc = getnameinfo((struct sockaddr *)&ss, len, host, sizeof(host),