18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-or-later */ 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci */ 48c2ecf20Sopenharmony_ci#ifndef __SOUND_HDA_INTEL_H 58c2ecf20Sopenharmony_ci#define __SOUND_HDA_INTEL_H 68c2ecf20Sopenharmony_ci 78c2ecf20Sopenharmony_ci#include "hda_controller.h" 88c2ecf20Sopenharmony_ci 98c2ecf20Sopenharmony_cistruct hda_intel { 108c2ecf20Sopenharmony_ci struct azx chip; 118c2ecf20Sopenharmony_ci 128c2ecf20Sopenharmony_ci /* for pending irqs */ 138c2ecf20Sopenharmony_ci struct work_struct irq_pending_work; 148c2ecf20Sopenharmony_ci 158c2ecf20Sopenharmony_ci /* sync probing */ 168c2ecf20Sopenharmony_ci struct completion probe_wait; 178c2ecf20Sopenharmony_ci struct delayed_work probe_work; 188c2ecf20Sopenharmony_ci 198c2ecf20Sopenharmony_ci /* card list (for power_save trigger) */ 208c2ecf20Sopenharmony_ci struct list_head list; 218c2ecf20Sopenharmony_ci 228c2ecf20Sopenharmony_ci /* extra flags */ 238c2ecf20Sopenharmony_ci unsigned int irq_pending_warned:1; 248c2ecf20Sopenharmony_ci unsigned int probe_continued:1; 258c2ecf20Sopenharmony_ci 268c2ecf20Sopenharmony_ci /* vga_switcheroo setup */ 278c2ecf20Sopenharmony_ci unsigned int use_vga_switcheroo:1; 288c2ecf20Sopenharmony_ci unsigned int vga_switcheroo_registered:1; 298c2ecf20Sopenharmony_ci unsigned int init_failed:1; /* delayed init failed */ 308c2ecf20Sopenharmony_ci unsigned int freed:1; /* resources already released */ 318c2ecf20Sopenharmony_ci 328c2ecf20Sopenharmony_ci bool need_i915_power:1; /* the hda controller needs i915 power */ 338c2ecf20Sopenharmony_ci 348c2ecf20Sopenharmony_ci int probe_retry; /* being probe-retry */ 358c2ecf20Sopenharmony_ci}; 368c2ecf20Sopenharmony_ci 378c2ecf20Sopenharmony_ci#endif 38