ff                286 arch/arc/include/asm/entry.h 	add \reg, r25, \off
ff                293 arch/arc/include/asm/entry.h 	add \reg, \reg, \off
ff                 15 arch/arc/include/asm/linkage.h 	std	\e, [sp, \off]
ff                 17 arch/arc/include/asm/linkage.h 	st	\e, [sp, \off]
ff                 18 arch/arc/include/asm/linkage.h 	st	\o, [sp, \off+4]
ff                 24 arch/arc/include/asm/linkage.h 	ldd	\e, [sp, \off]
ff                 26 arch/arc/include/asm/linkage.h 	ld	\e, [sp, \off]
ff                 27 arch/arc/include/asm/linkage.h 	ld	\o, [sp, \off+4]
ff                376 arch/arm/include/asm/assembler.h 	\instr\()b\t\cond\().w \reg, [\ptr, #\off]
ff                378 arch/arm/include/asm/assembler.h 	\instr\t\cond\().w \reg, [\ptr, #\off]
ff                265 arch/mips/include/asm/asmmacro.h 	ld.b	$w\wd, \off(\base)
ff                274 arch/mips/include/asm/asmmacro.h 	ld.h	$w\wd, \off(\base)
ff                283 arch/mips/include/asm/asmmacro.h 	ld.w	$w\wd, \off(\base)
ff                292 arch/mips/include/asm/asmmacro.h 	ld.d	$w\wd, \off(\base)
ff                301 arch/mips/include/asm/asmmacro.h 	st.b	$w\wd, \off(\base)
ff                310 arch/mips/include/asm/asmmacro.h 	st.h	$w\wd, \off(\base)
ff                319 arch/mips/include/asm/asmmacro.h 	st.w	$w\wd, \off(\base)
ff                328 arch/mips/include/asm/asmmacro.h 	st.d	$w\wd, \off(\base)
ff                396 arch/mips/include/asm/asmmacro.h 	PTR_ADDU $1, \base, \off
ff                406 arch/mips/include/asm/asmmacro.h 	PTR_ADDU $1, \base, \off
ff                416 arch/mips/include/asm/asmmacro.h 	PTR_ADDU $1, \base, \off
ff                426 arch/mips/include/asm/asmmacro.h 	PTR_ADDU $1, \base, \off
ff                436 arch/mips/include/asm/asmmacro.h 	PTR_ADDU $1, \base, \off
ff                446 arch/mips/include/asm/asmmacro.h 	PTR_ADDU $1, \base, \off
ff                456 arch/mips/include/asm/asmmacro.h 	PTR_ADDU $1, \base, \off
ff                466 arch/mips/include/asm/asmmacro.h 	PTR_ADDU $1, \base, \off
ff               4779 arch/x86/kvm/mmu.c 		u8 ff = (pfec & PFERR_FETCH_MASK) ? (u8)~x : 0;
ff               4791 arch/x86/kvm/mmu.c 				ff = 0;
ff               4821 arch/x86/kvm/mmu.c 		mmu->permissions[byte] = ff | uf | wf | smepf | smapf;
ff               4870 arch/x86/kvm/mmu.c 		bool check_pkey, check_write, ff, uf, wf, pte_user;
ff               4873 arch/x86/kvm/mmu.c 		ff = pfec & PFERR_FETCH_MASK;
ff               4884 arch/x86/kvm/mmu.c 		check_pkey = (!ff && pte_user);
ff                602 block/blk-core.c 	const int ff = bio->bi_opf & REQ_FAILFAST_MASK;
ff                610 block/blk-core.c 	if ((req->cmd_flags & REQ_FAILFAST_MASK) != ff)
ff                624 block/blk-core.c 	const int ff = bio->bi_opf & REQ_FAILFAST_MASK;
ff                632 block/blk-core.c 	if ((req->cmd_flags & REQ_FAILFAST_MASK) != ff)
ff               1283 block/blk-core.c 	unsigned int ff = rq->cmd_flags & REQ_FAILFAST_MASK;
ff               1298 block/blk-core.c 		if ((bio->bi_opf & ff) != ff)
ff                660 block/blk-merge.c 	unsigned int ff = rq->cmd_flags & REQ_FAILFAST_MASK;
ff                673 block/blk-merge.c 			     (bio->bi_opf & REQ_FAILFAST_MASK) != ff);
ff                674 block/blk-merge.c 		bio->bi_opf |= ff;
ff                 96 crypto/sm3_generic.c 		tt1 = ff(i, a, b, c) + d + ss2 + *wt;
ff                 78 drivers/clk/mediatek/clk-mtk.c 		const struct mtk_fixed_factor *ff = &clks[i];
ff                 80 drivers/clk/mediatek/clk-mtk.c 		if (clk_data && !IS_ERR_OR_NULL(clk_data->clks[ff->id]))
ff                 83 drivers/clk/mediatek/clk-mtk.c 		clk = clk_register_fixed_factor(NULL, ff->name, ff->parent_name,
ff                 84 drivers/clk/mediatek/clk-mtk.c 				CLK_SET_RATE_PARENT, ff->mult, ff->div);
ff                 88 drivers/clk/mediatek/clk-mtk.c 					ff->name, PTR_ERR(clk));
ff                 93 drivers/clk/mediatek/clk-mtk.c 			clk_data->clks[ff->id] = clk;
ff                108 drivers/clk/pistachio/clk.c 					 struct pistachio_fixed_factor *ff,
ff                115 drivers/clk/pistachio/clk.c 		clk = clk_register_fixed_factor(NULL, ff[i].name, ff[i].parent,
ff                116 drivers/clk/pistachio/clk.c 						0, 1, ff[i].div);
ff                117 drivers/clk/pistachio/clk.c 		p->clk_data.clks[ff[i].id] = clk;
ff                162 drivers/clk/pistachio/clk.h 				    struct pistachio_fixed_factor *ff,
ff                146 drivers/hid/hid-lg3ff.c 		dev->ff->set_autocenter = hid_lg3ff_set_autocenter;
ff               1358 drivers/hid/hid-lg4ff.c 			dev->ff->set_autocenter = lg4ff_set_autocenter_ffex;
ff               1360 drivers/hid/hid-lg4ff.c 			dev->ff->set_autocenter = lg4ff_set_autocenter_default;
ff               1362 drivers/hid/hid-lg4ff.c 		dev->ff->set_autocenter(dev, 0);
ff                 28 drivers/hid/hid-lgff.c 	const signed short *ff;
ff                138 drivers/hid/hid-lgff.c 			ff_bits = devices[i].ff;
ff                151 drivers/hid/hid-lgff.c 		dev->ff->set_autocenter = hid_lgff_set_autocenter;
ff               1847 drivers/hid/hid-logitech-hidpp.c 	struct hidpp_ff_private_data *data = dev->ff->private;
ff               1993 drivers/hid/hid-logitech-hidpp.c 	struct hidpp_ff_private_data *data = dev->ff->private;
ff               2005 drivers/hid/hid-logitech-hidpp.c 	struct hidpp_ff_private_data *data = dev->ff->private;
ff               2015 drivers/hid/hid-logitech-hidpp.c 	struct hidpp_ff_private_data *data = dev->ff->private;
ff               2037 drivers/hid/hid-logitech-hidpp.c 	struct hidpp_ff_private_data *data = dev->ff->private;
ff               2055 drivers/hid/hid-logitech-hidpp.c 	struct hidpp_ff_private_data *data = idev->ff->private;
ff               2065 drivers/hid/hid-logitech-hidpp.c 	struct hidpp_ff_private_data *data = idev->ff->private;
ff               2081 drivers/hid/hid-logitech-hidpp.c static void hidpp_ff_destroy(struct ff_device *ff)
ff               2083 drivers/hid/hid-logitech-hidpp.c 	struct hidpp_ff_private_data *data = ff->private;
ff               2101 drivers/hid/hid-logitech-hidpp.c 	struct ff_device *ff;
ff               2157 drivers/hid/hid-logitech-hidpp.c 	ff = dev->ff;
ff               2158 drivers/hid/hid-logitech-hidpp.c 	ff->private = data;
ff               2160 drivers/hid/hid-logitech-hidpp.c 	ff->upload = hidpp_ff_upload_effect;
ff               2161 drivers/hid/hid-logitech-hidpp.c 	ff->erase = hidpp_ff_erase_effect;
ff               2162 drivers/hid/hid-logitech-hidpp.c 	ff->playback = hidpp_ff_playback;
ff               2163 drivers/hid/hid-logitech-hidpp.c 	ff->set_gain = hidpp_ff_set_gain;
ff               2164 drivers/hid/hid-logitech-hidpp.c 	ff->set_autocenter = hidpp_ff_set_autocenter;
ff               2165 drivers/hid/hid-logitech-hidpp.c 	ff->destroy = hidpp_ff_destroy;
ff                513 drivers/hid/usbhid/hid-pidff.c 	struct pidff_device *pidff = dev->ff->private;
ff                535 drivers/hid/usbhid/hid-pidff.c 	struct pidff_device *pidff = dev->ff->private;
ff                555 drivers/hid/usbhid/hid-pidff.c 	struct pidff_device *pidff = dev->ff->private;
ff                712 drivers/hid/usbhid/hid-pidff.c 	struct pidff_device *pidff = dev->ff->private;
ff                750 drivers/hid/usbhid/hid-pidff.c 	struct pidff_device *pidff = dev->ff->private;
ff               1232 drivers/hid/usbhid/hid-pidff.c 	struct ff_device *ff;
ff               1304 drivers/hid/usbhid/hid-pidff.c 	ff = dev->ff;
ff               1305 drivers/hid/usbhid/hid-pidff.c 	ff->private = pidff;
ff               1306 drivers/hid/usbhid/hid-pidff.c 	ff->upload = pidff_upload_effect;
ff               1307 drivers/hid/usbhid/hid-pidff.c 	ff->erase = pidff_erase_effect;
ff               1308 drivers/hid/usbhid/hid-pidff.c 	ff->set_gain = pidff_set_gain;
ff               1309 drivers/hid/usbhid/hid-pidff.c 	ff->set_autocenter = pidff_set_autocenter;
ff               1310 drivers/hid/usbhid/hid-pidff.c 	ff->playback = pidff_playback;
ff                509 drivers/infiniband/hw/hfi1/firmware.c 		struct firmware_file *ff = (struct firmware_file *)
ff                517 drivers/infiniband/hw/hfi1/firmware.c 			fdet->modulus = ff->modulus;
ff                518 drivers/infiniband/hw/hfi1/firmware.c 			fdet->exponent = ff->exponent;
ff                519 drivers/infiniband/hw/hfi1/firmware.c 			fdet->signature = ff->signature;
ff                522 drivers/infiniband/hw/hfi1/firmware.c 			fdet->firmware_ptr = ff->firmware;
ff               1080 drivers/input/evdev.c 				dev->ff->max_effects : 0;
ff                 24 drivers/input/ff-core.c static int check_effect_access(struct ff_device *ff, int effect_id,
ff                 27 drivers/input/ff-core.c 	if (effect_id < 0 || effect_id >= ff->max_effects ||
ff                 28 drivers/input/ff-core.c 	    !ff->effect_owners[effect_id])
ff                 31 drivers/input/ff-core.c 	if (file && ff->effect_owners[effect_id] != file)
ff                 51 drivers/input/ff-core.c static int compat_effect(struct ff_device *ff, struct ff_effect *effect)
ff                 57 drivers/input/ff-core.c 		if (!test_bit(FF_PERIODIC, ff->ffbit))
ff                 95 drivers/input/ff-core.c 	struct ff_device *ff = dev->ff;
ff                117 drivers/input/ff-core.c 	if (!test_bit(effect->type, ff->ffbit)) {
ff                118 drivers/input/ff-core.c 		ret = compat_effect(ff, effect);
ff                123 drivers/input/ff-core.c 	mutex_lock(&ff->mutex);
ff                126 drivers/input/ff-core.c 		for (id = 0; id < ff->max_effects; id++)
ff                127 drivers/input/ff-core.c 			if (!ff->effect_owners[id])
ff                130 drivers/input/ff-core.c 		if (id >= ff->max_effects) {
ff                141 drivers/input/ff-core.c 		ret = check_effect_access(ff, id, file);
ff                145 drivers/input/ff-core.c 		old = &ff->effects[id];
ff                153 drivers/input/ff-core.c 	ret = ff->upload(dev, effect, old);
ff                158 drivers/input/ff-core.c 	ff->effects[id] = *effect;
ff                159 drivers/input/ff-core.c 	ff->effect_owners[id] = file;
ff                163 drivers/input/ff-core.c 	mutex_unlock(&ff->mutex);
ff                175 drivers/input/ff-core.c 	struct ff_device *ff = dev->ff;
ff                178 drivers/input/ff-core.c 	error = check_effect_access(ff, effect_id, file);
ff                183 drivers/input/ff-core.c 	ff->playback(dev, effect_id, 0);
ff                184 drivers/input/ff-core.c 	ff->effect_owners[effect_id] = NULL;
ff                187 drivers/input/ff-core.c 	if (ff->erase) {
ff                188 drivers/input/ff-core.c 		error = ff->erase(dev, effect_id);
ff                191 drivers/input/ff-core.c 			ff->effect_owners[effect_id] = file;
ff                213 drivers/input/ff-core.c 	struct ff_device *ff = dev->ff;
ff                219 drivers/input/ff-core.c 	mutex_lock(&ff->mutex);
ff                221 drivers/input/ff-core.c 	mutex_unlock(&ff->mutex);
ff                238 drivers/input/ff-core.c 	struct ff_device *ff = dev->ff;
ff                243 drivers/input/ff-core.c 	mutex_lock(&ff->mutex);
ff                245 drivers/input/ff-core.c 	for (i = 0; i < ff->max_effects; i++)
ff                248 drivers/input/ff-core.c 	mutex_unlock(&ff->mutex);
ff                264 drivers/input/ff-core.c 	struct ff_device *ff = dev->ff;
ff                274 drivers/input/ff-core.c 		ff->set_gain(dev, value);
ff                281 drivers/input/ff-core.c 		ff->set_autocenter(dev, value);
ff                285 drivers/input/ff-core.c 		if (check_effect_access(ff, code, NULL) == 0)
ff                286 drivers/input/ff-core.c 			ff->playback(dev, code, value);
ff                307 drivers/input/ff-core.c 	struct ff_device *ff;
ff                326 drivers/input/ff-core.c 	ff = kzalloc(ff_dev_size, GFP_KERNEL);
ff                327 drivers/input/ff-core.c 	if (!ff)
ff                330 drivers/input/ff-core.c 	ff->effects = kcalloc(max_effects, sizeof(struct ff_effect),
ff                332 drivers/input/ff-core.c 	if (!ff->effects) {
ff                333 drivers/input/ff-core.c 		kfree(ff);
ff                337 drivers/input/ff-core.c 	ff->max_effects = max_effects;
ff                338 drivers/input/ff-core.c 	mutex_init(&ff->mutex);
ff                340 drivers/input/ff-core.c 	dev->ff = ff;
ff                347 drivers/input/ff-core.c 		__set_bit(i, ff->ffbit);
ff                350 drivers/input/ff-core.c 	if (test_bit(FF_PERIODIC, ff->ffbit))
ff                367 drivers/input/ff-core.c 	struct ff_device *ff = dev->ff;
ff                370 drivers/input/ff-core.c 	if (ff) {
ff                371 drivers/input/ff-core.c 		if (ff->destroy)
ff                372 drivers/input/ff-core.c 			ff->destroy(ff);
ff                373 drivers/input/ff-core.c 		kfree(ff->private);
ff                374 drivers/input/ff-core.c 		kfree(ff->effects);
ff                375 drivers/input/ff-core.c 		kfree(ff);
ff                376 drivers/input/ff-core.c 		dev->ff = NULL;
ff                198 drivers/input/ff-memless.c static int get_compatible_type(struct ff_device *ff, int effect_type)
ff                201 drivers/input/ff-memless.c 	if (test_bit(effect_type, ff->ffbit))
ff                204 drivers/input/ff-memless.c 	if (effect_type == FF_PERIODIC && test_bit(FF_RUMBLE, ff->ffbit))
ff                355 drivers/input/ff-memless.c 		effect_type = get_compatible_type(ml->dev->ff, effect->type);
ff                421 drivers/input/ff-memless.c 	struct ml_device *ml = dev->ff->private;
ff                437 drivers/input/ff-memless.c 	struct ml_device *ml = dev->ff->private;
ff                468 drivers/input/ff-memless.c 	struct ml_device *ml = dev->ff->private;
ff                488 drivers/input/ff-memless.c static void ml_ff_destroy(struct ff_device *ff)
ff                490 drivers/input/ff-memless.c 	struct ml_device *ml = ff->private;
ff                514 drivers/input/ff-memless.c 	struct ff_device *ff;
ff                536 drivers/input/ff-memless.c 	ff = dev->ff;
ff                537 drivers/input/ff-memless.c 	ff->private = ml;
ff                538 drivers/input/ff-memless.c 	ff->upload = ml_ff_upload;
ff                539 drivers/input/ff-memless.c 	ff->playback = ml_ff_playback;
ff                540 drivers/input/ff-memless.c 	ff->set_gain = ml_ff_set_gain;
ff                541 drivers/input/ff-memless.c 	ff->destroy = ml_ff_destroy;
ff                544 drivers/input/ff-memless.c 	if (test_bit(FF_RUMBLE, ff->ffbit)) {
ff                552 drivers/input/ff-memless.c 		ml->states[i].effect = &ff->effects[i];
ff               1511 drivers/input/input.c INPUT_DEV_CAP_ATTR(FF, ff);
ff               2080 drivers/input/input.c 	INPUT_CLEANSE_BITMASK(dev, FF, ff);
ff                191 drivers/input/joystick/iforce/iforce-main.c 		for (i = 0; i < dev->ff->max_effects; i++) {
ff                214 drivers/input/joystick/iforce/iforce-main.c 	struct ff_device *ff;
ff                371 drivers/input/joystick/iforce/iforce-main.c 		for (i = 0; iforce->type->ff[i] >= 0; i++)
ff                372 drivers/input/joystick/iforce/iforce-main.c 			set_bit(iforce->type->ff[i], input_dev->ffbit);
ff                378 drivers/input/joystick/iforce/iforce-main.c 		ff = input_dev->ff;
ff                379 drivers/input/joystick/iforce/iforce-main.c 		ff->upload = iforce_upload_effect;
ff                380 drivers/input/joystick/iforce/iforce-main.c 		ff->erase = iforce_erase_effect;
ff                381 drivers/input/joystick/iforce/iforce-main.c 		ff->set_gain = iforce_set_gain;
ff                382 drivers/input/joystick/iforce/iforce-main.c 		ff->set_autocenter = iforce_set_autocenter;
ff                383 drivers/input/joystick/iforce/iforce-main.c 		ff->playback = iforce_playback;
ff                104 drivers/input/joystick/iforce/iforce-packets.c 	if (!iforce->dev->ff)
ff                107 drivers/input/joystick/iforce/iforce-packets.c 	for (i = 0; i < iforce->dev->ff->max_effects; ++i) {
ff                 72 drivers/input/joystick/iforce/iforce.h 	signed short *ff;
ff                347 drivers/input/misc/uinput.c 		dev->ff->upload = uinput_dev_upload_effect;
ff                348 drivers/input/misc/uinput.c 		dev->ff->erase = uinput_dev_erase_effect;
ff                349 drivers/input/misc/uinput.c 		dev->ff->playback = uinput_dev_playback;
ff                350 drivers/input/misc/uinput.c 		dev->ff->set_gain = uinput_dev_set_gain;
ff                351 drivers/input/misc/uinput.c 		dev->ff->set_autocenter = uinput_dev_set_autocenter;
ff                879 drivers/md/md.c 	int ff = 0;
ff                900 drivers/md/md.c 		ff = MD_FAILFAST;
ff                901 drivers/md/md.c 	bio->bi_opf = REQ_OP_WRITE | REQ_SYNC | REQ_PREFLUSH | REQ_FUA | ff;
ff                327 drivers/media/dvb-frontends/cxd2880/cxd2880_dvbt2.h 	u8 ff;
ff                677 drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c 	plp_info->ff = data[index++] & 0x01;
ff               1023 drivers/media/platform/exynos4-is/fimc-capture.c 	struct fimc_frame *ff = &ctx->d_frame;
ff               1030 drivers/media/platform/exynos4-is/fimc-capture.c 	ret = __video_try_or_set_format(fimc, f, false, &inp_fmt, &ff->fmt);
ff               1037 drivers/media/platform/exynos4-is/fimc-capture.c 	for (i = 0; i < ff->fmt->memplanes; i++) {
ff               1038 drivers/media/platform/exynos4-is/fimc-capture.c 		ff->bytesperline[i] = pix->plane_fmt[i].bytesperline;
ff               1039 drivers/media/platform/exynos4-is/fimc-capture.c 		ff->payload[i] = pix->plane_fmt[i].sizeimage;
ff               1042 drivers/media/platform/exynos4-is/fimc-capture.c 	set_frame_bounds(ff, pix->width, pix->height);
ff               1045 drivers/media/platform/exynos4-is/fimc-capture.c 		set_frame_crop(ff, 0, 0, pix->width, pix->height);
ff               1047 drivers/media/platform/exynos4-is/fimc-capture.c 	fimc_capture_mark_jpeg_xfer(ctx, ff->fmt->color);
ff               1139 drivers/media/platform/exynos4-is/fimc-capture.c 			struct fimc_frame *ff = &vc->ctx->s_frame;
ff               1140 drivers/media/platform/exynos4-is/fimc-capture.c 			sink_fmt.format.width = ff->f_width;
ff               1141 drivers/media/platform/exynos4-is/fimc-capture.c 			sink_fmt.format.height = ff->f_height;
ff               1142 drivers/media/platform/exynos4-is/fimc-capture.c 			sink_fmt.format.code = ff->fmt ? ff->fmt->mbus_code : 0;
ff               1495 drivers/media/platform/exynos4-is/fimc-capture.c 	struct fimc_frame *ff = &ctx->s_frame;
ff               1509 drivers/media/platform/exynos4-is/fimc-capture.c 		if (!WARN_ON(ff->fmt == NULL))
ff               1510 drivers/media/platform/exynos4-is/fimc-capture.c 			mf->code = ff->fmt->mbus_code;
ff               1512 drivers/media/platform/exynos4-is/fimc-capture.c 		mf->width = ff->width;
ff               1513 drivers/media/platform/exynos4-is/fimc-capture.c 		mf->height = ff->height;
ff               1538 drivers/media/platform/exynos4-is/fimc-capture.c 	struct fimc_frame *ff;
ff               1567 drivers/media/platform/exynos4-is/fimc-capture.c 		ff = &ctx->d_frame;
ff               1572 drivers/media/platform/exynos4-is/fimc-capture.c 		ff = &ctx->s_frame;
ff               1576 drivers/media/platform/exynos4-is/fimc-capture.c 	set_frame_bounds(ff, mf->width, mf->height);
ff               1583 drivers/media/platform/exynos4-is/fimc-capture.c 	ff->fmt = ffmt;
ff               1587 drivers/media/platform/exynos4-is/fimc-capture.c 		set_frame_crop(ff, 0, 0, mf->width, mf->height);
ff                521 drivers/media/platform/exynos4-is/fimc-core.h static inline u32 fimc_get_format_depth(struct fimc_fmt *ff)
ff                525 drivers/media/platform/exynos4-is/fimc-core.h 	if (ff != NULL)
ff                526 drivers/media/platform/exynos4-is/fimc-core.h 		for (i = 0; i < ff->colplanes; i++)
ff                527 drivers/media/platform/exynos4-is/fimc-core.h 			depth += ff->depth[i];
ff                779 drivers/media/platform/exynos4-is/fimc-lite.c 			struct flite_frame *ff = &fimc->out_frame;
ff                780 drivers/media/platform/exynos4-is/fimc-lite.c 			sink_fmt.format.width = ff->f_width;
ff                781 drivers/media/platform/exynos4-is/fimc-lite.c 			sink_fmt.format.height = ff->f_height;
ff                834 drivers/media/platform/ti-vpe/cal.c #define isvcirqset(irq, vc, ff) (irq & \
ff                835 drivers/media/platform/ti-vpe/cal.c 	(CAL_CSI2_VC_IRQENABLE_ ##ff ##_IRQ_##vc ##_MASK))
ff               2302 drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c 	int i, ff;
ff               2305 drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c 	for (i = 0, ff = -1; i < DCBX_CONFIG_MAX_APP_PROTOCOL; i++) {
ff               2311 drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c 		if (ff < 0 && !app_ent->valid)
ff               2312 drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c 			ff = i;
ff               2318 drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c 	else if (ff >= 0)
ff               2321 drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c 			&bp->dcbx_config_params.admin_priority_app_table[ff],
ff                261 drivers/pci/pcie/aer.c 	int ff;
ff                267 drivers/pci/pcie/aer.c 	ff = !!(p->flags & ACPI_HEST_FIRMWARE_FIRST);
ff                274 drivers/pci/pcie/aer.c 		info->firmware_first |= ff;
ff                281 drivers/pci/pcie/aer.c 			info->firmware_first = ff;
ff                284 drivers/pci/pcie/aer.c 			info->firmware_first = ff;
ff               2030 drivers/scsi/fcoe/fcoe_ctlr.c 	struct fip_fc4_feat *ff;
ff               2087 drivers/scsi/fcoe/fcoe_ctlr.c 		ff = (struct fip_fc4_feat *)(frame + 1);
ff               2088 drivers/scsi/fcoe/fcoe_ctlr.c 		ff->fd_desc.fip_dtype = FIP_DT_FC4F;
ff               2089 drivers/scsi/fcoe/fcoe_ctlr.c 		ff->fd_desc.fip_dlen = sizeof(*ff) / FIP_BPW;
ff               2090 drivers/scsi/fcoe/fcoe_ctlr.c 		ff->fd_fts = fip->lp->fcts;
ff               2098 drivers/scsi/fcoe/fcoe_ctlr.c 		ff->fd_ff.fd_feat[FC_TYPE_FCP * 4 / 32] = htonl(fcp_feat);
ff               2100 drivers/scsi/fcoe/fcoe_ctlr.c 		size = (struct fip_size_desc *)(ff + 1);
ff                640 drivers/video/fbdev/mmp/hw/mmp_ctrl.h #define	 DMA_FF_UNDERFLOW_ENA(ff)		((ff)<<29)
ff                648 drivers/video/fbdev/mmp/hw/mmp_ctrl.h #define	 GRA_FF_UNDERFLOW_ENA(ff)		((ff)<<25)
ff                690 drivers/video/fbdev/mmp/hw/mmp_ctrl.h #define	 PN2_DMA_FF_UNDERFLOW_ENA(ff)		((ff)<<5)
ff                696 drivers/video/fbdev/mmp/hw/mmp_ctrl.h #define	 PN2_GRA_FF_UNDERFLOW_ENA(ff)		((ff)<<1)
ff                749 drivers/video/fbdev/mmp/hw/mmp_ctrl.h #define	 DMA_FF_UNDERFLOW(ff)		((ff)<<29)
ff                757 drivers/video/fbdev/mmp/hw/mmp_ctrl.h #define	 GRA_FF_UNDERFLOW(ff)		((ff)<<25)
ff                793 drivers/video/fbdev/mmp/hw/mmp_ctrl.h #define	 PN2_DMA_FF_UNDERFLOW(ff)	((ff)<<5)
ff                799 drivers/video/fbdev/mmp/hw/mmp_ctrl.h #define	 PN2_GRA_FF_UNDERFLOW(ff)	((ff)<<1)
ff                408 drivers/video/fbdev/pxa168fb.h #define     DMA_FF_UNDERFLOW_ENA(ff)		((ff) << 29)
ff                414 drivers/video/fbdev/pxa168fb.h #define     GRA_FF_UNDERFLOW_ENA(ff)		((ff) << 25)
ff                441 drivers/video/fbdev/pxa168fb.h #define     DMA_FF_UNDERFLOW(ff)		((ff) << 29)
ff                447 drivers/video/fbdev/pxa168fb.h #define     GRA_FF_UNDERFLOW(ff)		((ff) << 25)
ff                145 fs/fuse/cuse.c 	struct fuse_file *ff = file->private_data;
ff                146 fs/fuse/cuse.c 	struct fuse_conn *fc = ff->fc;
ff                148 fs/fuse/cuse.c 	fuse_sync_release(NULL, ff, file->f_flags);
ff                157 fs/fuse/cuse.c 	struct fuse_file *ff = file->private_data;
ff                158 fs/fuse/cuse.c 	struct cuse_conn *cc = fc_to_cc(ff->fc);
ff                170 fs/fuse/cuse.c 	struct fuse_file *ff = file->private_data;
ff                171 fs/fuse/cuse.c 	struct cuse_conn *cc = fc_to_cc(ff->fc);
ff               2062 fs/fuse/dev.c  		struct fuse_file *ff;
ff               2063 fs/fuse/dev.c  		ff = rb_entry(p, struct fuse_file, polled_node);
ff               2064 fs/fuse/dev.c  		wake_up_interruptible_all(&ff->poll_wait);
ff                444 fs/fuse/dir.c  	struct fuse_file *ff;
ff                455 fs/fuse/dir.c  	ff = fuse_file_alloc(fc);
ff                456 fs/fuse/dir.c  	if (!ff)
ff                489 fs/fuse/dir.c  	ff->fh = outopen.fh;
ff                490 fs/fuse/dir.c  	ff->nodeid = outentry.nodeid;
ff                491 fs/fuse/dir.c  	ff->open_flags = outopen.open_flags;
ff                496 fs/fuse/dir.c  		fuse_sync_release(NULL, ff, flags);
ff                508 fs/fuse/dir.c  		fuse_sync_release(fi, ff, flags);
ff                510 fs/fuse/dir.c  		file->private_data = ff;
ff                516 fs/fuse/dir.c  	fuse_file_free(ff);
ff                939 fs/fuse/dir.c  		struct fuse_file *ff = file->private_data;
ff                942 fs/fuse/dir.c  		inarg.fh = ff->fh;
ff               1455 fs/fuse/dir.c  int fuse_flush_times(struct inode *inode, struct fuse_file *ff)
ff               1473 fs/fuse/dir.c  	if (ff) {
ff               1475 fs/fuse/dir.c  		inarg.fh = ff->fh;
ff               1559 fs/fuse/dir.c  		struct fuse_file *ff = file->private_data;
ff               1561 fs/fuse/dir.c  		inarg.fh = ff->fh;
ff                 64 fs/fuse/file.c 	struct fuse_file *ff;
ff                 66 fs/fuse/file.c 	ff = kzalloc(sizeof(struct fuse_file), GFP_KERNEL_ACCOUNT);
ff                 67 fs/fuse/file.c 	if (unlikely(!ff))
ff                 70 fs/fuse/file.c 	ff->fc = fc;
ff                 71 fs/fuse/file.c 	ff->release_args = kzalloc(sizeof(*ff->release_args),
ff                 73 fs/fuse/file.c 	if (!ff->release_args) {
ff                 74 fs/fuse/file.c 		kfree(ff);
ff                 78 fs/fuse/file.c 	INIT_LIST_HEAD(&ff->write_entry);
ff                 79 fs/fuse/file.c 	mutex_init(&ff->readdir.lock);
ff                 80 fs/fuse/file.c 	refcount_set(&ff->count, 1);
ff                 81 fs/fuse/file.c 	RB_CLEAR_NODE(&ff->polled_node);
ff                 82 fs/fuse/file.c 	init_waitqueue_head(&ff->poll_wait);
ff                 84 fs/fuse/file.c 	ff->kh = atomic64_inc_return(&fc->khctr);
ff                 86 fs/fuse/file.c 	return ff;
ff                 89 fs/fuse/file.c void fuse_file_free(struct fuse_file *ff)
ff                 91 fs/fuse/file.c 	kfree(ff->release_args);
ff                 92 fs/fuse/file.c 	mutex_destroy(&ff->readdir.lock);
ff                 93 fs/fuse/file.c 	kfree(ff);
ff                 96 fs/fuse/file.c static struct fuse_file *fuse_file_get(struct fuse_file *ff)
ff                 98 fs/fuse/file.c 	refcount_inc(&ff->count);
ff                 99 fs/fuse/file.c 	return ff;
ff                111 fs/fuse/file.c static void fuse_file_put(struct fuse_file *ff, bool sync, bool isdir)
ff                113 fs/fuse/file.c 	if (refcount_dec_and_test(&ff->count)) {
ff                114 fs/fuse/file.c 		struct fuse_args *args = &ff->release_args->args;
ff                116 fs/fuse/file.c 		if (isdir ? ff->fc->no_opendir : ff->fc->no_open) {
ff                118 fs/fuse/file.c 			fuse_release_end(ff->fc, args, 0);
ff                120 fs/fuse/file.c 			fuse_simple_request(ff->fc, args);
ff                121 fs/fuse/file.c 			fuse_release_end(ff->fc, args, 0);
ff                124 fs/fuse/file.c 			if (fuse_simple_background(ff->fc, args,
ff                126 fs/fuse/file.c 				fuse_release_end(ff->fc, args, -ENOTCONN);
ff                128 fs/fuse/file.c 		kfree(ff);
ff                135 fs/fuse/file.c 	struct fuse_file *ff;
ff                138 fs/fuse/file.c 	ff = fuse_file_alloc(fc);
ff                139 fs/fuse/file.c 	if (!ff)
ff                142 fs/fuse/file.c 	ff->fh = 0;
ff                144 fs/fuse/file.c 	ff->open_flags = FOPEN_KEEP_CACHE | (isdir ? FOPEN_CACHE_DIR : 0);
ff                151 fs/fuse/file.c 			ff->fh = outarg.fh;
ff                152 fs/fuse/file.c 			ff->open_flags = outarg.open_flags;
ff                155 fs/fuse/file.c 			fuse_file_free(ff);
ff                166 fs/fuse/file.c 		ff->open_flags &= ~FOPEN_DIRECT_IO;
ff                168 fs/fuse/file.c 	ff->nodeid = nodeid;
ff                169 fs/fuse/file.c 	file->private_data = ff;
ff                179 fs/fuse/file.c 	struct fuse_file *ff = file->private_data;
ff                185 fs/fuse/file.c 	if (list_empty(&ff->write_entry))
ff                186 fs/fuse/file.c 		list_add(&ff->write_entry, &fi->write_files);
ff                192 fs/fuse/file.c 	struct fuse_file *ff = file->private_data;
ff                195 fs/fuse/file.c 	if (!(ff->open_flags & FOPEN_KEEP_CACHE))
ff                197 fs/fuse/file.c 	if (ff->open_flags & FOPEN_STREAM)
ff                199 fs/fuse/file.c 	else if (ff->open_flags & FOPEN_NONSEEKABLE)
ff                246 fs/fuse/file.c static void fuse_prepare_release(struct fuse_inode *fi, struct fuse_file *ff,
ff                249 fs/fuse/file.c 	struct fuse_conn *fc = ff->fc;
ff                250 fs/fuse/file.c 	struct fuse_release_args *ra = ff->release_args;
ff                255 fs/fuse/file.c 		list_del(&ff->write_entry);
ff                259 fs/fuse/file.c 	if (!RB_EMPTY_NODE(&ff->polled_node))
ff                260 fs/fuse/file.c 		rb_erase(&ff->polled_node, &fc->polled_files);
ff                263 fs/fuse/file.c 	wake_up_interruptible_all(&ff->poll_wait);
ff                265 fs/fuse/file.c 	ra->inarg.fh = ff->fh;
ff                271 fs/fuse/file.c 	ra->args.nodeid = ff->nodeid;
ff                279 fs/fuse/file.c 	struct fuse_file *ff = file->private_data;
ff                280 fs/fuse/file.c 	struct fuse_release_args *ra = ff->release_args;
ff                283 fs/fuse/file.c 	fuse_prepare_release(fi, ff, file->f_flags, opcode);
ff                285 fs/fuse/file.c 	if (ff->flock) {
ff                287 fs/fuse/file.c 		ra->inarg.lock_owner = fuse_lock_owner_id(ff->fc,
ff                302 fs/fuse/file.c 	fuse_file_put(ff, ff->fc->destroy, isdir);
ff                324 fs/fuse/file.c void fuse_sync_release(struct fuse_inode *fi, struct fuse_file *ff, int flags)
ff                326 fs/fuse/file.c 	WARN_ON(refcount_read(&ff->count) > 1);
ff                327 fs/fuse/file.c 	fuse_prepare_release(fi, ff, flags, FUSE_RELEASE);
ff                332 fs/fuse/file.c 	fuse_file_put(ff, true, false);
ff                440 fs/fuse/file.c 	struct fuse_file *ff = file->private_data;
ff                464 fs/fuse/file.c 	inarg.fh = ff->fh;
ff                486 fs/fuse/file.c 	struct fuse_file *ff = file->private_data;
ff                491 fs/fuse/file.c 	inarg.fh = ff->fh;
ff                554 fs/fuse/file.c 	struct fuse_file *ff = file->private_data;
ff                557 fs/fuse/file.c 	ia->read.in.fh = ff->fh;
ff                562 fs/fuse/file.c 	args->nodeid = ff->nodeid;
ff                726 fs/fuse/file.c 	struct fuse_file *ff = file->private_data;
ff                727 fs/fuse/file.c 	struct fuse_conn *fc = ff->fc;
ff                876 fs/fuse/file.c 	if (ia->ff)
ff                877 fs/fuse/file.c 		fuse_file_put(ia->ff, false, false);
ff                884 fs/fuse/file.c 	struct fuse_file *ff = file->private_data;
ff                885 fs/fuse/file.c 	struct fuse_conn *fc = ff->fc;
ff                906 fs/fuse/file.c 		ia->ff = fuse_file_get(ff);
ff               1019 fs/fuse/file.c static void fuse_write_args_fill(struct fuse_io_args *ia, struct fuse_file *ff,
ff               1024 fs/fuse/file.c 	ia->write.in.fh = ff->fh;
ff               1028 fs/fuse/file.c 	args->nodeid = ff->nodeid;
ff               1030 fs/fuse/file.c 	if (ff->fc->minor < 9)
ff               1058 fs/fuse/file.c 	struct fuse_file *ff = file->private_data;
ff               1059 fs/fuse/file.c 	struct fuse_conn *fc = ff->fc;
ff               1063 fs/fuse/file.c 	fuse_write_args_fill(ia, ff, pos, count);
ff               1103 fs/fuse/file.c 	struct fuse_file *ff = file->private_data;
ff               1104 fs/fuse/file.c 	struct fuse_conn *fc = ff->fc;
ff               1111 fs/fuse/file.c 	fuse_write_args_fill(ia, ff, pos, count);
ff               1428 fs/fuse/file.c 	struct fuse_file *ff = file->private_data;
ff               1429 fs/fuse/file.c 	struct fuse_conn *fc = ff->fc;
ff               1568 fs/fuse/file.c 	struct fuse_file *ff = file->private_data;
ff               1573 fs/fuse/file.c 	if (!(ff->open_flags & FOPEN_DIRECT_IO))
ff               1582 fs/fuse/file.c 	struct fuse_file *ff = file->private_data;
ff               1587 fs/fuse/file.c 	if (!(ff->open_flags & FOPEN_DIRECT_IO))
ff               1601 fs/fuse/file.c 	if (wpa->ia.ff)
ff               1602 fs/fuse/file.c 		fuse_file_put(wpa->ia.ff, false, false);
ff               1722 fs/fuse/file.c 		next->ia.ff = fuse_file_get(wpa->ia.ff);
ff               1759 fs/fuse/file.c 	struct fuse_file *ff = NULL;
ff               1763 fs/fuse/file.c 		ff = list_entry(fi->write_files.next, struct fuse_file,
ff               1765 fs/fuse/file.c 		fuse_file_get(ff);
ff               1769 fs/fuse/file.c 	return ff;
ff               1775 fs/fuse/file.c 	struct fuse_file *ff = __fuse_write_file_get(fc, fi);
ff               1776 fs/fuse/file.c 	WARN_ON(!ff);
ff               1777 fs/fuse/file.c 	return ff;
ff               1784 fs/fuse/file.c 	struct fuse_file *ff;
ff               1787 fs/fuse/file.c 	ff = __fuse_write_file_get(fc, fi);
ff               1788 fs/fuse/file.c 	err = fuse_flush_times(inode, ff);
ff               1789 fs/fuse/file.c 	if (ff)
ff               1790 fs/fuse/file.c 		fuse_file_put(ff, false, false);
ff               1837 fs/fuse/file.c 	wpa->ia.ff = fuse_write_file_get(fc, fi);
ff               1838 fs/fuse/file.c 	if (!wpa->ia.ff)
ff               1841 fs/fuse/file.c 	fuse_write_args_fill(&wpa->ia, wpa->ia.ff, page_offset(page), 0);
ff               1902 fs/fuse/file.c 	struct fuse_file *ff;
ff               1942 fs/fuse/file.c 	wpa->ia.ff = fuse_file_get(data->ff);
ff               2023 fs/fuse/file.c 	if (!data->ff) {
ff               2025 fs/fuse/file.c 		data->ff = fuse_write_file_get(fc, fi);
ff               2026 fs/fuse/file.c 		if (!data->ff)
ff               2079 fs/fuse/file.c 		fuse_write_args_fill(&wpa->ia, data->ff, page_offset(page), 0);
ff               2139 fs/fuse/file.c 	data.ff = NULL;
ff               2155 fs/fuse/file.c 	if (data.ff)
ff               2156 fs/fuse/file.c 		fuse_file_put(data.ff, false, false);
ff               2301 fs/fuse/file.c 	struct fuse_file *ff = file->private_data;
ff               2303 fs/fuse/file.c 	if (ff->open_flags & FOPEN_DIRECT_IO) {
ff               2360 fs/fuse/file.c 	struct fuse_file *ff = file->private_data;
ff               2363 fs/fuse/file.c 	inarg->fh = ff->fh;
ff               2460 fs/fuse/file.c 		struct fuse_file *ff = file->private_data;
ff               2463 fs/fuse/file.c 		ff->flock = true;
ff               2504 fs/fuse/file.c 	struct fuse_file *ff = file->private_data;
ff               2507 fs/fuse/file.c 		.fh = ff->fh,
ff               2518 fs/fuse/file.c 	args.nodeid = ff->nodeid;
ff               2713 fs/fuse/file.c 	struct fuse_file *ff = file->private_data;
ff               2714 fs/fuse/file.c 	struct fuse_conn *fc = ff->fc;
ff               2716 fs/fuse/file.c 		.fh = ff->fh,
ff               2800 fs/fuse/file.c 	ap.args.nodeid = ff->nodeid;
ff               2935 fs/fuse/file.c 		struct fuse_file *ff;
ff               2938 fs/fuse/file.c 		ff = rb_entry(last, struct fuse_file, polled_node);
ff               2940 fs/fuse/file.c 		if (kh < ff->kh)
ff               2942 fs/fuse/file.c 		else if (kh > ff->kh)
ff               2960 fs/fuse/file.c 				      struct fuse_file *ff)
ff               2963 fs/fuse/file.c 	if (RB_EMPTY_NODE(&ff->polled_node)) {
ff               2966 fs/fuse/file.c 		link = fuse_find_polled_node(fc, ff->kh, &parent);
ff               2968 fs/fuse/file.c 		rb_link_node(&ff->polled_node, parent, link);
ff               2969 fs/fuse/file.c 		rb_insert_color(&ff->polled_node, &fc->polled_files);
ff               2976 fs/fuse/file.c 	struct fuse_file *ff = file->private_data;
ff               2977 fs/fuse/file.c 	struct fuse_conn *fc = ff->fc;
ff               2978 fs/fuse/file.c 	struct fuse_poll_in inarg = { .fh = ff->fh, .kh = ff->kh };
ff               2986 fs/fuse/file.c 	poll_wait(file, &ff->poll_wait, wait);
ff               2993 fs/fuse/file.c 	if (waitqueue_active(&ff->poll_wait)) {
ff               2995 fs/fuse/file.c 		fuse_register_polled_file(fc, ff);
ff               2999 fs/fuse/file.c 	args.nodeid = ff->nodeid;
ff               3032 fs/fuse/file.c 		struct fuse_file *ff;
ff               3034 fs/fuse/file.c 		ff = rb_entry(*link, struct fuse_file, polled_node);
ff               3035 fs/fuse/file.c 		wake_up_interruptible_sync(&ff->poll_wait);
ff               3067 fs/fuse/file.c 	struct fuse_file *ff = file->private_data;
ff               3068 fs/fuse/file.c 	bool async_dio = ff->fc->async_dio;
ff               3087 fs/fuse/file.c 		iov_iter_truncate(iter, fuse_round_up(ff->fc, i_size - offset));
ff               3171 fs/fuse/file.c 	struct fuse_file *ff = file->private_data;
ff               3174 fs/fuse/file.c 	struct fuse_conn *fc = ff->fc;
ff               3177 fs/fuse/file.c 		.fh = ff->fh,
ff               3214 fs/fuse/file.c 	args.nodeid = ff->nodeid;
ff                838 fs/fuse/fuse_i.h 	struct fuse_file *ff;
ff                851 fs/fuse/fuse_i.h void fuse_file_free(struct fuse_file *ff);
ff                854 fs/fuse/fuse_i.h void fuse_sync_release(struct fuse_inode *fi, struct fuse_file *ff, int flags);
ff               1055 fs/fuse/fuse_i.h int fuse_flush_times(struct inode *inode, struct fuse_file *ff);
ff                115 fs/fuse/readdir.c 	struct fuse_file *ff = file->private_data;
ff                117 fs/fuse/readdir.c 	if (ff->open_flags & FOPEN_CACHE_DIR)
ff                352 fs/fuse/readdir.c 			struct fuse_file *ff = file->private_data;
ff                354 fs/fuse/readdir.c 			if (ff->open_flags & FOPEN_CACHE_DIR)
ff                377 fs/fuse/readdir.c static enum fuse_parse_result fuse_parse_cache(struct fuse_file *ff,
ff                381 fs/fuse/readdir.c 	unsigned int offset = ff->readdir.cache_off & ~PAGE_MASK;
ff                403 fs/fuse/readdir.c 		if (ff->readdir.pos == ctx->pos) {
ff                410 fs/fuse/readdir.c 		ff->readdir.pos = dirent->off;
ff                411 fs/fuse/readdir.c 		ff->readdir.cache_off += reclen;
ff                433 fs/fuse/readdir.c 	struct fuse_file *ff = file->private_data;
ff                444 fs/fuse/readdir.c 	if (ff->readdir.pos != ctx->pos) {
ff                445 fs/fuse/readdir.c 		ff->readdir.pos = 0;
ff                446 fs/fuse/readdir.c 		ff->readdir.cache_off = 0;
ff                489 fs/fuse/readdir.c 	if (ff->readdir.version != fi->rdc.version) {
ff                490 fs/fuse/readdir.c 		ff->readdir.pos = 0;
ff                491 fs/fuse/readdir.c 		ff->readdir.cache_off = 0;
ff                497 fs/fuse/readdir.c 	if (ff->readdir.pos == 0)
ff                498 fs/fuse/readdir.c 		ff->readdir.version = fi->rdc.version;
ff                500 fs/fuse/readdir.c 	WARN_ON(fi->rdc.size < ff->readdir.cache_off);
ff                502 fs/fuse/readdir.c 	index = ff->readdir.cache_off >> PAGE_SHIFT;
ff                511 fs/fuse/readdir.c 	if ((ff->readdir.cache_off & ~PAGE_MASK) == size)
ff                521 fs/fuse/readdir.c 		if (fi->rdc.version == ff->readdir.version)
ff                527 fs/fuse/readdir.c 	if (ff->readdir.version != fi->rdc.version) {
ff                540 fs/fuse/readdir.c 	res = fuse_parse_cache(ff, addr, size, ctx);
ff                553 fs/fuse/readdir.c 		ff->readdir.cache_off = ALIGN(ff->readdir.cache_off, PAGE_SIZE);
ff                567 fs/fuse/readdir.c 	struct fuse_file *ff = file->private_data;
ff                574 fs/fuse/readdir.c 	mutex_lock(&ff->readdir.lock);
ff                577 fs/fuse/readdir.c 	if (ff->open_flags & FOPEN_CACHE_DIR)
ff                582 fs/fuse/readdir.c 	mutex_unlock(&ff->readdir.lock);
ff                455 fs/hpfs/anode.c 		if (le32_to_cpu(btree->u.external[i].file_secno) + le32_to_cpu(btree->u.external[i].length) >= secs) goto ff;
ff                458 fs/hpfs/anode.c 	ff:
ff                161 include/linux/input.h 	struct ff_device *ff;
ff                 21 sound/firewire/fireface/ff-hwdep.c 	struct snd_ff *ff = hwdep->private_data;
ff                 25 sound/firewire/fireface/ff-hwdep.c 	spin_lock_irq(&ff->lock);
ff                 27 sound/firewire/fireface/ff-hwdep.c 	while (!ff->dev_lock_changed) {
ff                 28 sound/firewire/fireface/ff-hwdep.c 		prepare_to_wait(&ff->hwdep_wait, &wait, TASK_INTERRUPTIBLE);
ff                 29 sound/firewire/fireface/ff-hwdep.c 		spin_unlock_irq(&ff->lock);
ff                 31 sound/firewire/fireface/ff-hwdep.c 		finish_wait(&ff->hwdep_wait, &wait);
ff                 34 sound/firewire/fireface/ff-hwdep.c 		spin_lock_irq(&ff->lock);
ff                 38 sound/firewire/fireface/ff-hwdep.c 	if (ff->dev_lock_changed) {
ff                 40 sound/firewire/fireface/ff-hwdep.c 		event.lock_status.status = (ff->dev_lock_count > 0);
ff                 41 sound/firewire/fireface/ff-hwdep.c 		ff->dev_lock_changed = false;
ff                 46 sound/firewire/fireface/ff-hwdep.c 	spin_unlock_irq(&ff->lock);
ff                 57 sound/firewire/fireface/ff-hwdep.c 	struct snd_ff *ff = hwdep->private_data;
ff                 60 sound/firewire/fireface/ff-hwdep.c 	poll_wait(file, &ff->hwdep_wait, wait);
ff                 62 sound/firewire/fireface/ff-hwdep.c 	spin_lock_irq(&ff->lock);
ff                 63 sound/firewire/fireface/ff-hwdep.c 	if (ff->dev_lock_changed)
ff                 67 sound/firewire/fireface/ff-hwdep.c 	spin_unlock_irq(&ff->lock);
ff                 72 sound/firewire/fireface/ff-hwdep.c static int hwdep_get_info(struct snd_ff *ff, void __user *arg)
ff                 74 sound/firewire/fireface/ff-hwdep.c 	struct fw_device *dev = fw_parent_device(ff->unit);
ff                 91 sound/firewire/fireface/ff-hwdep.c static int hwdep_lock(struct snd_ff *ff)
ff                 95 sound/firewire/fireface/ff-hwdep.c 	spin_lock_irq(&ff->lock);
ff                 97 sound/firewire/fireface/ff-hwdep.c 	if (ff->dev_lock_count == 0) {
ff                 98 sound/firewire/fireface/ff-hwdep.c 		ff->dev_lock_count = -1;
ff                104 sound/firewire/fireface/ff-hwdep.c 	spin_unlock_irq(&ff->lock);
ff                109 sound/firewire/fireface/ff-hwdep.c static int hwdep_unlock(struct snd_ff *ff)
ff                113 sound/firewire/fireface/ff-hwdep.c 	spin_lock_irq(&ff->lock);
ff                115 sound/firewire/fireface/ff-hwdep.c 	if (ff->dev_lock_count == -1) {
ff                116 sound/firewire/fireface/ff-hwdep.c 		ff->dev_lock_count = 0;
ff                122 sound/firewire/fireface/ff-hwdep.c 	spin_unlock_irq(&ff->lock);
ff                129 sound/firewire/fireface/ff-hwdep.c 	struct snd_ff *ff = hwdep->private_data;
ff                131 sound/firewire/fireface/ff-hwdep.c 	spin_lock_irq(&ff->lock);
ff                132 sound/firewire/fireface/ff-hwdep.c 	if (ff->dev_lock_count == -1)
ff                133 sound/firewire/fireface/ff-hwdep.c 		ff->dev_lock_count = 0;
ff                134 sound/firewire/fireface/ff-hwdep.c 	spin_unlock_irq(&ff->lock);
ff                142 sound/firewire/fireface/ff-hwdep.c 	struct snd_ff *ff = hwdep->private_data;
ff                146 sound/firewire/fireface/ff-hwdep.c 		return hwdep_get_info(ff, (void __user *)arg);
ff                148 sound/firewire/fireface/ff-hwdep.c 		return hwdep_lock(ff);
ff                150 sound/firewire/fireface/ff-hwdep.c 		return hwdep_unlock(ff);
ff                167 sound/firewire/fireface/ff-hwdep.c int snd_ff_create_hwdep_devices(struct snd_ff *ff)
ff                179 sound/firewire/fireface/ff-hwdep.c 	err = snd_hwdep_new(ff->card, ff->card->driver, 0, &hwdep);
ff                183 sound/firewire/fireface/ff-hwdep.c 	strcpy(hwdep->name, ff->card->driver);
ff                186 sound/firewire/fireface/ff-hwdep.c 	hwdep->private_data = ff;
ff                 18 sound/firewire/fireface/ff-midi.c 	struct snd_ff *ff = substream->rmidi->private_data;
ff                 21 sound/firewire/fireface/ff-midi.c 	ff->on_sysex[substream->number] = 0;
ff                 22 sound/firewire/fireface/ff-midi.c 	ff->rx_midi_error[substream->number] = false;
ff                 24 sound/firewire/fireface/ff-midi.c 	WRITE_ONCE(ff->rx_midi_substreams[substream->number], substream);
ff                 37 sound/firewire/fireface/ff-midi.c 	struct snd_ff *ff = substream->rmidi->private_data;
ff                 39 sound/firewire/fireface/ff-midi.c 	cancel_work_sync(&ff->rx_midi_work[substream->number]);
ff                 40 sound/firewire/fireface/ff-midi.c 	WRITE_ONCE(ff->rx_midi_substreams[substream->number], NULL);
ff                 48 sound/firewire/fireface/ff-midi.c 	struct snd_ff *ff = substream->rmidi->private_data;
ff                 51 sound/firewire/fireface/ff-midi.c 	spin_lock_irqsave(&ff->lock, flags);
ff                 54 sound/firewire/fireface/ff-midi.c 		WRITE_ONCE(ff->tx_midi_substreams[substream->number],
ff                 57 sound/firewire/fireface/ff-midi.c 		WRITE_ONCE(ff->tx_midi_substreams[substream->number], NULL);
ff                 59 sound/firewire/fireface/ff-midi.c 	spin_unlock_irqrestore(&ff->lock, flags);
ff                 65 sound/firewire/fireface/ff-midi.c 	struct snd_ff *ff = substream->rmidi->private_data;
ff                 68 sound/firewire/fireface/ff-midi.c 	spin_lock_irqsave(&ff->lock, flags);
ff                 70 sound/firewire/fireface/ff-midi.c 	if (up || !ff->rx_midi_error[substream->number])
ff                 71 sound/firewire/fireface/ff-midi.c 		schedule_work(&ff->rx_midi_work[substream->number]);
ff                 73 sound/firewire/fireface/ff-midi.c 	spin_unlock_irqrestore(&ff->lock, flags);
ff                 87 sound/firewire/fireface/ff-midi.c int snd_ff_create_midi_devices(struct snd_ff *ff)
ff                103 sound/firewire/fireface/ff-midi.c 	err = snd_rawmidi_new(ff->card, ff->card->driver, 0,
ff                104 sound/firewire/fireface/ff-midi.c 			      ff->spec->midi_out_ports, ff->spec->midi_in_ports,
ff                110 sound/firewire/fireface/ff-midi.c 		 "%s MIDI", ff->card->shortname);
ff                111 sound/firewire/fireface/ff-midi.c 	rmidi->private_data = ff;
ff                117 sound/firewire/fireface/ff-midi.c 	set_midi_substream_names(stream, ff->card->shortname);
ff                123 sound/firewire/fireface/ff-midi.c 	set_midi_substream_names(stream, ff->card->shortname);
ff                104 sound/firewire/fireface/ff-pcm.c static int pcm_init_hw_params(struct snd_ff *ff,
ff                114 sound/firewire/fireface/ff-pcm.c 		s = &ff->tx_stream;
ff                115 sound/firewire/fireface/ff-pcm.c 		pcm_channels = ff->spec->pcm_capture_channels;
ff                118 sound/firewire/fireface/ff-pcm.c 		s = &ff->rx_stream;
ff                119 sound/firewire/fireface/ff-pcm.c 		pcm_channels = ff->spec->pcm_playback_channels;
ff                141 sound/firewire/fireface/ff-pcm.c 	struct snd_ff *ff = substream->private_data;
ff                146 sound/firewire/fireface/ff-pcm.c 	err = snd_ff_stream_lock_try(ff);
ff                150 sound/firewire/fireface/ff-pcm.c 	err = pcm_init_hw_params(ff, substream);
ff                154 sound/firewire/fireface/ff-pcm.c 	err = ff->spec->protocol->get_clock(ff, &rate, &src);
ff                175 sound/firewire/fireface/ff-pcm.c 		if (amdtp_stream_pcm_running(&ff->rx_stream) ||
ff                176 sound/firewire/fireface/ff-pcm.c 		    amdtp_stream_pcm_running(&ff->tx_stream)) {
ff                177 sound/firewire/fireface/ff-pcm.c 			rate = amdtp_rate_table[ff->rx_stream.sfc];
ff                188 sound/firewire/fireface/ff-pcm.c 	snd_ff_stream_lock_release(ff);
ff                194 sound/firewire/fireface/ff-pcm.c 	struct snd_ff *ff = substream->private_data;
ff                196 sound/firewire/fireface/ff-pcm.c 	snd_ff_stream_lock_release(ff);
ff                204 sound/firewire/fireface/ff-pcm.c 	struct snd_ff *ff = substream->private_data;
ff                215 sound/firewire/fireface/ff-pcm.c 		mutex_lock(&ff->mutex);
ff                216 sound/firewire/fireface/ff-pcm.c 		err = snd_ff_stream_reserve_duplex(ff, rate);
ff                218 sound/firewire/fireface/ff-pcm.c 			++ff->substreams_counter;
ff                219 sound/firewire/fireface/ff-pcm.c 		mutex_unlock(&ff->mutex);
ff                227 sound/firewire/fireface/ff-pcm.c 	struct snd_ff *ff = substream->private_data;
ff                229 sound/firewire/fireface/ff-pcm.c 	mutex_lock(&ff->mutex);
ff                232 sound/firewire/fireface/ff-pcm.c 		--ff->substreams_counter;
ff                234 sound/firewire/fireface/ff-pcm.c 	snd_ff_stream_stop_duplex(ff);
ff                236 sound/firewire/fireface/ff-pcm.c 	mutex_unlock(&ff->mutex);
ff                243 sound/firewire/fireface/ff-pcm.c 	struct snd_ff *ff = substream->private_data;
ff                247 sound/firewire/fireface/ff-pcm.c 	mutex_lock(&ff->mutex);
ff                249 sound/firewire/fireface/ff-pcm.c 	err = snd_ff_stream_start_duplex(ff, runtime->rate);
ff                251 sound/firewire/fireface/ff-pcm.c 		amdtp_stream_pcm_prepare(&ff->tx_stream);
ff                253 sound/firewire/fireface/ff-pcm.c 	mutex_unlock(&ff->mutex);
ff                260 sound/firewire/fireface/ff-pcm.c 	struct snd_ff *ff = substream->private_data;
ff                264 sound/firewire/fireface/ff-pcm.c 	mutex_lock(&ff->mutex);
ff                266 sound/firewire/fireface/ff-pcm.c 	err = snd_ff_stream_start_duplex(ff, runtime->rate);
ff                268 sound/firewire/fireface/ff-pcm.c 		amdtp_stream_pcm_prepare(&ff->rx_stream);
ff                270 sound/firewire/fireface/ff-pcm.c 	mutex_unlock(&ff->mutex);
ff                277 sound/firewire/fireface/ff-pcm.c 	struct snd_ff *ff = substream->private_data;
ff                281 sound/firewire/fireface/ff-pcm.c 		amdtp_stream_pcm_trigger(&ff->tx_stream, substream);
ff                284 sound/firewire/fireface/ff-pcm.c 		amdtp_stream_pcm_trigger(&ff->tx_stream, NULL);
ff                295 sound/firewire/fireface/ff-pcm.c 	struct snd_ff *ff = substream->private_data;
ff                299 sound/firewire/fireface/ff-pcm.c 		amdtp_stream_pcm_trigger(&ff->rx_stream, substream);
ff                302 sound/firewire/fireface/ff-pcm.c 		amdtp_stream_pcm_trigger(&ff->rx_stream, NULL);
ff                313 sound/firewire/fireface/ff-pcm.c 	struct snd_ff *ff = sbstrm->private_data;
ff                315 sound/firewire/fireface/ff-pcm.c 	return amdtp_stream_pcm_pointer(&ff->tx_stream);
ff                320 sound/firewire/fireface/ff-pcm.c 	struct snd_ff *ff = sbstrm->private_data;
ff                322 sound/firewire/fireface/ff-pcm.c 	return amdtp_stream_pcm_pointer(&ff->rx_stream);
ff                327 sound/firewire/fireface/ff-pcm.c 	struct snd_ff *ff = substream->private_data;
ff                329 sound/firewire/fireface/ff-pcm.c 	return amdtp_stream_pcm_ack(&ff->tx_stream);
ff                334 sound/firewire/fireface/ff-pcm.c 	struct snd_ff *ff = substream->private_data;
ff                336 sound/firewire/fireface/ff-pcm.c 	return amdtp_stream_pcm_ack(&ff->rx_stream);
ff                339 sound/firewire/fireface/ff-pcm.c int snd_ff_create_pcm_devices(struct snd_ff *ff)
ff                368 sound/firewire/fireface/ff-pcm.c 	err = snd_pcm_new(ff->card, ff->card->driver, 0, 1, 1, &pcm);
ff                372 sound/firewire/fireface/ff-pcm.c 	pcm->private_data = ff;
ff                374 sound/firewire/fireface/ff-pcm.c 		 "%s PCM", ff->card->shortname);
ff                 30 sound/firewire/fireface/ff-proc.c 	struct snd_ff *ff = entry->private_data;
ff                 32 sound/firewire/fireface/ff-proc.c 	ff->spec->protocol->dump_status(ff, buffer);
ff                 35 sound/firewire/fireface/ff-proc.c static void add_node(struct snd_ff *ff, struct snd_info_entry *root,
ff                 42 sound/firewire/fireface/ff-proc.c 	entry = snd_info_create_card_entry(ff->card, name, root);
ff                 44 sound/firewire/fireface/ff-proc.c 		snd_info_set_text_ops(entry, ff, op);
ff                 47 sound/firewire/fireface/ff-proc.c void snd_ff_proc_init(struct snd_ff *ff)
ff                 55 sound/firewire/fireface/ff-proc.c 	root = snd_info_create_card_entry(ff->card, "firewire",
ff                 56 sound/firewire/fireface/ff-proc.c 					  ff->card->proc_root);
ff                 61 sound/firewire/fireface/ff-proc.c 	add_node(ff, root, "status", proc_dump_status);
ff                 73 sound/firewire/fireface/ff-protocol-former.c static int former_get_clock(struct snd_ff *ff, unsigned int *rate,
ff                 80 sound/firewire/fireface/ff-protocol-former.c 	err = snd_fw_transaction(ff->unit, TCODE_READ_QUADLET_REQUEST,
ff                 89 sound/firewire/fireface/ff-protocol-former.c static int former_switch_fetching_mode(struct snd_ff *ff, bool enable)
ff                 98 sound/firewire/fireface/ff-protocol-former.c 		count = max(count, ff->spec->pcm_playback_channels[i]);
ff                116 sound/firewire/fireface/ff-protocol-former.c 	err = snd_fw_transaction(ff->unit, TCODE_WRITE_BLOCK_REQUEST,
ff                123 sound/firewire/fireface/ff-protocol-former.c static void dump_clock_config(struct snd_ff *ff, struct snd_info_buffer *buffer)
ff                132 sound/firewire/fireface/ff-protocol-former.c 	err = snd_fw_transaction(ff->unit, TCODE_READ_BLOCK_REQUEST,
ff                161 sound/firewire/fireface/ff-protocol-former.c static void dump_sync_status(struct snd_ff *ff, struct snd_info_buffer *buffer)
ff                202 sound/firewire/fireface/ff-protocol-former.c 	err = snd_fw_transaction(ff->unit, TCODE_READ_BLOCK_REQUEST,
ff                259 sound/firewire/fireface/ff-protocol-former.c static void former_dump_status(struct snd_ff *ff,
ff                262 sound/firewire/fireface/ff-protocol-former.c 	dump_clock_config(ff, buffer);
ff                263 sound/firewire/fireface/ff-protocol-former.c 	dump_sync_status(ff, buffer);
ff                266 sound/firewire/fireface/ff-protocol-former.c static int former_fill_midi_msg(struct snd_ff *ff,
ff                270 sound/firewire/fireface/ff-protocol-former.c 	u8 *buf = (u8 *)ff->msg_buf[port];
ff                281 sound/firewire/fireface/ff-protocol-former.c 		ff->msg_buf[port][i] = cpu_to_le32(buf[i]);
ff                282 sound/firewire/fireface/ff-protocol-former.c 	ff->rx_bytes[port] = len;
ff                296 sound/firewire/fireface/ff-protocol-former.c static int allocate_tx_resources(struct snd_ff *ff)
ff                303 sound/firewire/fireface/ff-protocol-former.c 	reg = cpu_to_le32(ff->tx_stream.data_block_quadlets);
ff                304 sound/firewire/fireface/ff-protocol-former.c 	err = snd_fw_transaction(ff->unit, TCODE_WRITE_QUADLET_REQUEST,
ff                313 sound/firewire/fireface/ff-protocol-former.c 		err = snd_fw_transaction(ff->unit, TCODE_READ_QUADLET_REQUEST,
ff                332 sound/firewire/fireface/ff-protocol-former.c 	ff->tx_resources.channel = tx_isoc_channel;
ff                337 sound/firewire/fireface/ff-protocol-former.c static int ff800_allocate_resources(struct snd_ff *ff, unsigned int rate)
ff                344 sound/firewire/fireface/ff-protocol-former.c 	err = snd_fw_transaction(ff->unit, TCODE_WRITE_QUADLET_REQUEST,
ff                355 sound/firewire/fireface/ff-protocol-former.c 	err = fw_iso_resources_allocate(&ff->rx_resources,
ff                356 sound/firewire/fireface/ff-protocol-former.c 				amdtp_stream_get_max_payload(&ff->rx_stream),
ff                357 sound/firewire/fireface/ff-protocol-former.c 				fw_parent_device(ff->unit)->max_speed);
ff                364 sound/firewire/fireface/ff-protocol-former.c 	data = ff->rx_stream.data_block_quadlets << 3;
ff                365 sound/firewire/fireface/ff-protocol-former.c 	data = (data << 8) | ff->rx_resources.channel;
ff                367 sound/firewire/fireface/ff-protocol-former.c 	err = snd_fw_transaction(ff->unit, TCODE_WRITE_QUADLET_REQUEST,
ff                372 sound/firewire/fireface/ff-protocol-former.c 	return allocate_tx_resources(ff);
ff                375 sound/firewire/fireface/ff-protocol-former.c static int ff800_begin_session(struct snd_ff *ff, unsigned int rate)
ff                377 sound/firewire/fireface/ff-protocol-former.c 	unsigned int generation = ff->rx_resources.generation;
ff                380 sound/firewire/fireface/ff-protocol-former.c 	if (generation != fw_parent_device(ff->unit)->card->generation) {
ff                381 sound/firewire/fireface/ff-protocol-former.c 		int err = fw_iso_resources_update(&ff->rx_resources);
ff                387 sound/firewire/fireface/ff-protocol-former.c 	reg |= cpu_to_le32(ff->tx_stream.data_block_quadlets);
ff                388 sound/firewire/fireface/ff-protocol-former.c 	if (fw_parent_device(ff->unit)->max_speed == SCODE_800)
ff                390 sound/firewire/fireface/ff-protocol-former.c 	return snd_fw_transaction(ff->unit, TCODE_WRITE_QUADLET_REQUEST,
ff                394 sound/firewire/fireface/ff-protocol-former.c static void ff800_finish_session(struct snd_ff *ff)
ff                399 sound/firewire/fireface/ff-protocol-former.c 	snd_fw_transaction(ff->unit, TCODE_WRITE_QUADLET_REQUEST,
ff                407 sound/firewire/fireface/ff-protocol-former.c static void ff800_handle_midi_msg(struct snd_ff *ff, unsigned int offset,
ff                416 sound/firewire/fireface/ff-protocol-former.c 		substream = READ_ONCE(ff->tx_midi_substreams[0]);
ff                441 sound/firewire/fireface/ff-protocol-former.c static int ff400_allocate_resources(struct snd_ff *ff, unsigned int rate)
ff                458 sound/firewire/fireface/ff-protocol-former.c 	err = snd_fw_transaction(ff->unit, TCODE_WRITE_QUADLET_REQUEST,
ff                470 sound/firewire/fireface/ff-protocol-former.c 	ff->tx_resources.channels_mask = 0x00000000000000ffuLL;
ff                471 sound/firewire/fireface/ff-protocol-former.c 	err = fw_iso_resources_allocate(&ff->tx_resources,
ff                472 sound/firewire/fireface/ff-protocol-former.c 			amdtp_stream_get_max_payload(&ff->tx_stream),
ff                473 sound/firewire/fireface/ff-protocol-former.c 			fw_parent_device(ff->unit)->max_speed);
ff                478 sound/firewire/fireface/ff-protocol-former.c 	ff->rx_resources.channels_mask = 0x00000000000000ffuLL;
ff                479 sound/firewire/fireface/ff-protocol-former.c 	err = fw_iso_resources_allocate(&ff->rx_resources,
ff                480 sound/firewire/fireface/ff-protocol-former.c 			amdtp_stream_get_max_payload(&ff->rx_stream),
ff                481 sound/firewire/fireface/ff-protocol-former.c 			fw_parent_device(ff->unit)->max_speed);
ff                483 sound/firewire/fireface/ff-protocol-former.c 		fw_iso_resources_free(&ff->tx_resources);
ff                488 sound/firewire/fireface/ff-protocol-former.c static int ff400_begin_session(struct snd_ff *ff, unsigned int rate)
ff                490 sound/firewire/fireface/ff-protocol-former.c 	unsigned int generation = ff->rx_resources.generation;
ff                494 sound/firewire/fireface/ff-protocol-former.c 	if (generation != fw_parent_device(ff->unit)->card->generation) {
ff                495 sound/firewire/fireface/ff-protocol-former.c 		err = fw_iso_resources_update(&ff->tx_resources);
ff                499 sound/firewire/fireface/ff-protocol-former.c 		err = fw_iso_resources_update(&ff->rx_resources);
ff                506 sound/firewire/fireface/ff-protocol-former.c 	reg = cpu_to_le32(((ff->rx_stream.data_block_quadlets << 3) << 8) |
ff                507 sound/firewire/fireface/ff-protocol-former.c 			  ff->rx_resources.channel);
ff                508 sound/firewire/fireface/ff-protocol-former.c 	err = snd_fw_transaction(ff->unit, TCODE_WRITE_QUADLET_REQUEST,
ff                517 sound/firewire/fireface/ff-protocol-former.c 			  (ff->tx_resources.channel << 5) |
ff                518 sound/firewire/fireface/ff-protocol-former.c 			  (ff->tx_stream.data_block_quadlets));
ff                519 sound/firewire/fireface/ff-protocol-former.c 	err = snd_fw_transaction(ff->unit, TCODE_WRITE_QUADLET_REQUEST,
ff                526 sound/firewire/fireface/ff-protocol-former.c 	return snd_fw_transaction(ff->unit, TCODE_WRITE_QUADLET_REQUEST,
ff                530 sound/firewire/fireface/ff-protocol-former.c static void ff400_finish_session(struct snd_ff *ff)
ff                535 sound/firewire/fireface/ff-protocol-former.c 	snd_fw_transaction(ff->unit, TCODE_WRITE_QUADLET_REQUEST,
ff                558 sound/firewire/fireface/ff-protocol-former.c static void ff400_handle_midi_msg(struct snd_ff *ff, unsigned int offset,
ff                577 sound/firewire/fireface/ff-protocol-former.c 			substream = READ_ONCE(ff->tx_midi_substreams[0]);
ff                587 sound/firewire/fireface/ff-protocol-former.c 			substream = READ_ONCE(ff->tx_midi_substreams[1]);
ff                 69 sound/firewire/fireface/ff-protocol-latter.c static int latter_get_clock(struct snd_ff *ff, unsigned int *rate,
ff                 76 sound/firewire/fireface/ff-protocol-latter.c 	err = snd_fw_transaction(ff->unit, TCODE_READ_QUADLET_REQUEST,
ff                 85 sound/firewire/fireface/ff-protocol-latter.c static int latter_switch_fetching_mode(struct snd_ff *ff, bool enable)
ff                 96 sound/firewire/fireface/ff-protocol-latter.c 	return snd_fw_transaction(ff->unit, TCODE_WRITE_QUADLET_REQUEST,
ff                100 sound/firewire/fireface/ff-protocol-latter.c static int latter_allocate_resources(struct snd_ff *ff, unsigned int rate)
ff                125 sound/firewire/fireface/ff-protocol-latter.c 	err = snd_fw_transaction(ff->unit, TCODE_WRITE_QUADLET_REQUEST,
ff                136 sound/firewire/fireface/ff-protocol-latter.c 		err = latter_get_clock(ff, &curr_rate, &src);
ff                158 sound/firewire/fireface/ff-protocol-latter.c 	ff->tx_resources.channels_mask = 0x00000000000000ffuLL;
ff                159 sound/firewire/fireface/ff-protocol-latter.c 	err = fw_iso_resources_allocate(&ff->tx_resources,
ff                160 sound/firewire/fireface/ff-protocol-latter.c 			amdtp_stream_get_max_payload(&ff->tx_stream),
ff                161 sound/firewire/fireface/ff-protocol-latter.c 			fw_parent_device(ff->unit)->max_speed);
ff                166 sound/firewire/fireface/ff-protocol-latter.c 	ff->rx_resources.channels_mask = 0x00000000000000ffuLL;
ff                167 sound/firewire/fireface/ff-protocol-latter.c 	err = fw_iso_resources_allocate(&ff->rx_resources,
ff                168 sound/firewire/fireface/ff-protocol-latter.c 			amdtp_stream_get_max_payload(&ff->rx_stream),
ff                169 sound/firewire/fireface/ff-protocol-latter.c 			fw_parent_device(ff->unit)->max_speed);
ff                171 sound/firewire/fireface/ff-protocol-latter.c 		fw_iso_resources_free(&ff->tx_resources);
ff                176 sound/firewire/fireface/ff-protocol-latter.c static int latter_begin_session(struct snd_ff *ff, unsigned int rate)
ff                178 sound/firewire/fireface/ff-protocol-latter.c 	unsigned int generation = ff->rx_resources.generation;
ff                193 sound/firewire/fireface/ff-protocol-latter.c 	if (generation != fw_parent_device(ff->unit)->card->generation) {
ff                194 sound/firewire/fireface/ff-protocol-latter.c 		err = fw_iso_resources_update(&ff->tx_resources);
ff                198 sound/firewire/fireface/ff-protocol-latter.c 		err = fw_iso_resources_update(&ff->rx_resources);
ff                203 sound/firewire/fireface/ff-protocol-latter.c 	data = (ff->tx_resources.channel << 8) | ff->rx_resources.channel;
ff                205 sound/firewire/fireface/ff-protocol-latter.c 	err = snd_fw_transaction(ff->unit, TCODE_WRITE_QUADLET_REQUEST,
ff                213 sound/firewire/fireface/ff-protocol-latter.c 	return snd_fw_transaction(ff->unit, TCODE_WRITE_QUADLET_REQUEST,
ff                217 sound/firewire/fireface/ff-protocol-latter.c static void latter_finish_session(struct snd_ff *ff)
ff                222 sound/firewire/fireface/ff-protocol-latter.c 	snd_fw_transaction(ff->unit, TCODE_WRITE_QUADLET_REQUEST,
ff                226 sound/firewire/fireface/ff-protocol-latter.c static void latter_dump_status(struct snd_ff *ff, struct snd_info_buffer *buffer)
ff                245 sound/firewire/fireface/ff-protocol-latter.c 	err = snd_fw_transaction(ff->unit, TCODE_READ_QUADLET_REQUEST,
ff                296 sound/firewire/fireface/ff-protocol-latter.c static void latter_handle_midi_msg(struct snd_ff *ff, unsigned int offset,
ff                305 sound/firewire/fireface/ff-protocol-latter.c 	if (index >= ff->spec->midi_in_ports)
ff                331 sound/firewire/fireface/ff-protocol-latter.c 	substream = READ_ONCE(ff->tx_midi_substreams[index]);
ff                386 sound/firewire/fireface/ff-protocol-latter.c static int latter_fill_midi_msg(struct snd_ff *ff,
ff                399 sound/firewire/fireface/ff-protocol-latter.c 	if (!ff->on_sysex[port]) {
ff                405 sound/firewire/fireface/ff-protocol-latter.c 			ff->on_sysex[port] = true;
ff                419 sound/firewire/fireface/ff-protocol-latter.c 			ff->on_sysex[port] = false;
ff                425 sound/firewire/fireface/ff-protocol-latter.c 	ff->msg_buf[port][0] = cpu_to_le32(data);
ff                426 sound/firewire/fireface/ff-protocol-latter.c 	ff->rx_bytes[port] = consumed;
ff                 33 sound/firewire/fireface/ff-stream.c static inline void finish_session(struct snd_ff *ff)
ff                 35 sound/firewire/fireface/ff-stream.c 	ff->spec->protocol->finish_session(ff);
ff                 36 sound/firewire/fireface/ff-stream.c 	ff->spec->protocol->switch_fetching_mode(ff, false);
ff                 39 sound/firewire/fireface/ff-stream.c static int init_stream(struct snd_ff *ff, struct amdtp_stream *s)
ff                 45 sound/firewire/fireface/ff-stream.c 	if (s == &ff->tx_stream) {
ff                 46 sound/firewire/fireface/ff-stream.c 		resources = &ff->tx_resources;
ff                 49 sound/firewire/fireface/ff-stream.c 		resources = &ff->rx_resources;
ff                 53 sound/firewire/fireface/ff-stream.c 	err = fw_iso_resources_init(resources, ff->unit);
ff                 57 sound/firewire/fireface/ff-stream.c 	err = amdtp_ff_init(s, ff->unit, dir);
ff                 64 sound/firewire/fireface/ff-stream.c static void destroy_stream(struct snd_ff *ff, struct amdtp_stream *s)
ff                 68 sound/firewire/fireface/ff-stream.c 	if (s == &ff->tx_stream)
ff                 69 sound/firewire/fireface/ff-stream.c 		fw_iso_resources_destroy(&ff->tx_resources);
ff                 71 sound/firewire/fireface/ff-stream.c 		fw_iso_resources_destroy(&ff->rx_resources);
ff                 74 sound/firewire/fireface/ff-stream.c int snd_ff_stream_init_duplex(struct snd_ff *ff)
ff                 78 sound/firewire/fireface/ff-stream.c 	err = init_stream(ff, &ff->rx_stream);
ff                 82 sound/firewire/fireface/ff-stream.c 	err = init_stream(ff, &ff->tx_stream);
ff                 84 sound/firewire/fireface/ff-stream.c 		destroy_stream(ff, &ff->rx_stream);
ff                 88 sound/firewire/fireface/ff-stream.c 	err = amdtp_domain_init(&ff->domain);
ff                 90 sound/firewire/fireface/ff-stream.c 		destroy_stream(ff, &ff->rx_stream);
ff                 91 sound/firewire/fireface/ff-stream.c 		destroy_stream(ff, &ff->tx_stream);
ff                101 sound/firewire/fireface/ff-stream.c void snd_ff_stream_destroy_duplex(struct snd_ff *ff)
ff                103 sound/firewire/fireface/ff-stream.c 	amdtp_domain_destroy(&ff->domain);
ff                105 sound/firewire/fireface/ff-stream.c 	destroy_stream(ff, &ff->rx_stream);
ff                106 sound/firewire/fireface/ff-stream.c 	destroy_stream(ff, &ff->tx_stream);
ff                109 sound/firewire/fireface/ff-stream.c int snd_ff_stream_reserve_duplex(struct snd_ff *ff, unsigned int rate)
ff                115 sound/firewire/fireface/ff-stream.c 	err = ff->spec->protocol->get_clock(ff, &curr_rate, &src);
ff                119 sound/firewire/fireface/ff-stream.c 	if (ff->substreams_counter == 0 || curr_rate != rate) {
ff                123 sound/firewire/fireface/ff-stream.c 		amdtp_domain_stop(&ff->domain);
ff                124 sound/firewire/fireface/ff-stream.c 		finish_session(ff);
ff                126 sound/firewire/fireface/ff-stream.c 		fw_iso_resources_free(&ff->tx_resources);
ff                127 sound/firewire/fireface/ff-stream.c 		fw_iso_resources_free(&ff->rx_resources);
ff                140 sound/firewire/fireface/ff-stream.c 		err = amdtp_ff_set_parameters(&ff->tx_stream, rate,
ff                141 sound/firewire/fireface/ff-stream.c 					ff->spec->pcm_capture_channels[mode]);
ff                145 sound/firewire/fireface/ff-stream.c 		err = amdtp_ff_set_parameters(&ff->rx_stream, rate,
ff                146 sound/firewire/fireface/ff-stream.c 					ff->spec->pcm_playback_channels[mode]);
ff                150 sound/firewire/fireface/ff-stream.c 		err = ff->spec->protocol->allocate_resources(ff, rate);
ff                158 sound/firewire/fireface/ff-stream.c int snd_ff_stream_start_duplex(struct snd_ff *ff, unsigned int rate)
ff                162 sound/firewire/fireface/ff-stream.c 	if (ff->substreams_counter == 0)
ff                165 sound/firewire/fireface/ff-stream.c 	if (amdtp_streaming_error(&ff->tx_stream) ||
ff                166 sound/firewire/fireface/ff-stream.c 	    amdtp_streaming_error(&ff->rx_stream)) {
ff                167 sound/firewire/fireface/ff-stream.c 		amdtp_domain_stop(&ff->domain);
ff                168 sound/firewire/fireface/ff-stream.c 		finish_session(ff);
ff                175 sound/firewire/fireface/ff-stream.c 	if (!amdtp_stream_running(&ff->rx_stream)) {
ff                176 sound/firewire/fireface/ff-stream.c 		int spd = fw_parent_device(ff->unit)->max_speed;
ff                178 sound/firewire/fireface/ff-stream.c 		err = ff->spec->protocol->begin_session(ff, rate);
ff                182 sound/firewire/fireface/ff-stream.c 		err = amdtp_domain_add_stream(&ff->domain, &ff->rx_stream,
ff                183 sound/firewire/fireface/ff-stream.c 					      ff->rx_resources.channel, spd);
ff                187 sound/firewire/fireface/ff-stream.c 		err = amdtp_domain_add_stream(&ff->domain, &ff->tx_stream,
ff                188 sound/firewire/fireface/ff-stream.c 					      ff->tx_resources.channel, spd);
ff                192 sound/firewire/fireface/ff-stream.c 		err = amdtp_domain_start(&ff->domain);
ff                196 sound/firewire/fireface/ff-stream.c 		if (!amdtp_stream_wait_callback(&ff->rx_stream,
ff                198 sound/firewire/fireface/ff-stream.c 		    !amdtp_stream_wait_callback(&ff->tx_stream,
ff                204 sound/firewire/fireface/ff-stream.c 		err = ff->spec->protocol->switch_fetching_mode(ff, true);
ff                211 sound/firewire/fireface/ff-stream.c 	amdtp_domain_stop(&ff->domain);
ff                212 sound/firewire/fireface/ff-stream.c 	finish_session(ff);
ff                217 sound/firewire/fireface/ff-stream.c void snd_ff_stream_stop_duplex(struct snd_ff *ff)
ff                219 sound/firewire/fireface/ff-stream.c 	if (ff->substreams_counter == 0) {
ff                220 sound/firewire/fireface/ff-stream.c 		amdtp_domain_stop(&ff->domain);
ff                221 sound/firewire/fireface/ff-stream.c 		finish_session(ff);
ff                223 sound/firewire/fireface/ff-stream.c 		fw_iso_resources_free(&ff->tx_resources);
ff                224 sound/firewire/fireface/ff-stream.c 		fw_iso_resources_free(&ff->rx_resources);
ff                228 sound/firewire/fireface/ff-stream.c void snd_ff_stream_update_duplex(struct snd_ff *ff)
ff                230 sound/firewire/fireface/ff-stream.c 	amdtp_domain_stop(&ff->domain);
ff                233 sound/firewire/fireface/ff-stream.c 	amdtp_stream_pcm_abort(&ff->tx_stream);
ff                234 sound/firewire/fireface/ff-stream.c 	amdtp_stream_pcm_abort(&ff->rx_stream);
ff                237 sound/firewire/fireface/ff-stream.c void snd_ff_stream_lock_changed(struct snd_ff *ff)
ff                239 sound/firewire/fireface/ff-stream.c 	ff->dev_lock_changed = true;
ff                240 sound/firewire/fireface/ff-stream.c 	wake_up(&ff->hwdep_wait);
ff                243 sound/firewire/fireface/ff-stream.c int snd_ff_stream_lock_try(struct snd_ff *ff)
ff                247 sound/firewire/fireface/ff-stream.c 	spin_lock_irq(&ff->lock);
ff                250 sound/firewire/fireface/ff-stream.c 	if (ff->dev_lock_count < 0) {
ff                256 sound/firewire/fireface/ff-stream.c 	if (ff->dev_lock_count++ == 0)
ff                257 sound/firewire/fireface/ff-stream.c 		snd_ff_stream_lock_changed(ff);
ff                260 sound/firewire/fireface/ff-stream.c 	spin_unlock_irq(&ff->lock);
ff                264 sound/firewire/fireface/ff-stream.c void snd_ff_stream_lock_release(struct snd_ff *ff)
ff                266 sound/firewire/fireface/ff-stream.c 	spin_lock_irq(&ff->lock);
ff                268 sound/firewire/fireface/ff-stream.c 	if (WARN_ON(ff->dev_lock_count <= 0))
ff                270 sound/firewire/fireface/ff-stream.c 	if (--ff->dev_lock_count == 0)
ff                271 sound/firewire/fireface/ff-stream.c 		snd_ff_stream_lock_changed(ff);
ff                273 sound/firewire/fireface/ff-stream.c 	spin_unlock_irq(&ff->lock);
ff                 10 sound/firewire/fireface/ff-transaction.c static void finish_transmit_midi_msg(struct snd_ff *ff, unsigned int port,
ff                 14 sound/firewire/fireface/ff-transaction.c 				READ_ONCE(ff->rx_midi_substreams[port]);
ff                 17 sound/firewire/fireface/ff-transaction.c 		ff->rx_midi_error[port] = true;
ff                 23 sound/firewire/fireface/ff-transaction.c 		ff->next_ktime[port] = 0;
ff                 24 sound/firewire/fireface/ff-transaction.c 		schedule_work(&ff->rx_midi_work[port]);
ff                 28 sound/firewire/fireface/ff-transaction.c 	snd_rawmidi_transmit_ack(substream, ff->rx_bytes[port]);
ff                 29 sound/firewire/fireface/ff-transaction.c 	ff->rx_bytes[port] = 0;
ff                 32 sound/firewire/fireface/ff-transaction.c 		schedule_work(&ff->rx_midi_work[port]);
ff                 39 sound/firewire/fireface/ff-transaction.c 	struct snd_ff *ff =
ff                 41 sound/firewire/fireface/ff-transaction.c 	finish_transmit_midi_msg(ff, 0, rcode);
ff                 48 sound/firewire/fireface/ff-transaction.c 	struct snd_ff *ff =
ff                 50 sound/firewire/fireface/ff-transaction.c 	finish_transmit_midi_msg(ff, 1, rcode);
ff                 53 sound/firewire/fireface/ff-transaction.c static void transmit_midi_msg(struct snd_ff *ff, unsigned int port)
ff                 56 sound/firewire/fireface/ff-transaction.c 			READ_ONCE(ff->rx_midi_substreams[port]);
ff                 59 sound/firewire/fireface/ff-transaction.c 	struct fw_device *fw_dev = fw_parent_device(ff->unit);
ff                 68 sound/firewire/fireface/ff-transaction.c 	if (ff->rx_bytes[port] > 0 || ff->rx_midi_error[port])
ff                 72 sound/firewire/fireface/ff-transaction.c 	if (ktime_after(ff->next_ktime[port], ktime_get())) {
ff                 73 sound/firewire/fireface/ff-transaction.c 		schedule_work(&ff->rx_midi_work[port]);
ff                 77 sound/firewire/fireface/ff-transaction.c 	quad_count = ff->spec->protocol->fill_midi_msg(ff, substream, port);
ff                 82 sound/firewire/fireface/ff-transaction.c 		addr = ff->spec->midi_rx_addrs[0];
ff                 85 sound/firewire/fireface/ff-transaction.c 		addr = ff->spec->midi_rx_addrs[1];
ff                 90 sound/firewire/fireface/ff-transaction.c 	ff->next_ktime[port] = ktime_add_ns(ktime_get(),
ff                 91 sound/firewire/fireface/ff-transaction.c 				ff->rx_bytes[port] * 8 * NSEC_PER_SEC / 31250);
ff                108 sound/firewire/fireface/ff-transaction.c 	fw_send_request(fw_dev->card, &ff->transactions[port], tcode,
ff                110 sound/firewire/fireface/ff-transaction.c 			addr, &ff->msg_buf[port], quad_count * 4,
ff                111 sound/firewire/fireface/ff-transaction.c 			callback, &ff->transactions[port]);
ff                116 sound/firewire/fireface/ff-transaction.c 	struct snd_ff *ff = container_of(work, struct snd_ff, rx_midi_work[0]);
ff                118 sound/firewire/fireface/ff-transaction.c 	transmit_midi_msg(ff, 0);
ff                123 sound/firewire/fireface/ff-transaction.c 	struct snd_ff *ff = container_of(work, struct snd_ff, rx_midi_work[1]);
ff                125 sound/firewire/fireface/ff-transaction.c 	transmit_midi_msg(ff, 1);
ff                133 sound/firewire/fireface/ff-transaction.c 	struct snd_ff *ff = callback_data;
ff                138 sound/firewire/fireface/ff-transaction.c 	offset -= ff->async_handler.offset;
ff                139 sound/firewire/fireface/ff-transaction.c 	ff->spec->protocol->handle_midi_msg(ff, (unsigned int)offset, buf,
ff                143 sound/firewire/fireface/ff-transaction.c static int allocate_own_address(struct snd_ff *ff, int i)
ff                148 sound/firewire/fireface/ff-transaction.c 	ff->async_handler.length = ff->spec->midi_addr_range;
ff                149 sound/firewire/fireface/ff-transaction.c 	ff->async_handler.address_callback = handle_midi_msg;
ff                150 sound/firewire/fireface/ff-transaction.c 	ff->async_handler.callback_data = ff;
ff                153 sound/firewire/fireface/ff-transaction.c 	midi_msg_region.end = midi_msg_region.start + ff->async_handler.length;
ff                155 sound/firewire/fireface/ff-transaction.c 	err = fw_core_add_address_handler(&ff->async_handler, &midi_msg_region);
ff                158 sound/firewire/fireface/ff-transaction.c 		if (ff->async_handler.offset & 0x0000ffffffff) {
ff                159 sound/firewire/fireface/ff-transaction.c 			fw_core_remove_address_handler(&ff->async_handler);
ff                174 sound/firewire/fireface/ff-transaction.c int snd_ff_transaction_reregister(struct snd_ff *ff)
ff                176 sound/firewire/fireface/ff-transaction.c 	struct fw_card *fw_card = fw_parent_device(ff->unit)->card;
ff                184 sound/firewire/fireface/ff-transaction.c 	addr = (fw_card->node_id << 16) | (ff->async_handler.offset >> 32);
ff                186 sound/firewire/fireface/ff-transaction.c 	return snd_fw_transaction(ff->unit, TCODE_WRITE_QUADLET_REQUEST,
ff                187 sound/firewire/fireface/ff-transaction.c 				  ff->spec->midi_high_addr,
ff                191 sound/firewire/fireface/ff-transaction.c int snd_ff_transaction_register(struct snd_ff *ff)
ff                200 sound/firewire/fireface/ff-transaction.c 		err = allocate_own_address(ff, i);
ff                207 sound/firewire/fireface/ff-transaction.c 	err = snd_ff_transaction_reregister(ff);
ff                211 sound/firewire/fireface/ff-transaction.c 	INIT_WORK(&ff->rx_midi_work[0], transmit_midi0_msg);
ff                212 sound/firewire/fireface/ff-transaction.c 	INIT_WORK(&ff->rx_midi_work[1], transmit_midi1_msg);
ff                217 sound/firewire/fireface/ff-transaction.c void snd_ff_transaction_unregister(struct snd_ff *ff)
ff                221 sound/firewire/fireface/ff-transaction.c 	if (ff->async_handler.callback_data == NULL)
ff                223 sound/firewire/fireface/ff-transaction.c 	ff->async_handler.callback_data = NULL;
ff                227 sound/firewire/fireface/ff-transaction.c 	snd_fw_transaction(ff->unit, TCODE_WRITE_QUADLET_REQUEST,
ff                228 sound/firewire/fireface/ff-transaction.c 			   ff->spec->midi_high_addr,
ff                231 sound/firewire/fireface/ff-transaction.c 	fw_core_remove_address_handler(&ff->async_handler);
ff                 16 sound/firewire/fireface/ff.c static void name_card(struct snd_ff *ff)
ff                 18 sound/firewire/fireface/ff.c 	struct fw_device *fw_dev = fw_parent_device(ff->unit);
ff                 20 sound/firewire/fireface/ff.c 	strcpy(ff->card->driver, "Fireface");
ff                 21 sound/firewire/fireface/ff.c 	strcpy(ff->card->shortname, ff->spec->name);
ff                 22 sound/firewire/fireface/ff.c 	strcpy(ff->card->mixername, ff->spec->name);
ff                 23 sound/firewire/fireface/ff.c 	snprintf(ff->card->longname, sizeof(ff->card->longname),
ff                 24 sound/firewire/fireface/ff.c 		 "RME %s, GUID %08x%08x at %s, S%d", ff->spec->name,
ff                 26 sound/firewire/fireface/ff.c 		 dev_name(&ff->unit->device), 100 << fw_dev->max_speed);
ff                 31 sound/firewire/fireface/ff.c 	struct snd_ff *ff = card->private_data;
ff                 33 sound/firewire/fireface/ff.c 	snd_ff_stream_destroy_duplex(ff);
ff                 34 sound/firewire/fireface/ff.c 	snd_ff_transaction_unregister(ff);
ff                 39 sound/firewire/fireface/ff.c 	struct snd_ff *ff = container_of(work, struct snd_ff, dwork.work);
ff                 42 sound/firewire/fireface/ff.c 	if (ff->registered)
ff                 45 sound/firewire/fireface/ff.c 	err = snd_card_new(&ff->unit->device, -1, NULL, THIS_MODULE, 0,
ff                 46 sound/firewire/fireface/ff.c 			   &ff->card);
ff                 49 sound/firewire/fireface/ff.c 	ff->card->private_free = ff_card_free;
ff                 50 sound/firewire/fireface/ff.c 	ff->card->private_data = ff;
ff                 52 sound/firewire/fireface/ff.c 	err = snd_ff_transaction_register(ff);
ff                 56 sound/firewire/fireface/ff.c 	name_card(ff);
ff                 58 sound/firewire/fireface/ff.c 	err = snd_ff_stream_init_duplex(ff);
ff                 62 sound/firewire/fireface/ff.c 	snd_ff_proc_init(ff);
ff                 64 sound/firewire/fireface/ff.c 	err = snd_ff_create_midi_devices(ff);
ff                 68 sound/firewire/fireface/ff.c 	err = snd_ff_create_pcm_devices(ff);
ff                 72 sound/firewire/fireface/ff.c 	err = snd_ff_create_hwdep_devices(ff);
ff                 76 sound/firewire/fireface/ff.c 	err = snd_card_register(ff->card);
ff                 80 sound/firewire/fireface/ff.c 	ff->registered = true;
ff                 84 sound/firewire/fireface/ff.c 	snd_card_free(ff->card);
ff                 85 sound/firewire/fireface/ff.c 	dev_info(&ff->unit->device,
ff                 92 sound/firewire/fireface/ff.c 	struct snd_ff *ff;
ff                 94 sound/firewire/fireface/ff.c 	ff = devm_kzalloc(&unit->device, sizeof(struct snd_ff), GFP_KERNEL);
ff                 95 sound/firewire/fireface/ff.c 	if (!ff)
ff                 97 sound/firewire/fireface/ff.c 	ff->unit = fw_unit_get(unit);
ff                 98 sound/firewire/fireface/ff.c 	dev_set_drvdata(&unit->device, ff);
ff                100 sound/firewire/fireface/ff.c 	mutex_init(&ff->mutex);
ff                101 sound/firewire/fireface/ff.c 	spin_lock_init(&ff->lock);
ff                102 sound/firewire/fireface/ff.c 	init_waitqueue_head(&ff->hwdep_wait);
ff                104 sound/firewire/fireface/ff.c 	ff->spec = (const struct snd_ff_spec *)entry->driver_data;
ff                107 sound/firewire/fireface/ff.c 	INIT_DEFERRABLE_WORK(&ff->dwork, do_registration);
ff                108 sound/firewire/fireface/ff.c 	snd_fw_schedule_registration(unit, &ff->dwork);
ff                115 sound/firewire/fireface/ff.c 	struct snd_ff *ff = dev_get_drvdata(&unit->device);
ff                118 sound/firewire/fireface/ff.c 	if (!ff->registered)
ff                119 sound/firewire/fireface/ff.c 		snd_fw_schedule_registration(unit, &ff->dwork);
ff                121 sound/firewire/fireface/ff.c 	snd_ff_transaction_reregister(ff);
ff                123 sound/firewire/fireface/ff.c 	if (ff->registered)
ff                124 sound/firewire/fireface/ff.c 		snd_ff_stream_update_duplex(ff);
ff                129 sound/firewire/fireface/ff.c 	struct snd_ff *ff = dev_get_drvdata(&unit->device);
ff                136 sound/firewire/fireface/ff.c 	cancel_work_sync(&ff->dwork.work);
ff                138 sound/firewire/fireface/ff.c 	if (ff->registered) {
ff                140 sound/firewire/fireface/ff.c 		snd_card_free(ff->card);
ff                143 sound/firewire/fireface/ff.c 	mutex_destroy(&ff->mutex);
ff                144 sound/firewire/fireface/ff.c 	fw_unit_put(ff->unit);
ff                109 sound/firewire/fireface/ff.h 	void (*handle_midi_msg)(struct snd_ff *ff, unsigned int offset,
ff                111 sound/firewire/fireface/ff.h 	int (*fill_midi_msg)(struct snd_ff *ff,
ff                114 sound/firewire/fireface/ff.h 	int (*get_clock)(struct snd_ff *ff, unsigned int *rate,
ff                116 sound/firewire/fireface/ff.h 	int (*switch_fetching_mode)(struct snd_ff *ff, bool enable);
ff                117 sound/firewire/fireface/ff.h 	int (*allocate_resources)(struct snd_ff *ff, unsigned int rate);
ff                118 sound/firewire/fireface/ff.h 	int (*begin_session)(struct snd_ff *ff, unsigned int rate);
ff                119 sound/firewire/fireface/ff.h 	void (*finish_session)(struct snd_ff *ff);
ff                120 sound/firewire/fireface/ff.h 	void (*dump_status)(struct snd_ff *ff, struct snd_info_buffer *buffer);
ff                127 sound/firewire/fireface/ff.h int snd_ff_transaction_register(struct snd_ff *ff);
ff                128 sound/firewire/fireface/ff.h int snd_ff_transaction_reregister(struct snd_ff *ff);
ff                129 sound/firewire/fireface/ff.h void snd_ff_transaction_unregister(struct snd_ff *ff);
ff                140 sound/firewire/fireface/ff.h int snd_ff_stream_init_duplex(struct snd_ff *ff);
ff                141 sound/firewire/fireface/ff.h void snd_ff_stream_destroy_duplex(struct snd_ff *ff);
ff                142 sound/firewire/fireface/ff.h int snd_ff_stream_reserve_duplex(struct snd_ff *ff, unsigned int rate);
ff                143 sound/firewire/fireface/ff.h int snd_ff_stream_start_duplex(struct snd_ff *ff, unsigned int rate);
ff                144 sound/firewire/fireface/ff.h void snd_ff_stream_stop_duplex(struct snd_ff *ff);
ff                145 sound/firewire/fireface/ff.h void snd_ff_stream_update_duplex(struct snd_ff *ff);
ff                147 sound/firewire/fireface/ff.h void snd_ff_stream_lock_changed(struct snd_ff *ff);
ff                148 sound/firewire/fireface/ff.h int snd_ff_stream_lock_try(struct snd_ff *ff);
ff                149 sound/firewire/fireface/ff.h void snd_ff_stream_lock_release(struct snd_ff *ff);
ff                151 sound/firewire/fireface/ff.h void snd_ff_proc_init(struct snd_ff *ff);
ff                154 sound/firewire/fireface/ff.h int snd_ff_create_midi_devices(struct snd_ff *ff);
ff                156 sound/firewire/fireface/ff.h int snd_ff_create_pcm_devices(struct snd_ff *ff);
ff                158 sound/firewire/fireface/ff.h int snd_ff_create_hwdep_devices(struct snd_ff *ff);
ff                 90 tools/perf/util/header.c static int __do_write_fd(struct feat_fd *ff, const void *buf, size_t size)
ff                 92 tools/perf/util/header.c 	ssize_t ret = writen(ff->fd, buf, size);
ff                 99 tools/perf/util/header.c static int __do_write_buf(struct feat_fd *ff,  const void *buf, size_t size)
ff                103 tools/perf/util/header.c 	size_t new_size = ff->size;
ff                106 tools/perf/util/header.c 	if (size + ff->offset > max_size)
ff                109 tools/perf/util/header.c 	while (size > (new_size - ff->offset))
ff                113 tools/perf/util/header.c 	if (ff->size < new_size) {
ff                114 tools/perf/util/header.c 		addr = realloc(ff->buf, new_size);
ff                117 tools/perf/util/header.c 		ff->buf = addr;
ff                118 tools/perf/util/header.c 		ff->size = new_size;
ff                121 tools/perf/util/header.c 	memcpy(ff->buf + ff->offset, buf, size);
ff                122 tools/perf/util/header.c 	ff->offset += size;
ff                128 tools/perf/util/header.c int do_write(struct feat_fd *ff, const void *buf, size_t size)
ff                130 tools/perf/util/header.c 	if (!ff->buf)
ff                131 tools/perf/util/header.c 		return __do_write_fd(ff, buf, size);
ff                132 tools/perf/util/header.c 	return __do_write_buf(ff, buf, size);
ff                136 tools/perf/util/header.c static int do_write_bitmap(struct feat_fd *ff, unsigned long *set, u64 size)
ff                141 tools/perf/util/header.c 	ret = do_write(ff, &size, sizeof(size));
ff                146 tools/perf/util/header.c 		ret = do_write(ff, p + i, sizeof(*p));
ff                155 tools/perf/util/header.c int write_padded(struct feat_fd *ff, const void *bf,
ff                159 tools/perf/util/header.c 	int err = do_write(ff, bf, count);
ff                162 tools/perf/util/header.c 		err = do_write(ff, zero_buf, count_aligned - count);
ff                171 tools/perf/util/header.c static int do_write_string(struct feat_fd *ff, const char *str)
ff                180 tools/perf/util/header.c 	ret = do_write(ff, &len, sizeof(len));
ff                184 tools/perf/util/header.c 	return write_padded(ff, str, olen, len);
ff                187 tools/perf/util/header.c static int __do_read_fd(struct feat_fd *ff, void *addr, ssize_t size)
ff                189 tools/perf/util/header.c 	ssize_t ret = readn(ff->fd, addr, size);
ff                196 tools/perf/util/header.c static int __do_read_buf(struct feat_fd *ff, void *addr, ssize_t size)
ff                198 tools/perf/util/header.c 	if (size > (ssize_t)ff->size - ff->offset)
ff                201 tools/perf/util/header.c 	memcpy(addr, ff->buf + ff->offset, size);
ff                202 tools/perf/util/header.c 	ff->offset += size;
ff                208 tools/perf/util/header.c static int __do_read(struct feat_fd *ff, void *addr, ssize_t size)
ff                210 tools/perf/util/header.c 	if (!ff->buf)
ff                211 tools/perf/util/header.c 		return __do_read_fd(ff, addr, size);
ff                212 tools/perf/util/header.c 	return __do_read_buf(ff, addr, size);
ff                215 tools/perf/util/header.c static int do_read_u32(struct feat_fd *ff, u32 *addr)
ff                219 tools/perf/util/header.c 	ret = __do_read(ff, addr, sizeof(*addr));
ff                223 tools/perf/util/header.c 	if (ff->ph->needs_swap)
ff                228 tools/perf/util/header.c static int do_read_u64(struct feat_fd *ff, u64 *addr)
ff                232 tools/perf/util/header.c 	ret = __do_read(ff, addr, sizeof(*addr));
ff                236 tools/perf/util/header.c 	if (ff->ph->needs_swap)
ff                241 tools/perf/util/header.c static char *do_read_string(struct feat_fd *ff)
ff                246 tools/perf/util/header.c 	if (do_read_u32(ff, &len))
ff                253 tools/perf/util/header.c 	if (!__do_read(ff, buf, len)) {
ff                267 tools/perf/util/header.c static int do_read_bitmap(struct feat_fd *ff, unsigned long **pset, u64 *psize)
ff                273 tools/perf/util/header.c 	ret = do_read_u64(ff, &size);
ff                284 tools/perf/util/header.c 		ret = do_read_u64(ff, p + i);
ff                296 tools/perf/util/header.c static int write_tracing_data(struct feat_fd *ff,
ff                299 tools/perf/util/header.c 	if (WARN(ff->buf, "Error: calling %s in pipe-mode.\n", __func__))
ff                302 tools/perf/util/header.c 	return read_tracing_data(ff->fd, &evlist->core.entries);
ff                305 tools/perf/util/header.c static int write_build_id(struct feat_fd *ff,
ff                311 tools/perf/util/header.c 	session = container_of(ff->ph, struct perf_session, header);
ff                316 tools/perf/util/header.c 	if (WARN(ff->buf, "Error: calling %s in pipe-mode.\n", __func__))
ff                319 tools/perf/util/header.c 	err = perf_session__write_buildid_table(session, ff);
ff                329 tools/perf/util/header.c static int write_hostname(struct feat_fd *ff,
ff                339 tools/perf/util/header.c 	return do_write_string(ff, uts.nodename);
ff                342 tools/perf/util/header.c static int write_osrelease(struct feat_fd *ff,
ff                352 tools/perf/util/header.c 	return do_write_string(ff, uts.release);
ff                355 tools/perf/util/header.c static int write_arch(struct feat_fd *ff,
ff                365 tools/perf/util/header.c 	return do_write_string(ff, uts.machine);
ff                368 tools/perf/util/header.c static int write_version(struct feat_fd *ff,
ff                371 tools/perf/util/header.c 	return do_write_string(ff, perf_version_string);
ff                374 tools/perf/util/header.c static int __write_cpudesc(struct feat_fd *ff, const char *cpuinfo_proc)
ff                422 tools/perf/util/header.c 	ret = do_write_string(ff, s);
ff                429 tools/perf/util/header.c static int write_cpudesc(struct feat_fd *ff,
ff                455 tools/perf/util/header.c 		ret = __write_cpudesc(ff, cpuinfo_procs[i]);
ff                463 tools/perf/util/header.c static int write_nrcpus(struct feat_fd *ff,
ff                478 tools/perf/util/header.c 	ret = do_write(ff, &nrc, sizeof(nrc));
ff                482 tools/perf/util/header.c 	return do_write(ff, &nra, sizeof(nra));
ff                485 tools/perf/util/header.c static int write_event_desc(struct feat_fd *ff,
ff                497 tools/perf/util/header.c 	ret = do_write(ff, &nre, sizeof(nre));
ff                505 tools/perf/util/header.c 	ret = do_write(ff, &sz, sizeof(sz));
ff                510 tools/perf/util/header.c 		ret = do_write(ff, &evsel->core.attr, sz);
ff                521 tools/perf/util/header.c 		ret = do_write(ff, &nri, sizeof(nri));
ff                528 tools/perf/util/header.c 		ret = do_write_string(ff, perf_evsel__name(evsel));
ff                534 tools/perf/util/header.c 		ret = do_write(ff, evsel->core.id, evsel->core.ids * sizeof(u64));
ff                541 tools/perf/util/header.c static int write_cmdline(struct feat_fd *ff,
ff                553 tools/perf/util/header.c 	ret = do_write(ff, &n, sizeof(n));
ff                557 tools/perf/util/header.c 	ret = do_write_string(ff, buf);
ff                562 tools/perf/util/header.c 		ret = do_write_string(ff, perf_env.cmdline_argv[i]);
ff                570 tools/perf/util/header.c static int write_cpu_topology(struct feat_fd *ff,
ff                581 tools/perf/util/header.c 	ret = do_write(ff, &tp->core_sib, sizeof(tp->core_sib));
ff                586 tools/perf/util/header.c 		ret = do_write_string(ff, tp->core_siblings[i]);
ff                590 tools/perf/util/header.c 	ret = do_write(ff, &tp->thread_sib, sizeof(tp->thread_sib));
ff                595 tools/perf/util/header.c 		ret = do_write_string(ff, tp->thread_siblings[i]);
ff                605 tools/perf/util/header.c 		ret = do_write(ff, &perf_env.cpu[j].core_id,
ff                609 tools/perf/util/header.c 		ret = do_write(ff, &perf_env.cpu[j].socket_id,
ff                618 tools/perf/util/header.c 	ret = do_write(ff, &tp->die_sib, sizeof(tp->die_sib));
ff                623 tools/perf/util/header.c 		ret = do_write_string(ff, tp->die_siblings[i]);
ff                629 tools/perf/util/header.c 		ret = do_write(ff, &perf_env.cpu[j].die_id,
ff                642 tools/perf/util/header.c static int write_total_mem(struct feat_fd *ff,
ff                663 tools/perf/util/header.c 			ret = do_write(ff, &mem, sizeof(mem));
ff                671 tools/perf/util/header.c static int write_numa_topology(struct feat_fd *ff,
ff                682 tools/perf/util/header.c 	ret = do_write(ff, &tp->nr, sizeof(u32));
ff                689 tools/perf/util/header.c 		ret = do_write(ff, &n->node, sizeof(u32));
ff                693 tools/perf/util/header.c 		ret = do_write(ff, &n->mem_total, sizeof(u64));
ff                697 tools/perf/util/header.c 		ret = do_write(ff, &n->mem_free, sizeof(u64));
ff                701 tools/perf/util/header.c 		ret = do_write_string(ff, n->cpus);
ff                725 tools/perf/util/header.c static int write_pmu_mappings(struct feat_fd *ff,
ff                742 tools/perf/util/header.c 	ret = do_write(ff, &pmu_num, sizeof(pmu_num));
ff                750 tools/perf/util/header.c 		ret = do_write(ff, &pmu->type, sizeof(pmu->type));
ff                754 tools/perf/util/header.c 		ret = do_write_string(ff, pmu->name);
ff                774 tools/perf/util/header.c static int write_group_desc(struct feat_fd *ff,
ff                781 tools/perf/util/header.c 	ret = do_write(ff, &nr_groups, sizeof(nr_groups));
ff                792 tools/perf/util/header.c 			ret = do_write_string(ff, name);
ff                796 tools/perf/util/header.c 			ret = do_write(ff, &leader_idx, sizeof(leader_idx));
ff                800 tools/perf/util/header.c 			ret = do_write(ff, &nr_members, sizeof(nr_members));
ff                856 tools/perf/util/header.c static int write_cpuid(struct feat_fd *ff,
ff                866 tools/perf/util/header.c 	return do_write_string(ff, buffer);
ff                869 tools/perf/util/header.c static int write_branch_stack(struct feat_fd *ff __maybe_unused,
ff                875 tools/perf/util/header.c static int write_auxtrace(struct feat_fd *ff,
ff                881 tools/perf/util/header.c 	if (WARN(ff->buf, "Error: calling %s in pipe-mode.\n", __func__))
ff                884 tools/perf/util/header.c 	session = container_of(ff->ph, struct perf_session, header);
ff                886 tools/perf/util/header.c 	err = auxtrace_index__write(ff->fd, &session->auxtrace_index);
ff                892 tools/perf/util/header.c static int write_clockid(struct feat_fd *ff,
ff                895 tools/perf/util/header.c 	return do_write(ff, &ff->ph->env.clockid_res_ns,
ff                896 tools/perf/util/header.c 			sizeof(ff->ph->env.clockid_res_ns));
ff                899 tools/perf/util/header.c static int write_dir_format(struct feat_fd *ff,
ff                905 tools/perf/util/header.c 	session = container_of(ff->ph, struct perf_session, header);
ff                911 tools/perf/util/header.c 	return do_write(ff, &data->dir.version, sizeof(data->dir.version));
ff                915 tools/perf/util/header.c static int write_bpf_prog_info(struct feat_fd *ff,
ff                918 tools/perf/util/header.c 	struct perf_env *env = &ff->ph->env;
ff                925 tools/perf/util/header.c 	ret = do_write(ff, &env->bpf_progs.infos_cnt,
ff                943 tools/perf/util/header.c 		ret = do_write(ff, node->info_linear, len);
ff                957 tools/perf/util/header.c static int write_bpf_prog_info(struct feat_fd *ff __maybe_unused,
ff                964 tools/perf/util/header.c static int write_bpf_btf(struct feat_fd *ff,
ff                967 tools/perf/util/header.c 	struct perf_env *env = &ff->ph->env;
ff                974 tools/perf/util/header.c 	ret = do_write(ff, &env->bpf_progs.btfs_cnt,
ff                987 tools/perf/util/header.c 		ret = do_write(ff, &node->id,
ff               1129 tools/perf/util/header.c static int write_cache(struct feat_fd *ff,
ff               1143 tools/perf/util/header.c 	ret = do_write(ff, &version, sizeof(u32));
ff               1147 tools/perf/util/header.c 	ret = do_write(ff, &cnt, sizeof(u32));
ff               1155 tools/perf/util/header.c 			ret = do_write(ff, &c->v, sizeof(u32));	\
ff               1166 tools/perf/util/header.c 			ret = do_write_string(ff, (const char *) c->v);	\
ff               1182 tools/perf/util/header.c static int write_stat(struct feat_fd *ff __maybe_unused,
ff               1188 tools/perf/util/header.c static int write_sample_time(struct feat_fd *ff,
ff               1193 tools/perf/util/header.c 	ret = do_write(ff, &evlist->first_sample_time,
ff               1198 tools/perf/util/header.c 	return do_write(ff, &evlist->last_sample_time,
ff               1324 tools/perf/util/header.c static int write_mem_topology(struct feat_fd *ff __maybe_unused,
ff               1340 tools/perf/util/header.c 	ret = do_write(ff, &version, sizeof(version));
ff               1344 tools/perf/util/header.c 	ret = do_write(ff, &bsize, sizeof(bsize));
ff               1348 tools/perf/util/header.c 	ret = do_write(ff, &nr, sizeof(nr));
ff               1356 tools/perf/util/header.c 			ret = do_write(ff, &n->v, sizeof(n->v));	\
ff               1365 tools/perf/util/header.c 		ret = do_write_bitmap(ff, n->set, n->size);
ff               1374 tools/perf/util/header.c static int write_compressed(struct feat_fd *ff __maybe_unused,
ff               1379 tools/perf/util/header.c 	ret = do_write(ff, &(ff->ph->env.comp_ver), sizeof(ff->ph->env.comp_ver));
ff               1383 tools/perf/util/header.c 	ret = do_write(ff, &(ff->ph->env.comp_type), sizeof(ff->ph->env.comp_type));
ff               1387 tools/perf/util/header.c 	ret = do_write(ff, &(ff->ph->env.comp_level), sizeof(ff->ph->env.comp_level));
ff               1391 tools/perf/util/header.c 	ret = do_write(ff, &(ff->ph->env.comp_ratio), sizeof(ff->ph->env.comp_ratio));
ff               1395 tools/perf/util/header.c 	return do_write(ff, &(ff->ph->env.comp_mmap_len), sizeof(ff->ph->env.comp_mmap_len));
ff               1398 tools/perf/util/header.c static void print_hostname(struct feat_fd *ff, FILE *fp)
ff               1400 tools/perf/util/header.c 	fprintf(fp, "# hostname : %s\n", ff->ph->env.hostname);
ff               1403 tools/perf/util/header.c static void print_osrelease(struct feat_fd *ff, FILE *fp)
ff               1405 tools/perf/util/header.c 	fprintf(fp, "# os release : %s\n", ff->ph->env.os_release);
ff               1408 tools/perf/util/header.c static void print_arch(struct feat_fd *ff, FILE *fp)
ff               1410 tools/perf/util/header.c 	fprintf(fp, "# arch : %s\n", ff->ph->env.arch);
ff               1413 tools/perf/util/header.c static void print_cpudesc(struct feat_fd *ff, FILE *fp)
ff               1415 tools/perf/util/header.c 	fprintf(fp, "# cpudesc : %s\n", ff->ph->env.cpu_desc);
ff               1418 tools/perf/util/header.c static void print_nrcpus(struct feat_fd *ff, FILE *fp)
ff               1420 tools/perf/util/header.c 	fprintf(fp, "# nrcpus online : %u\n", ff->ph->env.nr_cpus_online);
ff               1421 tools/perf/util/header.c 	fprintf(fp, "# nrcpus avail : %u\n", ff->ph->env.nr_cpus_avail);
ff               1424 tools/perf/util/header.c static void print_version(struct feat_fd *ff, FILE *fp)
ff               1426 tools/perf/util/header.c 	fprintf(fp, "# perf version : %s\n", ff->ph->env.version);
ff               1429 tools/perf/util/header.c static void print_cmdline(struct feat_fd *ff, FILE *fp)
ff               1433 tools/perf/util/header.c 	nr = ff->ph->env.nr_cmdline;
ff               1438 tools/perf/util/header.c 		char *argv_i = strdup(ff->ph->env.cmdline_argv[i]);
ff               1440 tools/perf/util/header.c 			fprintf(fp, "%s ", ff->ph->env.cmdline_argv[i]);
ff               1458 tools/perf/util/header.c static void print_cpu_topology(struct feat_fd *ff, FILE *fp)
ff               1460 tools/perf/util/header.c 	struct perf_header *ph = ff->ph;
ff               1515 tools/perf/util/header.c static void print_clockid(struct feat_fd *ff, FILE *fp)
ff               1518 tools/perf/util/header.c 		ff->ph->env.clockid_res_ns * 1000);
ff               1521 tools/perf/util/header.c static void print_dir_format(struct feat_fd *ff, FILE *fp)
ff               1526 tools/perf/util/header.c 	session = container_of(ff->ph, struct perf_session, header);
ff               1532 tools/perf/util/header.c static void print_bpf_prog_info(struct feat_fd *ff, FILE *fp)
ff               1534 tools/perf/util/header.c 	struct perf_env *env = &ff->ph->env;
ff               1556 tools/perf/util/header.c static void print_bpf_btf(struct feat_fd *ff, FILE *fp)
ff               1558 tools/perf/util/header.c 	struct perf_env *env = &ff->ph->env;
ff               1593 tools/perf/util/header.c static struct evsel *read_event_desc(struct feat_fd *ff)
ff               1602 tools/perf/util/header.c 	if (do_read_u32(ff, &nre))
ff               1605 tools/perf/util/header.c 	if (do_read_u32(ff, &sz))
ff               1629 tools/perf/util/header.c 		if (__do_read(ff, buf, sz))
ff               1632 tools/perf/util/header.c 		if (ff->ph->needs_swap)
ff               1637 tools/perf/util/header.c 		if (do_read_u32(ff, &nr))
ff               1640 tools/perf/util/header.c 		if (ff->ph->needs_swap)
ff               1643 tools/perf/util/header.c 		evsel->name = do_read_string(ff);
ff               1657 tools/perf/util/header.c 			if (do_read_u64(ff, id))
ff               1677 tools/perf/util/header.c static void print_event_desc(struct feat_fd *ff, FILE *fp)
ff               1683 tools/perf/util/header.c 	if (ff->events)
ff               1684 tools/perf/util/header.c 		events = ff->events;
ff               1686 tools/perf/util/header.c 		events = read_event_desc(ff);
ff               1712 tools/perf/util/header.c 	ff->events = NULL;
ff               1715 tools/perf/util/header.c static void print_total_mem(struct feat_fd *ff, FILE *fp)
ff               1717 tools/perf/util/header.c 	fprintf(fp, "# total memory : %llu kB\n", ff->ph->env.total_mem);
ff               1720 tools/perf/util/header.c static void print_numa_topology(struct feat_fd *ff, FILE *fp)
ff               1725 tools/perf/util/header.c 	for (i = 0; i < ff->ph->env.nr_numa_nodes; i++) {
ff               1726 tools/perf/util/header.c 		n = &ff->ph->env.numa_nodes[i];
ff               1737 tools/perf/util/header.c static void print_cpuid(struct feat_fd *ff, FILE *fp)
ff               1739 tools/perf/util/header.c 	fprintf(fp, "# cpuid : %s\n", ff->ph->env.cpuid);
ff               1742 tools/perf/util/header.c static void print_branch_stack(struct feat_fd *ff __maybe_unused, FILE *fp)
ff               1747 tools/perf/util/header.c static void print_auxtrace(struct feat_fd *ff __maybe_unused, FILE *fp)
ff               1752 tools/perf/util/header.c static void print_stat(struct feat_fd *ff __maybe_unused, FILE *fp)
ff               1757 tools/perf/util/header.c static void print_cache(struct feat_fd *ff, FILE *fp __maybe_unused)
ff               1762 tools/perf/util/header.c 	for (i = 0; i < ff->ph->env.caches_cnt; i++) {
ff               1764 tools/perf/util/header.c 		cpu_cache_level__fprintf(fp, &ff->ph->env.caches[i]);
ff               1768 tools/perf/util/header.c static void print_compressed(struct feat_fd *ff, FILE *fp)
ff               1771 tools/perf/util/header.c 		ff->ph->env.comp_type == PERF_COMP_ZSTD ? "Zstd" : "Unknown",
ff               1772 tools/perf/util/header.c 		ff->ph->env.comp_level, ff->ph->env.comp_ratio);
ff               1775 tools/perf/util/header.c static void print_pmu_mappings(struct feat_fd *ff, FILE *fp)
ff               1782 tools/perf/util/header.c 	pmu_num = ff->ph->env.nr_pmu_mappings;
ff               1788 tools/perf/util/header.c 	str = ff->ph->env.pmu_mappings;
ff               1811 tools/perf/util/header.c static void print_group_desc(struct feat_fd *ff, FILE *fp)
ff               1817 tools/perf/util/header.c 	session = container_of(ff->ph, struct perf_session, header);
ff               1835 tools/perf/util/header.c static void print_sample_time(struct feat_fd *ff, FILE *fp)
ff               1841 tools/perf/util/header.c 	session = container_of(ff->ph, struct perf_session, header);
ff               1870 tools/perf/util/header.c static void print_mem_topology(struct feat_fd *ff, FILE *fp)
ff               1875 tools/perf/util/header.c 	nodes = ff->ph->env.memory_nodes;
ff               1876 tools/perf/util/header.c 	nr    = ff->ph->env.nr_memory_nodes;
ff               1879 tools/perf/util/header.c 		nr, ff->ph->env.memory_bsize);
ff               1882 tools/perf/util/header.c 		memory_node__fprintf(&nodes[i], ff->ph->env.memory_bsize, fp);
ff               2043 tools/perf/util/header.c static int process_##__feat(struct feat_fd *ff, void *data __maybe_unused) \
ff               2045 tools/perf/util/header.c 	ff->ph->env.__feat_env = do_read_string(ff); \
ff               2046 tools/perf/util/header.c 	return ff->ph->env.__feat_env ? 0 : -ENOMEM; \
ff               2056 tools/perf/util/header.c static int process_tracing_data(struct feat_fd *ff, void *data)
ff               2058 tools/perf/util/header.c 	ssize_t ret = trace_report(ff->fd, data, false);
ff               2063 tools/perf/util/header.c static int process_build_id(struct feat_fd *ff, void *data __maybe_unused)
ff               2065 tools/perf/util/header.c 	if (perf_header__read_build_ids(ff->ph, ff->fd, ff->offset, ff->size))
ff               2070 tools/perf/util/header.c static int process_nrcpus(struct feat_fd *ff, void *data __maybe_unused)
ff               2075 tools/perf/util/header.c 	ret = do_read_u32(ff, &nr_cpus_avail);
ff               2079 tools/perf/util/header.c 	ret = do_read_u32(ff, &nr_cpus_online);
ff               2082 tools/perf/util/header.c 	ff->ph->env.nr_cpus_avail = (int)nr_cpus_avail;
ff               2083 tools/perf/util/header.c 	ff->ph->env.nr_cpus_online = (int)nr_cpus_online;
ff               2087 tools/perf/util/header.c static int process_total_mem(struct feat_fd *ff, void *data __maybe_unused)
ff               2092 tools/perf/util/header.c 	ret = do_read_u64(ff, &total_mem);
ff               2095 tools/perf/util/header.c 	ff->ph->env.total_mem = (unsigned long long)total_mem;
ff               2132 tools/perf/util/header.c process_event_desc(struct feat_fd *ff, void *data __maybe_unused)
ff               2135 tools/perf/util/header.c 	struct evsel *evsel, *events = read_event_desc(ff);
ff               2140 tools/perf/util/header.c 	session = container_of(ff->ph, struct perf_session, header);
ff               2145 tools/perf/util/header.c 		ff->events = events;
ff               2157 tools/perf/util/header.c static int process_cmdline(struct feat_fd *ff, void *data __maybe_unused)
ff               2162 tools/perf/util/header.c 	if (do_read_u32(ff, &nr))
ff               2165 tools/perf/util/header.c 	ff->ph->env.nr_cmdline = nr;
ff               2167 tools/perf/util/header.c 	cmdline = zalloc(ff->size + nr + 1);
ff               2176 tools/perf/util/header.c 		str = do_read_string(ff);
ff               2185 tools/perf/util/header.c 	ff->ph->env.cmdline = cmdline;
ff               2186 tools/perf/util/header.c 	ff->ph->env.cmdline_argv = (const char **) argv;
ff               2195 tools/perf/util/header.c static int process_cpu_topology(struct feat_fd *ff, void *data __maybe_unused)
ff               2200 tools/perf/util/header.c 	int cpu_nr = ff->ph->env.nr_cpus_avail;
ff               2202 tools/perf/util/header.c 	struct perf_header *ph = ff->ph;
ff               2209 tools/perf/util/header.c 	if (do_read_u32(ff, &nr))
ff               2218 tools/perf/util/header.c 		str = do_read_string(ff);
ff               2230 tools/perf/util/header.c 	if (do_read_u32(ff, &nr))
ff               2237 tools/perf/util/header.c 		str = do_read_string(ff);
ff               2253 tools/perf/util/header.c 	if (ff->size <= size) {
ff               2268 tools/perf/util/header.c 		if (do_read_u32(ff, &nr))
ff               2274 tools/perf/util/header.c 		if (do_read_u32(ff, &nr))
ff               2291 tools/perf/util/header.c 	if (ff->size <= size)
ff               2294 tools/perf/util/header.c 	if (do_read_u32(ff, &nr))
ff               2301 tools/perf/util/header.c 		str = do_read_string(ff);
ff               2314 tools/perf/util/header.c 		if (do_read_u32(ff, &nr))
ff               2329 tools/perf/util/header.c static int process_numa_topology(struct feat_fd *ff, void *data __maybe_unused)
ff               2336 tools/perf/util/header.c 	if (do_read_u32(ff, &nr))
ff               2347 tools/perf/util/header.c 		if (do_read_u32(ff, &n->node))
ff               2350 tools/perf/util/header.c 		if (do_read_u64(ff, &n->mem_total))
ff               2353 tools/perf/util/header.c 		if (do_read_u64(ff, &n->mem_free))
ff               2356 tools/perf/util/header.c 		str = do_read_string(ff);
ff               2366 tools/perf/util/header.c 	ff->ph->env.nr_numa_nodes = nr;
ff               2367 tools/perf/util/header.c 	ff->ph->env.numa_nodes = nodes;
ff               2375 tools/perf/util/header.c static int process_pmu_mappings(struct feat_fd *ff, void *data __maybe_unused)
ff               2382 tools/perf/util/header.c 	if (do_read_u32(ff, &pmu_num))
ff               2390 tools/perf/util/header.c 	ff->ph->env.nr_pmu_mappings = pmu_num;
ff               2395 tools/perf/util/header.c 		if (do_read_u32(ff, &type))
ff               2398 tools/perf/util/header.c 		name = do_read_string(ff);
ff               2409 tools/perf/util/header.c 			ff->ph->env.msr_pmu_type = type;
ff               2414 tools/perf/util/header.c 	ff->ph->env.pmu_mappings = strbuf_detach(&sb, NULL);
ff               2422 tools/perf/util/header.c static int process_group_desc(struct feat_fd *ff, void *data __maybe_unused)
ff               2434 tools/perf/util/header.c 	if (do_read_u32(ff, &nr_groups))
ff               2437 tools/perf/util/header.c 	ff->ph->env.nr_groups = nr_groups;
ff               2448 tools/perf/util/header.c 		desc[i].name = do_read_string(ff);
ff               2452 tools/perf/util/header.c 		if (do_read_u32(ff, &desc[i].leader_idx))
ff               2455 tools/perf/util/header.c 		if (do_read_u32(ff, &desc[i].nr_members))
ff               2462 tools/perf/util/header.c 	session = container_of(ff->ph, struct perf_session, header);
ff               2506 tools/perf/util/header.c static int process_auxtrace(struct feat_fd *ff, void *data __maybe_unused)
ff               2511 tools/perf/util/header.c 	session = container_of(ff->ph, struct perf_session, header);
ff               2513 tools/perf/util/header.c 	err = auxtrace_index__process(ff->fd, ff->size, session,
ff               2514 tools/perf/util/header.c 				      ff->ph->needs_swap);
ff               2520 tools/perf/util/header.c static int process_cache(struct feat_fd *ff, void *data __maybe_unused)
ff               2525 tools/perf/util/header.c 	if (do_read_u32(ff, &version))
ff               2531 tools/perf/util/header.c 	if (do_read_u32(ff, &cnt))
ff               2542 tools/perf/util/header.c 			if (do_read_u32(ff, &c.v))\
ff               2552 tools/perf/util/header.c 			c.v = do_read_string(ff);		\
ff               2564 tools/perf/util/header.c 	ff->ph->env.caches = caches;
ff               2565 tools/perf/util/header.c 	ff->ph->env.caches_cnt = cnt;
ff               2572 tools/perf/util/header.c static int process_sample_time(struct feat_fd *ff, void *data __maybe_unused)
ff               2578 tools/perf/util/header.c 	session = container_of(ff->ph, struct perf_session, header);
ff               2580 tools/perf/util/header.c 	ret = do_read_u64(ff, &first_sample_time);
ff               2584 tools/perf/util/header.c 	ret = do_read_u64(ff, &last_sample_time);
ff               2593 tools/perf/util/header.c static int process_mem_topology(struct feat_fd *ff,
ff               2600 tools/perf/util/header.c 	if (do_read_u64(ff, &version))
ff               2606 tools/perf/util/header.c 	if (do_read_u64(ff, &bsize))
ff               2609 tools/perf/util/header.c 	if (do_read_u64(ff, &nr))
ff               2620 tools/perf/util/header.c 			if (do_read_u64(ff, &n.v))	\
ff               2628 tools/perf/util/header.c 		if (do_read_bitmap(ff, &n.set, &n.size))
ff               2634 tools/perf/util/header.c 	ff->ph->env.memory_bsize    = bsize;
ff               2635 tools/perf/util/header.c 	ff->ph->env.memory_nodes    = nodes;
ff               2636 tools/perf/util/header.c 	ff->ph->env.nr_memory_nodes = nr;
ff               2645 tools/perf/util/header.c static int process_clockid(struct feat_fd *ff,
ff               2648 tools/perf/util/header.c 	if (do_read_u64(ff, &ff->ph->env.clockid_res_ns))
ff               2654 tools/perf/util/header.c static int process_dir_format(struct feat_fd *ff,
ff               2660 tools/perf/util/header.c 	session = container_of(ff->ph, struct perf_session, header);
ff               2666 tools/perf/util/header.c 	return do_read_u64(ff, &data->dir.version);
ff               2670 tools/perf/util/header.c static int process_bpf_prog_info(struct feat_fd *ff, void *data __maybe_unused)
ff               2674 tools/perf/util/header.c 	struct perf_env *env = &ff->ph->env;
ff               2678 tools/perf/util/header.c 	if (ff->ph->needs_swap) {
ff               2683 tools/perf/util/header.c 	if (do_read_u32(ff, &count))
ff               2693 tools/perf/util/header.c 		if (do_read_u32(ff, &info_len))
ff               2695 tools/perf/util/header.c 		if (do_read_u32(ff, &data_len))
ff               2709 tools/perf/util/header.c 		if (do_read_u64(ff, (u64 *)(&info_linear->arrays)))
ff               2711 tools/perf/util/header.c 		if (__do_read(ff, &info_linear->info, info_len))
ff               2717 tools/perf/util/header.c 		if (__do_read(ff, info_linear->data, data_len))
ff               2739 tools/perf/util/header.c static int process_bpf_prog_info(struct feat_fd *ff __maybe_unused, void *data __maybe_unused)
ff               2745 tools/perf/util/header.c static int process_bpf_btf(struct feat_fd *ff, void *data __maybe_unused)
ff               2747 tools/perf/util/header.c 	struct perf_env *env = &ff->ph->env;
ff               2752 tools/perf/util/header.c 	if (ff->ph->needs_swap) {
ff               2757 tools/perf/util/header.c 	if (do_read_u32(ff, &count))
ff               2765 tools/perf/util/header.c 		if (do_read_u32(ff, &id))
ff               2767 tools/perf/util/header.c 		if (do_read_u32(ff, &data_size))
ff               2777 tools/perf/util/header.c 		if (__do_read(ff, node->data, data_size))
ff               2791 tools/perf/util/header.c static int process_compressed(struct feat_fd *ff,
ff               2794 tools/perf/util/header.c 	if (do_read_u32(ff, &(ff->ph->env.comp_ver)))
ff               2797 tools/perf/util/header.c 	if (do_read_u32(ff, &(ff->ph->env.comp_type)))
ff               2800 tools/perf/util/header.c 	if (do_read_u32(ff, &(ff->ph->env.comp_level)))
ff               2803 tools/perf/util/header.c 	if (do_read_u32(ff, &(ff->ph->env.comp_ratio)))
ff               2806 tools/perf/util/header.c 	if (do_read_u32(ff, &(ff->ph->env.comp_mmap_len)))
ff               2881 tools/perf/util/header.c 	struct feat_fd ff;
ff               2895 tools/perf/util/header.c 	ff = (struct  feat_fd) {
ff               2901 tools/perf/util/header.c 		feat_ops[feat].print(&ff, hd->fp);
ff               2949 tools/perf/util/header.c static int do_write_feat(struct feat_fd *ff, int type,
ff               2956 tools/perf/util/header.c 	if (perf_header__has_feat(ff->ph, type)) {
ff               2960 tools/perf/util/header.c 		if (WARN(ff->buf, "Error: calling %s in pipe-mode.\n", __func__))
ff               2963 tools/perf/util/header.c 		(*p)->offset = lseek(ff->fd, 0, SEEK_CUR);
ff               2965 tools/perf/util/header.c 		err = feat_ops[type].write(ff, evlist);
ff               2970 tools/perf/util/header.c 			lseek(ff->fd, (*p)->offset, SEEK_SET);
ff               2974 tools/perf/util/header.c 		(*p)->size = lseek(ff->fd, 0, SEEK_CUR) - (*p)->offset;
ff               2984 tools/perf/util/header.c 	struct feat_fd ff;
ff               2991 tools/perf/util/header.c 	ff = (struct feat_fd){
ff               3010 tools/perf/util/header.c 		if (do_write_feat(&ff, feat, &p, evlist))
ff               3019 tools/perf/util/header.c 	err = do_write(&ff, feat_sec, sec_size);
ff               3029 tools/perf/util/header.c 	struct feat_fd ff;
ff               3032 tools/perf/util/header.c 	ff = (struct feat_fd){ .fd = fd };
ff               3039 tools/perf/util/header.c 	err = do_write(&ff, &f_header, sizeof(f_header));
ff               3056 tools/perf/util/header.c 	struct feat_fd ff;
ff               3060 tools/perf/util/header.c 	ff = (struct feat_fd){ .fd = fd};
ff               3065 tools/perf/util/header.c 		err = do_write(&ff, evsel->core.id, evsel->core.ids * sizeof(u64));
ff               3072 tools/perf/util/header.c 	attr_offset = lseek(ff.fd, 0, SEEK_CUR);
ff               3082 tools/perf/util/header.c 		err = do_write(&ff, &f_attr, sizeof(f_attr));
ff               3117 tools/perf/util/header.c 	err = do_write(&ff, &f_header, sizeof(f_header));
ff               3399 tools/perf/util/header.c 	struct feat_fd ff = {
ff               3417 tools/perf/util/header.c 	if (repipe && do_write(&ff, header, sizeof(*header)) < 0)
ff               3642 tools/perf/util/header.c 	struct feat_fd ff = { .fd = 0 };
ff               3659 tools/perf/util/header.c 	ff.buf  = (void *)fe->data;
ff               3660 tools/perf/util/header.c 	ff.size = event->header.size - sizeof(*fe);
ff               3661 tools/perf/util/header.c 	ff.ph = &session->header;
ff               3663 tools/perf/util/header.c 	if (feat_ops[feat].process(&ff, NULL))
ff               3671 tools/perf/util/header.c 		feat_ops[feat].print(&ff, stdout);
ff                105 tools/perf/util/header.h 	int	   (*write)(struct feat_fd *ff, struct evlist *evlist);
ff                106 tools/perf/util/header.h 	void	   (*print)(struct feat_fd *ff, FILE *fp);
ff                107 tools/perf/util/header.h 	int	   (*process)(struct feat_fd *ff, void *data);
ff               1714 tools/perf/util/synthetic-events.c 	struct feat_fd ff;
ff               1748 tools/perf/util/synthetic-events.c 	ff = (struct feat_fd){ .fd = fd };
ff               1749 tools/perf/util/synthetic-events.c 	if (write_padded(&ff, NULL, 0, padding))
ff               1828 tools/perf/util/synthetic-events.c 	struct feat_fd ff;
ff               1837 tools/perf/util/synthetic-events.c 	memset(&ff, 0, sizeof(ff));
ff               1839 tools/perf/util/synthetic-events.c 	ff.buf = malloc(sz);
ff               1840 tools/perf/util/synthetic-events.c 	if (!ff.buf)
ff               1843 tools/perf/util/synthetic-events.c 	ff.size = sz - sz_hdr;
ff               1844 tools/perf/util/synthetic-events.c 	ff.ph = &session->header;
ff               1852 tools/perf/util/synthetic-events.c 		ff.offset = sizeof(*fe);
ff               1854 tools/perf/util/synthetic-events.c 		ret = feat_ops[feat].write(&ff, evlist);
ff               1855 tools/perf/util/synthetic-events.c 		if (ret || ff.offset <= (ssize_t)sizeof(*fe)) {
ff               1860 tools/perf/util/synthetic-events.c 		fe = ff.buf;
ff               1865 tools/perf/util/synthetic-events.c 		fe->header.size = ff.offset;
ff               1867 tools/perf/util/synthetic-events.c 		ret = process(tool, ff.buf, NULL, NULL);
ff               1869 tools/perf/util/synthetic-events.c 			free(ff.buf);
ff               1875 tools/perf/util/synthetic-events.c 	fe = ff.buf;
ff               1880 tools/perf/util/synthetic-events.c 	ret = process(tool, ff.buf, NULL, NULL);
ff               1882 tools/perf/util/synthetic-events.c 	free(ff.buf);