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);