if we have a codec init routine, fail the attach if init fails

This commit is contained in:
Cameron Grant 2000-05-26 21:42:50 +00:00
parent 7795d19132
commit 04553e63a5
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=60960

View File

@ -93,7 +93,7 @@ static struct ac97_codecid ac97codecid[] = {
};
static char *ac97enhancement[] = {
"",
"no 3D Stereo Enhancement",
"Analog Devices Phat Stereo",
"Creative Stereo Enhancement",
"National Semi 3D Stereo Enhancement",
@ -299,8 +299,12 @@ ac97_initmixer(struct ac97_info *codec)
for (i = 0; i < 32; i++)
codec->mix[i] = ac97mixtable_default[i];
if (codec->init)
codec->init(codec->devinfo);
if (codec->init) {
if (codec->init(codec->devinfo)) {
device_printf(codec->dev, "ac97 codec init failed\n");
return ENODEV;
}
}
wrcd(codec, AC97_REG_POWER, 0);
wrcd(codec, AC97_REG_RESET, 0);
DELAY(100000);