Symbol: hfi_instance
drivers/thermal/intel/intel_hfi.c
156
struct hfi_instance *hfi_instance;
drivers/thermal/intel/intel_hfi.c
163
static struct hfi_instance *hfi_instances;
drivers/thermal/intel/intel_hfi.c
172
static void get_hfi_caps(struct hfi_instance *hfi_instance,
drivers/thermal/intel/intel_hfi.c
177
raw_spin_lock_irq(&hfi_instance->table_lock);
drivers/thermal/intel/intel_hfi.c
178
for_each_cpu(cpu, hfi_instance->cpus) {
drivers/thermal/intel/intel_hfi.c
183
caps = hfi_instance->data + index * hfi_features.cpu_stride;
drivers/thermal/intel/intel_hfi.c
195
raw_spin_unlock_irq(&hfi_instance->table_lock);
drivers/thermal/intel/intel_hfi.c
201
static void update_capabilities(struct hfi_instance *hfi_instance)
drivers/thermal/intel/intel_hfi.c
209
cpu_count = cpumask_weight(hfi_instance->cpus);
drivers/thermal/intel/intel_hfi.c
219
get_hfi_caps(hfi_instance, cpu_caps);
drivers/thermal/intel/intel_hfi.c
245
struct hfi_instance *hfi_instance;
drivers/thermal/intel/intel_hfi.c
247
hfi_instance = container_of(to_delayed_work(work), struct hfi_instance,
drivers/thermal/intel/intel_hfi.c
250
update_capabilities(hfi_instance);
drivers/thermal/intel/intel_hfi.c
255
struct hfi_instance *hfi_instance;
drivers/thermal/intel/intel_hfi.c
272
hfi_instance = info->hfi_instance;
drivers/thermal/intel/intel_hfi.c
273
if (unlikely(!hfi_instance)) {
drivers/thermal/intel/intel_hfi.c
284
if (!raw_spin_trylock(&hfi_instance->event_lock))
drivers/thermal/intel/intel_hfi.c
290
raw_spin_unlock(&hfi_instance->event_lock);
drivers/thermal/intel/intel_hfi.c
299
new_timestamp = *(u64 *)hfi_instance->hw_table;
drivers/thermal/intel/intel_hfi.c
300
if (*hfi_instance->timestamp == new_timestamp) {
drivers/thermal/intel/intel_hfi.c
302
raw_spin_unlock(&hfi_instance->event_lock);
drivers/thermal/intel/intel_hfi.c
306
raw_spin_lock(&hfi_instance->table_lock);
drivers/thermal/intel/intel_hfi.c
312
memcpy(hfi_instance->local_table, hfi_instance->hw_table,
drivers/thermal/intel/intel_hfi.c
321
raw_spin_unlock(&hfi_instance->table_lock);
drivers/thermal/intel/intel_hfi.c
322
raw_spin_unlock(&hfi_instance->event_lock);
drivers/thermal/intel/intel_hfi.c
324
queue_delayed_work(hfi_updates_wq, &hfi_instance->update_work,
drivers/thermal/intel/intel_hfi.c
344
static void init_hfi_instance(struct hfi_instance *hfi_instance)
drivers/thermal/intel/intel_hfi.c
347
hfi_instance->hdr = hfi_instance->local_table +
drivers/thermal/intel/intel_hfi.c
348
sizeof(*hfi_instance->timestamp);
drivers/thermal/intel/intel_hfi.c
351
hfi_instance->data = hfi_instance->hdr + hfi_features.hdr_size;
drivers/thermal/intel/intel_hfi.c
364
static void hfi_set_hw_table(struct hfi_instance *hfi_instance)
drivers/thermal/intel/intel_hfi.c
369
hw_table_pa = virt_to_phys(hfi_instance->hw_table);
drivers/thermal/intel/intel_hfi.c
415
struct hfi_instance *hfi_instance;
drivers/thermal/intel/intel_hfi.c
429
hfi_instance = info->hfi_instance;
drivers/thermal/intel/intel_hfi.c
430
if (!hfi_instance) {
drivers/thermal/intel/intel_hfi.c
434
hfi_instance = &hfi_instances[pkg_id];
drivers/thermal/intel/intel_hfi.c
435
info->hfi_instance = hfi_instance;
drivers/thermal/intel/intel_hfi.c
447
if (hfi_instance->hdr)
drivers/thermal/intel/intel_hfi.c
458
hfi_instance->hw_table = alloc_pages_exact(hfi_features.nr_table_pages,
drivers/thermal/intel/intel_hfi.c
460
if (!hfi_instance->hw_table)
drivers/thermal/intel/intel_hfi.c
467
hfi_instance->local_table = kzalloc(hfi_features.nr_table_pages << PAGE_SHIFT,
drivers/thermal/intel/intel_hfi.c
469
if (!hfi_instance->local_table)
drivers/thermal/intel/intel_hfi.c
472
init_hfi_instance(hfi_instance);
drivers/thermal/intel/intel_hfi.c
474
INIT_DELAYED_WORK(&hfi_instance->update_work, hfi_update_work_fn);
drivers/thermal/intel/intel_hfi.c
475
raw_spin_lock_init(&hfi_instance->table_lock);
drivers/thermal/intel/intel_hfi.c
476
raw_spin_lock_init(&hfi_instance->event_lock);
drivers/thermal/intel/intel_hfi.c
479
cpumask_set_cpu(cpu, hfi_instance->cpus);
drivers/thermal/intel/intel_hfi.c
485
if (cpumask_weight(hfi_instance->cpus) == 1 && hfi_clients_nr > 0) {
drivers/thermal/intel/intel_hfi.c
486
hfi_set_hw_table(hfi_instance);
drivers/thermal/intel/intel_hfi.c
495
free_pages_exact(hfi_instance->hw_table, hfi_features.nr_table_pages);
drivers/thermal/intel/intel_hfi.c
512
struct hfi_instance *hfi_instance;
drivers/thermal/intel/intel_hfi.c
519
hfi_instance = info->hfi_instance;
drivers/thermal/intel/intel_hfi.c
520
if (!hfi_instance)
drivers/thermal/intel/intel_hfi.c
523
if (!hfi_instance->hdr)
drivers/thermal/intel/intel_hfi.c
527
cpumask_clear_cpu(cpu, hfi_instance->cpus);
drivers/thermal/intel/intel_hfi.c
529
if (!cpumask_weight(hfi_instance->cpus))
drivers/thermal/intel/intel_hfi.c
599
struct hfi_instance *hfi_instance = info->hfi_instance;
drivers/thermal/intel/intel_hfi.c
603
hfi_enable_instance(hfi_instance);
drivers/thermal/intel/intel_hfi.c
627
struct hfi_instance *hfi_instance;
drivers/thermal/intel/intel_hfi.c
655
hfi_instance = &hfi_instances[i];
drivers/thermal/intel/intel_hfi.c
656
if (cpumask_empty(hfi_instance->cpus))
drivers/thermal/intel/intel_hfi.c
659
cpu = cpumask_any(hfi_instance->cpus);
drivers/thermal/intel/intel_hfi.c
660
smp_call_function_single(cpu, func, hfi_instance, true);
drivers/thermal/intel/intel_hfi.c
675
struct hfi_instance *hfi_instance;
drivers/thermal/intel/intel_hfi.c
698
hfi_instance = &hfi_instances[i];
drivers/thermal/intel/intel_hfi.c
699
if (!zalloc_cpumask_var(&hfi_instance->cpus, GFP_KERNEL))
drivers/thermal/intel/intel_hfi.c
725
hfi_instance = &hfi_instances[j];
drivers/thermal/intel/intel_hfi.c
726
free_cpumask_var(hfi_instance->cpus);