ALSA: hda/senary: Add hardware init verbs and fixup framework
Port the essential hardware initialization logic from the vendor driver
and introduce the standard HDA fixup framework to handle different
machine configurations.
Key changes:
1. Add hardware init verbs:
- Implement `senary_init_verb` to send the vendor-specific
initialization sequence required by the SN6186 chip.
- Override pin capabilities for Node 0x19 to ensure proper headset
microphone support.
2. Introduce fixup framework:
- Define a default pin configuration table (`senary_pincfg_default`)
to provide a fallback for devices with invalid BIOS configurations.
- Establish a quirk table structure for future machine-specific
fixes.
- Since the standard quirk matching relies on Subsystem IDs, we
manually apply the default fixup if `snd_hda_pick_fixup` does not
find a specific match.
This ensures the chip is correctly initialized during probe and resume,
and provides a scalable mechanism for supporting specific hardware
quirks.
Signed-off-by: wangdicheng <wangdicheng@kylinos.cn>
Link: https://patch.msgid.link/20260304070219.450083-1-wangdich9700@163.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>