Symbol: hfi_instance
drivers/thermal/intel/intel_hfi.c
157
struct hfi_instance *hfi_instance;
drivers/thermal/intel/intel_hfi.c
164
static struct hfi_instance *hfi_instances;
drivers/thermal/intel/intel_hfi.c
173
static void get_hfi_caps(struct hfi_instance *hfi_instance,
drivers/thermal/intel/intel_hfi.c
178
raw_spin_lock_irq(&hfi_instance->table_lock);
drivers/thermal/intel/intel_hfi.c
179
for_each_cpu(cpu, hfi_instance->cpus) {
drivers/thermal/intel/intel_hfi.c
184
caps = hfi_instance->data + index * hfi_features.cpu_stride;
drivers/thermal/intel/intel_hfi.c
196
raw_spin_unlock_irq(&hfi_instance->table_lock);
drivers/thermal/intel/intel_hfi.c
202
static void update_capabilities(struct hfi_instance *hfi_instance)
drivers/thermal/intel/intel_hfi.c
210
cpu_count = cpumask_weight(hfi_instance->cpus);
drivers/thermal/intel/intel_hfi.c
220
get_hfi_caps(hfi_instance, cpu_caps);
drivers/thermal/intel/intel_hfi.c
246
struct hfi_instance *hfi_instance;
drivers/thermal/intel/intel_hfi.c
248
hfi_instance = container_of(to_delayed_work(work), struct hfi_instance,
drivers/thermal/intel/intel_hfi.c
251
update_capabilities(hfi_instance);
drivers/thermal/intel/intel_hfi.c
256
struct hfi_instance *hfi_instance;
drivers/thermal/intel/intel_hfi.c
273
hfi_instance = info->hfi_instance;
drivers/thermal/intel/intel_hfi.c
274
if (unlikely(!hfi_instance)) {
drivers/thermal/intel/intel_hfi.c
285
if (!raw_spin_trylock(&hfi_instance->event_lock))
drivers/thermal/intel/intel_hfi.c
291
raw_spin_unlock(&hfi_instance->event_lock);
drivers/thermal/intel/intel_hfi.c
300
new_timestamp = *(u64 *)hfi_instance->hw_table;
drivers/thermal/intel/intel_hfi.c
301
if (*hfi_instance->timestamp == new_timestamp) {
drivers/thermal/intel/intel_hfi.c
303
raw_spin_unlock(&hfi_instance->event_lock);
drivers/thermal/intel/intel_hfi.c
307
raw_spin_lock(&hfi_instance->table_lock);
drivers/thermal/intel/intel_hfi.c
313
memcpy(hfi_instance->local_table, hfi_instance->hw_table,
drivers/thermal/intel/intel_hfi.c
322
raw_spin_unlock(&hfi_instance->table_lock);
drivers/thermal/intel/intel_hfi.c
323
raw_spin_unlock(&hfi_instance->event_lock);
drivers/thermal/intel/intel_hfi.c
325
queue_delayed_work(hfi_updates_wq, &hfi_instance->update_work,
drivers/thermal/intel/intel_hfi.c
345
static void init_hfi_instance(struct hfi_instance *hfi_instance)
drivers/thermal/intel/intel_hfi.c
348
hfi_instance->hdr = hfi_instance->local_table +
drivers/thermal/intel/intel_hfi.c
349
sizeof(*hfi_instance->timestamp);
drivers/thermal/intel/intel_hfi.c
352
hfi_instance->data = hfi_instance->hdr + hfi_features.hdr_size;
drivers/thermal/intel/intel_hfi.c
365
static void hfi_set_hw_table(struct hfi_instance *hfi_instance)
drivers/thermal/intel/intel_hfi.c
370
hw_table_pa = virt_to_phys(hfi_instance->hw_table);
drivers/thermal/intel/intel_hfi.c
416
struct hfi_instance *hfi_instance;
drivers/thermal/intel/intel_hfi.c
430
hfi_instance = info->hfi_instance;
drivers/thermal/intel/intel_hfi.c
431
if (!hfi_instance) {
drivers/thermal/intel/intel_hfi.c
435
hfi_instance = &hfi_instances[pkg_id];
drivers/thermal/intel/intel_hfi.c
436
info->hfi_instance = hfi_instance;
drivers/thermal/intel/intel_hfi.c
448
if (hfi_instance->hdr)
drivers/thermal/intel/intel_hfi.c
459
hfi_instance->hw_table = alloc_pages_exact(hfi_features.nr_table_pages,
drivers/thermal/intel/intel_hfi.c
461
if (!hfi_instance->hw_table)
drivers/thermal/intel/intel_hfi.c
468
hfi_instance->local_table = kzalloc(hfi_features.nr_table_pages << PAGE_SHIFT,
drivers/thermal/intel/intel_hfi.c
470
if (!hfi_instance->local_table)
drivers/thermal/intel/intel_hfi.c
473
init_hfi_instance(hfi_instance);
drivers/thermal/intel/intel_hfi.c
475
INIT_DELAYED_WORK(&hfi_instance->update_work, hfi_update_work_fn);
drivers/thermal/intel/intel_hfi.c
476
raw_spin_lock_init(&hfi_instance->table_lock);
drivers/thermal/intel/intel_hfi.c
477
raw_spin_lock_init(&hfi_instance->event_lock);
drivers/thermal/intel/intel_hfi.c
480
cpumask_set_cpu(cpu, hfi_instance->cpus);
drivers/thermal/intel/intel_hfi.c
486
if (cpumask_weight(hfi_instance->cpus) == 1 && hfi_clients_nr > 0) {
drivers/thermal/intel/intel_hfi.c
487
hfi_set_hw_table(hfi_instance);
drivers/thermal/intel/intel_hfi.c
496
free_pages_exact(hfi_instance->hw_table, hfi_features.nr_table_pages);
drivers/thermal/intel/intel_hfi.c
513
struct hfi_instance *hfi_instance;
drivers/thermal/intel/intel_hfi.c
520
hfi_instance = info->hfi_instance;
drivers/thermal/intel/intel_hfi.c
521
if (!hfi_instance)
drivers/thermal/intel/intel_hfi.c
524
if (!hfi_instance->hdr)
drivers/thermal/intel/intel_hfi.c
528
cpumask_clear_cpu(cpu, hfi_instance->cpus);
drivers/thermal/intel/intel_hfi.c
530
if (cpumask_empty(hfi_instance->cpus))
drivers/thermal/intel/intel_hfi.c
600
struct hfi_instance *hfi_instance = info->hfi_instance;
drivers/thermal/intel/intel_hfi.c
604
hfi_enable_instance(hfi_instance);
drivers/thermal/intel/intel_hfi.c
628
struct hfi_instance *hfi_instance;
drivers/thermal/intel/intel_hfi.c
656
hfi_instance = &hfi_instances[i];
drivers/thermal/intel/intel_hfi.c
657
if (cpumask_empty(hfi_instance->cpus))
drivers/thermal/intel/intel_hfi.c
660
cpu = cpumask_any(hfi_instance->cpus);
drivers/thermal/intel/intel_hfi.c
661
smp_call_function_single(cpu, func, hfi_instance, true);
drivers/thermal/intel/intel_hfi.c
676
struct hfi_instance *hfi_instance;
drivers/thermal/intel/intel_hfi.c
699
hfi_instance = &hfi_instances[i];
drivers/thermal/intel/intel_hfi.c
700
if (!zalloc_cpumask_var(&hfi_instance->cpus, GFP_KERNEL))
drivers/thermal/intel/intel_hfi.c
726
hfi_instance = &hfi_instances[j];
drivers/thermal/intel/intel_hfi.c
727
free_cpumask_var(hfi_instance->cpus);