Subject: Re: kern/11910: ess1688 patch
To: None <takashi.yamamoto@bigfoot.com>
From: Nathan J. Williams <nathanw@MIT.EDU>
List: netbsd-bugs
Date: 01/07/2001 17:26:15
<takashi.yamamoto@bigfoot.com> (takashi.yamamoto@bigfoot.com) writes:
> @@ -660,6 +661,14 @@
>  	ess_write_mix_reg(sc, ESS_MREG_VOLUME_CTRL, reg2);
>  	
>  	if (ess_read_mix_reg(sc, ESS_MREG_VOLUME_CTRL) != reg2) {
> +	/*
> +	 * it has no h/w volume, so maybe ESS1688.
> +	 */
> +		if (sc->sc_version == 0x688b) {
> +			sc->sc_model = ESS_1688;
> +			return 0;
> +		}
> +
>  		printf("ess: Hardware error (unable to toggle bit 2 of mixer register 0x64)\n");
>  		return 1;
>  	}

This part of the patch is not correct. ESS chips after the 1688 all
report 0x688b as their version, for backwards compatibility with 1688
drivers. This includes the 1788 and the 1887, and probably the 1868
and 1869.

You will need to find another way to distinguish the 1688 from later
chips. 

        - Nathan