--- es137x.c Mon Dec 15 21:31:29 2003 +++ es137x.new Fri Jan 30 12:57:16 2004 @@ -520,8 +520,10 @@ es1371_init(struct es_info *es, device_t bus_space_write_4(es->st, es->sh, ES1370_REG_SERIAL_CONTROL, es->sctrl); bus_space_write_4(es->st, es->sh, ES1371_REG_LEGACY, 0); /* AC'97 warm reset to start the bitclk */ - bus_space_write_4(es->st, es->sh, ES1371_REG_LEGACY, es->ctrl | ES1371_SYNC_RES); - DELAY(2000); + bus_space_write_4(es->st, es->sh, ES1370_REG_CONTROL, es->ctrl | ES1371_SYNC_RES); + DELAY(2000); + bus_space_read_4(es->st, es->sh, ES1370_REG_CONTROL); + bus_space_write_4(es->st, es->sh, ES1370_REG_CONTROL, es->ctrl); bus_space_write_4(es->st, es->sh, ES1370_REG_SERIAL_CONTROL, es->ctrl); /* Init the sample rate converter */ bus_space_write_4(es->st, es->sh, ES1371_REG_SMPRATE, ES1371_DIS_SRC);