^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) /* SPDX-License-Identifier: GPL-2.0-or-later */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) #ifndef __SOUND_HDA_INTEL_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) #define __SOUND_HDA_INTEL_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) #include "hda_controller.h"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) struct hda_intel {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) struct azx chip;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) /* for pending irqs */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) struct work_struct irq_pending_work;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) /* sync probing */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) struct completion probe_wait;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) struct delayed_work probe_work;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) /* card list (for power_save trigger) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) struct list_head list;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) /* extra flags */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) unsigned int irq_pending_warned:1;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) unsigned int probe_continued:1;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) /* vga_switcheroo setup */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) unsigned int use_vga_switcheroo:1;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) unsigned int vga_switcheroo_registered:1;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) unsigned int init_failed:1; /* delayed init failed */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) unsigned int freed:1; /* resources already released */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) bool need_i915_power:1; /* the hda controller needs i915 power */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) int probe_retry; /* being probe-retry */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) #endif