arch/alpha/include/asm/atomic.h
158
ATOMIC_OPS(sub)
arch/arc/include/asm/atomic-llsc.h
78
ATOMIC_OPS(sub, sub)
arch/arc/include/asm/atomic-spinlock.h
82
ATOMIC_OPS(sub, -=, sub)
arch/arc/include/asm/atomic64-arcv2.h
121
ATOMIC64_OPS(sub, sub.f, sbc)
arch/arc/include/asm/entry-arcv2.h
66
sub sp, sp, SZ_PT_REGS - 8
arch/arc/include/asm/entry-arcv2.h
71
sub sp, sp, PT_r0
arch/arc/include/asm/entry-arcv2.h
87
sub sp, sp, SZ_PT_REGS ; carve space for pt_regs
arch/arc/include/asm/entry-compact.h
240
sub sp, sp, 4 /* skip pt_regs->sp, already saved above */
arch/arc/include/asm/entry-compact.h
324
sub sp, sp, 8 /* skip orig_r0 (not needed)
arch/arm/include/asm/assembler.h
237
sub \tmp, \tmp, #1 @ decrement it
arch/arm/include/asm/assembler.h
695
.L0_\@: sub\cond \tmp, pc, #8 - \offset
arch/arm/include/asm/assembler.h
696
.L1_\@: sub\cond \tmp, \tmp, #4 - \offset
arch/arm/include/asm/assembler.h
732
.L0_\@: sub \rd, \rd, #4
arch/arm/include/asm/assembler.h
733
.L1_\@: sub \rd, \rd, #0
arch/arm/include/asm/atomic.h
233
ATOMIC_OPS(sub, -=, sub)
arch/arm/include/asm/atomic.h
382
ATOMIC64_OPS(sub, subs, sbc)
arch/arm/include/asm/uaccess-asm.h
33
sub \tmp, \limit, #1
arch/arm64/include/asm/asm-uaccess.h
19
sub \tmp1, \tmp1, #RESERVED_SWAPPER_OFFSET // reserved_pg_dir
arch/arm64/include/asm/assembler.h
381
sub \tmp, \linesz, #1
arch/arm64/include/asm/assembler.h
459
sub \tmp2, \tmp1, #1
arch/arm64/include/asm/atomic_ll_sc.h
192
ATOMIC64_OPS(sub, sub, J)
arch/arm64/include/asm/atomic_ll_sc.h
96
ATOMIC_OPS(sub, sub, J)
arch/arm64/include/asm/insn.h
379
__AARCH64_INSN_FUNCS(sub, 0x7F200000, 0x4B000000)
arch/csky/include/asm/atomic.h
41
ATOMIC_OP(sub)
arch/csky/include/asm/atomic.h
77
ATOMIC_OPS(sub, -)
arch/hexagon/include/asm/atomic.h
86
ATOMIC_OPS(sub)
arch/loongarch/include/asm/asm.h
106
#define LONG_SUB sub.w
arch/loongarch/include/asm/asm.h
135
#define LONG_SUB sub.d
arch/loongarch/include/asm/asm.h
167
#define PTR_SUB sub.w
arch/loongarch/include/asm/asm.h
197
#define PTR_SUB sub.d
arch/loongarch/include/asm/asm.h
58
#define REG_SUB sub.w
arch/loongarch/include/asm/asm.h
63
#define REG_SUB sub.d
arch/loongarch/include/asm/asm.h
72
#define INT_SUB sub.w
arch/loongarch/include/asm/asm.h
86
#define INT_SUB sub.d
arch/loongarch/include/asm/atomic-amo.h
156
ATOMIC64_OPS(sub, -i, add, +)
arch/loongarch/include/asm/atomic-amo.h
61
ATOMIC_OPS(sub, -i, add, +)
arch/loongarch/include/asm/atomic-llsc.h
70
ATOMIC_OPS(sub, -i , add.w ,+=)
arch/m68k/include/asm/atomic.h
107
ATOMIC_OPS(sub, -=, sub)
arch/m68k/math-emu/fp_decode.h
284
sub.w (fp_datasize,%d1.w*2),%a0
arch/m68k/math-emu/fp_decode.h
360
sub.l %a1,%a1
arch/mips/include/asm/asm.h
178
#define INT_SUB sub
arch/mips/include/asm/asm.h
215
#define LONG_SUB sub
arch/mips/include/asm/asm.h
276
#define PTR_SUB sub
arch/mips/include/asm/atomic.h
145
ATOMIC_OPS(atomic, sub, int, -=, subu, ll, sc)
arch/mips/include/asm/atomic.h
154
ATOMIC_OPS(atomic64, sub, s64, -=, dsubu, lld, scd)
arch/openrisc/include/asm/atomic.h
70
ATOMIC_OP_RETURN(sub)
arch/openrisc/include/asm/atomic.h
73
ATOMIC_FETCH_OP(sub)
arch/openrisc/include/asm/atomic.h
79
ATOMIC_OP(sub)
arch/parisc/include/asm/atomic.h
119
ATOMIC_OPS(sub, -=)
arch/parisc/include/asm/atomic.h
191
ATOMIC64_OPS(sub, -=)
arch/powerpc/boot/devtree.c
157
static int sub_reg(u32 *reg, u32 *sub)
arch/powerpc/boot/devtree.c
163
borrow = reg[i] < sub[i] + prev_borrow;
arch/powerpc/boot/devtree.c
164
reg[i] -= sub[i] + prev_borrow;
arch/powerpc/include/asm/atomic.h
104
ATOMIC_OPS(sub, sub, "c", I, "xer")
arch/powerpc/include/asm/atomic.h
272
ATOMIC64_OPS(sub, subf)
arch/powerpc/include/asm/local.h
58
LOCAL_OPS(sub, -=)
arch/powerpc/kvm/book3s_hv.c
3541
int sub;
arch/powerpc/kvm/book3s_hv.c
3556
sub = cip->n_subcores;
arch/powerpc/kvm/book3s_hv.c
3559
cip->subcore_threads[sub] = vc->num_threads;
arch/powerpc/kvm/book3s_hv.c
3560
cip->vc[sub] = vc;
arch/powerpc/kvm/book3s_hv.c
3632
int sub, i;
arch/powerpc/kvm/book3s_hv.c
3636
for (sub = 0; sub < cip->n_subcores; ++sub) {
arch/powerpc/kvm/book3s_hv.c
3637
vc = cip->vc[sub];
arch/powerpc/kvm/book3s_hv.c
3785
int sub;
arch/powerpc/kvm/book3s_hv.c
3861
for (sub = 1; sub < core_info.n_subcores; ++sub) {
arch/powerpc/kvm/book3s_hv.c
3862
pvc = core_info.vc[sub];
arch/powerpc/kvm/book3s_hv.c
3884
for (sub = 0; sub < core_info.n_subcores; ++sub)
arch/powerpc/kvm/book3s_hv.c
3885
split_info.vc[sub] = core_info.vc[sub];
arch/powerpc/kvm/book3s_hv.c
3953
for (sub = 0; sub < core_info.n_subcores; ++sub) {
arch/powerpc/kvm/book3s_hv.c
3954
thr = is_power8 ? subcore_thread_map[sub] : sub;
arch/powerpc/kvm/book3s_hv.c
3957
pvc = core_info.vc[sub];
arch/powerpc/kvm/book3s_hv.c
4006
for (sub = 0; sub < core_info.n_subcores; ++sub)
arch/powerpc/kvm/book3s_hv.c
4007
spin_unlock(&core_info.vc[sub]->lock);
arch/powerpc/kvm/book3s_hv.c
4082
for (sub = 0; sub < core_info.n_subcores; ++sub) {
arch/powerpc/kvm/book3s_hv.c
4083
pvc = core_info.vc[sub];
arch/riscv/include/asm/atomic.h
138
ATOMIC_OPS(sub, add, +, -i)
arch/riscv/include/asm/atomic.h
74
ATOMIC_OPS(sub, add, -i)
arch/sh/include/asm/atomic-grb.h
72
ATOMIC_OPS(sub)
arch/sh/include/asm/atomic-irq.h
56
ATOMIC_OPS(sub, -=)
arch/sh/include/asm/atomic-llsc.h
74
ATOMIC_OPS(sub)
arch/sparc/include/asm/atomic_64.h
38
ATOMIC_OPS(sub)
arch/sparc/include/asm/backoff.h
67
sub tmp, 1, tmp; \
arch/sparc/include/asm/tsb.h
134
sub TSB, 0x8, TSB; \
arch/sparc/include/asm/tsb.h
315
sub VADDR, REG2, REG2; \
arch/sparc/include/asm/ttable.h
290
sub %g1, 2, %g1; \
arch/sparc/include/asm/ttable.h
348
sub %g1, 2, %g1; \
arch/sparc/include/asm/ttable.h
385
sub %g1, 2, %g1; \
arch/sparc/include/asm/ttable.h
447
sub %g1, 2, %g1; \
arch/sparc/include/asm/ttable.h
484
sub %g1, 2, %g1; \
arch/sparc/include/asm/ttable.h
530
sub %g1, 1, %g1; \
arch/sparc/include/asm/winmacro.h
101
sub %scratch, %cur_reg, %scratch; \
arch/sparc/include/asm/winmacro.h
97
sub %scratch, %cur_reg, %scratch; \
arch/x86/include/asm/asm.h
43
#define _ASM_SUB __ASM_SIZE(sub)
arch/x86/include/asm/atomic64_32.h
188
__alternative_atomic64(sub, sub_return,
arch/x86/kvm/emulate.c
961
EM_ASM_2(sub);
arch/xtensa/include/asm/asm-uaccess.h
52
sub \at, \at, \as
arch/xtensa/include/asm/asmmacro.h
108
sub \at, \as, \ar
arch/xtensa/include/asm/atomic.h
246
ATOMIC_OPS(sub)
arch/xtensa/include/asm/initialize_mmu.h
203
sub a5, a5, a10
block/blk-cgroup.c
1863
u64 sub = min_t(u64, blkg->last_delay, now - old);
block/blk-cgroup.c
1871
sub = max_t(u64, sub, blkg->last_delay >> 1);
block/blk-cgroup.c
1879
if (unlikely(cur < sub)) {
block/blk-cgroup.c
1883
atomic64_sub(sub, &blkg->delay_nsec);
block/blk-cgroup.c
1884
blkg->last_delay = cur - sub;
block/blk-iolatency.c
503
u64 sub = iolat->min_lat_nsec;
block/blk-iolatency.c
504
if (req_time < sub)
block/blk-iolatency.c
505
blkcg_add_delay(lat_to_blkg(iolat), now, sub - req_time);
drivers/accel/amdxdna/aie2_message.c
163
fw_ver->sub = resp.sub;
drivers/accel/amdxdna/aie2_msg_priv.h
317
__u32 sub;
drivers/accel/amdxdna/aie2_pci.c
695
version.patch = xdna->fw_ver.sub;
drivers/accel/amdxdna/amdxdna_pci_drv.h
109
u32 sub;
drivers/accel/amdxdna/amdxdna_sysfs.c
40
xdna->fw_ver.minor, xdna->fw_ver.sub,
drivers/acpi/utils.c
311
const char *sub;
drivers/acpi/utils.c
324
sub = kstrdup(obj->string.pointer, GFP_KERNEL);
drivers/acpi/utils.c
325
if (!sub)
drivers/acpi/utils.c
326
sub = ERR_PTR(-ENOMEM);
drivers/acpi/utils.c
329
sub = ERR_PTR(-ENODATA);
drivers/acpi/utils.c
333
sub = ERR_PTR(-ENODATA);
drivers/acpi/utils.c
338
return sub;
drivers/firmware/google/gsmi.c
190
static int gsmi_exec(u8 func, u8 sub)
drivers/firmware/google/gsmi.c
192
u16 cmd = (sub << 8) | func;
drivers/firmware/google/gsmi.c
271
if (sub != GSMI_CMD_HANDSHAKE_TYPE)
drivers/gpu/drm/amd/amdgpu/jpeg_v2_5.c
841
uint32_t inst = 0, sub = 0, poison_stat = 0;
drivers/gpu/drm/amd/amdgpu/jpeg_v2_5.c
844
for (sub = 0; sub < AMDGPU_JPEG_V2_6_MAX_SUB_BLOCK; sub++)
drivers/gpu/drm/amd/amdgpu/jpeg_v2_5.c
846
jpeg_v2_6_query_poison_by_instance(adev, inst, sub);
drivers/gpu/drm/amd/amdgpu/jpeg_v4_0.c
849
uint32_t inst = 0, sub = 0, poison_stat = 0;
drivers/gpu/drm/amd/amdgpu/jpeg_v4_0.c
852
for (sub = 0; sub < AMDGPU_JPEG_V4_0_MAX_SUB_BLOCK; sub++)
drivers/gpu/drm/amd/amdgpu/jpeg_v4_0.c
854
jpeg_v4_0_query_poison_by_instance(adev, inst, sub);
drivers/gpu/drm/amd/amdgpu/jpeg_v4_0_3.c
1412
uint32_t inst = 0, sub = 0, poison_stat = 0;
drivers/gpu/drm/amd/amdgpu/jpeg_v4_0_3.c
1415
for (sub = 0; sub < AMDGPU_JPEG_V4_0_3_MAX_SUB_BLOCK; sub++)
drivers/gpu/drm/amd/amdgpu/jpeg_v4_0_3.c
1417
jpeg_v4_0_3_query_poison_by_instance(adev, inst, sub);
drivers/gpu/drm/amd/amdgpu/jpeg_v5_0_1.c
992
uint32_t inst = 0, sub = 0, poison_stat = 0;
drivers/gpu/drm/amd/amdgpu/jpeg_v5_0_1.c
995
for (sub = 0; sub < AMDGPU_JPEG_V5_0_1_MAX_SUB_BLOCK; sub++)
drivers/gpu/drm/amd/amdgpu/jpeg_v5_0_1.c
997
jpeg_v5_0_1_query_poison_by_instance(adev, inst, sub);
drivers/gpu/drm/amd/amdgpu/vcn_v2_5.c
2181
uint32_t inst, sub;
drivers/gpu/drm/amd/amdgpu/vcn_v2_5.c
2185
for (sub = 0; sub < AMDGPU_VCN_V2_6_MAX_SUB_BLOCK; sub++)
drivers/gpu/drm/amd/amdgpu/vcn_v2_5.c
2187
vcn_v2_6_query_poison_by_instance(adev, inst, sub);
drivers/gpu/drm/amd/amdgpu/vcn_v4_0.c
2307
uint32_t inst, sub;
drivers/gpu/drm/amd/amdgpu/vcn_v4_0.c
2311
for (sub = 0; sub < AMDGPU_VCN_V4_0_MAX_SUB_BLOCK; sub++)
drivers/gpu/drm/amd/amdgpu/vcn_v4_0.c
2313
vcn_v4_0_query_poison_by_instance(adev, inst, sub);
drivers/gpu/drm/amd/amdgpu/vcn_v4_0_3.c
2132
uint32_t inst, sub;
drivers/gpu/drm/amd/amdgpu/vcn_v4_0_3.c
2136
for (sub = 0; sub < AMDGPU_VCN_V4_0_3_MAX_SUB_BLOCK; sub++)
drivers/gpu/drm/amd/amdgpu/vcn_v4_0_3.c
2138
vcn_v4_0_3_query_poison_by_instance(adev, inst, sub);
drivers/gpu/drm/amd/amdgpu/vcn_v5_0_1.c
1701
uint32_t inst, sub;
drivers/gpu/drm/amd/amdgpu/vcn_v5_0_1.c
1705
for (sub = 0; sub < AMDGPU_VCN_V5_0_1_MAX_SUB_BLOCK; sub++)
drivers/gpu/drm/amd/amdgpu/vcn_v5_0_1.c
1707
vcn_v5_0_1_query_poison_by_instance(adev, inst, sub);
drivers/gpu/drm/i915/display/intel_display_device.c
1589
const struct stepping_desc *sub)
drivers/gpu/drm/i915/display/intel_display_device.c
1598
if (sub && sub->map && sub->size) {
drivers/gpu/drm/i915/display/intel_display_device.c
1599
map = sub->map;
drivers/gpu/drm/i915/display/intel_display_device.c
1600
size = sub->size;
drivers/gpu/drm/i915/display/intel_opregion.c
221
#define SWSCI_FUNCTION_CODE(main, sub) \
drivers/gpu/drm/i915/display/intel_opregion.c
223
(sub) << SWSCI_SCIC_SUB_FUNCTION_SHIFT)
drivers/gpu/drm/i915/display/skl_scaler.c
60
static u16 skl_scaler_calc_phase(int sub, int scale, bool chroma_cosited)
drivers/gpu/drm/i915/display/skl_scaler.c
66
phase += (sub - 1) * 0x8000 / sub;
drivers/gpu/drm/i915/display/skl_scaler.c
68
phase += scale / (2 * sub);
drivers/gpu/drm/i915/gt/intel_context.c
329
void __intel_context_do_unpin(struct intel_context *ce, int sub)
drivers/gpu/drm/i915/gt/intel_context.c
331
if (!atomic_sub_and_test(sub, &ce->pin_count))
drivers/gpu/drm/i915/gt/intel_context.h
178
void __intel_context_do_unpin(struct intel_context *ce, int sub);
drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c
622
uint32_t sub;
drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c
629
sub = horz ? info->hsub : info->vsub;
drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c
630
uv_filter = ((src / sub) <= dst) ?
drivers/gpu/drm/nouveau/include/nvkm/core/option.h
9
int nvkm_dbgopt(const char *optstr, const char *sub);
drivers/gpu/drm/nouveau/include/nvkm/subdev/bios/disp.h
11
u16 nvbios_disp_entry(struct nvkm_bios *, u8 idx, u8 *ver, u8 *hdr, u8 *sub);
drivers/gpu/drm/nouveau/include/nvkm/subdev/bios/disp.h
12
u16 nvbios_disp_parse(struct nvkm_bios *, u8 idx, u8 *ver, u8 *hdr, u8 *sub,
drivers/gpu/drm/nouveau/include/nvkm/subdev/bios/disp.h
5
u8 *ver, u8 *hdr, u8 *cnt, u8 *len, u8 *sub);
drivers/gpu/drm/nouveau/nouveau_bios.c
109
uint8_t sub = bios->data[bios->fp.xlated_entry + script] + (bios->fp.link_c_increment && dcbent->or & DCB_OUTPUT_C ? 1 : 0);
drivers/gpu/drm/nouveau/nouveau_bios.c
110
uint16_t scriptofs = ROM16(bios->data[bios->init_script_tbls_ptr + sub * 2]);
drivers/gpu/drm/nouveau/nouveau_bios.c
115
if (!bios->fp.xlated_entry || !sub || !scriptofs)
drivers/gpu/drm/nouveau/nvkm/core/option.c
103
if (strncasecmpz(optstr, sub, len))
drivers/gpu/drm/nouveau/nvkm/core/option.c
95
nvkm_dbgopt(const char *optstr, const char *sub)
drivers/gpu/drm/nouveau/nvkm/subdev/bios/disp.c
30
u8 *ver, u8 *hdr, u8 *cnt, u8 *len, u8 *sub)
drivers/gpu/drm/nouveau/nvkm/subdev/bios/disp.c
46
*sub = nvbios_rd08(bios, data + 0x04);
drivers/gpu/drm/nouveau/nvkm/subdev/bios/disp.c
59
nvbios_disp_entry(struct nvkm_bios *bios, u8 idx, u8 *ver, u8 *len, u8 *sub)
drivers/gpu/drm/nouveau/nvkm/subdev/bios/disp.c
62
u16 data = nvbios_disp_table(bios, ver, &hdr, &cnt, len, sub);
drivers/gpu/drm/nouveau/nvkm/subdev/bios/disp.c
70
nvbios_disp_parse(struct nvkm_bios *bios, u8 idx, u8 *ver, u8 *len, u8 *sub,
drivers/gpu/drm/nouveau/nvkm/subdev/bios/disp.c
73
u16 data = nvbios_disp_entry(bios, idx, ver, len, sub);
drivers/gpu/drm/nouveau/nvkm/subdev/mmu/base.c
146
if (pt->sub) {
drivers/gpu/drm/nouveau/nvkm/subdev/mmu/base.c
205
pt->sub = false;
drivers/gpu/drm/nouveau/nvkm/subdev/mmu/base.c
96
pt->sub = true;
drivers/gpu/drm/nouveau/nvkm/subdev/mmu/priv.h
64
bool sub;
drivers/infiniband/core/device.c
1513
struct ib_device *sub, *tmp;
drivers/infiniband/core/device.c
1516
list_for_each_entry_safe_reverse(sub, tmp,
drivers/infiniband/core/device.c
1519
list_del(&sub->subdev_list);
drivers/infiniband/core/device.c
1520
ib_dev->ops.del_sub_dev(sub);
drivers/infiniband/core/device.c
2869
struct ib_device *sub;
drivers/infiniband/core/device.c
2878
sub = parent->ops.add_sub_dev(parent, type, name);
drivers/infiniband/core/device.c
2879
if (IS_ERR(sub)) {
drivers/infiniband/core/device.c
2881
return PTR_ERR(sub);
drivers/infiniband/core/device.c
2884
sub->type = type;
drivers/infiniband/core/device.c
2885
sub->parent = parent;
drivers/infiniband/core/device.c
2888
list_add_tail(&parent->subdev_list_head, &sub->subdev_list);
drivers/infiniband/core/device.c
2894
int ib_del_sub_device_and_put(struct ib_device *sub)
drivers/infiniband/core/device.c
2896
struct ib_device *parent = sub->parent;
drivers/infiniband/core/device.c
2899
ib_device_put(sub);
drivers/infiniband/core/device.c
2904
list_del(&sub->subdev_list);
drivers/infiniband/core/device.c
2907
ib_device_put(sub);
drivers/infiniband/core/device.c
2908
parent->ops.del_sub_dev(sub);
drivers/infiniband/hw/mlx5/devx.c
1419
struct devx_event_subscription *sub)
drivers/infiniband/hw/mlx5/devx.c
1424
if (sub->is_cleaned)
drivers/infiniband/hw/mlx5/devx.c
1427
sub->is_cleaned = 1;
drivers/infiniband/hw/mlx5/devx.c
1428
list_del_rcu(&sub->xa_list);
drivers/infiniband/hw/mlx5/devx.c
1430
if (list_empty(&sub->obj_list))
drivers/infiniband/hw/mlx5/devx.c
1433
list_del_rcu(&sub->obj_list);
drivers/infiniband/hw/mlx5/devx.c
1436
sub->xa_key_level1);
drivers/infiniband/hw/mlx5/devx.c
1439
xa_val_level2 = xa_load(&event->object_ids, sub->xa_key_level2);
drivers/infiniband/hw/mlx5/devx.c
1442
sub->xa_key_level2);
drivers/infiniband/hw/mlx5/devx.c
2660
struct devx_event_subscription *sub, *tmp;
drivers/infiniband/hw/mlx5/devx.c
2671
sub, tmp, &event->unaffiliated_list, xa_list)
drivers/infiniband/hw/mlx5/devx.c
2672
devx_cleanup_subscription(dev, sub);
drivers/media/i2c/adv7180.c
966
struct v4l2_event_subscription *sub)
drivers/media/i2c/adv7180.c
968
switch (sub->type) {
drivers/media/i2c/adv7180.c
970
return v4l2_src_change_event_subdev_subscribe(sd, fh, sub);
drivers/media/i2c/adv7180.c
972
return v4l2_ctrl_subdev_subscribe_event(sd, fh, sub);
drivers/media/i2c/adv7604.c
2690
struct v4l2_event_subscription *sub)
drivers/media/i2c/adv7604.c
2692
switch (sub->type) {
drivers/media/i2c/adv7604.c
2694
return v4l2_src_change_event_subdev_subscribe(sd, fh, sub);
drivers/media/i2c/adv7604.c
2696
return v4l2_ctrl_subdev_subscribe_event(sd, fh, sub);
drivers/media/i2c/adv7842.c
3268
struct v4l2_event_subscription *sub)
drivers/media/i2c/adv7842.c
3270
switch (sub->type) {
drivers/media/i2c/adv7842.c
3272
return v4l2_src_change_event_subdev_subscribe(sd, fh, sub);
drivers/media/i2c/adv7842.c
3274
return v4l2_ctrl_subdev_subscribe_event(sd, fh, sub);
drivers/media/i2c/tc358743.c
1623
struct v4l2_event_subscription *sub)
drivers/media/i2c/tc358743.c
1625
switch (sub->type) {
drivers/media/i2c/tc358743.c
1627
return v4l2_src_change_event_subdev_subscribe(sd, fh, sub);
drivers/media/i2c/tc358743.c
1629
return v4l2_ctrl_subdev_subscribe_event(sd, fh, sub);
drivers/media/i2c/tda1997x.c
2021
struct v4l2_event_subscription *sub)
drivers/media/i2c/tda1997x.c
2023
switch (sub->type) {
drivers/media/i2c/tda1997x.c
2025
return v4l2_src_change_event_subdev_subscribe(sd, fh, sub);
drivers/media/i2c/tda1997x.c
2027
return v4l2_ctrl_subdev_subscribe_event(sd, fh, sub);
drivers/media/i2c/tvp5150.c
1582
struct v4l2_event_subscription *sub)
drivers/media/i2c/tvp5150.c
1584
switch (sub->type) {
drivers/media/i2c/tvp5150.c
1586
return v4l2_src_change_event_subdev_subscribe(sd, fh, sub);
drivers/media/i2c/tvp5150.c
1588
return v4l2_ctrl_subdev_subscribe_event(sd, fh, sub);
drivers/media/i2c/tw9900.c
326
struct v4l2_event_subscription *sub)
drivers/media/i2c/tw9900.c
328
switch (sub->type) {
drivers/media/i2c/tw9900.c
330
return v4l2_src_change_event_subdev_subscribe(sd, fh, sub);
drivers/media/i2c/tw9900.c
332
return v4l2_ctrl_subdev_subscribe_event(sd, fh, sub);
drivers/media/pci/bt8xx/bttv-gpio.c
100
list_for_each_entry_safe(sub, save, &core->subs, list) {
drivers/media/pci/bt8xx/bttv-gpio.c
101
list_del(&sub->list);
drivers/media/pci/bt8xx/bttv-gpio.c
102
device_unregister(&sub->dev);
drivers/media/pci/bt8xx/bttv-gpio.c
110
int bttv_sub_register(struct bttv_sub_driver *sub, char *wanted)
drivers/media/pci/bt8xx/bttv-gpio.c
112
sub->drv.bus = &bttv_sub_bus_type;
drivers/media/pci/bt8xx/bttv-gpio.c
113
snprintf(sub->wanted,sizeof(sub->wanted),"%s",wanted);
drivers/media/pci/bt8xx/bttv-gpio.c
114
return driver_register(&sub->drv);
drivers/media/pci/bt8xx/bttv-gpio.c
118
int bttv_sub_unregister(struct bttv_sub_driver *sub)
drivers/media/pci/bt8xx/bttv-gpio.c
120
driver_unregister(&sub->drv);
drivers/media/pci/bt8xx/bttv-gpio.c
33
const struct bttv_sub_driver *sub = to_bttv_sub_drv(drv);
drivers/media/pci/bt8xx/bttv-gpio.c
34
int len = strlen(sub->wanted);
drivers/media/pci/bt8xx/bttv-gpio.c
36
if (0 == strncmp(dev_name(dev), sub->wanted, len))
drivers/media/pci/bt8xx/bttv-gpio.c
44
struct bttv_sub_driver *sub = to_bttv_sub_drv(dev->driver);
drivers/media/pci/bt8xx/bttv-gpio.c
46
return sub->probe ? sub->probe(sdev) : -ENODEV;
drivers/media/pci/bt8xx/bttv-gpio.c
52
struct bttv_sub_driver *sub = to_bttv_sub_drv(dev->driver);
drivers/media/pci/bt8xx/bttv-gpio.c
54
if (sub->remove)
drivers/media/pci/bt8xx/bttv-gpio.c
55
sub->remove(sdev);
drivers/media/pci/bt8xx/bttv-gpio.c
67
struct bttv_sub_device *sub = to_bttv_sub_dev(dev);
drivers/media/pci/bt8xx/bttv-gpio.c
68
kfree(sub);
drivers/media/pci/bt8xx/bttv-gpio.c
73
struct bttv_sub_device *sub;
drivers/media/pci/bt8xx/bttv-gpio.c
76
sub = kzalloc_obj(*sub);
drivers/media/pci/bt8xx/bttv-gpio.c
77
if (NULL == sub)
drivers/media/pci/bt8xx/bttv-gpio.c
80
sub->core = core;
drivers/media/pci/bt8xx/bttv-gpio.c
81
sub->dev.parent = &core->pci->dev;
drivers/media/pci/bt8xx/bttv-gpio.c
82
sub->dev.bus = &bttv_sub_bus_type;
drivers/media/pci/bt8xx/bttv-gpio.c
83
sub->dev.release = release_sub_device;
drivers/media/pci/bt8xx/bttv-gpio.c
84
dev_set_name(&sub->dev, "%s%d", name, core->nr);
drivers/media/pci/bt8xx/bttv-gpio.c
86
err = device_register(&sub->dev);
drivers/media/pci/bt8xx/bttv-gpio.c
88
put_device(&sub->dev);
drivers/media/pci/bt8xx/bttv-gpio.c
91
pr_info("%d: add subdevice \"%s\"\n", core->nr, dev_name(&sub->dev));
drivers/media/pci/bt8xx/bttv-gpio.c
92
list_add_tail(&sub->list,&core->subs);
drivers/media/pci/bt8xx/bttv-gpio.c
98
struct bttv_sub_device *sub, *save;
drivers/media/pci/bt8xx/bttv.h
341
int (*probe)(struct bttv_sub_device *sub);
drivers/media/pci/bt8xx/bttv.h
342
void (*remove)(struct bttv_sub_device *sub);
drivers/media/pci/bt8xx/dvb-bt8xx.c
806
static int dvb_bt8xx_probe(struct bttv_sub_device *sub)
drivers/media/pci/bt8xx/dvb-bt8xx.c
816
card->bttv_nr = sub->core->nr;
drivers/media/pci/bt8xx/dvb-bt8xx.c
817
strscpy(card->card_name, sub->core->v4l2_dev.name,
drivers/media/pci/bt8xx/dvb-bt8xx.c
819
card->i2c_adapter = &sub->core->i2c_adap;
drivers/media/pci/bt8xx/dvb-bt8xx.c
821
switch(sub->core->type) {
drivers/media/pci/bt8xx/dvb-bt8xx.c
885
pr_err("Unknown bttv card type: %d\n", sub->core->type);
drivers/media/pci/bt8xx/dvb-bt8xx.c
907
card->bt->bttv_nr = sub->core->nr;
drivers/media/pci/bt8xx/dvb-bt8xx.c
909
if ( (ret = dvb_bt8xx_load_card(card, sub->core->type)) ) {
drivers/media/pci/bt8xx/dvb-bt8xx.c
914
dev_set_drvdata(&sub->dev, card);
drivers/media/pci/bt8xx/dvb-bt8xx.c
918
static void dvb_bt8xx_remove(struct bttv_sub_device *sub)
drivers/media/pci/bt8xx/dvb-bt8xx.c
920
struct dvb_bt8xx_card *card = dev_get_drvdata(&sub->dev);
drivers/media/pci/cobalt/cobalt-v4l2.c
1044
const struct v4l2_event_subscription *sub)
drivers/media/pci/cobalt/cobalt-v4l2.c
1046
switch (sub->type) {
drivers/media/pci/cobalt/cobalt-v4l2.c
1048
return v4l2_event_subscribe(fh, sub, 4, NULL);
drivers/media/pci/cobalt/cobalt-v4l2.c
1050
return v4l2_ctrl_subscribe_event(fh, sub);
drivers/media/pci/hws/hws_video.c
986
const struct v4l2_event_subscription *sub)
drivers/media/pci/hws/hws_video.c
988
switch (sub->type) {
drivers/media/pci/hws/hws_video.c
990
return v4l2_src_change_event_subscribe(fh, sub);
drivers/media/pci/hws/hws_video.c
992
return v4l2_ctrl_subscribe_event(fh, sub);
drivers/media/pci/intel/ipu3/ipu3-cio2.c
1193
struct v4l2_event_subscription *sub)
drivers/media/pci/intel/ipu3/ipu3-cio2.c
1195
if (sub->type != V4L2_EVENT_FRAME_SYNC)
drivers/media/pci/intel/ipu3/ipu3-cio2.c
1199
if (sub->id != 0)
drivers/media/pci/intel/ipu3/ipu3-cio2.c
1202
return v4l2_event_subscribe(fh, sub, 0, NULL);
drivers/media/pci/intel/ipu6/ipu6-isys-csi2.c
103
struct v4l2_event_subscription *sub)
drivers/media/pci/intel/ipu6/ipu6-isys-csi2.c
110
sub->type, sub->id);
drivers/media/pci/intel/ipu6/ipu6-isys-csi2.c
112
switch (sub->type) {
drivers/media/pci/intel/ipu6/ipu6-isys-csi2.c
114
return v4l2_event_subscribe(fh, sub, 10, NULL);
drivers/media/pci/intel/ipu6/ipu6-isys-csi2.c
116
return v4l2_ctrl_subdev_subscribe_event(sd, fh, sub);
drivers/media/pci/ivtv/ivtv-ioctl.c
1490
static int ivtv_subscribe_event(struct v4l2_fh *fh, const struct v4l2_event_subscription *sub)
drivers/media/pci/ivtv/ivtv-ioctl.c
1492
switch (sub->type) {
drivers/media/pci/ivtv/ivtv-ioctl.c
1495
return v4l2_event_subscribe(fh, sub, 0, NULL);
drivers/media/pci/ivtv/ivtv-ioctl.c
1497
return v4l2_ctrl_subscribe_event(fh, sub);
drivers/media/pci/mgb4/mgb4_vin.c
683
const struct v4l2_event_subscription *sub)
drivers/media/pci/mgb4/mgb4_vin.c
685
switch (sub->type) {
drivers/media/pci/mgb4/mgb4_vin.c
687
return v4l2_src_change_event_subscribe(fh, sub);
drivers/media/pci/mgb4/mgb4_vin.c
690
return v4l2_ctrl_subscribe_event(fh, sub);
drivers/media/pci/saa7164/saa7164.h
234
u32 sub;
drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c
1115
const struct v4l2_event_subscription *sub)
drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c
1118
switch (sub->type) {
drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c
1122
return v4l2_event_subscribe(fh, sub, 30, NULL);
drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c
1124
return v4l2_ctrl_subscribe_event(fh, sub);
drivers/media/pci/tw5864/tw5864-video.c
654
const struct v4l2_event_subscription *sub)
drivers/media/pci/tw5864/tw5864-video.c
656
switch (sub->type) {
drivers/media/pci/tw5864/tw5864-video.c
661
return v4l2_event_subscribe(fh, sub, 30, NULL);
drivers/media/pci/tw5864/tw5864-video.c
663
return v4l2_ctrl_subscribe_event(fh, sub);
drivers/media/platform/allegro-dvt/allegro-core.c
3606
const struct v4l2_event_subscription *sub)
drivers/media/platform/allegro-dvt/allegro-core.c
3608
switch (sub->type) {
drivers/media/platform/allegro-dvt/allegro-core.c
3610
return v4l2_event_subscribe(fh, sub, 0, NULL);
drivers/media/platform/allegro-dvt/allegro-core.c
3612
return v4l2_ctrl_subscribe_event(fh, sub);
drivers/media/platform/amlogic/c3/isp/c3-isp-core.c
529
struct v4l2_event_subscription *sub)
drivers/media/platform/amlogic/c3/isp/c3-isp-core.c
531
if (sub->type != V4L2_EVENT_FRAME_SYNC)
drivers/media/platform/amlogic/c3/isp/c3-isp-core.c
535
if (sub->id != 0)
drivers/media/platform/amlogic/c3/isp/c3-isp-core.c
538
return v4l2_event_subscribe(fh, sub, 0, NULL);
drivers/media/platform/amphion/vdec.c
738
static int vdec_subscribe_event(struct v4l2_fh *fh, const struct v4l2_event_subscription *sub)
drivers/media/platform/amphion/vdec.c
740
switch (sub->type) {
drivers/media/platform/amphion/vdec.c
742
return v4l2_event_subscribe(fh, sub, 0, NULL);
drivers/media/platform/amphion/vdec.c
744
return v4l2_src_change_event_subscribe(fh, sub);
drivers/media/platform/amphion/vdec.c
746
return v4l2_ctrl_subscribe_event(fh, sub);
drivers/media/platform/amphion/venc.c
469
static int venc_subscribe_event(struct v4l2_fh *fh, const struct v4l2_event_subscription *sub)
drivers/media/platform/amphion/venc.c
471
switch (sub->type) {
drivers/media/platform/amphion/venc.c
473
return v4l2_event_subscribe(fh, sub, 0, NULL);
drivers/media/platform/amphion/venc.c
475
return v4l2_ctrl_subscribe_event(fh, sub);
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
411
struct v4l2_event_subscription *sub)
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
413
switch (sub->type) {
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
415
return v4l2_event_subscribe(fh, sub, 0, NULL);
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
417
return v4l2_ctrl_subscribe_event(fh, sub);
drivers/media/platform/aspeed/aspeed-video.c
1736
const struct v4l2_event_subscription *sub)
drivers/media/platform/aspeed/aspeed-video.c
1738
switch (sub->type) {
drivers/media/platform/aspeed/aspeed-video.c
1740
return v4l2_src_change_event_subscribe(fh, sub);
drivers/media/platform/aspeed/aspeed-video.c
1743
return v4l2_ctrl_subscribe_event(fh, sub);
drivers/media/platform/broadcom/bcm2835-unicam.c
2072
const struct v4l2_event_subscription *sub)
drivers/media/platform/broadcom/bcm2835-unicam.c
2074
switch (sub->type) {
drivers/media/platform/broadcom/bcm2835-unicam.c
2076
return v4l2_event_subscribe(fh, sub, 2, NULL);
drivers/media/platform/chips-media/coda/coda-common.c
1456
const struct v4l2_event_subscription *sub)
drivers/media/platform/chips-media/coda/coda-common.c
1460
switch (sub->type) {
drivers/media/platform/chips-media/coda/coda-common.c
1462
return v4l2_event_subscribe(fh, sub, 0, NULL);
drivers/media/platform/chips-media/coda/coda-common.c
1465
return v4l2_event_subscribe(fh, sub, 0, NULL);
drivers/media/platform/chips-media/coda/coda-common.c
1469
return v4l2_ctrl_subscribe_event(fh, sub);
drivers/media/platform/chips-media/wave5/wave5-helper.c
149
int wave5_vpu_subscribe_event(struct v4l2_fh *fh, const struct v4l2_event_subscription *sub)
drivers/media/platform/chips-media/wave5/wave5-helper.c
155
is_decoder ? "decoder" : "encoder", sub->type, sub->id, sub->flags);
drivers/media/platform/chips-media/wave5/wave5-helper.c
157
switch (sub->type) {
drivers/media/platform/chips-media/wave5/wave5-helper.c
159
return v4l2_event_subscribe(fh, sub, 0, NULL);
drivers/media/platform/chips-media/wave5/wave5-helper.c
162
return v4l2_src_change_event_subscribe(fh, sub);
drivers/media/platform/chips-media/wave5/wave5-helper.c
165
return v4l2_ctrl_subscribe_event(fh, sub);
drivers/media/platform/chips-media/wave5/wave5-helper.h
23
int wave5_vpu_subscribe_event(struct v4l2_fh *fh, const struct v4l2_event_subscription *sub);
drivers/media/platform/imagination/e5010-jpeg-enc.c
561
static int e5010_subscribe_event(struct v4l2_fh *fh, const struct v4l2_event_subscription *sub)
drivers/media/platform/imagination/e5010-jpeg-enc.c
563
switch (sub->type) {
drivers/media/platform/imagination/e5010-jpeg-enc.c
565
return v4l2_event_subscribe(fh, sub, 0, NULL);
drivers/media/platform/imagination/e5010-jpeg-enc.c
567
return v4l2_ctrl_subscribe_event(fh, sub);
drivers/media/platform/mediatek/jpeg/mtk_jpeg_core.c
495
const struct v4l2_event_subscription *sub)
drivers/media/platform/mediatek/jpeg/mtk_jpeg_core.c
497
switch (sub->type) {
drivers/media/platform/mediatek/jpeg/mtk_jpeg_core.c
499
return v4l2_src_change_event_subscribe(fh, sub);
drivers/media/platform/mediatek/jpeg/mtk_jpeg_core.c
502
return v4l2_ctrl_subscribe_event(fh, sub);
drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec.c
272
const struct v4l2_event_subscription *sub)
drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec.c
277
return v4l2_ctrl_subscribe_event(fh, sub);
drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec.c
279
switch (sub->type) {
drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec.c
281
return v4l2_event_subscribe(fh, sub, 2, NULL);
drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec.c
283
return v4l2_src_change_event_subscribe(fh, sub);
drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec.c
285
return v4l2_ctrl_subscribe_event(fh, sub);
drivers/media/platform/nuvoton/npcm-video.c
1303
const struct v4l2_event_subscription *sub)
drivers/media/platform/nuvoton/npcm-video.c
1305
switch (sub->type) {
drivers/media/platform/nuvoton/npcm-video.c
1307
return v4l2_src_change_event_subscribe(fh, sub);
drivers/media/platform/nuvoton/npcm-video.c
1310
return v4l2_ctrl_subscribe_event(fh, sub);
drivers/media/platform/nxp/imx-jpeg/mxc-jpeg.c
2742
const struct v4l2_event_subscription *sub)
drivers/media/platform/nxp/imx-jpeg/mxc-jpeg.c
2744
switch (sub->type) {
drivers/media/platform/nxp/imx-jpeg/mxc-jpeg.c
2746
return v4l2_event_subscribe(fh, sub, 0, NULL);
drivers/media/platform/nxp/imx-jpeg/mxc-jpeg.c
2748
return v4l2_src_change_event_subscribe(fh, sub);
drivers/media/platform/nxp/imx-jpeg/mxc-jpeg.c
2750
return v4l2_ctrl_subscribe_event(fh, sub);
drivers/media/platform/nxp/imx-mipi-csis.c
1243
struct v4l2_event_subscription *sub)
drivers/media/platform/nxp/imx-mipi-csis.c
1245
if (sub->type != V4L2_EVENT_FRAME_SYNC)
drivers/media/platform/nxp/imx-mipi-csis.c
1249
if (sub->id != 0)
drivers/media/platform/nxp/imx-mipi-csis.c
1252
return v4l2_event_subscribe(fh, sub, 0, NULL);
drivers/media/platform/qcom/iris/iris_vdec.c
325
int iris_vdec_subscribe_event(struct iris_inst *inst, const struct v4l2_event_subscription *sub)
drivers/media/platform/qcom/iris/iris_vdec.c
329
switch (sub->type) {
drivers/media/platform/qcom/iris/iris_vdec.c
331
ret = v4l2_event_subscribe(&inst->fh, sub, 0, NULL);
drivers/media/platform/qcom/iris/iris_vdec.c
334
ret = v4l2_src_change_event_subscribe(&inst->fh, sub);
drivers/media/platform/qcom/iris/iris_vdec.c
337
ret = v4l2_ctrl_subscribe_event(&inst->fh, sub);
drivers/media/platform/qcom/iris/iris_vdec.h
16
int iris_vdec_subscribe_event(struct iris_inst *inst, const struct v4l2_event_subscription *sub);
drivers/media/platform/qcom/iris/iris_venc.c
340
const struct v4l2_event_subscription *sub)
drivers/media/platform/qcom/iris/iris_venc.c
342
switch (sub->type) {
drivers/media/platform/qcom/iris/iris_venc.c
344
return v4l2_event_subscribe(&inst->fh, sub, 0, NULL);
drivers/media/platform/qcom/iris/iris_venc.c
346
return v4l2_ctrl_subscribe_event(&inst->fh, sub);
drivers/media/platform/qcom/iris/iris_venc.h
16
int iris_venc_subscribe_event(struct iris_inst *inst, const struct v4l2_event_subscription *sub);
drivers/media/platform/qcom/iris/iris_vidc.c
526
static int iris_subscribe_event(struct v4l2_fh *fh, const struct v4l2_event_subscription *sub)
drivers/media/platform/qcom/iris/iris_vidc.c
531
return iris_vdec_subscribe_event(inst, sub);
drivers/media/platform/qcom/iris/iris_vidc.c
533
return iris_venc_subscribe_event(inst, sub);
drivers/media/platform/qcom/venus/vdec.c
526
const struct v4l2_event_subscription *sub)
drivers/media/platform/qcom/venus/vdec.c
531
switch (sub->type) {
drivers/media/platform/qcom/venus/vdec.c
533
return v4l2_event_subscribe(fh, sub, 2, NULL);
drivers/media/platform/qcom/venus/vdec.c
535
ret = v4l2_src_change_event_subscribe(fh, sub);
drivers/media/platform/qcom/venus/vdec.c
541
return v4l2_ctrl_subscribe_event(fh, sub);
drivers/media/platform/qcom/venus/venc.c
515
const struct v4l2_event_subscription *sub)
drivers/media/platform/qcom/venus/venc.c
517
switch (sub->type) {
drivers/media/platform/qcom/venus/venc.c
519
return v4l2_event_subscribe(fh, sub, 2, NULL);
drivers/media/platform/qcom/venus/venc.c
521
return v4l2_ctrl_subscribe_event(fh, sub);
drivers/media/platform/raspberrypi/rp1-cfe/cfe.c
1681
const struct v4l2_event_subscription *sub)
drivers/media/platform/raspberrypi/rp1-cfe/cfe.c
1685
switch (sub->type) {
drivers/media/platform/raspberrypi/rp1-cfe/cfe.c
1690
return v4l2_event_subscribe(fh, sub, 2, NULL);
drivers/media/platform/raspberrypi/rp1-cfe/cfe.c
1696
return v4l2_event_subscribe(fh, sub, 4, NULL);
drivers/media/platform/raspberrypi/rp1-cfe/cfe.c
1699
return v4l2_ctrl_subscribe_event(fh, sub);
drivers/media/platform/renesas/rcar-vin/rcar-v4l2.c
501
const struct v4l2_event_subscription *sub)
drivers/media/platform/renesas/rcar-vin/rcar-v4l2.c
503
switch (sub->type) {
drivers/media/platform/renesas/rcar-vin/rcar-v4l2.c
505
return v4l2_event_subscribe(fh, sub, 2, NULL);
drivers/media/platform/renesas/rcar-vin/rcar-v4l2.c
507
return v4l2_event_subscribe(fh, sub, 4, NULL);
drivers/media/platform/renesas/rcar-vin/rcar-v4l2.c
509
return v4l2_ctrl_subscribe_event(fh, sub);
drivers/media/platform/rockchip/rkisp1/rkisp1-isp.c
1001
return v4l2_event_subscribe(fh, sub, 0, NULL);
drivers/media/platform/rockchip/rkisp1/rkisp1-isp.c
992
struct v4l2_event_subscription *sub)
drivers/media/platform/rockchip/rkisp1/rkisp1-isp.c
994
if (sub->type != V4L2_EVENT_FRAME_SYNC)
drivers/media/platform/rockchip/rkisp1/rkisp1-isp.c
998
if (sub->id != 0)
drivers/media/platform/samsung/s5p-jpeg/jpeg-core.c
1693
const struct v4l2_event_subscription *sub)
drivers/media/platform/samsung/s5p-jpeg/jpeg-core.c
1695
if (sub->type == V4L2_EVENT_SOURCE_CHANGE)
drivers/media/platform/samsung/s5p-jpeg/jpeg-core.c
1696
return v4l2_src_change_event_subscribe(fh, sub);
drivers/media/platform/samsung/s5p-mfc/s5p_mfc_dec.c
898
const struct v4l2_event_subscription *sub)
drivers/media/platform/samsung/s5p-mfc/s5p_mfc_dec.c
900
switch (sub->type) {
drivers/media/platform/samsung/s5p-mfc/s5p_mfc_dec.c
902
return v4l2_event_subscribe(fh, sub, 2, NULL);
drivers/media/platform/samsung/s5p-mfc/s5p_mfc_dec.c
904
return v4l2_src_change_event_subscribe(fh, sub);
drivers/media/platform/samsung/s5p-mfc/s5p_mfc_enc.c
2361
const struct v4l2_event_subscription *sub)
drivers/media/platform/samsung/s5p-mfc/s5p_mfc_enc.c
2363
switch (sub->type) {
drivers/media/platform/samsung/s5p-mfc/s5p_mfc_enc.c
2365
return v4l2_event_subscribe(fh, sub, 2, NULL);
drivers/media/platform/st/sti/delta/delta-v4l2.c
884
const struct v4l2_event_subscription *sub)
drivers/media/platform/st/sti/delta/delta-v4l2.c
886
switch (sub->type) {
drivers/media/platform/st/sti/delta/delta-v4l2.c
888
return v4l2_event_subscribe(fh, sub, 2, NULL);
drivers/media/platform/synopsys/hdmirx/snps_hdmirx.c
213
const struct v4l2_event_subscription *sub)
drivers/media/platform/synopsys/hdmirx/snps_hdmirx.c
215
switch (sub->type) {
drivers/media/platform/synopsys/hdmirx/snps_hdmirx.c
217
return v4l2_src_change_event_subscribe(fh, sub);
drivers/media/platform/synopsys/hdmirx/snps_hdmirx.c
219
return v4l2_ctrl_subscribe_event(fh, sub);
drivers/media/platform/ti/omap3isp/ispccdc.c
1864
struct v4l2_event_subscription *sub)
drivers/media/platform/ti/omap3isp/ispccdc.c
1866
if (sub->type != V4L2_EVENT_FRAME_SYNC)
drivers/media/platform/ti/omap3isp/ispccdc.c
1870
if (sub->id != 0)
drivers/media/platform/ti/omap3isp/ispccdc.c
1873
return v4l2_event_subscribe(fh, sub, OMAP3ISP_CCDC_NEVENTS, NULL);
drivers/media/platform/ti/omap3isp/ispstat.c
1003
struct v4l2_event_subscription *sub)
drivers/media/platform/ti/omap3isp/ispstat.c
1007
if (sub->type != stat->event_type)
drivers/media/platform/ti/omap3isp/ispstat.c
1010
return v4l2_event_subscribe(fh, sub, STAT_NEVENTS, NULL);
drivers/media/platform/ti/omap3isp/ispstat.h
137
struct v4l2_event_subscription *sub);
drivers/media/test-drivers/vicodec/vicodec-core.c
1297
const struct v4l2_event_subscription *sub)
drivers/media/test-drivers/vicodec/vicodec-core.c
1301
switch (sub->type) {
drivers/media/test-drivers/vicodec/vicodec-core.c
1309
return v4l2_event_subscribe(fh, sub, 0, NULL);
drivers/media/test-drivers/vicodec/vicodec-core.c
1311
return v4l2_ctrl_subscribe_event(fh, sub);
drivers/media/test-drivers/vivid/vivid-vid-common.h
39
int vidioc_subscribe_event(struct v4l2_fh *fh, const struct v4l2_event_subscription *sub);
drivers/media/test-drivers/vivid/vivid-vid-out.c
1118
const struct v4l2_event_subscription *sub)
drivers/media/test-drivers/vivid/vivid-vid-out.c
1120
switch (sub->type) {
drivers/media/test-drivers/vivid/vivid-vid-out.c
1123
return v4l2_src_change_event_subscribe(fh, sub);
drivers/media/test-drivers/vivid/vivid-vid-out.c
1126
return v4l2_ctrl_subscribe_event(fh, sub);
drivers/media/usb/go7007/go7007-v4l2.c
757
const struct v4l2_event_subscription *sub)
drivers/media/usb/go7007/go7007-v4l2.c
760
switch (sub->type) {
drivers/media/usb/go7007/go7007-v4l2.c
764
return v4l2_event_subscribe(fh, sub, 30, NULL);
drivers/media/usb/go7007/go7007-v4l2.c
766
return v4l2_ctrl_subscribe_event(fh, sub);
drivers/media/usb/uvc/uvc_v4l2.c
1040
const struct v4l2_event_subscription *sub)
drivers/media/usb/uvc/uvc_v4l2.c
1042
switch (sub->type) {
drivers/media/usb/uvc/uvc_v4l2.c
1044
return v4l2_event_subscribe(fh, sub, 0, &uvc_ctrl_sub_ev_ops);
drivers/media/v4l2-core/v4l2-ctrls-api.c
1330
const struct v4l2_event_subscription *sub)
drivers/media/v4l2-core/v4l2-ctrls-api.c
1332
if (sub->type == V4L2_EVENT_CTRL)
drivers/media/v4l2-core/v4l2-ctrls-api.c
1333
return v4l2_event_subscribe(fh, sub, 0, &v4l2_ctrl_sub_ev_ops);
drivers/media/v4l2-core/v4l2-ctrls-api.c
1339
struct v4l2_event_subscription *sub)
drivers/media/v4l2-core/v4l2-ctrls-api.c
1343
return v4l2_ctrl_subscribe_event(fh, sub);
drivers/media/v4l2-core/v4l2-event.c
224
const struct v4l2_event_subscription *sub, unsigned int elems,
drivers/media/v4l2-core/v4l2-event.c
232
if (sub->type == V4L2_EVENT_ALL)
drivers/media/v4l2-core/v4l2-event.c
244
sev->type = sub->type;
drivers/media/v4l2-core/v4l2-event.c
245
sev->id = sub->id;
drivers/media/v4l2-core/v4l2-event.c
246
sev->flags = sub->flags;
drivers/media/v4l2-core/v4l2-event.c
253
found_ev = v4l2_event_subscribed(fh, sub->type, sub->id);
drivers/media/v4l2-core/v4l2-event.c
279
struct v4l2_event_subscription sub;
drivers/media/v4l2-core/v4l2-event.c
290
sub.type = sev->type;
drivers/media/v4l2-core/v4l2-event.c
291
sub.id = sev->id;
drivers/media/v4l2-core/v4l2-event.c
295
v4l2_event_unsubscribe(fh, &sub);
drivers/media/v4l2-core/v4l2-event.c
301
const struct v4l2_event_subscription *sub)
drivers/media/v4l2-core/v4l2-event.c
306
if (sub->type == V4L2_EVENT_ALL) {
drivers/media/v4l2-core/v4l2-event.c
315
sev = v4l2_event_subscribed(fh, sub->type, sub->id);
drivers/media/v4l2-core/v4l2-event.c
333
struct v4l2_event_subscription *sub)
drivers/media/v4l2-core/v4l2-event.c
335
return v4l2_event_unsubscribe(fh, sub);
drivers/media/v4l2-core/v4l2-event.c
360
const struct v4l2_event_subscription *sub)
drivers/media/v4l2-core/v4l2-event.c
362
if (sub->type == V4L2_EVENT_SOURCE_CHANGE)
drivers/media/v4l2-core/v4l2-event.c
363
return v4l2_event_subscribe(fh, sub, 0, &v4l2_event_src_ch_ops);
drivers/media/v4l2-core/v4l2-event.c
369
struct v4l2_fh *fh, struct v4l2_event_subscription *sub)
drivers/media/v4l2-core/v4l2-event.c
371
return v4l2_src_change_event_subscribe(fh, sub);
drivers/mfd/max77759.c
492
struct i2c_client *sub;
drivers/mfd/max77759.c
500
sub = client;
drivers/mfd/max77759.c
502
sub = devm_i2c_new_dummy_device(&client->dev,
drivers/mfd/max77759.c
506
if (IS_ERR(sub))
drivers/mfd/max77759.c
507
return dev_err_probe(&client->dev, PTR_ERR(sub),
drivers/mfd/max77759.c
512
regmap = devm_regmap_init_i2c(sub, sd->cfg);
drivers/mfd/max77759.c
514
return dev_err_probe(&sub->dev, PTR_ERR(regmap),
drivers/misc/vmw_vmci/vmci_event.c
138
struct vmci_subscription *sub;
drivers/misc/vmw_vmci/vmci_event.c
154
sub = kzalloc_obj(*sub);
drivers/misc/vmw_vmci/vmci_event.c
155
if (!sub)
drivers/misc/vmw_vmci/vmci_event.c
158
sub->id = VMCI_EVENT_MAX;
drivers/misc/vmw_vmci/vmci_event.c
159
sub->event = event;
drivers/misc/vmw_vmci/vmci_event.c
160
sub->callback = callback;
drivers/misc/vmw_vmci/vmci_event.c
161
sub->callback_data = callback_data;
drivers/misc/vmw_vmci/vmci_event.c
162
INIT_LIST_HEAD(&sub->node);
drivers/misc/vmw_vmci/vmci_event.c
176
sub->id = subscription_id;
drivers/misc/vmw_vmci/vmci_event.c
183
list_add_rcu(&sub->node, &subscriber_array[event]);
drivers/misc/vmw_vmci/vmci_event.c
191
*new_subscription_id = sub->id;
drivers/net/ethernet/cavium/liquidio/liquidio_common.h
63
#define OPCODE_SUBCODE(op, sub) ((((op) & 0x0f) << 8) | ((sub) & 0x7f))
drivers/net/ethernet/chelsio/cxgb/vsc7326_reg.h
14
#define CRA(blk,sub,adr) ((((blk) & 0x7) << 13) | (((sub) & 0xf) << 9) | (((adr) & 0xff) << 1))
drivers/net/ethernet/intel/ixgbe/ixgbe_common.c
3775
u8 build, u8 sub, __always_unused u16 len,
drivers/net/ethernet/intel/ixgbe/ixgbe_common.c
3789
fw_cmd.ver_sub = sub;
drivers/net/ethernet/intel/ixgbe/ixgbe_x550.c
2775
u8 build, u8 sub, u16 len,
drivers/net/ethernet/intel/ixgbe/ixgbe_x550.c
2792
fw_cmd.ver_sub = sub;
drivers/net/ethernet/intel/ixgbe/ixgbe_x550.h
12
u8 build, u8 sub, u16 len,
drivers/net/ethernet/marvell/prestera/prestera.h
21
u16 sub;
drivers/net/ethernet/marvell/prestera/prestera_devlink.c
362
sw->dev->fw_rev.sub);
drivers/net/ethernet/marvell/prestera/prestera_ethtool.c
310
sw->dev->fw_rev.sub);
drivers/net/ethernet/marvell/prestera/prestera_pci.c
665
rev->sub = PRESTERA_FW_VER_PATCH(version);
drivers/net/ethernet/marvell/prestera/prestera_pci.c
698
rev->maj, rev->min, rev->sub);
drivers/net/ethernet/marvell/prestera/prestera_pci.c
751
fw->rev_supp.sub = 0;
drivers/net/ethernet/qlogic/netxen/netxen_nic_init.c
824
__le32 major, minor, sub;
drivers/net/ethernet/qlogic/netxen/netxen_nic_init.c
838
&major, &minor, &sub);
drivers/net/ethernet/qlogic/netxen/netxen_nic_init.c
846
return major + (minor << 8) + (sub << 16);
drivers/net/ethernet/qlogic/qlcnic/qlcnic_83xx_hw.c
3597
u32 major, minor, sub;
drivers/net/ethernet/qlogic/qlcnic/qlcnic_83xx_hw.c
3601
sub = QLC_SHARED_REG_RD32(adapter, QLCNIC_FW_VERSION_SUB);
drivers/net/ethernet/qlogic/qlcnic/qlcnic_83xx_hw.c
3603
if (adapter->fw_version != QLCNIC_VERSION_CODE(major, minor, sub)) {
drivers/net/ethernet/qlogic/qlcnic/qlcnic_init.c
1006
u32 major, minor, sub;
drivers/net/ethernet/qlogic/qlcnic/qlcnic_init.c
1024
&major, &minor, &sub);
drivers/net/ethernet/qlogic/qlcnic/qlcnic_init.c
1028
return major + (minor << 8) + (sub << 16);
drivers/net/ieee802154/mac802154_hwsim.c
863
struct hwsim_phy *sub;
drivers/net/ieee802154/mac802154_hwsim.c
866
list_for_each_entry(sub, &hwsim_phys, list) {
drivers/net/ieee802154/mac802154_hwsim.c
867
e = hwsim_alloc_edge(sub, 0xff);
drivers/net/ieee802154/mac802154_hwsim.c
874
list_for_each_entry(sub, &hwsim_phys, list) {
drivers/net/ieee802154/mac802154_hwsim.c
879
list_add_rcu(&e->list, &sub->edges);
drivers/net/pse-pd/pd692x0.c
1042
msg.data[3] = buf.sub[2];
drivers/net/pse-pd/pd692x0.c
1177
msg.sub[2] = i;
drivers/net/pse-pd/pd692x0.c
127
.sub = {0x07, 0x55, 0x00},
drivers/net/pse-pd/pd692x0.c
1325
msg.sub[2] = id;
drivers/net/pse-pd/pd692x0.c
133
.sub = {0x07, 0xd0, 0x4e},
drivers/net/pse-pd/pd692x0.c
1331
return (buf.sub[0] << 8 | buf.sub[1]) * 100000;
drivers/net/pse-pd/pd692x0.c
1342
msg.sub[2] = id;
drivers/net/pse-pd/pd692x0.c
1363
msg.sub[2] = id;
drivers/net/pse-pd/pd692x0.c
1383
msg.sub[2] = id;
drivers/net/pse-pd/pd692x0.c
139
.sub = {0x07, 0x1e, 0x21},
drivers/net/pse-pd/pd692x0.c
145
.sub = {0x05, 0x43},
drivers/net/pse-pd/pd692x0.c
151
.sub = {0x07, 0x43, 0x4e},
drivers/net/pse-pd/pd692x0.c
1528
buf.sub[0] & 0x01) {
drivers/net/pse-pd/pd692x0.c
1534
if (buf.sub[0] & 0x02) {
drivers/net/pse-pd/pd692x0.c
157
.sub = {0x05, 0xc0},
drivers/net/pse-pd/pd692x0.c
163
.sub = {0x05, 0xc1},
drivers/net/pse-pd/pd692x0.c
169
.sub = {0xff, 0x99, 0x15},
drivers/net/pse-pd/pd692x0.c
175
.sub = {0x05, 0xc4},
drivers/net/pse-pd/pd692x0.c
1807
if (buf.key != 0x03 || buf.sub[0] & 0x01) {
drivers/net/pse-pd/pd692x0.c
181
.sub = {0x05, 0xc5},
drivers/net/pse-pd/pd692x0.c
1811
if (buf.sub[0] & 0x02) {
drivers/net/pse-pd/pd692x0.c
187
.sub = {0x05, 0xc0},
drivers/net/pse-pd/pd692x0.c
193
.sub = {0x07, 0x0b, 0x57},
drivers/net/pse-pd/pd692x0.c
199
.sub = {0x07, 0x0b, 0x57},
drivers/net/pse-pd/pd692x0.c
203
.sub = {0x41, PD692X0_USER_BYTE, 0x4e},
drivers/net/pse-pd/pd692x0.c
271
if (buf.key != PD692X0_KEY_REPORT || buf.sub[0] || buf.sub[1])
drivers/net/pse-pd/pd692x0.c
281
if (buf.key != 0x03 || buf.echo != 0xff || buf.sub[0] & 0x1) {
drivers/net/pse-pd/pd692x0.c
387
(buf->sub[0] || buf->sub[1])) {
drivers/net/pse-pd/pd692x0.c
433
msg.sub[2] = id;
drivers/net/pse-pd/pd692x0.c
458
msg.sub[2] = id;
drivers/net/pse-pd/pd692x0.c
49
u8 sub[3];
drivers/net/pse-pd/pd692x0.c
544
msg.sub[2] = id;
drivers/net/pse-pd/pd692x0.c
552
if (ext_state_map->status_code == buf.sub[0]) {
drivers/net/pse-pd/pd692x0.c
678
msg.sub[2] = id;
drivers/net/pse-pd/pd692x0.c
683
if (buf.sub[1])
drivers/net/pse-pd/pd692x0.c
708
msg.sub[2] = id;
drivers/net/pse-pd/pd692x0.c
714
if ((buf.sub[0] & 0xf0) == 0x80 || (buf.sub[0] & 0xf0) == 0x90)
drivers/net/pse-pd/pd692x0.c
717
else if (buf.sub[0] == 0x1b || buf.sub[0] == 0x22)
drivers/net/pse-pd/pd692x0.c
720
else if (buf.sub[0] == 0x12)
drivers/net/pse-pd/pd692x0.c
743
msg.sub[2] = id;
drivers/net/pse-pd/pd692x0.c
767
msg.sub[2] = id;
drivers/net/pse-pd/pd692x0.c
787
msg.sub[2] = id;
drivers/net/pse-pd/pd692x0.c
813
ver.prod = buf.sub[2];
drivers/net/wireless/realtek/rtw89/core.h
4973
#define RTW89_FW_VER_CODE(major, minor, sub, idx) \
drivers/net/wireless/realtek/rtw89/core.h
4974
(((major) << 24) | ((minor) << 16) | ((sub) << 8) | (idx))
drivers/net/wireless/realtek/rtw89/core.h
4981
(mfw_hdr)->ver.sub, \
drivers/net/wireless/realtek/rtw89/fw.h
4313
u8 sub;
drivers/net/wireless/ti/wl1251/debugfs.c
50
#define DEBUGFS_FWSTATS_FILE(sub, name, buflen, fmt) \
drivers/net/wireless/ti/wl1251/debugfs.c
51
static ssize_t sub## _ ##name## _read(struct file *file, \
drivers/net/wireless/ti/wl1251/debugfs.c
62
wl->stats.fw_stats->sub.name); \
drivers/net/wireless/ti/wl1251/debugfs.c
66
static const struct file_operations sub## _ ##name## _ops = { \
drivers/net/wireless/ti/wl1251/debugfs.c
67
.read = sub## _ ##name## _read, \
drivers/net/wireless/ti/wl1251/debugfs.c
72
#define DEBUGFS_FWSTATS_ADD(sub, name) \
drivers/net/wireless/ti/wl1251/debugfs.c
73
DEBUGFS_ADD(sub## _ ##name, wl->debugfs.fw_statistics)
drivers/net/wireless/ti/wl1251/debugfs.c
75
#define DEBUGFS_FWSTATS_DEL(sub, name) \
drivers/net/wireless/ti/wl1251/debugfs.c
76
DEBUGFS_DEL(sub## _ ##name)
drivers/net/wireless/ti/wlcore/debugfs.h
100
DEBUGFS_ADD(sub## _ ##name, stats)
drivers/net/wireless/ti/wlcore/debugfs.h
53
#define DEBUGFS_FWSTATS_FILE(sub, name, fmt, struct_type) \
drivers/net/wireless/ti/wlcore/debugfs.h
54
static ssize_t sub## _ ##name## _read(struct file *file, \
drivers/net/wireless/ti/wlcore/debugfs.h
64
stats->sub.name); \
drivers/net/wireless/ti/wlcore/debugfs.h
67
static const struct file_operations sub## _ ##name## _ops = { \
drivers/net/wireless/ti/wlcore/debugfs.h
68
.read = sub## _ ##name## _read, \
drivers/net/wireless/ti/wlcore/debugfs.h
73
#define DEBUGFS_FWSTATS_FILE_ARRAY(sub, name, len, struct_type) \
drivers/net/wireless/ti/wlcore/debugfs.h
74
static ssize_t sub## _ ##name## _read(struct file *file, \
drivers/net/wireless/ti/wlcore/debugfs.h
88
"[%d] = %d\n", i, stats->sub.name[i]); \
drivers/net/wireless/ti/wlcore/debugfs.h
93
static const struct file_operations sub## _ ##name## _ops = { \
drivers/net/wireless/ti/wlcore/debugfs.h
94
.read = sub## _ ##name## _read, \
drivers/net/wireless/ti/wlcore/debugfs.h
99
#define DEBUGFS_FWSTATS_ADD(sub, name) \
drivers/nvdimm/btt.c
1313
int sub;
drivers/nvdimm/btt.c
1387
sub = arena->freelist[lane].sub;
drivers/nvdimm/btt.c
1388
ret = btt_flog_write(arena, lane, sub, &log);
drivers/nvdimm/btt.c
364
u32 sub, struct log_entry *ent, unsigned long flags)
drivers/nvdimm/btt.c
367
u32 group_slot = arena->log_index[sub];
drivers/nvdimm/btt.c
384
static int btt_flog_write(struct arena_info *arena, u32 lane, u32 sub,
drivers/nvdimm/btt.c
389
ret = __btt_log_write(arena, lane, sub, ent, NVDIMM_IO_ATOMIC);
drivers/nvdimm/btt.c
394
arena->freelist[lane].sub = 1 - arena->freelist[lane].sub;
drivers/nvdimm/btt.c
556
arena->freelist[i].sub = 1 - new;
drivers/nvdimm/btt.h
119
u8 sub;
drivers/pci/controller/cadence/pcie-cadence-lga-regs.h
29
#define CDNS_PCIE_LM_ID_SUBSYS(sub) \
drivers/pci/controller/cadence/pcie-cadence-lga-regs.h
30
(((sub) << CDNS_PCIE_LM_ID_SUBSYS_SHIFT) & CDNS_PCIE_LM_ID_SUBSYS_MASK)
drivers/pci/pci.h
282
bool pci_ea_fixed_busnrs(struct pci_dev *dev, u8 *sec, u8 *sub);
drivers/pci/probe.c
1346
bool pci_ea_fixed_busnrs(struct pci_dev *dev, u8 *sec, u8 *sub)
drivers/pci/probe.c
1368
*sub = ea_sub;
drivers/phy/marvell/phy-armada38x-comphy.c
118
static int a38x_comphy_set_mode(struct phy *phy, enum phy_mode mode, int sub)
drivers/phy/marvell/phy-armada38x-comphy.c
127
switch (sub) {
drivers/platform/x86/intel_scu_ipc.c
444
int sub)
drivers/platform/x86/intel_scu_ipc.c
455
cmdval = sub << 12 | cmd;
drivers/platform/x86/intel_scu_ipc.c
481
int sub, const void *in, size_t inlen,
drivers/platform/x86/intel_scu_ipc.c
502
cmdval = (size << 16) | (sub << 12) | cmd;
drivers/regulator/max1586.c
152
struct max1586_subdev_data *sub;
drivers/regulator/max1586.c
192
sub = pdata->subdevs;
drivers/regulator/max1586.c
195
sub->id = i;
drivers/regulator/max1586.c
196
sub->name = rmatch[i].of_node->name;
drivers/regulator/max1586.c
197
sub->platform_data = rmatch[i].init_data;
drivers/regulator/max1586.c
198
sub++;
drivers/regulator/max8660.c
324
struct max8660_subdev_data *sub;
drivers/regulator/max8660.c
349
sub = pdata->subdevs;
drivers/regulator/max8660.c
352
sub->id = i;
drivers/regulator/max8660.c
353
sub->name = rmatch[i].name;
drivers/regulator/max8660.c
354
sub->platform_data = rmatch[i].init_data;
drivers/regulator/max8660.c
356
sub++;
drivers/scsi/aacraid/aachba.c
2736
pmcmd->sub = (scsicmd->cmnd[4] & 1) ?
drivers/scsi/aacraid/aacraid.h
1961
__le32 sub; /* CT_PM_* */
drivers/scsi/bnx2fc/bnx2fc_fcoe.c
1105
u8 sub;
drivers/scsi/bnx2fc/bnx2fc_fcoe.c
1110
sub = fiph->fip_subcode;
drivers/scsi/bnx2fc/bnx2fc_fcoe.c
1112
if (op == FIP_OP_CTRL && sub == FIP_SC_SOL && bnx2fc_log_fka)
drivers/scsi/elx/libefc_sli/sli4.h
3722
sli_cmd_fill_hdr(struct sli4_rqst_hdr *hdr, u8 opc, u8 sub, u32 ver, __le32 len)
drivers/scsi/elx/libefc_sli/sli4.h
3725
hdr->subsystem = sub;
drivers/scsi/fcoe/fcoe_ctlr.c
1145
u8 sub;
drivers/scsi/fcoe/fcoe_ctlr.c
1154
sub = fiph->fip_subcode;
drivers/scsi/fcoe/fcoe_ctlr.c
1155
if (sub != FIP_SC_REQ && sub != FIP_SC_REP)
drivers/scsi/fcoe/fcoe_ctlr.c
1247
sub == FIP_SC_REP && fip->mode != FIP_MODE_VN2VN) {
drivers/scsi/fcoe/fcoe_ctlr.c
1535
u8 sub;
drivers/scsi/fcoe/fcoe_ctlr.c
1552
sub = fiph->fip_subcode;
drivers/scsi/fcoe/fcoe_ctlr.c
1590
if (op == FIP_OP_DISC && sub == FIP_SC_ADV)
drivers/scsi/fcoe/fcoe_ctlr.c
1592
else if (op == FIP_OP_CTRL && sub == FIP_SC_CLR_VLINK)
drivers/scsi/fcoe/fcoe_ctlr.c
2013
enum fip_vn2vn_subcode sub,
drivers/scsi/fcoe/fcoe_ctlr.c
2032
if (sub == FIP_SC_VN_CLAIM_NOTIFY || sub == FIP_SC_VN_CLAIM_REP) {
drivers/scsi/fcoe/fcoe_ctlr.c
2048
if (sub == FIP_SC_VN_BEACON) {
drivers/scsi/fcoe/fcoe_ctlr.c
2058
frame->fip.fip_subcode = sub;
drivers/scsi/fcoe/fcoe_ctlr.c
2080
if (sub == FIP_SC_VN_CLAIM_NOTIFY || sub == FIP_SC_VN_CLAIM_REP) {
drivers/scsi/fcoe/fcoe_ctlr.c
2278
u8 sub;
drivers/scsi/fcoe/fcoe_ctlr.c
2283
sub = fiph->fip_subcode;
drivers/scsi/fcoe/fcoe_ctlr.c
2284
switch (sub) {
drivers/scsi/fcoe/fcoe_ctlr.c
2298
LIBFCOE_FIP_DBG(fip, "vn_parse unknown subcode %u\n", sub);
drivers/scsi/fcoe/fcoe_ctlr.c
2319
dtype, sub);
drivers/scsi/fcoe/fcoe_ctlr.c
2735
enum fip_vn2vn_subcode sub;
drivers/scsi/fcoe/fcoe_ctlr.c
2740
sub = fiph->fip_subcode;
drivers/scsi/fcoe/fcoe_ctlr.c
2747
sub, vlan_id);
drivers/scsi/fcoe/fcoe_ctlr.c
2759
switch (sub) {
drivers/scsi/fcoe/fcoe_ctlr.c
2776
LIBFCOE_FIP_DBG(fip, "vn_recv unknown subcode %d\n", sub);
drivers/scsi/fcoe/fcoe_ctlr.c
2807
u8 sub;
drivers/scsi/fcoe/fcoe_ctlr.c
2812
sub = fiph->fip_subcode;
drivers/scsi/fcoe/fcoe_ctlr.c
2813
switch (sub) {
drivers/scsi/fcoe/fcoe_ctlr.c
2818
LIBFCOE_FIP_DBG(fip, "vn_parse unknown subcode %u\n", sub);
drivers/scsi/fcoe/fcoe_ctlr.c
2839
dtype, sub);
drivers/scsi/fcoe/fcoe_ctlr.c
2891
enum fip_vlan_subcode sub,
drivers/scsi/fcoe/fcoe_ctlr.c
2925
frame->fip.fip_subcode = sub;
drivers/scsi/fcoe/fcoe_ctlr.c
2955
enum fip_vlan_subcode sub = FIP_SC_VL_NOTE;
drivers/scsi/fcoe/fcoe_ctlr.c
2958
sub = FIP_SC_VL_VN2VN_NOTE;
drivers/scsi/fcoe/fcoe_ctlr.c
2960
fcoe_ctlr_vlan_send(fip, sub, frport->enode_mac);
drivers/scsi/fcoe/fcoe_ctlr.c
2971
enum fip_vlan_subcode sub;
drivers/scsi/fcoe/fcoe_ctlr.c
2976
sub = fiph->fip_subcode;
drivers/scsi/fcoe/fcoe_ctlr.c
2983
if (sub == FIP_SC_VL_REQ)
drivers/scsi/fnic/fip.c
694
u8 sub;
drivers/scsi/fnic/fip.c
700
sub = fiph->fip_subcode;
drivers/scsi/fnic/fip.c
704
if (op == FIP_OP_DISC && sub == FIP_SC_REP)
drivers/scsi/fnic/fip.c
706
else if (op == FIP_OP_VLAN && sub == FIP_SC_REP)
drivers/scsi/fnic/fip.c
708
else if (op == FIP_OP_CTRL && sub == FIP_SC_REP)
drivers/scsi/fnic/fip.c
710
else if (op == FIP_OP_LS && sub == FIP_SC_REP)
drivers/scsi/fnic/fip.h
143
u8 sub = fiph->fip_subcode;
drivers/scsi/fnic/fip.h
147
pfx, op, sub, len);
drivers/scsi/hisi_sas/hisi_sas.h
135
const struct hisi_sas_hw_error *sub;
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c
3042
.sub = axi_error,
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c
3047
.sub = fifo_error,
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c
3079
if (axi_error->sub) {
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c
3080
const struct hisi_sas_hw_error *sub = axi_error->sub;
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c
3083
for (; sub->msk || sub->msg; sub++) {
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c
3084
if (!(err_value & sub->msk))
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c
3087
sub->msg, irq_value);
drivers/scsi/hisi_sas/hisi_sas_v3_hw.c
2146
.sub = axi_error,
drivers/scsi/hisi_sas/hisi_sas_v3_hw.c
2151
.sub = fifo_error,
drivers/scsi/hisi_sas/hisi_sas_v3_hw.c
2200
if (error->sub) {
drivers/scsi/hisi_sas/hisi_sas_v3_hw.c
2201
const struct hisi_sas_hw_error *sub = error->sub;
drivers/scsi/hisi_sas/hisi_sas_v3_hw.c
2204
for (; sub->msk || sub->msg; sub++) {
drivers/scsi/hisi_sas/hisi_sas_v3_hw.c
2205
if (!(err_value & sub->msk))
drivers/scsi/hisi_sas/hisi_sas_v3_hw.c
2209
sub->msg, irq_value);
drivers/scsi/qedf/qedf_fip.c
127
u8 sub;
drivers/scsi/qedf/qedf_fip.c
139
sub = fiph->fip_subcode;
drivers/scsi/qedf/qedf_fip.c
151
"dest=%pM op=%x sub=%x vlan=%04x.", eth_hdr->h_dest, op, sub,
drivers/scsi/qedf/qedf_fip.c
178
u8 sub;
drivers/scsi/qedf/qedf_fip.c
189
sub = fiph->fip_subcode;
drivers/scsi/qedf/qedf_fip.c
194
sub, vlan);
drivers/scsi/qedf/qedf_fip.c
211
if (op == FIP_OP_VLAN && sub == FIP_SC_VL_NOTE) {
drivers/scsi/qedf/qedf_fip.c
214
} else if (op == FIP_OP_CTRL && sub == FIP_SC_CLR_VLINK) {
drivers/scsi/qedi/qedi_main.c
2041
char *fmt, *ip, *sub, *gw;
drivers/scsi/qedi/qedi_main.c
2056
sub = ipv6_en ? initiator->ipv6.subnet_mask.byte :
drivers/scsi/qedi/qedi_main.c
2064
sub = ip;
drivers/scsi/qedi/qedi_main.c
2074
rc = snprintf(buf, ip_len, fmt, sub);
drivers/staging/media/atomisp/pci/atomisp_subdev.c
143
struct v4l2_event_subscription *sub)
drivers/staging/media/atomisp/pci/atomisp_subdev.c
148
if (sub->type != V4L2_EVENT_FRAME_SYNC &&
drivers/staging/media/atomisp/pci/atomisp_subdev.c
149
sub->type != V4L2_EVENT_FRAME_END &&
drivers/staging/media/atomisp/pci/atomisp_subdev.c
150
sub->type != V4L2_EVENT_ATOMISP_3A_STATS_READY &&
drivers/staging/media/atomisp/pci/atomisp_subdev.c
151
sub->type != V4L2_EVENT_ATOMISP_METADATA_READY &&
drivers/staging/media/atomisp/pci/atomisp_subdev.c
152
sub->type != V4L2_EVENT_ATOMISP_PAUSE_BUFFER &&
drivers/staging/media/atomisp/pci/atomisp_subdev.c
153
sub->type != V4L2_EVENT_ATOMISP_CSS_RESET &&
drivers/staging/media/atomisp/pci/atomisp_subdev.c
154
sub->type != V4L2_EVENT_ATOMISP_ACC_COMPLETE)
drivers/staging/media/atomisp/pci/atomisp_subdev.c
157
if (sub->type == V4L2_EVENT_FRAME_SYNC &&
drivers/staging/media/atomisp/pci/atomisp_subdev.c
161
return v4l2_event_subscribe(fh, sub, 16, NULL);
drivers/staging/media/imx/imx-media-capture.c
239
const struct v4l2_event_subscription *sub)
drivers/staging/media/imx/imx-media-capture.c
241
switch (sub->type) {
drivers/staging/media/imx/imx-media-capture.c
243
return v4l2_event_subscribe(fh, sub, 0, NULL);
drivers/staging/media/imx/imx-media-capture.c
550
const struct v4l2_event_subscription *sub)
drivers/staging/media/imx/imx-media-capture.c
552
switch (sub->type) {
drivers/staging/media/imx/imx-media-capture.c
554
return v4l2_event_subscribe(fh, sub, 0, NULL);
drivers/staging/media/imx/imx-media-capture.c
556
return v4l2_src_change_event_subscribe(fh, sub);
drivers/staging/media/imx/imx-media-capture.c
558
return v4l2_ctrl_subscribe_event(fh, sub);
drivers/staging/media/imx/imx-media-csi.c
1756
struct v4l2_event_subscription *sub)
drivers/staging/media/imx/imx-media-csi.c
1758
if (sub->type != V4L2_EVENT_IMX_FRAME_INTERVAL_ERROR)
drivers/staging/media/imx/imx-media-csi.c
1760
if (sub->id != 0)
drivers/staging/media/imx/imx-media-csi.c
1763
return v4l2_event_subscribe(fh, sub, 0, NULL);
drivers/staging/media/ipu7/ipu7-isys-csi2.c
67
struct v4l2_event_subscription *sub)
drivers/staging/media/ipu7/ipu7-isys-csi2.c
74
sub->type, sub->id);
drivers/staging/media/ipu7/ipu7-isys-csi2.c
76
switch (sub->type) {
drivers/staging/media/ipu7/ipu7-isys-csi2.c
78
return v4l2_event_subscribe(fh, sub, 10, NULL);
drivers/staging/media/ipu7/ipu7-isys-csi2.c
80
return v4l2_ctrl_subdev_subscribe_event(sd, fh, sub);
drivers/staging/media/meson/vdec/vdec.c
754
const struct v4l2_event_subscription *sub)
drivers/staging/media/meson/vdec/vdec.c
756
switch (sub->type) {
drivers/staging/media/meson/vdec/vdec.c
759
return v4l2_event_subscribe(fh, sub, 0, NULL);
drivers/staging/media/meson/vdec/vdec.c
761
return v4l2_ctrl_subscribe_event(fh, sub);
drivers/staging/media/tegra-video/vi.c
595
const struct v4l2_event_subscription *sub)
drivers/staging/media/tegra-video/vi.c
597
switch (sub->type) {
drivers/staging/media/tegra-video/vi.c
599
return v4l2_event_subscribe(fh, sub, 4, NULL);
drivers/staging/media/tegra-video/vi.c
602
return v4l2_ctrl_subscribe_event(fh, sub);
drivers/usb/gadget/function/uvc_v4l2.c
570
const struct v4l2_event_subscription *sub)
drivers/usb/gadget/function/uvc_v4l2.c
576
if (sub->type < UVC_EVENT_FIRST || sub->type > UVC_EVENT_LAST)
drivers/usb/gadget/function/uvc_v4l2.c
581
if (sub->type == UVC_EVENT_SETUP && uvc->func_connected)
drivers/usb/gadget/function/uvc_v4l2.c
584
ret = v4l2_event_subscribe(fh, sub, 2, NULL);
drivers/usb/gadget/function/uvc_v4l2.c
588
if (sub->type == UVC_EVENT_SETUP) {
drivers/usb/gadget/function/uvc_v4l2.c
609
const struct v4l2_event_subscription *sub)
drivers/usb/gadget/function/uvc_v4l2.c
615
ret = v4l2_event_unsubscribe(fh, sub);
drivers/usb/gadget/function/uvc_v4l2.c
619
if (sub->type == UVC_EVENT_SETUP && handle->is_uvc_app_handle) {
drivers/video/fbdev/kyro/STG4000InitDevice.c
244
u16 core_pll = 0, sub;
drivers/video/fbdev/kyro/STG4000InitDevice.c
274
pci_read_config_word(pDev, PCI_CONFIG_SUBSYS_ID, &sub);
drivers/video/fbdev/kyro/STG4000InitDevice.c
276
ulChipSpeed = InitSDRAMRegisters(pSTGReg, (u32)sub,
drivers/video/fbdev/via/viafbdev.c
1464
bool add, sub;
drivers/video/fbdev/via/viafbdev.c
1472
sub = buf[0] == '-';
drivers/video/fbdev/via/viafbdev.c
1473
if (add || sub)
drivers/video/fbdev/via/viafbdev.c
1482
else if (sub)
drivers/watchdog/intel-mid_wdt.c
47
wdt_command(struct mid_wdt *mid, int sub, const void *in, size_t inlen, size_t size)
drivers/watchdog/intel-mid_wdt.c
51
return intel_scu_ipc_dev_command_with_size(scu, IPC_WATCHDOG, sub, in,
fs/afs/proc.c
572
char *s, *p, *sub;
fs/afs/proc.c
610
sub = (char *)afs_init_sysname;
fs/afs/proc.c
613
sub = kmemdup(s, len + 1, GFP_KERNEL);
fs/afs/proc.c
614
if (!sub)
fs/afs/proc.c
618
sysnames->subs[sysnames->nr] = sub;
fs/f2fs/namei.c
25
static inline bool is_extension_exist(const unsigned char *s, const char *sub,
fs/f2fs/namei.c
29
size_t sublen = strlen(sub);
fs/f2fs/namei.c
32
if (sublen == 1 && *sub == '*')
fs/f2fs/namei.c
46
return !strncasecmp(s + slen - sublen, sub, sublen);
fs/f2fs/namei.c
52
if (!strncasecmp(s + i + 1, sub, sublen)) {
fs/f2fs/namei.c
63
static inline bool is_temperature_extension(const unsigned char *s, const char *sub)
fs/f2fs/namei.c
65
return is_extension_exist(s, sub, true, false);
fs/f2fs/namei.c
68
static inline bool is_compress_extension(const unsigned char *s, const char *sub)
fs/f2fs/namei.c
70
return is_extension_exist(s, sub, true, true);
fs/ntfs3/ntfs_fs.h
869
bool run_collapse_range(struct runs_tree *run, CLST vcn, CLST len, CLST sub);
fs/ntfs3/run.c
551
bool run_collapse_range(struct runs_tree *run, CLST vcn, CLST len, CLST sub)
fs/ntfs3/run.c
576
return run_collapse_range(run, vcn, len, sub);
fs/ntfs3/run.c
610
if (sub) {
fs/ntfs3/run.c
613
r->vcn -= sub;
fs/xfs/scrub/agb_bitmap.h
43
struct xagb_bitmap *sub)
fs/xfs/scrub/agb_bitmap.h
45
return xbitmap32_disunion(&bitmap->agbitmap, &sub->agbitmap);
fs/xfs/scrub/bitmap.c
216
struct xbitmap64 *sub)
fs/xfs/scrub/bitmap.c
221
if (xbitmap64_empty(bitmap) || xbitmap64_empty(sub))
fs/xfs/scrub/bitmap.c
224
for_each_xbitmap64_extent(bn, sub) {
fs/xfs/scrub/bitmap.c
491
struct xbitmap32 *sub)
fs/xfs/scrub/bitmap.c
496
if (xbitmap32_empty(bitmap) || xbitmap32_empty(sub))
fs/xfs/scrub/bitmap.c
499
for_each_xbitmap32_extent(bn, sub) {
fs/xfs/scrub/bitmap.h
20
int xbitmap64_disunion(struct xbitmap64 *bitmap, struct xbitmap64 *sub);
fs/xfs/scrub/bitmap.h
48
int xbitmap32_disunion(struct xbitmap32 *bitmap, struct xbitmap32 *sub);
fs/xfs/scrub/common.c
1409
struct xfs_scrub_subord *sub;
fs/xfs/scrub/common.c
1412
sub = xchk_scrub_create_subord(sc, scrub_type);
fs/xfs/scrub/common.c
1413
if (!sub)
fs/xfs/scrub/common.c
1416
error = sub->sc.ops->scrub(&sub->sc);
fs/xfs/scrub/common.c
1417
xchk_scrub_free_subord(sub);
fs/xfs/scrub/repair.c
1129
struct xfs_scrub_subord *sub;
fs/xfs/scrub/repair.c
1138
sub = xchk_scrub_create_subord(sc, scrub_type);
fs/xfs/scrub/repair.c
1139
if (!sub)
fs/xfs/scrub/repair.c
1142
error = sub->sc.ops->scrub(&sub->sc);
fs/xfs/scrub/repair.c
1145
if (!xrep_will_attempt(&sub->sc))
fs/xfs/scrub/repair.c
1152
error = sub->sc.ops->repair(&sub->sc);
fs/xfs/scrub/repair.c
1161
error = xfs_defer_finish(&sub->sc.tp);
fs/xfs/scrub/repair.c
1164
error = xfs_trans_roll(&sub->sc.tp);
fs/xfs/scrub/repair.c
1172
sub->sc.sm->sm_flags &= ~XFS_SCRUB_FLAGS_OUT;
fs/xfs/scrub/repair.c
1173
error = sub->sc.ops->scrub(&sub->sc);
fs/xfs/scrub/repair.c
1178
if (xchk_needs_repair(sub->sc.sm)) {
fs/xfs/scrub/repair.c
1183
xchk_scrub_free_subord(sub);
fs/xfs/scrub/scrub.c
196
struct xfs_scrub_subord *sub)
fs/xfs/scrub/scrub.c
198
struct xfs_scrub *sc = sub->parent_sc;
fs/xfs/scrub/scrub.c
200
ASSERT(sc->ip == sub->sc.ip);
fs/xfs/scrub/scrub.c
201
ASSERT(sc->orphanage == sub->sc.orphanage);
fs/xfs/scrub/scrub.c
202
ASSERT(sc->tempip == sub->sc.tempip);
fs/xfs/scrub/scrub.c
204
sc->sm->sm_type = sub->old_smtype;
fs/xfs/scrub/scrub.c
205
sc->sm->sm_flags = sub->old_smflags |
fs/xfs/scrub/scrub.c
207
sc->tp = sub->sc.tp;
fs/xfs/scrub/scrub.c
209
if (sub->sc.buf) {
fs/xfs/scrub/scrub.c
210
if (sub->sc.buf_cleanup)
fs/xfs/scrub/scrub.c
211
sub->sc.buf_cleanup(sub->sc.buf);
fs/xfs/scrub/scrub.c
212
kvfree(sub->sc.buf);
fs/xfs/scrub/scrub.c
214
if (sub->sc.xmbtp)
fs/xfs/scrub/scrub.c
215
xmbuf_free(sub->sc.xmbtp);
fs/xfs/scrub/scrub.c
216
if (sub->sc.xfile)
fs/xfs/scrub/scrub.c
217
xfile_destroy(sub->sc.xfile);
fs/xfs/scrub/scrub.c
219
sc->ilock_flags = sub->sc.ilock_flags;
fs/xfs/scrub/scrub.c
220
sc->orphanage_ilock_flags = sub->sc.orphanage_ilock_flags;
fs/xfs/scrub/scrub.c
221
sc->temp_ilock_flags = sub->sc.temp_ilock_flags;
fs/xfs/scrub/scrub.c
223
kfree(sub);
fs/xfs/scrub/scrub.c
633
struct xfs_scrub_subord *sub;
fs/xfs/scrub/scrub.c
635
sub = kzalloc_obj(*sub, XCHK_GFP_FLAGS);
fs/xfs/scrub/scrub.c
636
if (!sub)
fs/xfs/scrub/scrub.c
639
sub->old_smtype = sc->sm->sm_type;
fs/xfs/scrub/scrub.c
640
sub->old_smflags = sc->sm->sm_flags;
fs/xfs/scrub/scrub.c
641
sub->parent_sc = sc;
fs/xfs/scrub/scrub.c
642
memcpy(&sub->sc, sc, sizeof(struct xfs_scrub));
fs/xfs/scrub/scrub.c
643
sub->sc.ops = &meta_scrub_ops[subtype];
fs/xfs/scrub/scrub.c
644
sub->sc.sm->sm_type = subtype;
fs/xfs/scrub/scrub.c
645
sub->sc.sm->sm_flags &= ~XFS_SCRUB_FLAGS_OUT;
fs/xfs/scrub/scrub.c
646
sub->sc.buf = NULL;
fs/xfs/scrub/scrub.c
647
sub->sc.buf_cleanup = NULL;
fs/xfs/scrub/scrub.c
648
sub->sc.xfile = NULL;
fs/xfs/scrub/scrub.c
649
sub->sc.xmbtp = NULL;
fs/xfs/scrub/scrub.c
651
return sub;
fs/xfs/scrub/scrub.h
238
void xchk_scrub_free_subord(struct xfs_scrub_subord *sub);
include/asm-generic/atomic.h
100
ATOMIC_FETCH_OP(sub, -)
include/asm-generic/atomic.h
106
ATOMIC_OP(sub, -)
include/asm-generic/atomic.h
97
ATOMIC_OP_RETURN(sub, -)
include/asm-generic/atomic64.h
33
ATOMIC64_OPS(sub)
include/linux/bpf_verifier.h
831
static inline u16 bpf_in_stack_arg_cnt(const struct bpf_subprog_info *sub)
include/linux/bpf_verifier.h
833
if (sub->arg_cnt > MAX_BPF_FUNC_REG_ARGS)
include/linux/bpf_verifier.h
834
return sub->arg_cnt - MAX_BPF_FUNC_REG_ARGS;
include/linux/ceph/mon_client.h
129
bool ceph_monc_want_map(struct ceph_mon_client *monc, int sub, u32 epoch,
include/linux/ceph/mon_client.h
131
void ceph_monc_got_map(struct ceph_mon_client *monc, int sub, u32 epoch);
include/linux/ieee80211.h
2740
#define for_each_subelement(sub, element) \
include/linux/ieee80211.h
2741
for_each_element(sub, (element)->data, (element)->datalen)
include/linux/ieee80211.h
2743
#define for_each_subelement_id(sub, id, element) \
include/linux/ieee80211.h
2744
for_each_element_id(sub, id, (element)->data, (element)->datalen)
include/linux/ieee80211.h
2746
#define for_each_subelement_extid(sub, extid, element) \
include/linux/ieee80211.h
2747
for_each_element_extid(sub, extid, (element)->data, (element)->datalen)
include/linux/lockdep.h
169
#define lockdep_set_class_and_subclass(lock, key, sub) \
include/linux/lockdep.h
170
lockdep_init_map_type(&(lock)->dep_map, #key, key, sub, \
include/linux/lockdep.h
175
#define lockdep_set_subclass(lock, sub) \
include/linux/lockdep.h
176
lockdep_init_map_type(&(lock)->dep_map, (lock)->dep_map.name, (lock)->dep_map.key, sub,\
include/linux/lockdep.h
343
# define lockdep_init_map_type(lock, name, key, sub, inner, outer, type) \
include/linux/lockdep.h
345
# define lockdep_init_map_waits(lock, name, key, sub, inner, outer) \
include/linux/lockdep.h
347
# define lockdep_init_map_wait(lock, name, key, sub, inner) \
include/linux/lockdep.h
349
# define lockdep_init_map(lock, name, key, sub) \
include/linux/lockdep.h
354
#define lockdep_set_class_and_subclass(lock, key, sub) \
include/linux/lockdep.h
356
#define lockdep_set_subclass(lock, sub) do { } while (0)
include/linux/platform_data/x86/intel_scu_ipc.h
59
int sub);
include/linux/platform_data/x86/intel_scu_ipc.h
61
int sub, const void *in, size_t inlen,
include/linux/platform_data/x86/intel_scu_ipc.h
65
int sub, const void *in, size_t inlen,
include/linux/platform_data/x86/intel_scu_ipc.h
68
return intel_scu_ipc_dev_command_with_size(scu, cmd, sub, in, inlen,
include/linux/pm.h
839
extern int device_pm_wait_for_dev(struct device *sub, struct device *dev);
include/media/v4l2-ctrls.h
1335
const struct v4l2_event_subscription *sub);
include/media/v4l2-ctrls.h
1554
struct v4l2_event_subscription *sub);
include/media/v4l2-event.h
155
const struct v4l2_event_subscription *sub,
include/media/v4l2-event.h
165
const struct v4l2_event_subscription *sub);
include/media/v4l2-event.h
187
struct v4l2_event_subscription *sub);
include/media/v4l2-event.h
196
const struct v4l2_event_subscription *sub);
include/media/v4l2-event.h
207
struct v4l2_event_subscription *sub);
include/media/v4l2-ioctl.h
573
const struct v4l2_event_subscription *sub);
include/media/v4l2-ioctl.h
575
const struct v4l2_event_subscription *sub);
include/media/v4l2-subdev.h
218
struct v4l2_event_subscription *sub);
include/media/v4l2-subdev.h
220
struct v4l2_event_subscription *sub);
include/rdma/ib_verbs.h
5150
int ib_del_sub_device_and_put(struct ib_device *sub);
kernel/bpf/btf.c
7980
struct bpf_subprog_info *sub = subprog_info(env, subprog);
kernel/bpf/btf.c
7991
if (sub->args_cached)
kernel/bpf/btf.c
8032
sub->arg_cnt = nargs;
kernel/bpf/btf.c
8044
sub->stack_arg_cnt = nargs - MAX_BPF_FUNC_REG_ARGS;
kernel/bpf/btf.c
8092
sub->args[i].arg_type = ARG_PTR_TO_CTX;
kernel/bpf/btf.c
8100
sub->args[i].arg_type = ARG_PTR_TO_DYNPTR;
kernel/bpf/btf.c
8115
sub->args[i].arg_type = ARG_PTR_TO_BTF_ID | PTR_TRUSTED;
kernel/bpf/btf.c
8117
sub->args[i].arg_type |= PTR_MAYBE_NULL;
kernel/bpf/btf.c
8118
sub->args[i].btf_id = kern_type_id;
kernel/bpf/btf.c
8132
sub->args[i].arg_type = ARG_PTR_TO_MEM | MEM_RDONLY | PTR_UNTRUSTED;
kernel/bpf/btf.c
8133
sub->args[i].mem_size = 0;
kernel/bpf/btf.c
8149
sub->args[i].arg_type = ARG_PTR_TO_BTF_ID | PTR_UNTRUSTED;
kernel/bpf/btf.c
8150
sub->args[i].btf_id = kern_type_id;
kernel/bpf/btf.c
8158
sub->args[i].arg_type = ARG_PTR_TO_ARENA;
kernel/bpf/btf.c
8178
sub->args[i].arg_type = ARG_PTR_TO_MEM | PTR_MAYBE_NULL;
kernel/bpf/btf.c
8180
sub->args[i].arg_type &= ~PTR_MAYBE_NULL;
kernel/bpf/btf.c
8181
sub->args[i].mem_size = mem_size;
kernel/bpf/btf.c
8191
sub->args[i].arg_type = ARG_ANYTHING;
kernel/bpf/btf.c
8201
sub->args_cached = true;
kernel/bpf/check_btf.c
218
struct bpf_subprog_info *sub;
kernel/bpf/check_btf.c
249
sub = env->subprog_info;
kernel/bpf/check_btf.c
307
if (linfo[i].insn_off == sub[s].start) {
kernel/bpf/check_btf.c
308
sub[s].linfo_idx = i;
kernel/bpf/check_btf.c
310
} else if (sub[s].start < linfo[i].insn_off) {
kernel/bpf/core.c
1644
const struct bpf_subprog_info *sub;
kernel/bpf/core.c
1648
sub = &env->subprog_info[prog->aux->func_idx];
kernel/bpf/core.c
1649
return sub->stack_arg_cnt - bpf_in_stack_arg_cnt(sub);
kernel/bpf/liveness.c
2023
int sub = env->subprog_topo_order[k];
kernel/bpf/liveness.c
2025
if (info[sub].at_in && !bpf_subprog_is_global(env, sub))
kernel/bpf/liveness.c
2027
instance = call_instance(env, NULL, 0, sub);
kernel/bpf/verifier.c
18358
struct bpf_subprog_info *sub = subprog_info(env, subprog);
kernel/bpf/verifier.c
18413
if (sub->arg_cnt != 1 || sub->args[0].arg_type != ARG_ANYTHING) {
kernel/bpf/verifier.c
18419
for (i = BPF_REG_1; i <= min_t(u32, sub->arg_cnt, MAX_BPF_FUNC_REG_ARGS); i++) {
kernel/bpf/verifier.c
18420
arg = &sub->args[i - BPF_REG_1];
kernel/bpf/verifier.c
18462
if (env->prog->type == BPF_PROG_TYPE_EXT && sub->arg_cnt > MAX_BPF_FUNC_REG_ARGS) {
kernel/bpf/verifier.c
18475
if (ret || sub->arg_cnt != 1 || sub->args[0].arg_type != ARG_PTR_TO_CTX) {
kernel/bpf/verifier.c
18477
sub->arg_cnt = 1;
kernel/bpf/verifier.c
18478
sub->stack_arg_cnt = 0;
kernel/bpf/verifier.c
9134
struct bpf_subprog_info *sub = subprog_info(env, subprog);
kernel/bpf/verifier.c
9143
if (bpf_in_stack_arg_cnt(sub) > 0) {
kernel/bpf/verifier.c
9144
err = check_outgoing_stack_args(env, caller, sub->arg_cnt);
kernel/bpf/verifier.c
9151
ret = check_outgoing_stack_args(env, caller, sub->arg_cnt);
kernel/bpf/verifier.c
9158
for (i = 0; i < sub->arg_cnt; i++) {
kernel/bpf/verifier.c
9161
struct bpf_subprog_arg_info *arg = &sub->args[i];
kernel/events/core.c
14908
struct perf_event *sub;
kernel/events/core.c
14920
for_each_sibling_event(sub, parent_event) {
kernel/events/core.c
14921
child_ctr = inherit_event(sub, parent, parent_ctx,
kernel/events/core.c
14926
if (sub->aux_event == parent_event && child_ctr &&
kernel/events/core.c
4814
struct perf_event *sub, *event = data->event;
kernel/events/core.c
4849
for_each_sibling_event(sub, event)
kernel/events/core.c
4850
perf_pmu_read(sub);
kernel/events/core.c
6079
struct perf_event *sub, *parent;
kernel/events/core.c
6141
for_each_sibling_event(sub, leader) {
kernel/events/core.c
6142
values[n++] += perf_event_count(sub, false);
kernel/events/core.c
6144
values[n++] = primary_event_id(sub);
kernel/events/core.c
6146
values[n++] = atomic64_read(&sub->lost_samples);
kernel/events/core.c
8162
struct perf_event *leader = event->group_leader, *sub;
kernel/events/core.c
8194
for_each_sibling_event(sub, leader) {
kernel/events/core.c
8197
if ((sub != event) && !handle->skip_read)
kernel/events/core.c
8198
perf_pmu_read(sub);
kernel/events/core.c
8200
values[n++] = perf_event_count(sub, self);
kernel/events/core.c
8202
values[n++] = primary_event_id(sub);
kernel/events/core.c
8204
values[n++] = atomic64_read(&sub->lost_samples);
kernel/exit.c
558
unsigned long fp, sub;
kernel/exit.c
568
sub = min(fp, current->total_numa_faults);
kernel/exit.c
569
WRITE_ONCE(mm->sc_stat.footprint, fp - sub);
kernel/sched/ext/cid.c
617
bool scx_cmask_subset(const struct scx_cmask *sub, const struct scx_cmask *super)
kernel/sched/ext/cid.c
620
u32 sub_end = sub->base + sub->nr_cids;
kernel/sched/ext/cid.c
627
if (sub->base < super->base &&
kernel/sched/ext/cid.c
628
cmask_any_set_in_range(sub, sub->base, min(super->base, sub_end)))
kernel/sched/ext/cid.c
631
cmask_any_set_in_range(sub, max(sub->base, super_end), sub_end))
kernel/sched/ext/cid.c
635
sub->bits, sub->base, sub->nr_cids, CMASK_OP2_SUBSET);
kernel/sched/ext/cid.h
64
bool scx_cmask_subset(const struct scx_cmask *sub, const struct scx_cmask *super);
kernel/trace/ftrace.c
6472
struct ftrace_hash *sub;
kernel/trace/ftrace.c
6475
sub = alloc_and_copy_ftrace_hash(a->size_bits, a);
kernel/trace/ftrace.c
6476
if (!sub)
kernel/trace/ftrace.c
6482
del = __ftrace_lookup_ip(sub, entry->ip);
kernel/trace/ftrace.c
6484
free_ftrace_hash(sub);
kernel/trace/ftrace.c
6487
remove_hash_entry(sub, del);
kernel/trace/ftrace.c
6491
return sub;
kernel/trace/trace_events.c
1326
const char *sub, const char *event, int set,
kernel/trace/trace_events.c
1371
if (sub && strcmp(sub, call->class->system) != 0)
kernel/trace/trace_events.c
1395
ret = cache_mod(tr, module, set, match, sub, event);
kernel/trace/trace_events.c
1401
const char *sub, const char *event, int set,
kernel/trace/trace_events.c
1410
ret = __ftrace_set_clr_event_nolock(tr, match, sub, event, set, mod);
kernel/trace/trace_events.c
1418
char *event = NULL, *sub = NULL, *match, *mod;
kernel/trace/trace_events.c
1446
sub = match;
kernel/trace/trace_events.c
1450
if (!strlen(sub) || strcmp(sub, "*") == 0)
kernel/trace/trace_events.c
1451
sub = NULL;
kernel/trace/trace_events.c
1460
ret = __ftrace_set_clr_event(tr, match, sub, event, set, mod);
lib/atomic64.c
126
ATOMIC64_OPS(sub, -=)
lib/atomic64_test.c
116
TEST(, sub, -=, onestwos);
lib/atomic64_test.c
117
TEST(, sub, -=, -one);
lib/atomic64_test.c
168
TEST(64, sub, -=, onestwos);
lib/atomic64_test.c
169
TEST(64, sub, -=, -one);
lib/test_bpf.c
14927
static void *generate_test_data(struct bpf_test *test, int sub)
lib/test_bpf.c
14936
return kmalloc(test->test[sub].data_size, GFP_KERNEL);
lib/test_bpf.c
14942
skb = populate_skb(test->data, test->test[sub].data_size);
lib/tests/overflow_kunit.c
332
check_one_op(t, fmt, sub, "-", p->a, p->b, p->diff, p->d_of); \
lib/zstd/common/compiler.h
259
unsigned char const* ZSTD_wrappedPtrSub(unsigned char const* ptr, ptrdiff_t sub)
lib/zstd/common/compiler.h
261
return ptr - sub;
net/batman-adv/bat_iv_ogm.c
1978
int sub = 0;
net/batman-adv/bat_iv_ogm.c
1994
if (sub++ < *sub_s)
net/batman-adv/bat_iv_ogm.c
2005
*sub_s = sub - 1;
net/batman-adv/bat_iv_ogm.c
2035
struct hlist_head *head, int *idx_s, int *sub)
net/batman-adv/bat_iv_ogm.c
2047
sub)) {
net/batman-adv/bat_iv_ogm.c
2056
*sub = 0;
net/batman-adv/bat_iv_ogm.c
2076
int sub = cb->args[2];
net/batman-adv/bat_iv_ogm.c
2085
&idx, &sub))
net/batman-adv/bat_iv_ogm.c
2093
cb->args[2] = sub;
net/batman-adv/bat_v.c
340
int sub = 0;
net/batman-adv/bat_v.c
348
if (sub++ < *sub_s)
net/batman-adv/bat_v.c
358
*sub_s = sub - 1;
net/batman-adv/bat_v.c
387
struct hlist_head *head, int *idx_s, int *sub)
net/batman-adv/bat_v.c
398
if_outgoing, orig_node, sub)) {
net/batman-adv/bat_v.c
407
*sub = 0;
net/batman-adv/bat_v.c
427
int sub = cb->args[2];
net/batman-adv/bat_v.c
436
&sub))
net/batman-adv/bat_v.c
444
cb->args[2] = sub;
net/batman-adv/translation-table.c
1879
int sub = 0;
net/batman-adv/translation-table.c
1887
if (sub++ < *sub_s)
net/batman-adv/translation-table.c
1894
*sub_s = sub - 1;
net/batman-adv/translation-table.c
1918
struct hlist_head *head, int *idx_s, int *sub)
net/batman-adv/translation-table.c
1929
common, sub)) {
net/batman-adv/translation-table.c
1938
*sub = 0;
net/batman-adv/translation-table.c
1959
int sub = cb->args[2];
net/batman-adv/translation-table.c
1981
head, &idx, &sub))
net/batman-adv/translation-table.c
1995
cb->args[2] = sub;
net/ceph/mon_client.c
422
static bool __ceph_monc_want_map(struct ceph_mon_client *monc, int sub,
net/ceph/mon_client.c
428
dout("%s %s epoch %u continuous %d\n", __func__, ceph_sub_str[sub],
net/ceph/mon_client.c
431
if (monc->subs[sub].want &&
net/ceph/mon_client.c
432
monc->subs[sub].item.start == start &&
net/ceph/mon_client.c
433
monc->subs[sub].item.flags == flags)
net/ceph/mon_client.c
436
monc->subs[sub].item.start = start;
net/ceph/mon_client.c
437
monc->subs[sub].item.flags = flags;
net/ceph/mon_client.c
438
monc->subs[sub].want = true;
net/ceph/mon_client.c
443
bool ceph_monc_want_map(struct ceph_mon_client *monc, int sub, u32 epoch,
net/ceph/mon_client.c
449
need_request = __ceph_monc_want_map(monc, sub, epoch, continuous);
net/ceph/mon_client.c
461
static void __ceph_monc_got_map(struct ceph_mon_client *monc, int sub,
net/ceph/mon_client.c
464
dout("%s %s epoch %u\n", __func__, ceph_sub_str[sub], epoch);
net/ceph/mon_client.c
466
if (monc->subs[sub].want) {
net/ceph/mon_client.c
467
if (monc->subs[sub].item.flags & CEPH_SUBSCRIBE_ONETIME)
net/ceph/mon_client.c
468
monc->subs[sub].want = false;
net/ceph/mon_client.c
470
monc->subs[sub].item.start = cpu_to_le64(epoch + 1);
net/ceph/mon_client.c
473
monc->subs[sub].have = epoch;
net/ceph/mon_client.c
476
void ceph_monc_got_map(struct ceph_mon_client *monc, int sub, u32 epoch)
net/ceph/mon_client.c
479
__ceph_monc_got_map(monc, sub, epoch);
net/mac80211/ap.c
195
const struct element *sub;
net/mac80211/ap.c
219
for_each_mle_subelement(sub, (u8 *)elems->ml_reconf,
net/mac80211/ap.c
222
(const void *)sub->data;
net/mac80211/ap.c
231
if (sub->id != IEEE80211_MLE_SUBELEM_PER_STA_PROFILE)
net/mac80211/ap.c
234
if (!ieee80211_mle_reconf_sta_prof_size_ok(sub->data,
net/mac80211/ap.c
235
sub->datalen))
net/mac80211/ap.c
270
sub->datalen - sizeof(*prof) -
net/mac80211/mlme.c
11635
const struct element *sub;
net/mac80211/mlme.c
11650
for_each_mle_subelement(sub, (const u8 *)elems->ml_epcs,
net/mac80211/mlme.c
11654
u8 *pos = (void *)sub->data;
net/mac80211/mlme.c
11659
if (sub->id != IEEE80211_MLE_SUBELEM_PER_STA_PROFILE)
net/mac80211/mlme.c
11662
if (sub->datalen < sizeof(control))
net/mac80211/mlme.c
11675
len = cfg80211_defragment_element(sub, (u8 *)elems->ml_epcs,
net/mac80211/mlme.c
7638
const struct element *sub;
net/mac80211/mlme.c
7650
for_each_mle_subelement(sub, (const u8 *)elems->ml_reconf,
net/mac80211/mlme.c
7652
struct ieee80211_mle_per_sta_profile *prof = (void *)sub->data;
net/mac80211/mlme.c
7656
if (sub->id != IEEE80211_MLE_SUBELEM_PER_STA_PROFILE)
net/mac80211/mlme.c
7659
if (!ieee80211_mle_reconf_sta_prof_size_ok(sub->data,
net/mac80211/mlme.c
7660
sub->datalen))
net/mac80211/mlme.c
7906
const struct element *sub;
net/mac80211/mlme.c
7919
for_each_element_id(sub, IEEE80211_MLE_SUBELEM_PER_STA_PROFILE,
net/mac80211/mlme.c
7921
struct ieee80211_mle_per_sta_profile *prof = (void *)sub->data;
net/mac80211/mlme.c
7925
if (!ieee80211_mle_basic_sta_prof_size_ok(sub->data,
net/mac80211/mlme.c
7926
sub->datalen))
net/mac80211/mlme.c
7940
len = cfg80211_defragment_element(sub, subelems, subelems_len,
net/mac80211/mlme.c
7946
sta_profiles[link_id] = sub;
net/mac80211/parse.c
1011
sub->start = prof->variable + prof->sta_info_len - 1 + 4;
net/mac80211/parse.c
1013
sub->len = end - sub->start;
net/mac80211/parse.c
1015
sub->mode = params->mode;
net/mac80211/parse.c
1016
sub->type = params->type;
net/mac80211/parse.c
1017
sub->from_ap = params->from_ap;
net/mac80211/parse.c
1018
sub->link_id = -1;
net/mac80211/parse.c
1021
sub->start, sub->len);
net/mac80211/parse.c
1059
struct ieee80211_elems_parse_params sub = {};
net/mac80211/parse.c
1106
sub.start = elems_parse->scratch_pos;
net/mac80211/parse.c
1107
sub.mode = params->mode;
net/mac80211/parse.c
1108
sub.len = nontx_len;
net/mac80211/parse.c
1109
sub.type = params->type;
net/mac80211/parse.c
1110
sub.link_id = params->link_id;
net/mac80211/parse.c
1120
sub.start, nontx_len);
net/mac80211/parse.c
1138
&sub);
net/mac80211/parse.c
1144
sub.start, sub.len);
net/mac80211/parse.c
1149
if (sub.len) {
net/mac80211/parse.c
1152
_ieee802_11_parse_elems_full(&sub, elems_parse, NULL);
net/mac80211/parse.c
830
const struct element *elem, *sub;
net/mac80211/parse.c
841
for_each_element(sub, elem->data + 1, elem->datalen - 1) {
net/mac80211/parse.c
846
if (sub->id != 0 || sub->datalen < 4) {
net/mac80211/parse.c
851
if (sub->data[0] != WLAN_EID_NON_TX_BSSID_CAP ||
net/mac80211/parse.c
852
sub->data[1] != 2) {
net/mac80211/parse.c
864
sub,
net/mac80211/parse.c
899
const struct element *sub;
net/mac80211/parse.c
901
for_each_mle_subelement(sub, (u8 *)ml, ml_len) {
net/mac80211/parse.c
902
struct ieee80211_mle_per_sta_profile *prof = (void *)sub->data;
net/mac80211/parse.c
906
if (sub->id != IEEE80211_MLE_SUBELEM_PER_STA_PROFILE)
net/mac80211/parse.c
909
if (!ieee80211_mle_basic_sta_prof_size_ok(sub->data,
net/mac80211/parse.c
910
sub->datalen))
net/mac80211/parse.c
924
cfg80211_defragment_element(sub,
net/mac80211/parse.c
946
struct ieee80211_elems_parse_params *sub)
net/mac80211/tests/s1g_tim.c
101
oct, i, bits, sub);
net/mac80211/tests/s1g_tim.c
66
u8 sub = *ptr++;
net/mac80211/tests/s1g_tim.c
68
byte_to_bitstr(sub, bits);
net/mac80211/tests/s1g_tim.c
72
oct, sb, bits, sub);
net/mac80211/tests/s1g_tim.c
95
u8 sub = *ptr++;
net/mac80211/tests/s1g_tim.c
97
byte_to_bitstr(sub, bits);
net/tipc/name_table.c
334
struct tipc_subscription *sub, *tmp;
net/tipc/name_table.c
366
list_for_each_entry_safe(sub, tmp, &sc->subscriptions, service_list) {
net/tipc/name_table.c
367
tipc_sub_report_overlap(sub, p, TIPC_PUBLISHED, first);
net/tipc/name_table.c
424
struct tipc_subscription *sub)
net/tipc/name_table.c
431
filter = sub->s.filter;
net/tipc/name_table.c
432
lower = sub->s.seq.lower;
net/tipc/name_table.c
433
upper = sub->s.seq.upper;
net/tipc/name_table.c
435
tipc_sub_get(sub);
net/tipc/name_table.c
436
list_add(&sub->service_list, &service->subscriptions);
net/tipc/name_table.c
458
tipc_sub_report_overlap(sub, p, TIPC_PUBLISHED, true);
net/tipc/name_table.c
504
struct tipc_subscription *sub, *tmp;
net/tipc/name_table.c
524
list_for_each_entry_safe(sub, tmp, &sc->subscriptions, service_list) {
net/tipc/name_table.c
525
tipc_sub_report_overlap(sub, p, TIPC_WITHDRAWN, last);
net/tipc/name_table.c
829
bool tipc_nametbl_subscribe(struct tipc_subscription *sub)
net/tipc/name_table.c
831
struct tipc_net *tn = tipc_net(sub->net);
net/tipc/name_table.c
832
u32 type = sub->s.seq.type;
net/tipc/name_table.c
838
sub->s.seq.lower, sub->s.seq.upper);
net/tipc/name_table.c
840
sc = tipc_service_find(sub->net, &ua);
net/tipc/name_table.c
842
sc = tipc_service_create(sub->net, &ua);
net/tipc/name_table.c
845
tipc_service_subscribe(sc, sub);
net/tipc/name_table.c
849
type, sub->s.seq.lower, sub->s.seq.upper);
net/tipc/name_table.c
860
void tipc_nametbl_unsubscribe(struct tipc_subscription *sub)
net/tipc/name_table.c
862
struct tipc_net *tn = tipc_net(sub->net);
net/tipc/name_table.c
867
sub->s.seq.type, sub->s.seq.lower, sub->s.seq.upper);
net/tipc/name_table.c
869
sc = tipc_service_find(sub->net, &ua);
net/tipc/name_table.c
874
list_del_init(&sub->service_list);
net/tipc/name_table.c
875
tipc_sub_put(sub);
net/tipc/subscr.c
101
spin_lock(&sub->lock);
net/tipc/subscr.c
102
tipc_sub_send_event(sub, p, event);
net/tipc/subscr.c
103
spin_unlock(&sub->lock);
net/tipc/subscr.c
108
struct tipc_subscription *sub = timer_container_of(sub, t, timer);
net/tipc/subscr.c
110
spin_lock(&sub->lock);
net/tipc/subscr.c
111
tipc_sub_send_event(sub, NULL, TIPC_SUBSCR_TIMEOUT);
net/tipc/subscr.c
112
sub->inactive = true;
net/tipc/subscr.c
113
spin_unlock(&sub->lock);
net/tipc/subscr.c
138
struct tipc_subscription *sub;
net/tipc/subscr.c
146
sub = kmalloc_obj(*sub, GFP_ATOMIC);
net/tipc/subscr.c
147
if (!sub) {
net/tipc/subscr.c
151
INIT_LIST_HEAD(&sub->service_list);
net/tipc/subscr.c
152
INIT_LIST_HEAD(&sub->sub_list);
net/tipc/subscr.c
153
sub->net = net;
net/tipc/subscr.c
154
sub->conid = conid;
net/tipc/subscr.c
155
sub->inactive = false;
net/tipc/subscr.c
156
memcpy(&sub->evt.s, s, sizeof(*s));
net/tipc/subscr.c
157
sub->s.seq.type = tipc_sub_read(s, seq.type);
net/tipc/subscr.c
158
sub->s.seq.lower = lower;
net/tipc/subscr.c
159
sub->s.seq.upper = upper;
net/tipc/subscr.c
160
sub->s.filter = filter;
net/tipc/subscr.c
161
sub->s.timeout = tipc_sub_read(s, timeout);
net/tipc/subscr.c
162
memcpy(sub->s.usr_handle, s->usr_handle, 8);
net/tipc/subscr.c
163
spin_lock_init(&sub->lock);
net/tipc/subscr.c
164
kref_init(&sub->kref);
net/tipc/subscr.c
165
if (!tipc_nametbl_subscribe(sub)) {
net/tipc/subscr.c
166
kfree(sub);
net/tipc/subscr.c
169
timer_setup(&sub->timer, tipc_sub_timeout, 0);
net/tipc/subscr.c
170
timeout = tipc_sub_read(&sub->evt.s, timeout);
net/tipc/subscr.c
172
mod_timer(&sub->timer, jiffies + msecs_to_jiffies(timeout));
net/tipc/subscr.c
173
return sub;
net/tipc/subscr.c
176
void tipc_sub_unsubscribe(struct tipc_subscription *sub)
net/tipc/subscr.c
178
tipc_nametbl_unsubscribe(sub);
net/tipc/subscr.c
179
if (sub->evt.s.timeout != TIPC_WAIT_FOREVER)
net/tipc/subscr.c
180
timer_delete_sync(&sub->timer);
net/tipc/subscr.c
181
list_del(&sub->sub_list);
net/tipc/subscr.c
182
tipc_sub_put(sub);
net/tipc/subscr.c
42
static void tipc_sub_send_event(struct tipc_subscription *sub,
net/tipc/subscr.c
46
struct tipc_subscr *s = &sub->evt.s;
net/tipc/subscr.c
47
struct tipc_event *evt = &sub->evt;
net/tipc/subscr.c
49
if (sub->inactive)
net/tipc/subscr.c
63
tipc_topsrv_queue_evt(sub->net, sub->conid, event, evt);
net/tipc/subscr.c
86
void tipc_sub_report_overlap(struct tipc_subscription *sub,
net/tipc/subscr.c
90
struct tipc_service_range *sr = &sub->s.seq;
net/tipc/subscr.c
91
u32 filter = sub->s.filter;
net/tipc/subscr.h
79
void tipc_sub_unsubscribe(struct tipc_subscription *sub);
net/tipc/subscr.h
80
void tipc_sub_report_overlap(struct tipc_subscription *sub,
net/tipc/topsrv.c
235
struct tipc_subscription *sub, *tmp;
net/tipc/topsrv.c
238
list_for_each_entry_safe(sub, tmp, sub_list, sub_list) {
net/tipc/topsrv.c
239
if (!s || !memcmp(s, &sub->evt.s, sizeof(*s))) {
net/tipc/topsrv.c
240
tipc_sub_unsubscribe(sub);
net/tipc/topsrv.c
366
struct tipc_subscription *sub;
net/tipc/topsrv.c
378
sub = tipc_sub_subscribe(srv->net, s, con->conid);
net/tipc/topsrv.c
379
if (!sub)
net/tipc/topsrv.c
383
list_add(&sub->sub_list, &con->sub_list);
net/tipc/topsrv.c
576
struct tipc_subscr sub;
net/tipc/topsrv.c
580
sub.seq.type = type;
net/tipc/topsrv.c
581
sub.seq.lower = lower;
net/tipc/topsrv.c
582
sub.seq.upper = upper;
net/tipc/topsrv.c
583
sub.timeout = TIPC_WAIT_FOREVER;
net/tipc/topsrv.c
584
sub.filter = filter;
net/tipc/topsrv.c
585
*(u64 *)&sub.usr_handle = (u64)port;
net/tipc/topsrv.c
592
rc = tipc_conn_rcv_sub(tipc_topsrv(net), con, &sub);
net/tls/tls_sw.c
162
int sub = 0;
net/tls/tls_sw.c
179
sub++;
net/tls/tls_sw.c
184
return sub;
net/wireless/scan.c
2501
const struct element *elem, *sub;
net/wireless/scan.c
2532
for_each_element(sub, elem->data + 1, elem->datalen - 1) {
net/wireless/scan.c
2535
if (sub->id != 0 || sub->datalen < 4) {
net/wireless/scan.c
2540
if (sub->data[0] != WLAN_EID_NON_TX_BSSID_CAP ||
net/wireless/scan.c
2541
sub->data[1] != 2) {
net/wireless/scan.c
2553
sub,
net/wireless/scan.c
273
const struct element *non_inherit_elem, *parent, *sub;
net/wireless/scan.c
311
sub = cfg80211_find_elem_match(id, subie, subie_len,
net/wireless/scan.c
315
if (!sub &&
net/wireless/scan.c
353
while (sub) {
net/wireless/scan.c
354
if (!cfg80211_copy_elem_with_frags(sub,
net/wireless/scan.c
360
sub = cfg80211_find_elem_match(id,
net/wireless/scan.c
361
sub->data + sub->datalen,
net/wireless/scan.c
363
(sub->data +
net/wireless/scan.c
364
sub->datalen),
net/wireless/scan.c
373
for_each_element(sub, subie, subie_len) {
net/wireless/scan.c
374
if (sub->id == WLAN_EID_NON_TX_BSSID_CAP)
net/wireless/scan.c
377
if (sub->id == WLAN_EID_FRAGMENT)
net/wireless/scan.c
380
if (sub->id == WLAN_EID_EXTENSION) {
net/wireless/scan.c
381
if (sub->datalen < 1)
net/wireless/scan.c
385
ext_id = sub->data[0];
net/wireless/scan.c
391
id = sub->id;
net/wireless/scan.c
400
if (!cfg80211_copy_elem_with_frags(sub, subie, subie_len,
scripts/basic/fixdep.c
179
static int str_ends_with(const char *s, int slen, const char *sub)
scripts/basic/fixdep.c
181
int sublen = strlen(sub);
scripts/basic/fixdep.c
186
return !memcmp(s + slen - sublen, sub, sublen);
security/apparmor/apparmorfs.c
2047
struct aa_ns *sub;
security/apparmor/apparmorfs.c
2058
list_for_each_entry(sub, &ns->sub_ns, base.list) {
security/apparmor/apparmorfs.c
2059
mutex_lock_nested(&sub->lock, sub->level);
security/apparmor/apparmorfs.c
2060
__aafs_ns_rmdir(sub);
security/apparmor/apparmorfs.c
2061
mutex_unlock(&sub->lock);
security/apparmor/apparmorfs.c
2135
struct aa_ns *sub;
security/apparmor/apparmorfs.c
2167
list_for_each_entry(sub, &ns->sub_ns, base.list) {
security/apparmor/apparmorfs.c
2168
mutex_lock_nested(&sub->lock, sub->level);
security/apparmor/apparmorfs.c
2169
error = __aafs_ns_mkdir(sub, ns_subns_dir(ns), NULL, NULL);
security/apparmor/apparmorfs.c
2170
mutex_unlock(&sub->lock);
security/apparmor/include/label.h
271
bool aa_label_is_subset(struct aa_label *set, struct aa_label *sub);
security/apparmor/include/label.h
272
bool aa_label_is_unconfined_subset(struct aa_label *set, struct aa_label *sub);
security/apparmor/include/label.h
275
struct aa_label *sub);
security/apparmor/include/lib.h
125
static inline bool aa_strneq(const char *str, const char *sub, int len)
security/apparmor/include/lib.h
127
return !strncmp(str, sub, len) && !str[len];
security/apparmor/label.c
511
struct aa_label *sub)
security/apparmor/label.c
517
AA_BUG(!sub);
security/apparmor/label.c
519
AA_BUG(I->j > sub->size);
security/apparmor/label.c
521
while (I->j < sub->size && I->i < set->size) {
security/apparmor/label.c
522
int res = profile_cmp(sub->vec[I->j], set->vec[I->i]);
security/apparmor/label.c
530
return sub->vec[(I->j)++];
security/apparmor/label.c
533
if (I->j < sub->size)
security/apparmor/label.c
534
return sub->vec[(I->j)++];
security/apparmor/label.c
547
bool aa_label_is_subset(struct aa_label *set, struct aa_label *sub)
security/apparmor/label.c
552
AA_BUG(!sub);
security/apparmor/label.c
554
if (sub == set)
security/apparmor/label.c
557
return __aa_label_next_not_in_set(&i, set, sub) == NULL;
security/apparmor/label.c
574
bool aa_label_is_unconfined_subset(struct aa_label *set, struct aa_label *sub)
security/apparmor/label.c
580
AA_BUG(!sub);
security/apparmor/label.c
582
if (sub == set)
security/apparmor/label.c
586
p = __aa_label_next_not_in_set(&i, set, sub);
sound/core/pcm_local.h
68
#define PCM_RUNTIME_CHECK(sub) snd_BUG_ON(!(sub) || !(sub)->runtime)
sound/drivers/aloop.c
1719
int sub,
sound/drivers/aloop.c
1722
struct loopback_cable *cable = loopback->cables[sub][num];
sound/drivers/aloop.c
1724
snd_iprintf(buffer, "Cable %i substream %i:\n", num, sub);
sound/drivers/aloop.c
1740
int sub, num;
sound/drivers/aloop.c
1745
for (sub = 0; sub < MAX_PCM_SUBSTREAMS; sub++)
sound/drivers/aloop.c
1746
print_substream_info(buffer, loopback, sub, num);
sound/hda/codecs/cirrus/cs8409.c
1241
struct snd_pcm_substream *sub, int action)
sound/hda/codecs/realtek/alc269.c
3173
struct snd_pcm_substream *sub, int action)
sound/hda/codecs/side-codecs/cs35l41_hda.c
1929
const char *sub;
sound/hda/codecs/side-codecs/cs35l41_hda.c
1945
sub = acpi_get_subsystem_id(ACPI_HANDLE(physdev));
sound/hda/codecs/side-codecs/cs35l41_hda.c
1946
if (IS_ERR(sub))
sound/hda/codecs/side-codecs/cs35l41_hda.c
1947
sub = NULL;
sound/hda/codecs/side-codecs/cs35l41_hda.c
1948
cs35l41->acpi_subsystem_id = sub;
sound/hda/codecs/side-codecs/cs35l56_hda.c
1001
if (strcasecmp(cs35l56_hda_fixups[i].sub, sub) == 0) {
sound/hda/codecs/side-codecs/cs35l56_hda.c
1003
cs35l56_hda_fixups[i].sub);
sound/hda/codecs/side-codecs/cs35l56_hda.c
1038
const char *sub __free(kfree) = acpi_get_subsystem_id(ACPI_HANDLE(cs35l56->base.dev));
sound/hda/codecs/side-codecs/cs35l56_hda.c
1040
ret = cs35l56_hda_apply_platform_fixups(cs35l56, sub, &id);
sound/hda/codecs/side-codecs/cs35l56_hda.c
1079
if (IS_ERR(sub)) {
sound/hda/codecs/side-codecs/cs35l56_hda.c
1082
PTR_ERR(sub));
sound/hda/codecs/side-codecs/cs35l56_hda.c
1087
cs35l56->system_name = devm_kstrdup(cs35l56->base.dev, sub, GFP_KERNEL);
sound/hda/codecs/side-codecs/cs35l56_hda.c
1090
"%s-spkid%d", sub, ret);
sound/hda/codecs/side-codecs/cs35l56_hda.c
983
const char *sub;
sound/hda/codecs/side-codecs/cs35l56_hda.c
987
.sub = "17AA390B", /* Lenovo Yoga Book 9i GenX */
sound/hda/codecs/side-codecs/cs35l56_hda.c
992
static int cs35l56_hda_apply_platform_fixups(struct cs35l56_hda *cs35l56, const char *sub,
sound/hda/codecs/side-codecs/cs35l56_hda.c
997
if (IS_ERR(sub))
sound/hda/codecs/side-codecs/tas2781_hda_i2c.c
110
sub = acpi_get_subsystem_id(ACPI_HANDLE(physdev));
sound/hda/codecs/side-codecs/tas2781_hda_i2c.c
111
if (IS_ERR(sub)) {
sound/hda/codecs/side-codecs/tas2781_hda_i2c.c
118
ret = PTR_ERR(sub);
sound/hda/codecs/side-codecs/tas2781_hda_i2c.c
122
ret = kstrtou32(sub, 16, &subid);
sound/hda/codecs/side-codecs/tas2781_hda_i2c.c
93
const char *sub;
sound/soc/codecs/cs35l41.c
1154
const char *sub = NULL;
sound/soc/codecs/cs35l41.c
1162
sub = acpi_get_subsystem_id(handle);
sound/soc/codecs/cs35l41.c
1163
ret = PTR_ERR_OR_ZERO(sub);
sound/soc/codecs/cs35l41.c
1165
sub = NULL;
sound/soc/codecs/cs35l41.c
1174
sub = kstrdup(tmp, GFP_KERNEL);
sound/soc/codecs/cs35l41.c
1175
if (!sub) {
sound/soc/codecs/cs35l41.c
1183
sub = kstrdup(tmp, GFP_KERNEL);
sound/soc/codecs/cs35l41.c
1184
if (!sub) {
sound/soc/codecs/cs35l41.c
1191
if (sub) {
sound/soc/codecs/cs35l41.c
1192
cs35l41->dsp.system_name = sub;
sound/soc/codecs/cs4234.c
342
static int cs4234_dai_hw_params(struct snd_pcm_substream *sub,
sound/soc/codecs/cs4234.c
413
if (sub->stream == SNDRV_PCM_STREAM_CAPTURE)
sound/soc/codecs/cs4234.c
464
static int cs4234_dai_startup(struct snd_pcm_substream *sub, struct snd_soc_dai *dai)
sound/soc/codecs/cs4234.c
480
if (sub->stream == SNDRV_PCM_STREAM_PLAYBACK) {
sound/soc/codecs/cs4234.c
482
sub->runtime,
sound/soc/codecs/cs4234.c
489
ret = snd_pcm_hw_constraint_minmax(sub->runtime,
sound/soc/codecs/cs4234.c
508
ret = snd_pcm_hw_constraint_ratnums(sub->runtime, 0,
sound/soc/codecs/cs4234.c
518
return snd_pcm_hw_rule_add(sub->runtime, 0, SNDRV_PCM_HW_PARAM_RATE,
sound/soc/codecs/wm8782.c
37
static int wm8782_dai_startup(struct snd_pcm_substream *sub, struct snd_soc_dai *dai)
sound/soc/codecs/wm8782.c
39
struct snd_pcm_runtime *runtime = sub->runtime;
sound/soc/fsl/fsl_esai.c
169
u32 psr, pm = 999, maxfp, prod, sub, savesub, i, j;
sound/soc/fsl/fsl_esai.c
206
sub = 0;
sound/soc/fsl/fsl_esai.c
208
sub = prod - ratio;
sound/soc/fsl/fsl_esai.c
210
sub = ratio - prod;
sound/soc/fsl/fsl_esai.c
215
sub = sub * 1000 / ratio;
sound/soc/fsl/fsl_esai.c
216
if (sub < savesub) {
sound/soc/fsl/fsl_esai.c
217
savesub = sub;
sound/soc/fsl/fsl_esai.c
366
u32 sub, ratio = hck_rate / freq;
sound/soc/fsl/fsl_esai.c
374
sub = ratio * freq - hck_rate;
sound/soc/fsl/fsl_esai.c
376
sub = hck_rate - ratio * freq;
sound/soc/fsl/fsl_esai.c
378
sub = 0;
sound/soc/fsl/fsl_esai.c
381
if (sub != 0 && hck_rate / sub < 1000) {
sound/soc/fsl/fsl_spdif.c
1431
u64 rate_ideal, rate_actual, sub;
sound/soc/fsl/fsl_spdif.c
1460
sub = (u64)(arate - rate[index]) * 100000;
sound/soc/fsl/fsl_spdif.c
1461
do_div(sub, rate[index]);
sound/soc/fsl/fsl_spdif.c
1462
if (sub >= savesub)
sound/soc/fsl/fsl_spdif.c
1464
savesub = sub;
sound/soc/fsl/fsl_spdif.c
1470
sub = (u64)(rate[index] - arate) * 100000;
sound/soc/fsl/fsl_spdif.c
1471
do_div(sub, rate[index]);
sound/soc/fsl/fsl_spdif.c
1472
if (sub >= savesub)
sound/soc/fsl/fsl_spdif.c
1474
savesub = sub;
sound/soc/fsl/fsl_ssi.c
691
u64 sub, savesub = 100000;
sound/soc/fsl/fsl_ssi.c
743
sub = 0;
sound/soc/fsl/fsl_ssi.c
745
sub = freq - afreq;
sound/soc/fsl/fsl_ssi.c
747
sub = afreq - freq;
sound/soc/fsl/fsl_ssi.c
752
sub *= 100000;
sound/soc/fsl/fsl_ssi.c
753
do_div(sub, freq);
sound/soc/fsl/fsl_ssi.c
755
if (sub < savesub && !(i == 0)) {
sound/soc/fsl/fsl_ssi.c
757
savesub = sub;
sound/soc/sunxi/sun4i-i2s.c
1100
static int sun4i_i2s_dai_startup(struct snd_pcm_substream *sub, struct snd_soc_dai *dai)
sound/soc/sunxi/sun4i-i2s.c
1103
struct snd_pcm_runtime *runtime = sub->runtime;
sound/soc/uniphier/aio-compress.c
106
struct uniphier_aio_sub *sub = &aio->sub[cstream->direction];
sound/soc/uniphier/aio-compress.c
116
sub->cstream = NULL;
sound/soc/uniphier/aio-compress.c
127
struct uniphier_aio_sub *sub = &aio->sub[cstream->direction];
sound/soc/uniphier/aio-compress.c
129
*params = sub->cparams.codec;
sound/soc/uniphier/aio-compress.c
140
struct uniphier_aio_sub *sub = &aio->sub[cstream->direction];
sound/soc/uniphier/aio-compress.c
155
sub->iec_pc = IEC61937_PC_AAC;
sound/soc/uniphier/aio-compress.c
157
sub->cparams = *params;
sound/soc/uniphier/aio-compress.c
158
sub->setting = 1;
sound/soc/uniphier/aio-compress.c
160
aio_port_reset(sub);
sound/soc/uniphier/aio-compress.c
161
aio_src_reset(sub);
sound/soc/uniphier/aio-compress.c
171
struct uniphier_aio_sub *sub = &aio->sub[cstream->direction];
sound/soc/uniphier/aio-compress.c
173
sub->setting = 0;
sound/soc/uniphier/aio-compress.c
184
struct uniphier_aio_sub *sub = &aio->sub[cstream->direction];
sound/soc/uniphier/aio-compress.c
188
ret = aiodma_ch_set_param(sub);
sound/soc/uniphier/aio-compress.c
192
scoped_guard(spinlock_irqsave, &sub->lock)
sound/soc/uniphier/aio-compress.c
193
ret = aiodma_rb_set_buffer(sub, sub->compr_addr,
sound/soc/uniphier/aio-compress.c
194
sub->compr_addr + sub->compr_bytes,
sound/soc/uniphier/aio-compress.c
199
ret = aio_port_set_param(sub, sub->pass_through, &sub->params);
sound/soc/uniphier/aio-compress.c
202
ret = aio_oport_set_stream_type(sub, sub->iec_pc);
sound/soc/uniphier/aio-compress.c
205
aio_port_set_enable(sub, 1);
sound/soc/uniphier/aio-compress.c
207
ret = aio_if_set_param(sub, sub->pass_through);
sound/soc/uniphier/aio-compress.c
221
struct uniphier_aio_sub *sub = &aio->sub[cstream->direction];
sound/soc/uniphier/aio-compress.c
225
guard(spinlock_irqsave)(&sub->lock);
sound/soc/uniphier/aio-compress.c
228
aiodma_rb_sync(sub, sub->compr_addr, sub->compr_bytes, bytes);
sound/soc/uniphier/aio-compress.c
229
aiodma_ch_set_enable(sub, 1);
sound/soc/uniphier/aio-compress.c
230
sub->running = 1;
sound/soc/uniphier/aio-compress.c
234
sub->running = 0;
sound/soc/uniphier/aio-compress.c
235
aiodma_ch_set_enable(sub, 0);
sound/soc/uniphier/aio-compress.c
253
struct uniphier_aio_sub *sub = &aio->sub[cstream->direction];
sound/soc/uniphier/aio-compress.c
257
guard(spinlock_irqsave)(&sub->lock);
sound/soc/uniphier/aio-compress.c
259
aiodma_rb_sync(sub, sub->compr_addr, sub->compr_bytes, bytes);
sound/soc/uniphier/aio-compress.c
261
if (sub->swm->dir == PORT_DIR_OUTPUT) {
sound/soc/uniphier/aio-compress.c
262
pos = sub->rd_offs;
sound/soc/uniphier/aio-compress.c
264
tstamp->copied_total = sub->rd_total / 2;
sound/soc/uniphier/aio-compress.c
266
pos = sub->wr_offs;
sound/soc/uniphier/aio-compress.c
267
tstamp->copied_total = sub->rd_total;
sound/soc/uniphier/aio-compress.c
274
static int aio_compr_send_to_hw(struct uniphier_aio_sub *sub,
sound/soc/uniphier/aio-compress.c
278
u32 *dstbuf = (u32 *)(sub->compr_area + sub->wr_offs);
sound/soc/uniphier/aio-compress.c
29
struct uniphier_aio_sub *sub = &aio->sub[compr->direction];
sound/soc/uniphier/aio-compress.c
295
sub->iec_header = true;
sound/soc/uniphier/aio-compress.c
299
if (sub->iec_header && sub->iec_pc != pc) {
sound/soc/uniphier/aio-compress.c
301
sub->iec_pc = pc;
sound/soc/uniphier/aio-compress.c
302
ret = aio_oport_set_stream_type(sub, pc);
sound/soc/uniphier/aio-compress.c
306
sub->iec_header = false;
sound/soc/uniphier/aio-compress.c
325
struct uniphier_aio_sub *sub = &aio->sub[cstream->direction];
sound/soc/uniphier/aio-compress.c
326
size_t cnt = min_t(size_t, count, aio_rb_space_to_end(sub) / 2);
sound/soc/uniphier/aio-compress.c
334
if (sub->swm->dir == PORT_DIR_OUTPUT) {
sound/soc/uniphier/aio-compress.c
335
dma_addr_t dmapos = sub->compr_addr + sub->wr_offs;
sound/soc/uniphier/aio-compress.c
341
ret = aio_compr_send_to_hw(sub, buf, s);
sound/soc/uniphier/aio-compress.c
344
dma_addr_t dmapos = sub->compr_addr + sub->rd_offs;
sound/soc/uniphier/aio-compress.c
349
ret = copy_to_user(buf, sub->compr_area + sub->rd_offs, s);
sound/soc/uniphier/aio-compress.c
355
guard(spinlock_irqsave)(&sub->lock);
sound/soc/uniphier/aio-compress.c
357
sub->threshold = 2 * bytes;
sound/soc/uniphier/aio-compress.c
358
aiodma_rb_set_threshold(sub, sub->compr_bytes, 2 * bytes);
sound/soc/uniphier/aio-compress.c
360
if (sub->swm->dir == PORT_DIR_OUTPUT) {
sound/soc/uniphier/aio-compress.c
361
sub->wr_offs += s;
sound/soc/uniphier/aio-compress.c
362
if (sub->wr_offs >= sub->compr_bytes)
sound/soc/uniphier/aio-compress.c
363
sub->wr_offs -= sub->compr_bytes;
sound/soc/uniphier/aio-compress.c
365
sub->rd_offs += s;
sound/soc/uniphier/aio-compress.c
366
if (sub->rd_offs >= sub->compr_bytes)
sound/soc/uniphier/aio-compress.c
367
sub->rd_offs -= sub->compr_bytes;
sound/soc/uniphier/aio-compress.c
369
aiodma_rb_sync(sub, sub->compr_addr, sub->compr_bytes, bytes);
sound/soc/uniphier/aio-compress.c
37
sub->compr_area = kzalloc(size, GFP_KERNEL);
sound/soc/uniphier/aio-compress.c
38
if (!sub->compr_area)
sound/soc/uniphier/aio-compress.c
41
if (sub->swm->dir == PORT_DIR_OUTPUT)
sound/soc/uniphier/aio-compress.c
44
sub->compr_addr = dma_map_single(dev, sub->compr_area, size, dma_dir);
sound/soc/uniphier/aio-compress.c
45
if (dma_mapping_error(dev, sub->compr_addr)) {
sound/soc/uniphier/aio-compress.c
46
kfree(sub->compr_area);
sound/soc/uniphier/aio-compress.c
47
sub->compr_area = NULL;
sound/soc/uniphier/aio-compress.c
52
sub->compr_bytes = size;
sound/soc/uniphier/aio-compress.c
62
struct uniphier_aio_sub *sub = &aio->sub[compr->direction];
sound/soc/uniphier/aio-compress.c
65
if (sub->swm->dir == PORT_DIR_OUTPUT)
sound/soc/uniphier/aio-compress.c
68
dma_unmap_single(dev, sub->compr_addr, sub->compr_bytes, dma_dir);
sound/soc/uniphier/aio-compress.c
69
kfree(sub->compr_area);
sound/soc/uniphier/aio-compress.c
70
sub->compr_area = NULL;
sound/soc/uniphier/aio-compress.c
80
struct uniphier_aio_sub *sub = &aio->sub[cstream->direction];
sound/soc/uniphier/aio-compress.c
83
if (sub->cstream)
sound/soc/uniphier/aio-compress.c
86
sub->cstream = cstream;
sound/soc/uniphier/aio-compress.c
87
sub->pass_through = 1;
sound/soc/uniphier/aio-compress.c
88
sub->use_mmap = false;
sound/soc/uniphier/aio-compress.c
94
ret = aio_init(sub);
sound/soc/uniphier/aio-core.c
1000
regmap_write(r, CDA2D_CHMXSRCAMODE(sub->swm->och.map),
sound/soc/uniphier/aio-core.c
1005
regmap_write(r, CDA2D_CHMXDSTAMODE(sub->swm->och.map),
sound/soc/uniphier/aio-core.c
1009
(sub->swm->och.map << CDA2D_CHMXAMODE_RSSEL_SHIFT));
sound/soc/uniphier/aio-core.c
1014
void aio_srcch_set_enable(struct uniphier_aio_sub *sub, int enable)
sound/soc/uniphier/aio-core.c
1016
struct regmap *r = sub->aio->chip->regmap;
sound/soc/uniphier/aio-core.c
1025
v | BIT(sub->swm->och.map));
sound/soc/uniphier/aio-core.c
1028
int aiodma_ch_set_param(struct uniphier_aio_sub *sub)
sound/soc/uniphier/aio-core.c
1030
struct regmap *r = sub->aio->chip->regmap;
sound/soc/uniphier/aio-core.c
1033
regmap_write(r, CDA2D_CHMXCTRL1(sub->swm->ch.map),
sound/soc/uniphier/aio-core.c
1039
(sub->swm->rb.map << CDA2D_CHMXAMODE_RSSEL_SHIFT);
sound/soc/uniphier/aio-core.c
1040
if (sub->swm->dir == PORT_DIR_OUTPUT)
sound/soc/uniphier/aio-core.c
1041
regmap_write(r, CDA2D_CHMXSRCAMODE(sub->swm->ch.map), v);
sound/soc/uniphier/aio-core.c
1043
regmap_write(r, CDA2D_CHMXDSTAMODE(sub->swm->ch.map), v);
sound/soc/uniphier/aio-core.c
1048
void aiodma_ch_set_enable(struct uniphier_aio_sub *sub, int enable)
sound/soc/uniphier/aio-core.c
1050
struct regmap *r = sub->aio->chip->regmap;
sound/soc/uniphier/aio-core.c
1054
CDA2D_STRT0_STOP_START | BIT(sub->swm->ch.map));
sound/soc/uniphier/aio-core.c
1057
BIT(sub->swm->rb.map),
sound/soc/uniphier/aio-core.c
1058
BIT(sub->swm->rb.map));
sound/soc/uniphier/aio-core.c
1061
CDA2D_STRT0_STOP_STOP | BIT(sub->swm->ch.map));
sound/soc/uniphier/aio-core.c
1064
BIT(sub->swm->rb.map),
sound/soc/uniphier/aio-core.c
1069
static u64 aiodma_rb_get_rp(struct uniphier_aio_sub *sub)
sound/soc/uniphier/aio-core.c
1071
struct regmap *r = sub->aio->chip->regmap;
sound/soc/uniphier/aio-core.c
1076
CDA2D_RDPTRLOAD_LSFLAG_STORE | BIT(sub->swm->rb.map));
sound/soc/uniphier/aio-core.c
1079
regmap_read(r, CDA2D_RBMXRDPTR(sub->swm->rb.map), &pos_l);
sound/soc/uniphier/aio-core.c
1081
regmap_read(r, CDA2D_RBMXRDPTR(sub->swm->rb.map), &pos_l);
sound/soc/uniphier/aio-core.c
1082
regmap_read(r, CDA2D_RBMXRDPTRU(sub->swm->rb.map), &pos_u);
sound/soc/uniphier/aio-core.c
1088
static void aiodma_rb_set_rp(struct uniphier_aio_sub *sub, u64 pos)
sound/soc/uniphier/aio-core.c
1090
struct regmap *r = sub->aio->chip->regmap;
sound/soc/uniphier/aio-core.c
1094
regmap_write(r, CDA2D_RBMXRDPTR(sub->swm->rb.map), (u32)pos);
sound/soc/uniphier/aio-core.c
1095
regmap_write(r, CDA2D_RBMXRDPTRU(sub->swm->rb.map), (u32)(pos >> 32));
sound/soc/uniphier/aio-core.c
1096
regmap_write(r, CDA2D_RDPTRLOAD, BIT(sub->swm->rb.map));
sound/soc/uniphier/aio-core.c
1099
regmap_read(r, CDA2D_RBMXRDPTR(sub->swm->rb.map), &tmp);
sound/soc/uniphier/aio-core.c
1102
static u64 aiodma_rb_get_wp(struct uniphier_aio_sub *sub)
sound/soc/uniphier/aio-core.c
1104
struct regmap *r = sub->aio->chip->regmap;
sound/soc/uniphier/aio-core.c
1109
CDA2D_WRPTRLOAD_LSFLAG_STORE | BIT(sub->swm->rb.map));
sound/soc/uniphier/aio-core.c
1112
regmap_read(r, CDA2D_RBMXWRPTR(sub->swm->rb.map), &pos_l);
sound/soc/uniphier/aio-core.c
1114
regmap_read(r, CDA2D_RBMXWRPTR(sub->swm->rb.map), &pos_l);
sound/soc/uniphier/aio-core.c
1115
regmap_read(r, CDA2D_RBMXWRPTRU(sub->swm->rb.map), &pos_u);
sound/soc/uniphier/aio-core.c
1121
static void aiodma_rb_set_wp(struct uniphier_aio_sub *sub, u64 pos)
sound/soc/uniphier/aio-core.c
1123
struct regmap *r = sub->aio->chip->regmap;
sound/soc/uniphier/aio-core.c
1127
regmap_write(r, CDA2D_RBMXWRPTR(sub->swm->rb.map),
sound/soc/uniphier/aio-core.c
1129
regmap_write(r, CDA2D_RBMXWRPTRU(sub->swm->rb.map),
sound/soc/uniphier/aio-core.c
1131
regmap_write(r, CDA2D_WRPTRLOAD, BIT(sub->swm->rb.map));
sound/soc/uniphier/aio-core.c
1134
regmap_read(r, CDA2D_RBMXWRPTR(sub->swm->rb.map), &tmp);
sound/soc/uniphier/aio-core.c
1137
int aiodma_rb_set_threshold(struct uniphier_aio_sub *sub, u64 size, u32 th)
sound/soc/uniphier/aio-core.c
1139
struct regmap *r = sub->aio->chip->regmap;
sound/soc/uniphier/aio-core.c
1144
regmap_write(r, CDA2D_RBMXBTH(sub->swm->rb.map), th);
sound/soc/uniphier/aio-core.c
1145
regmap_write(r, CDA2D_RBMXRTH(sub->swm->rb.map), th);
sound/soc/uniphier/aio-core.c
1150
int aiodma_rb_set_buffer(struct uniphier_aio_sub *sub, u64 start, u64 end,
sound/soc/uniphier/aio-core.c
1153
struct regmap *r = sub->aio->chip->regmap;
sound/soc/uniphier/aio-core.c
1160
regmap_write(r, CDA2D_RBMXCNFG(sub->swm->rb.map), 0);
sound/soc/uniphier/aio-core.c
1161
regmap_write(r, CDA2D_RBMXBGNADRS(sub->swm->rb.map),
sound/soc/uniphier/aio-core.c
1163
regmap_write(r, CDA2D_RBMXBGNADRSU(sub->swm->rb.map),
sound/soc/uniphier/aio-core.c
1165
regmap_write(r, CDA2D_RBMXENDADRS(sub->swm->rb.map),
sound/soc/uniphier/aio-core.c
1167
regmap_write(r, CDA2D_RBMXENDADRSU(sub->swm->rb.map),
sound/soc/uniphier/aio-core.c
1170
regmap_write(r, CDA2D_RBADRSLOAD, BIT(sub->swm->rb.map));
sound/soc/uniphier/aio-core.c
1172
ret = aiodma_rb_set_threshold(sub, size, 2 * period);
sound/soc/uniphier/aio-core.c
1176
if (sub->swm->dir == PORT_DIR_OUTPUT) {
sound/soc/uniphier/aio-core.c
1177
aiodma_rb_set_rp(sub, start);
sound/soc/uniphier/aio-core.c
1178
aiodma_rb_set_wp(sub, end - period);
sound/soc/uniphier/aio-core.c
1180
regmap_update_bits(r, CDA2D_RBMXIE(sub->swm->rb.map),
sound/soc/uniphier/aio-core.c
1184
aiodma_rb_set_rp(sub, end - period);
sound/soc/uniphier/aio-core.c
1185
aiodma_rb_set_wp(sub, start);
sound/soc/uniphier/aio-core.c
1187
regmap_update_bits(r, CDA2D_RBMXIE(sub->swm->rb.map),
sound/soc/uniphier/aio-core.c
1192
sub->threshold = 2 * period;
sound/soc/uniphier/aio-core.c
1193
sub->rd_offs = 0;
sound/soc/uniphier/aio-core.c
1194
sub->wr_offs = 0;
sound/soc/uniphier/aio-core.c
1195
sub->rd_org = 0;
sound/soc/uniphier/aio-core.c
1196
sub->wr_org = 0;
sound/soc/uniphier/aio-core.c
1197
sub->rd_total = 0;
sound/soc/uniphier/aio-core.c
1198
sub->wr_total = 0;
sound/soc/uniphier/aio-core.c
1203
void aiodma_rb_sync(struct uniphier_aio_sub *sub, u64 start, u64 size,
sound/soc/uniphier/aio-core.c
1206
if (sub->swm->dir == PORT_DIR_OUTPUT) {
sound/soc/uniphier/aio-core.c
1207
sub->rd_offs = aiodma_rb_get_rp(sub) - start;
sound/soc/uniphier/aio-core.c
1209
if (sub->use_mmap) {
sound/soc/uniphier/aio-core.c
1210
sub->threshold = 2 * period;
sound/soc/uniphier/aio-core.c
1211
aiodma_rb_set_threshold(sub, size, 2 * period);
sound/soc/uniphier/aio-core.c
1213
sub->wr_offs = sub->rd_offs - period;
sound/soc/uniphier/aio-core.c
1214
if (sub->rd_offs < period)
sound/soc/uniphier/aio-core.c
1215
sub->wr_offs += size;
sound/soc/uniphier/aio-core.c
1217
aiodma_rb_set_wp(sub, sub->wr_offs + start);
sound/soc/uniphier/aio-core.c
1219
sub->wr_offs = aiodma_rb_get_wp(sub) - start;
sound/soc/uniphier/aio-core.c
1221
if (sub->use_mmap) {
sound/soc/uniphier/aio-core.c
1222
sub->threshold = 2 * period;
sound/soc/uniphier/aio-core.c
1223
aiodma_rb_set_threshold(sub, size, 2 * period);
sound/soc/uniphier/aio-core.c
1225
sub->rd_offs = sub->wr_offs - period;
sound/soc/uniphier/aio-core.c
1226
if (sub->wr_offs < period)
sound/soc/uniphier/aio-core.c
1227
sub->rd_offs += size;
sound/soc/uniphier/aio-core.c
1229
aiodma_rb_set_rp(sub, sub->rd_offs + start);
sound/soc/uniphier/aio-core.c
1232
sub->rd_total += sub->rd_offs - sub->rd_org;
sound/soc/uniphier/aio-core.c
1233
if (sub->rd_offs < sub->rd_org)
sound/soc/uniphier/aio-core.c
1234
sub->rd_total += size;
sound/soc/uniphier/aio-core.c
1235
sub->wr_total += sub->wr_offs - sub->wr_org;
sound/soc/uniphier/aio-core.c
1236
if (sub->wr_offs < sub->wr_org)
sound/soc/uniphier/aio-core.c
1237
sub->wr_total += size;
sound/soc/uniphier/aio-core.c
1239
sub->rd_org = sub->rd_offs;
sound/soc/uniphier/aio-core.c
1240
sub->wr_org = sub->wr_offs;
sound/soc/uniphier/aio-core.c
1243
bool aiodma_rb_is_irq(struct uniphier_aio_sub *sub)
sound/soc/uniphier/aio-core.c
1245
struct regmap *r = sub->aio->chip->regmap;
sound/soc/uniphier/aio-core.c
1248
regmap_read(r, CDA2D_RBMXIR(sub->swm->rb.map), &ir);
sound/soc/uniphier/aio-core.c
1250
if (sub->swm->dir == PORT_DIR_OUTPUT)
sound/soc/uniphier/aio-core.c
1256
void aiodma_rb_clear_irq(struct uniphier_aio_sub *sub)
sound/soc/uniphier/aio-core.c
1258
struct regmap *r = sub->aio->chip->regmap;
sound/soc/uniphier/aio-core.c
1260
if (sub->swm->dir == PORT_DIR_OUTPUT)
sound/soc/uniphier/aio-core.c
1261
regmap_write(r, CDA2D_RBMXIR(sub->swm->rb.map),
sound/soc/uniphier/aio-core.c
1264
regmap_write(r, CDA2D_RBMXIR(sub->swm->rb.map),
sound/soc/uniphier/aio-core.c
200
int aio_init(struct uniphier_aio_sub *sub)
sound/soc/uniphier/aio-core.c
202
struct device *dev = &sub->aio->chip->pdev->dev;
sound/soc/uniphier/aio-core.c
203
struct regmap *r = sub->aio->chip->regmap;
sound/soc/uniphier/aio-core.c
205
regmap_write(r, A2RBNMAPCTR0(sub->swm->rb.hw),
sound/soc/uniphier/aio-core.c
206
MAPCTR0_EN | sub->swm->rb.map);
sound/soc/uniphier/aio-core.c
207
regmap_write(r, A2CHNMAPCTR0(sub->swm->ch.hw),
sound/soc/uniphier/aio-core.c
208
MAPCTR0_EN | sub->swm->ch.map);
sound/soc/uniphier/aio-core.c
210
switch (sub->swm->type) {
sound/soc/uniphier/aio-core.c
214
if (sub->swm->dir == PORT_DIR_INPUT) {
sound/soc/uniphier/aio-core.c
215
regmap_write(r, A2IIFNMAPCTR0(sub->swm->iif.hw),
sound/soc/uniphier/aio-core.c
216
MAPCTR0_EN | sub->swm->iif.map);
sound/soc/uniphier/aio-core.c
217
regmap_write(r, A2IPORTNMAPCTR0(sub->swm->iport.hw),
sound/soc/uniphier/aio-core.c
218
MAPCTR0_EN | sub->swm->iport.map);
sound/soc/uniphier/aio-core.c
220
regmap_write(r, A2OIFNMAPCTR0(sub->swm->oif.hw),
sound/soc/uniphier/aio-core.c
221
MAPCTR0_EN | sub->swm->oif.map);
sound/soc/uniphier/aio-core.c
222
regmap_write(r, A2OPORTNMAPCTR0(sub->swm->oport.hw),
sound/soc/uniphier/aio-core.c
223
MAPCTR0_EN | sub->swm->oport.map);
sound/soc/uniphier/aio-core.c
227
regmap_write(r, A2OIFNMAPCTR0(sub->swm->oif.hw),
sound/soc/uniphier/aio-core.c
228
MAPCTR0_EN | sub->swm->oif.map);
sound/soc/uniphier/aio-core.c
229
regmap_write(r, A2OPORTNMAPCTR0(sub->swm->oport.hw),
sound/soc/uniphier/aio-core.c
230
MAPCTR0_EN | sub->swm->oport.map);
sound/soc/uniphier/aio-core.c
231
regmap_write(r, A2CHNMAPCTR0(sub->swm->och.hw),
sound/soc/uniphier/aio-core.c
232
MAPCTR0_EN | sub->swm->och.map);
sound/soc/uniphier/aio-core.c
233
regmap_write(r, A2IIFNMAPCTR0(sub->swm->iif.hw),
sound/soc/uniphier/aio-core.c
234
MAPCTR0_EN | sub->swm->iif.map);
sound/soc/uniphier/aio-core.c
237
dev_err(dev, "Unknown port type %d.\n", sub->swm->type);
sound/soc/uniphier/aio-core.c
250
void aio_port_reset(struct uniphier_aio_sub *sub)
sound/soc/uniphier/aio-core.c
252
struct regmap *r = sub->aio->chip->regmap;
sound/soc/uniphier/aio-core.c
254
if (sub->swm->dir == PORT_DIR_OUTPUT) {
sound/soc/uniphier/aio-core.c
255
regmap_write(r, AOUTRSTCTR0, BIT(sub->swm->oport.map));
sound/soc/uniphier/aio-core.c
256
regmap_write(r, AOUTRSTCTR1, BIT(sub->swm->oport.map));
sound/soc/uniphier/aio-core.c
258
regmap_update_bits(r, IPORTMXRSTCTR(sub->swm->iport.map),
sound/soc/uniphier/aio-core.c
261
regmap_update_bits(r, IPORTMXRSTCTR(sub->swm->iport.map),
sound/soc/uniphier/aio-core.c
277
static int aio_port_set_ch(struct uniphier_aio_sub *sub)
sound/soc/uniphier/aio-core.c
279
struct regmap *r = sub->aio->chip->regmap;
sound/soc/uniphier/aio-core.c
294
switch (params_channels(&sub->params)) {
sound/soc/uniphier/aio-core.c
309
regmap_update_bits(r, OPORTMXTYSLOTCTR(sub->swm->oport.map, i),
sound/soc/uniphier/aio-core.c
311
regmap_update_bits(r, OPORTMXTYSLOTCTR(sub->swm->oport.map, i),
sound/soc/uniphier/aio-core.c
330
static int aio_port_set_rate(struct uniphier_aio_sub *sub, int rate)
sound/soc/uniphier/aio-core.c
332
struct regmap *r = sub->aio->chip->regmap;
sound/soc/uniphier/aio-core.c
333
struct device *dev = &sub->aio->chip->pdev->dev;
sound/soc/uniphier/aio-core.c
336
if (sub->swm->dir == PORT_DIR_OUTPUT) {
sound/soc/uniphier/aio-core.c
382
regmap_update_bits(r, OPORTMXCTR1(sub->swm->oport.map),
sound/soc/uniphier/aio-core.c
430
regmap_update_bits(r, IPORTMXCTR1(sub->swm->iport.map),
sound/soc/uniphier/aio-core.c
449
static int aio_port_set_fmt(struct uniphier_aio_sub *sub)
sound/soc/uniphier/aio-core.c
451
struct regmap *r = sub->aio->chip->regmap;
sound/soc/uniphier/aio-core.c
452
struct device *dev = &sub->aio->chip->pdev->dev;
sound/soc/uniphier/aio-core.c
455
if (sub->swm->dir == PORT_DIR_OUTPUT) {
sound/soc/uniphier/aio-core.c
456
switch (sub->aio->fmt) {
sound/soc/uniphier/aio-core.c
468
sub->aio->fmt);
sound/soc/uniphier/aio-core.c
473
regmap_update_bits(r, OPORTMXCTR1(sub->swm->oport.map),
sound/soc/uniphier/aio-core.c
477
switch (sub->aio->fmt) {
sound/soc/uniphier/aio-core.c
489
sub->aio->fmt);
sound/soc/uniphier/aio-core.c
495
regmap_update_bits(r, IPORTMXCTR1(sub->swm->iport.map),
sound/soc/uniphier/aio-core.c
514
static int aio_port_set_clk(struct uniphier_aio_sub *sub)
sound/soc/uniphier/aio-core.c
516
struct uniphier_aio_chip *chip = sub->aio->chip;
sound/soc/uniphier/aio-core.c
517
struct device *dev = &sub->aio->chip->pdev->dev;
sound/soc/uniphier/aio-core.c
518
struct regmap *r = sub->aio->chip->regmap;
sound/soc/uniphier/aio-core.c
53
u64 aio_rb_cnt(struct uniphier_aio_sub *sub)
sound/soc/uniphier/aio-core.c
531
if (sub->swm->dir == PORT_DIR_OUTPUT) {
sound/soc/uniphier/aio-core.c
532
if (sub->swm->type == PORT_TYPE_I2S) {
sound/soc/uniphier/aio-core.c
533
if (sub->aio->pll_out >= ARRAY_SIZE(v_pll)) {
sound/soc/uniphier/aio-core.c
535
sub->aio->pll_out);
sound/soc/uniphier/aio-core.c
538
if (sub->aio->plldiv >= ARRAY_SIZE(v_div)) {
sound/soc/uniphier/aio-core.c
540
sub->aio->plldiv);
sound/soc/uniphier/aio-core.c
544
v = v_pll[sub->aio->pll_out] |
sound/soc/uniphier/aio-core.c
546
v_div[sub->aio->plldiv];
sound/soc/uniphier/aio-core.c
548
switch (chip->plls[sub->aio->pll_out].freq) {
sound/soc/uniphier/aio-core.c
55
return rb_cnt(sub->wr_offs, sub->rd_offs, sub->compr_bytes);
sound/soc/uniphier/aio-core.c
558
} else if (sub->swm->type == PORT_TYPE_EVE) {
sound/soc/uniphier/aio-core.c
563
} else if (sub->swm->type == PORT_TYPE_SPDIF) {
sound/soc/uniphier/aio-core.c
564
if (sub->aio->pll_out >= ARRAY_SIZE(v_pll)) {
sound/soc/uniphier/aio-core.c
566
sub->aio->pll_out);
sound/soc/uniphier/aio-core.c
569
v = v_pll[sub->aio->pll_out] |
sound/soc/uniphier/aio-core.c
573
switch (chip->plls[sub->aio->pll_out].freq) {
sound/soc/uniphier/aio-core.c
58
u64 aio_rbt_cnt_to_end(struct uniphier_aio_sub *sub)
sound/soc/uniphier/aio-core.c
589
regmap_write(r, OPORTMXCTR2(sub->swm->oport.map), v);
sound/soc/uniphier/aio-core.c
595
regmap_write(r, IPORTMXCTR2(sub->swm->iport.map), v);
sound/soc/uniphier/aio-core.c
60
return rb_cnt_to_end(sub->wr_offs, sub->rd_offs, sub->compr_bytes);
sound/soc/uniphier/aio-core.c
613
int aio_port_set_param(struct uniphier_aio_sub *sub, int pass_through,
sound/soc/uniphier/aio-core.c
616
struct regmap *r = sub->aio->chip->regmap;
sound/soc/uniphier/aio-core.c
622
if (sub->swm->type == PORT_TYPE_EVE ||
sound/soc/uniphier/aio-core.c
623
sub->swm->type == PORT_TYPE_CONV) {
sound/soc/uniphier/aio-core.c
629
ret = aio_port_set_ch(sub);
sound/soc/uniphier/aio-core.c
63
u64 aio_rb_space(struct uniphier_aio_sub *sub)
sound/soc/uniphier/aio-core.c
633
ret = aio_port_set_rate(sub, rate);
sound/soc/uniphier/aio-core.c
637
ret = aio_port_set_fmt(sub);
sound/soc/uniphier/aio-core.c
642
ret = aio_port_set_clk(sub);
sound/soc/uniphier/aio-core.c
646
if (sub->swm->dir == PORT_DIR_OUTPUT) {
sound/soc/uniphier/aio-core.c
65
return rb_space(sub->wr_offs, sub->rd_offs, sub->compr_bytes);
sound/soc/uniphier/aio-core.c
657
regmap_write(r, OPORTMXCTR3(sub->swm->oport.map), v);
sound/soc/uniphier/aio-core.c
659
regmap_write(r, IPORTMXACLKSEL0EX(sub->swm->iport.map),
sound/soc/uniphier/aio-core.c
661
regmap_write(r, IPORTMXEXNOE(sub->swm->iport.map),
sound/soc/uniphier/aio-core.c
675
void aio_port_set_enable(struct uniphier_aio_sub *sub, int enable)
sound/soc/uniphier/aio-core.c
677
struct regmap *r = sub->aio->chip->regmap;
sound/soc/uniphier/aio-core.c
679
if (sub->swm->dir == PORT_DIR_OUTPUT) {
sound/soc/uniphier/aio-core.c
68
u64 aio_rb_space_to_end(struct uniphier_aio_sub *sub)
sound/soc/uniphier/aio-core.c
680
regmap_write(r, OPORTMXPATH(sub->swm->oport.map),
sound/soc/uniphier/aio-core.c
681
sub->swm->oif.map);
sound/soc/uniphier/aio-core.c
683
regmap_update_bits(r, OPORTMXMASK(sub->swm->oport.map),
sound/soc/uniphier/aio-core.c
694
regmap_write(r, AOUTENCTR0, BIT(sub->swm->oport.map));
sound/soc/uniphier/aio-core.c
696
regmap_write(r, AOUTENCTR1, BIT(sub->swm->oport.map));
sound/soc/uniphier/aio-core.c
698
regmap_update_bits(r, IPORTMXMASK(sub->swm->iport.map),
sound/soc/uniphier/aio-core.c
70
return rb_space_to_end(sub->wr_offs, sub->rd_offs, sub->compr_bytes);
sound/soc/uniphier/aio-core.c
706
IPORTMXCTR2(sub->swm->iport.map),
sound/soc/uniphier/aio-core.c
711
IPORTMXCTR2(sub->swm->iport.map),
sound/soc/uniphier/aio-core.c
723
int aio_port_get_volume(struct uniphier_aio_sub *sub)
sound/soc/uniphier/aio-core.c
725
struct regmap *r = sub->aio->chip->regmap;
sound/soc/uniphier/aio-core.c
728
regmap_read(r, OPORTMXTYVOLGAINSTATUS(sub->swm->oport.map, 0), &v);
sound/soc/uniphier/aio-core.c
742
void aio_port_set_volume(struct uniphier_aio_sub *sub, int vol)
sound/soc/uniphier/aio-core.c
744
struct regmap *r = sub->aio->chip->regmap;
sound/soc/uniphier/aio-core.c
745
int oport_map = sub->swm->oport.map;
sound/soc/uniphier/aio-core.c
748
if (sub->swm->dir == PORT_DIR_INPUT)
sound/soc/uniphier/aio-core.c
751
cur = aio_port_get_volume(sub);
sound/soc/uniphier/aio-core.c
753
fs = params_rate(&sub->params);
sound/soc/uniphier/aio-core.c
786
int aio_if_set_param(struct uniphier_aio_sub *sub, int pass_through)
sound/soc/uniphier/aio-core.c
788
struct regmap *r = sub->aio->chip->regmap;
sound/soc/uniphier/aio-core.c
791
if (sub->swm->dir == PORT_DIR_OUTPUT) {
sound/soc/uniphier/aio-core.c
796
switch (params_channels(&sub->params)) {
sound/soc/uniphier/aio-core.c
812
regmap_write(r, PBOUTMXCTR0(sub->swm->oif.map), v);
sound/soc/uniphier/aio-core.c
813
regmap_write(r, PBOUTMXCTR1(sub->swm->oif.map), 0);
sound/soc/uniphier/aio-core.c
815
regmap_write(r, PBINMXCTR(sub->swm->iif.map),
sound/soc/uniphier/aio-core.c
818
(sub->swm->iport.map << PBINMXCTR_PBINSEL_SHIFT) |
sound/soc/uniphier/aio-core.c
836
int aio_oport_set_stream_type(struct uniphier_aio_sub *sub,
sound/soc/uniphier/aio-core.c
839
struct regmap *r = sub->aio->chip->regmap;
sound/soc/uniphier/aio-core.c
884
ret = regmap_write(r, OPORTMXREPET(sub->swm->oport.map), repet);
sound/soc/uniphier/aio-core.c
888
ret = regmap_write(r, OPORTMXPAUDAT(sub->swm->oport.map), pause);
sound/soc/uniphier/aio-core.c
903
void aio_src_reset(struct uniphier_aio_sub *sub)
sound/soc/uniphier/aio-core.c
905
struct regmap *r = sub->aio->chip->regmap;
sound/soc/uniphier/aio-core.c
907
if (sub->swm->dir != PORT_DIR_OUTPUT)
sound/soc/uniphier/aio-core.c
910
regmap_write(r, AOUTSRCRSTCTR0, BIT(sub->swm->oport.map));
sound/soc/uniphier/aio-core.c
911
regmap_write(r, AOUTSRCRSTCTR1, BIT(sub->swm->oport.map));
sound/soc/uniphier/aio-core.c
925
int aio_src_set_param(struct uniphier_aio_sub *sub,
sound/soc/uniphier/aio-core.c
928
struct regmap *r = sub->aio->chip->regmap;
sound/soc/uniphier/aio-core.c
932
if (sub->swm->dir != PORT_DIR_OUTPUT)
sound/soc/uniphier/aio-core.c
935
ret = regmap_write(r, OPORTMXSRC1CTR(sub->swm->oport.map),
sound/soc/uniphier/aio-core.c
964
ret = regmap_write(r, OPORTMXRATE_I(sub->swm->oport.map),
sound/soc/uniphier/aio-core.c
970
ret = regmap_update_bits(r, OPORTMXRATE_I(sub->swm->oport.map),
sound/soc/uniphier/aio-core.c
979
int aio_srcif_set_param(struct uniphier_aio_sub *sub)
sound/soc/uniphier/aio-core.c
981
struct regmap *r = sub->aio->chip->regmap;
sound/soc/uniphier/aio-core.c
983
regmap_write(r, PBINMXCTR(sub->swm->iif.map),
sound/soc/uniphier/aio-core.c
986
(sub->swm->oport.map << PBINMXCTR_PBINSEL_SHIFT) |
sound/soc/uniphier/aio-core.c
993
int aio_srcch_set_param(struct uniphier_aio_sub *sub)
sound/soc/uniphier/aio-core.c
995
struct regmap *r = sub->aio->chip->regmap;
sound/soc/uniphier/aio-core.c
997
regmap_write(r, CDA2D_CHMXCTRL1(sub->swm->och.map),
sound/soc/uniphier/aio-cpu.c
258
struct uniphier_aio_sub *sub = &aio->sub[substream->stream];
sound/soc/uniphier/aio-cpu.c
260
sub->substream = substream;
sound/soc/uniphier/aio-cpu.c
261
sub->pass_through = 0;
sound/soc/uniphier/aio-cpu.c
262
sub->use_mmap = true;
sound/soc/uniphier/aio-cpu.c
264
return aio_init(sub);
sound/soc/uniphier/aio-cpu.c
271
struct uniphier_aio_sub *sub = &aio->sub[substream->stream];
sound/soc/uniphier/aio-cpu.c
273
sub->substream = NULL;
sound/soc/uniphier/aio-cpu.c
281
struct uniphier_aio_sub *sub = &aio->sub[substream->stream];
sound/soc/uniphier/aio-cpu.c
305
sub->params = *params;
sound/soc/uniphier/aio-cpu.c
306
sub->setting = 1;
sound/soc/uniphier/aio-cpu.c
308
aio_port_reset(sub);
sound/soc/uniphier/aio-cpu.c
309
aio_port_set_volume(sub, sub->vol);
sound/soc/uniphier/aio-cpu.c
310
aio_src_reset(sub);
sound/soc/uniphier/aio-cpu.c
319
struct uniphier_aio_sub *sub = &aio->sub[substream->stream];
sound/soc/uniphier/aio-cpu.c
321
sub->setting = 0;
sound/soc/uniphier/aio-cpu.c
330
struct uniphier_aio_sub *sub = &aio->sub[substream->stream];
sound/soc/uniphier/aio-cpu.c
333
ret = aio_port_set_param(sub, sub->pass_through, &sub->params);
sound/soc/uniphier/aio-cpu.c
336
ret = aio_src_set_param(sub, &sub->params);
sound/soc/uniphier/aio-cpu.c
339
aio_port_set_enable(sub, 1);
sound/soc/uniphier/aio-cpu.c
341
ret = aio_if_set_param(sub, sub->pass_through);
sound/soc/uniphier/aio-cpu.c
345
if (sub->swm->type == PORT_TYPE_CONV) {
sound/soc/uniphier/aio-cpu.c
346
ret = aio_srcif_set_param(sub);
sound/soc/uniphier/aio-cpu.c
349
ret = aio_srcch_set_param(sub);
sound/soc/uniphier/aio-cpu.c
352
aio_srcch_set_enable(sub, 1);
sound/soc/uniphier/aio-cpu.c
363
for (i = 0; i < ARRAY_SIZE(aio->sub); i++) {
sound/soc/uniphier/aio-cpu.c
364
struct uniphier_aio_sub *sub = &aio->sub[i];
sound/soc/uniphier/aio-cpu.c
371
sub->swm = &spec->swm;
sound/soc/uniphier/aio-cpu.c
372
sub->spec = spec;
sound/soc/uniphier/aio-cpu.c
374
sub->vol = AUD_VOL_INIT;
sound/soc/uniphier/aio-cpu.c
52
struct uniphier_aio_sub *sub = &chip->aios[i].sub[0];
sound/soc/uniphier/aio-cpu.c
54
if (!sub->swm)
sound/soc/uniphier/aio-cpu.c
57
if (sub->swm->oport.hw == oport_hw)
sound/soc/uniphier/aio-cpu.c
572
for (i = 0; i < ARRAY_SIZE(aio->sub); i++) {
sound/soc/uniphier/aio-cpu.c
573
struct uniphier_aio_sub *sub = &aio->sub[i];
sound/soc/uniphier/aio-cpu.c
575
if (!sub->spec || !sub->substream)
sound/soc/uniphier/aio-cpu.c
578
ret = aio_init(sub);
sound/soc/uniphier/aio-cpu.c
58
return sub;
sound/soc/uniphier/aio-cpu.c
582
if (!sub->setting)
sound/soc/uniphier/aio-cpu.c
585
aio_port_reset(sub);
sound/soc/uniphier/aio-cpu.c
586
aio_src_reset(sub);
sound/soc/uniphier/aio-cpu.c
628
struct uniphier_aio_sub *sub;
sound/soc/uniphier/aio-cpu.c
631
sub = find_volume(chip, oport_hw);
sound/soc/uniphier/aio-cpu.c
632
if (!sub)
sound/soc/uniphier/aio-cpu.c
635
ucontrol->value.integer.value[0] = sub->vol;
sound/soc/uniphier/aio-cpu.c
645
struct uniphier_aio_sub *sub;
sound/soc/uniphier/aio-cpu.c
648
sub = find_volume(chip, oport_hw);
sound/soc/uniphier/aio-cpu.c
649
if (!sub)
sound/soc/uniphier/aio-cpu.c
652
if (sub->vol == ucontrol->value.integer.value[0])
sound/soc/uniphier/aio-cpu.c
654
sub->vol = ucontrol->value.integer.value[0];
sound/soc/uniphier/aio-cpu.c
656
aio_port_set_volume(sub, sub->vol);
sound/soc/uniphier/aio-cpu.c
776
for (j = 0; j < ARRAY_SIZE(aio->sub); j++) {
sound/soc/uniphier/aio-cpu.c
777
struct uniphier_aio_sub *sub = &aio->sub[j];
sound/soc/uniphier/aio-cpu.c
779
sub->aio = aio;
sound/soc/uniphier/aio-cpu.c
780
spin_lock_init(&sub->lock);
sound/soc/uniphier/aio-dma.c
113
struct uniphier_aio_sub *sub = &aio->sub[substream->stream];
sound/soc/uniphier/aio-dma.c
118
ret = aiodma_ch_set_param(sub);
sound/soc/uniphier/aio-dma.c
122
scoped_guard(spinlock_irqsave, &sub->lock)
sound/soc/uniphier/aio-dma.c
123
ret = aiodma_rb_set_buffer(sub, runtime->dma_addr,
sound/soc/uniphier/aio-dma.c
138
struct uniphier_aio_sub *sub = &aio->sub[substream->stream];
sound/soc/uniphier/aio-dma.c
143
guard(spinlock_irqsave)(&sub->lock);
sound/soc/uniphier/aio-dma.c
146
aiodma_rb_sync(sub, runtime->dma_addr, runtime->dma_bytes,
sound/soc/uniphier/aio-dma.c
148
aiodma_ch_set_enable(sub, 1);
sound/soc/uniphier/aio-dma.c
149
sub->running = 1;
sound/soc/uniphier/aio-dma.c
153
sub->running = 0;
sound/soc/uniphier/aio-dma.c
154
aiodma_ch_set_enable(sub, 0);
sound/soc/uniphier/aio-dma.c
172
struct uniphier_aio_sub *sub = &aio->sub[substream->stream];
sound/soc/uniphier/aio-dma.c
177
guard(spinlock_irqsave)(&sub->lock);
sound/soc/uniphier/aio-dma.c
178
aiodma_rb_sync(sub, runtime->dma_addr, runtime->dma_bytes, bytes);
sound/soc/uniphier/aio-dma.c
180
if (sub->swm->dir == PORT_DIR_OUTPUT)
sound/soc/uniphier/aio-dma.c
181
pos = bytes_to_frames(runtime, sub->rd_offs);
sound/soc/uniphier/aio-dma.c
183
pos = bytes_to_frames(runtime, sub->wr_offs);
sound/soc/uniphier/aio-dma.c
28
static void aiodma_pcm_irq(struct uniphier_aio_sub *sub)
sound/soc/uniphier/aio-dma.c
30
struct snd_pcm_runtime *runtime = sub->substream->runtime;
sound/soc/uniphier/aio-dma.c
35
scoped_guard(spinlock, &sub->lock) {
sound/soc/uniphier/aio-dma.c
36
ret = aiodma_rb_set_threshold(sub, runtime->dma_bytes,
sound/soc/uniphier/aio-dma.c
37
sub->threshold + bytes);
sound/soc/uniphier/aio-dma.c
39
sub->threshold += bytes;
sound/soc/uniphier/aio-dma.c
41
aiodma_rb_sync(sub, runtime->dma_addr, runtime->dma_bytes, bytes);
sound/soc/uniphier/aio-dma.c
42
aiodma_rb_clear_irq(sub);
sound/soc/uniphier/aio-dma.c
45
snd_pcm_period_elapsed(sub->substream);
sound/soc/uniphier/aio-dma.c
48
static void aiodma_compr_irq(struct uniphier_aio_sub *sub)
sound/soc/uniphier/aio-dma.c
50
struct snd_compr_runtime *runtime = sub->cstream->runtime;
sound/soc/uniphier/aio-dma.c
54
scoped_guard(spinlock, &sub->lock) {
sound/soc/uniphier/aio-dma.c
55
ret = aiodma_rb_set_threshold(sub, sub->compr_bytes,
sound/soc/uniphier/aio-dma.c
56
sub->threshold + bytes);
sound/soc/uniphier/aio-dma.c
58
sub->threshold += bytes;
sound/soc/uniphier/aio-dma.c
60
aiodma_rb_sync(sub, sub->compr_addr, sub->compr_bytes, bytes);
sound/soc/uniphier/aio-dma.c
61
aiodma_rb_clear_irq(sub);
sound/soc/uniphier/aio-dma.c
64
snd_compr_fragment_elapsed(sub->cstream);
sound/soc/uniphier/aio-dma.c
77
for (j = 0; j < ARRAY_SIZE(aio->sub); j++) {
sound/soc/uniphier/aio-dma.c
78
struct uniphier_aio_sub *sub = &aio->sub[j];
sound/soc/uniphier/aio-dma.c
81
if (!sub->running || !aiodma_rb_is_irq(sub))
sound/soc/uniphier/aio-dma.c
84
if (sub->substream)
sound/soc/uniphier/aio-dma.c
85
aiodma_pcm_irq(sub);
sound/soc/uniphier/aio-dma.c
86
if (sub->cstream)
sound/soc/uniphier/aio-dma.c
87
aiodma_compr_irq(sub);
sound/soc/uniphier/aio.h
269
struct uniphier_aio_sub sub[2];
sound/soc/uniphier/aio.h
318
u64 aio_rb_cnt(struct uniphier_aio_sub *sub);
sound/soc/uniphier/aio.h
319
u64 aio_rbt_cnt_to_end(struct uniphier_aio_sub *sub);
sound/soc/uniphier/aio.h
320
u64 aio_rb_space(struct uniphier_aio_sub *sub);
sound/soc/uniphier/aio.h
321
u64 aio_rb_space_to_end(struct uniphier_aio_sub *sub);
sound/soc/uniphier/aio.h
327
int aio_init(struct uniphier_aio_sub *sub);
sound/soc/uniphier/aio.h
328
void aio_port_reset(struct uniphier_aio_sub *sub);
sound/soc/uniphier/aio.h
329
int aio_port_set_param(struct uniphier_aio_sub *sub, int pass_through,
sound/soc/uniphier/aio.h
331
void aio_port_set_enable(struct uniphier_aio_sub *sub, int enable);
sound/soc/uniphier/aio.h
332
int aio_port_get_volume(struct uniphier_aio_sub *sub);
sound/soc/uniphier/aio.h
333
void aio_port_set_volume(struct uniphier_aio_sub *sub, int vol);
sound/soc/uniphier/aio.h
334
int aio_if_set_param(struct uniphier_aio_sub *sub, int pass_through);
sound/soc/uniphier/aio.h
335
int aio_oport_set_stream_type(struct uniphier_aio_sub *sub,
sound/soc/uniphier/aio.h
337
void aio_src_reset(struct uniphier_aio_sub *sub);
sound/soc/uniphier/aio.h
338
int aio_src_set_param(struct uniphier_aio_sub *sub,
sound/soc/uniphier/aio.h
340
int aio_srcif_set_param(struct uniphier_aio_sub *sub);
sound/soc/uniphier/aio.h
341
int aio_srcch_set_param(struct uniphier_aio_sub *sub);
sound/soc/uniphier/aio.h
342
void aio_srcch_set_enable(struct uniphier_aio_sub *sub, int enable);
sound/soc/uniphier/aio.h
344
int aiodma_ch_set_param(struct uniphier_aio_sub *sub);
sound/soc/uniphier/aio.h
345
void aiodma_ch_set_enable(struct uniphier_aio_sub *sub, int enable);
sound/soc/uniphier/aio.h
346
int aiodma_rb_set_threshold(struct uniphier_aio_sub *sub, u64 size, u32 th);
sound/soc/uniphier/aio.h
347
int aiodma_rb_set_buffer(struct uniphier_aio_sub *sub, u64 start, u64 end,
sound/soc/uniphier/aio.h
349
void aiodma_rb_sync(struct uniphier_aio_sub *sub, u64 start, u64 size,
sound/soc/uniphier/aio.h
351
bool aiodma_rb_is_irq(struct uniphier_aio_sub *sub);
sound/soc/uniphier/aio.h
352
void aiodma_rb_clear_irq(struct uniphier_aio_sub *sub);
sound/usb/6fire/pcm.c
192
static void usb6fire_pcm_capture(struct pcm_substream *sub, struct pcm_urb *urb)
sound/usb/6fire/pcm.c
198
struct pcm_runtime *rt = snd_pcm_substream_chip(sub->instance);
sound/usb/6fire/pcm.c
199
struct snd_pcm_runtime *alsa_rt = sub->instance->runtime;
sound/usb/6fire/pcm.c
201
u32 *dest = (u32 *) (alsa_rt->dma_area + sub->dma_off
sound/usb/6fire/pcm.c
228
sub->dma_off++;
sound/usb/6fire/pcm.c
229
sub->period_off++;
sound/usb/6fire/pcm.c
231
sub->dma_off = 0;
sound/usb/6fire/pcm.c
239
static void usb6fire_pcm_playback(struct pcm_substream *sub,
sound/usb/6fire/pcm.c
245
struct pcm_runtime *rt = snd_pcm_substream_chip(sub->instance);
sound/usb/6fire/pcm.c
246
struct snd_pcm_runtime *alsa_rt = sub->instance->runtime;
sound/usb/6fire/pcm.c
247
u32 *src = (u32 *) (alsa_rt->dma_area + sub->dma_off
sound/usb/6fire/pcm.c
276
sub->dma_off++;
sound/usb/6fire/pcm.c
277
sub->period_off++;
sound/usb/6fire/pcm.c
280
sub->dma_off = 0;
sound/usb/6fire/pcm.c
291
struct pcm_substream *sub;
sound/usb/6fire/pcm.c
315
sub = &rt->capture;
sound/usb/6fire/pcm.c
317
scoped_guard(spinlock_irqsave, &sub->lock) {
sound/usb/6fire/pcm.c
318
if (sub->active) {
sound/usb/6fire/pcm.c
319
usb6fire_pcm_capture(sub, in_urb);
sound/usb/6fire/pcm.c
320
if (sub->period_off >= sub->instance->runtime->period_size) {
sound/usb/6fire/pcm.c
321
sub->period_off %= sub->instance->runtime->period_size;
sound/usb/6fire/pcm.c
327
snd_pcm_period_elapsed(sub->instance);
sound/usb/6fire/pcm.c
341
sub = &rt->playback;
sound/usb/6fire/pcm.c
343
scoped_guard(spinlock_irqsave, &sub->lock) {
sound/usb/6fire/pcm.c
344
if (sub->active) {
sound/usb/6fire/pcm.c
345
usb6fire_pcm_playback(sub, out_urb);
sound/usb/6fire/pcm.c
346
if (sub->period_off >= sub->instance->runtime->period_size) {
sound/usb/6fire/pcm.c
347
sub->period_off %= sub->instance->runtime->period_size;
sound/usb/6fire/pcm.c
353
snd_pcm_period_elapsed(sub->instance);
sound/usb/6fire/pcm.c
391
struct pcm_substream *sub = NULL;
sound/usb/6fire/pcm.c
404
sub = &rt->playback;
sound/usb/6fire/pcm.c
409
sub = &rt->capture;
sound/usb/6fire/pcm.c
412
if (!sub) {
sound/usb/6fire/pcm.c
417
sub->instance = alsa_sub;
sound/usb/6fire/pcm.c
418
sub->active = false;
sound/usb/6fire/pcm.c
425
struct pcm_substream *sub = usb6fire_pcm_get_substream(alsa_sub);
sound/usb/6fire/pcm.c
431
if (sub) {
sound/usb/6fire/pcm.c
433
scoped_guard(spinlock_irqsave, &sub->lock) {
sound/usb/6fire/pcm.c
434
sub->instance = NULL;
sound/usb/6fire/pcm.c
435
sub->active = false;
sound/usb/6fire/pcm.c
450
struct pcm_substream *sub = usb6fire_pcm_get_substream(alsa_sub);
sound/usb/6fire/pcm.c
456
if (!sub)
sound/usb/6fire/pcm.c
460
sub->dma_off = 0;
sound/usb/6fire/pcm.c
461
sub->period_off = 0;
sound/usb/6fire/pcm.c
489
struct pcm_substream *sub = usb6fire_pcm_get_substream(alsa_sub);
sound/usb/6fire/pcm.c
494
if (!sub)
sound/usb/6fire/pcm.c
497
guard(spinlock_irqsave)(&sub->lock);
sound/usb/6fire/pcm.c
501
sub->active = true;
sound/usb/6fire/pcm.c
506
sub->active = false;
sound/usb/6fire/pcm.c
517
struct pcm_substream *sub = usb6fire_pcm_get_substream(alsa_sub);
sound/usb/6fire/pcm.c
521
if (rt->panic || !sub)
sound/usb/6fire/pcm.c
524
guard(spinlock_irqsave)(&sub->lock);
sound/usb/6fire/pcm.c
525
ret = sub->dma_off;
sound/usb/caiaq/audio.c
165
static int snd_usb_caiaq_pcm_hw_free(struct snd_pcm_substream *sub)
sound/usb/caiaq/audio.c
167
struct snd_usb_caiaqdev *cdev = snd_pcm_substream_chip(sub);
sound/usb/caiaq/audio.c
168
deactivate_substream(cdev, sub);
sound/usb/caiaq/audio.c
255
static int snd_usb_caiaq_pcm_trigger(struct snd_pcm_substream *sub, int cmd)
sound/usb/caiaq/audio.c
257
struct snd_usb_caiaqdev *cdev = snd_pcm_substream_chip(sub);
sound/usb/caiaq/audio.c
260
dev_dbg(dev, "%s(%p) cmd %d\n", __func__, sub, cmd);
sound/usb/caiaq/audio.c
265
activate_substream(cdev, sub);
sound/usb/caiaq/audio.c
269
deactivate_substream(cdev, sub);
sound/usb/caiaq/audio.c
279
snd_usb_caiaq_pcm_pointer(struct snd_pcm_substream *sub)
sound/usb/caiaq/audio.c
281
int index = sub->number;
sound/usb/caiaq/audio.c
282
struct snd_usb_caiaqdev *cdev = snd_pcm_substream_chip(sub);
sound/usb/caiaq/audio.c
289
if (sub->stream == SNDRV_PCM_STREAM_PLAYBACK)
sound/usb/caiaq/audio.c
290
return bytes_to_frames(sub->runtime,
sound/usb/caiaq/audio.c
293
return bytes_to_frames(sub->runtime,
sound/usb/caiaq/audio.c
311
struct snd_pcm_substream *sub;
sound/usb/caiaq/audio.c
314
sub = subs[stream];
sound/usb/caiaq/audio.c
315
if (!sub)
sound/usb/caiaq/audio.c
318
pb = snd_pcm_lib_period_bytes(sub);
sound/usb/caiaq/audio.c
319
cnt = (sub->stream == SNDRV_PCM_STREAM_PLAYBACK) ?
sound/usb/caiaq/audio.c
324
snd_pcm_period_elapsed(sub);
sound/usb/caiaq/audio.c
335
struct snd_pcm_substream *sub;
sound/usb/caiaq/audio.c
343
sub = cdev->sub_capture[stream];
sound/usb/caiaq/audio.c
344
if (sub) {
sound/usb/caiaq/audio.c
345
struct snd_pcm_runtime *rt = sub->runtime;
sound/usb/caiaq/audio.c
364
struct snd_pcm_substream *sub;
sound/usb/caiaq/audio.c
387
sub = cdev->sub_capture[stream];
sound/usb/caiaq/audio.c
391
if (sub) {
sound/usb/caiaq/audio.c
392
struct snd_pcm_runtime *rt = sub->runtime;
sound/usb/caiaq/audio.c
419
struct snd_pcm_substream *sub = cdev->sub_capture[stream];
sound/usb/caiaq/audio.c
423
if (sub && !cdev->input_panic) {
sound/usb/caiaq/audio.c
424
struct snd_pcm_runtime *rt = sub->runtime;
sound/usb/caiaq/audio.c
498
struct snd_pcm_substream *sub;
sound/usb/caiaq/audio.c
503
sub = cdev->sub_playback[stream];
sound/usb/caiaq/audio.c
504
if (sub) {
sound/usb/caiaq/audio.c
505
struct snd_pcm_runtime *rt = sub->runtime;
sound/usb/caiaq/audio.c
52
struct snd_pcm_substream *sub)
sound/usb/caiaq/audio.c
536
struct snd_pcm_substream *sub = cdev->sub_playback[stream];
sound/usb/caiaq/audio.c
540
if (sub) {
sound/usb/caiaq/audio.c
541
struct snd_pcm_runtime *rt = sub->runtime;
sound/usb/caiaq/audio.c
56
if (sub->stream == SNDRV_PCM_STREAM_PLAYBACK)
sound/usb/caiaq/audio.c
57
cdev->sub_playback[sub->number] = sub;
sound/usb/caiaq/audio.c
59
cdev->sub_capture[sub->number] = sub;
sound/usb/caiaq/audio.c
64
struct snd_pcm_substream *sub)
sound/usb/caiaq/audio.c
68
if (sub->stream == SNDRV_PCM_STREAM_PLAYBACK)
sound/usb/caiaq/audio.c
69
cdev->sub_playback[sub->number] = NULL;
sound/usb/caiaq/audio.c
71
cdev->sub_capture[sub->number] = NULL;
sound/usb/hiface/pcm.c
255
static bool hiface_pcm_playback(struct pcm_substream *sub, struct pcm_urb *urb)
sound/usb/hiface/pcm.c
257
struct snd_pcm_runtime *alsa_rt = sub->instance->runtime;
sound/usb/hiface/pcm.c
264
pcm_buffer_size = snd_pcm_lib_buffer_bytes(sub->instance);
sound/usb/hiface/pcm.c
266
if (sub->dma_off + PCM_PACKET_SIZE <= pcm_buffer_size) {
sound/usb/hiface/pcm.c
269
(unsigned int) sub->dma_off);
sound/usb/hiface/pcm.c
271
source = alsa_rt->dma_area + sub->dma_off;
sound/usb/hiface/pcm.c
279
(unsigned int) sub->dma_off);
sound/usb/hiface/pcm.c
281
len = pcm_buffer_size - sub->dma_off;
sound/usb/hiface/pcm.c
283
source = alsa_rt->dma_area + sub->dma_off;
sound/usb/hiface/pcm.c
290
sub->dma_off += PCM_PACKET_SIZE;
sound/usb/hiface/pcm.c
291
if (sub->dma_off >= pcm_buffer_size)
sound/usb/hiface/pcm.c
292
sub->dma_off -= pcm_buffer_size;
sound/usb/hiface/pcm.c
294
sub->period_off += PCM_PACKET_SIZE;
sound/usb/hiface/pcm.c
295
if (sub->period_off >= alsa_rt->period_size) {
sound/usb/hiface/pcm.c
296
sub->period_off %= alsa_rt->period_size;
sound/usb/hiface/pcm.c
306
struct pcm_substream *sub;
sound/usb/hiface/pcm.c
326
sub = &rt->playback;
sound/usb/hiface/pcm.c
327
scoped_guard(spinlock_irqsave, &sub->lock) {
sound/usb/hiface/pcm.c
328
if (sub->active)
sound/usb/hiface/pcm.c
329
do_period_elapsed = hiface_pcm_playback(sub, out_urb);
sound/usb/hiface/pcm.c
335
snd_pcm_period_elapsed(sub->instance);
sound/usb/hiface/pcm.c
350
struct pcm_substream *sub = NULL;
sound/usb/hiface/pcm.c
361
sub = &rt->playback;
sound/usb/hiface/pcm.c
363
if (!sub) {
sound/usb/hiface/pcm.c
381
sub->instance = alsa_sub;
sound/usb/hiface/pcm.c
382
sub->active = false;
sound/usb/hiface/pcm.c
389
struct pcm_substream *sub = hiface_pcm_get_substream(alsa_sub);
sound/usb/hiface/pcm.c
395
if (sub) {
sound/usb/hiface/pcm.c
399
guard(spinlock_irqsave)(&sub->lock);
sound/usb/hiface/pcm.c
400
sub->instance = NULL;
sound/usb/hiface/pcm.c
401
sub->active = false;
sound/usb/hiface/pcm.c
409
struct pcm_substream *sub = hiface_pcm_get_substream(alsa_sub);
sound/usb/hiface/pcm.c
415
if (!sub)
sound/usb/hiface/pcm.c
422
sub->dma_off = 0;
sound/usb/hiface/pcm.c
423
sub->period_off = 0;
sound/usb/hiface/pcm.c
439
struct pcm_substream *sub = hiface_pcm_get_substream(alsa_sub);
sound/usb/hiface/pcm.c
444
if (!sub)
sound/usb/hiface/pcm.c
450
scoped_guard(spinlock_irq, &sub->lock) {
sound/usb/hiface/pcm.c
451
sub->active = true;
sound/usb/hiface/pcm.c
457
scoped_guard(spinlock_irq, &sub->lock) {
sound/usb/hiface/pcm.c
458
sub->active = false;
sound/usb/hiface/pcm.c
469
struct pcm_substream *sub = hiface_pcm_get_substream(alsa_sub);
sound/usb/hiface/pcm.c
473
if (rt->panic || !sub)
sound/usb/hiface/pcm.c
476
guard(spinlock_irqsave)(&sub->lock);
sound/usb/hiface/pcm.c
477
dma_offset = sub->dma_off;
tools/arch/x86/include/asm/asm.h
39
#define _ASM_SUB __ASM_SIZE(sub)
tools/arch/x86/kcpuid/kcpuid.c
163
if (leaf->sub == 0)
tools/arch/x86/kcpuid/kcpuid.c
166
printf(" %2d: EAX=0x%08x, EBX=0x%08x, ECX=0x%08x, EDX=0x%08x\n", leaf->sub,
tools/arch/x86/kcpuid/kcpuid.c
209
leaf->sub = subleaf;
tools/arch/x86/kcpuid/kcpuid.c
411
for (u32 sub = subleaf_start; sub <= subleaf_end; sub++) {
tools/arch/x86/kcpuid/kcpuid.c
412
leaf = &func->leafs[sub];
tools/arch/x86/kcpuid/kcpuid.c
510
show_reg_header((leaf->info[i].nr > 0), leaf->index, leaf->sub, reg_names[i]);
tools/arch/x86/kcpuid/kcpuid.c
54
u32 sub;
tools/bpf/bpf_exp.y
103
| sub
tools/bpf/bpf_exp.y
356
sub
tools/testing/selftests/bpf/prog_tests/arena_atomics.c
37
prog_fd = bpf_program__fd(skel->progs.sub);
tools/testing/selftests/bpf/prog_tests/atomics.c
38
prog_fd = skel->progs.sub.prog_fd;
tools/testing/selftests/bpf/prog_tests/reg_bounds.c
1619
struct subtest_case sub = {
tools/testing/selftests/bpf/prog_tests/reg_bounds.c
1627
subtest_case_str(sb, &sub, false /* ignore op */);
tools/testing/selftests/bpf/prog_tests/reg_bounds.c
1631
for (sub.op = first_op; sub.op <= last_op; sub.op++) {
tools/testing/selftests/bpf/prog_tests/reg_bounds.c
1633
subtest_case_str(sb, &sub, true /* print op */);
tools/testing/selftests/bpf/prog_tests/reg_bounds.c
1638
err = verify_case_op(init_t, cond_t, x, y, sub.op);
tools/testing/selftests/bpf/progs/arena_atomics.c
75
int sub(const void *ctx)
tools/testing/selftests/bpf/progs/atomic_bounds.c
14
int BPF_PROG(sub, int x)
tools/testing/selftests/bpf/progs/atomics.c
50
int sub(const void *ctx)
tools/testing/selftests/bpf/progs/btf_type_tag.c
22
int BPF_PROG(sub, int x)
tools/testing/selftests/bpf/progs/test_btf_decl_tag.c
47
int BPF_PROG(sub, int x)
tools/testing/selftests/bpf/progs/verifier_tailcall_jit.c
102
: __imm(sub)
tools/testing/selftests/net/tcp_mmap.c
215
int sub;
tools/testing/selftests/net/tcp_mmap.c
260
sub = 0;
tools/testing/selftests/net/tcp_mmap.c
261
while (sub < chunk_size) {
tools/testing/selftests/net/tcp_mmap.c
262
lu = read(fd, buffer + sub, min(chunk_size - sub,
tools/testing/selftests/net/tcp_mmap.c
269
EVP_DigestUpdate(ctx, buffer + sub, lu);
tools/testing/selftests/net/tcp_mmap.c
271
hash_zone(buffer + sub, lu);
tools/testing/selftests/net/tcp_mmap.c
273
sub += lu;