# do not edit this file, it will be overwritten on update ACTION=="add", SUBSYSTEM=="sound", KERNEL=="controlC*", KERNELS!="card*", GOTO="alsa_restore_go" GOTO="alsa_restore_end" LABEL="alsa_restore_go" ENV{ALSA_CARD_NUMBER}="$attr{device/number}" # mark HDA analog card; HDMI/DP card does not have capture devices DRIVERS=="snd_hda_intel", TEST=="device/pcmC$env{ALSA_CARD_NUMBER}D0c", RUN+="/bin/sh -c 'echo ALSA_CARD_HDA_ANALOG=$env{ALSA_CARD_NUMBER} >> /run/udev/alsa-hda-analog-card'" # check for ACP hardware TEST=="device/device/acp3x-dmic-capture", GOTO="alsa_hda_analog" TEST=="device/device/acp6x-dmic-capture", GOTO="alsa_hda_analog" TEST=="device/device/acp63-dmic-capture", GOTO="alsa_hda_analog" TEST=="device/device/acp-dmic-codec", GOTO="alsa_hda_analog" GOTO="alsa_restore_std" LABEL="alsa_hda_analog" # restore configuration for profile with combined cards (HDA + digital mic) TEST!="/run/udev/alsa-hda-analog-card", GOTO="alsa_restore_std" IMPORT{program}="/usr/bin/cat /run/udev/alsa-hda-analog-card" ENV{ALSA_CARD_HDA_ANALOG}!="", ENV{ALSA_CARD_NUMBER}="$env{ALSA_CARD_HDA_ANALOG}" LABEL="alsa_restore_std" TEST!="/etc/alsa/state-daemon.conf", IMPORT{program}="/usr/bin/alsactl -E ALSA_CONFIG_PATH=/etc/alsa/alsactl.conf --initfile=/lib/alsa/init/00main --export restore $env{ALSA_CARD_NUMBER}" TEST=="/etc/alsa/state-daemon.conf", IMPORT{program}="/usr/bin/alsactl -E ALSA_CONFIG_PATH=/etc/alsa/alsactl.conf --initfile=/lib/alsa/init/00main --export nrestore $env{ALSA_CARD_NUMBER}" ENV{ALSA_CARD_STATE}=="waiting", ENV{SYSTEMD_WANTS}="alsa-card-wait@$env{ALSA_CARD_NUMBER}.service" LABEL="alsa_restore_end"