Lines Matching refs:pfs
163 #define TPMI_GET_SINGLE_ENTRY_SIZE(pfs) \
165 pfs->pfs_header.entry_size > SZ_1K ? 0 : pfs->pfs_header.entry_size << 2; \
346 struct intel_tpmi_pm_feature *pfs;
352 pfs = &tpmi_info->tpmi_features[i];
353 ret = tpmi_read_feature_status(tpmi_info, pfs->pfs_header.tpmi_id, &locked,
363 pfs->pfs_header.tpmi_id, pfs->pfs_header.num_entries,
364 pfs->pfs_header.entry_size, pfs->pfs_header.cap_offset,
365 pfs->pfs_header.attribute, pfs->vsec_offset, locked, disabled);
377 struct intel_tpmi_pm_feature *pfs = s->private;
383 size = TPMI_GET_SINGLE_ENTRY_SIZE(pfs);
391 off = pfs->vsec_offset;
395 for (count = 0; count < pfs->pfs_header.num_entries; ++count) {
425 struct intel_tpmi_pm_feature *pfs = m->private;
431 size = TPMI_GET_SINGLE_ENTRY_SIZE(pfs);
449 if (punit >= pfs->pfs_header.num_entries) {
461 mem = ioremap(pfs->vsec_offset + punit * size, size);
513 struct intel_tpmi_pm_feature *pfs;
516 pfs = &tpmi_info->tpmi_features[i];
517 snprintf(name, sizeof(name), "tpmi-id-%02x", pfs->pfs_header.tpmi_id);
520 debugfs_create_file("mem_dump", 0444, dir, pfs, &tpmi_mem_dump_fops);
521 debugfs_create_file("mem_write", 0644, dir, pfs, &mem_write_ops);
527 struct intel_tpmi_pm_feature *pfs)
532 size = TPMI_GET_SINGLE_ENTRY_SIZE(pfs);
536 mem = devm_ioremap(&auxdev->dev, pfs->vsec_offset, size);
564 struct intel_tpmi_pm_feature *pfs,
574 name = intel_tpmi_name(pfs->pfs_header.tpmi_id);
578 res = kcalloc(pfs->pfs_header.num_entries, sizeof(*res), GFP_KERNEL);
590 for (i = 0, tmp = res; i < pfs->pfs_header.num_entries; i++, tmp++) {
591 u64 entry_size_bytes = pfs->pfs_header.entry_size * sizeof(u32);
593 tmp->start = pfs->vsec_offset + entry_size_bytes * i;
600 feature_vsec_dev->num_resources = pfs->pfs_header.num_entries;
640 struct intel_tpmi_pm_feature *pfs)
645 info_mem = ioremap(pfs->vsec_offset + TPMI_INFO_BUS_INFO_OFFSET,
646 pfs->pfs_header.entry_size * sizeof(u32) - TPMI_INFO_BUS_INFO_OFFSET);
662 static int tpmi_fetch_pfs_header(struct intel_tpmi_pm_feature *pfs, u64 start, int size)
670 memcpy_fromio(&pfs->pfs_header, pfs_mem, sizeof(pfs->pfs_header));
702 struct intel_tpmi_pm_feature *pfs;
707 pfs = &tpmi_info->tpmi_features[i];
708 pfs->vsec_dev = vsec_dev;
719 ret = tpmi_fetch_pfs_header(pfs, res_start, size);
726 pfs->vsec_offset = pfs_start + pfs->pfs_header.cap_offset * TPMI_CAP_OFFSET_UNIT;
735 if (pfs->pfs_header.tpmi_id == TPMI_INFO_ID)
736 tpmi_process_info(tpmi_info, pfs);
738 if (pfs->pfs_header.tpmi_id == TPMI_CONTROL_ID)
739 tpmi_set_control_base(auxdev, tpmi_info, pfs);