little bug in ac97_codec.c

Roby (robylit@inwind.it)
Tue, 3 Dec 2002 20:53:53 +0100


--------------Boundary-00=_T97KH0660IM31577OYAG
Content-Type: text/plain;
charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

I discovered a little bug into the file drivers/sound/ac97_codec.c

It only affects the display of the PnP hexadecimal string of the codec, d=
uring=20
the boot.

The function codec_id(...) has simply a nonsense code. I think someone=20
forgotten to complete it.
Anyhow, here is my patch.
If it is ok for the developers, good, otherwise I will use it onluy on my=
=20
system.

--=20
Roby

email
robylit@inwind.it
robylit@tiscali.it

WEB Page
http://robylit.risorse.com
http://web.tiscalinet.it/robylit

--------------Boundary-00=_T97KH0660IM31577OYAG
Content-Type: text/x-diff;
charset="us-ascii";
name="ac97_codec.diff"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename="ac97_codec.diff"

--- drivers/sound/ac97_codec.orig 2002-11-29 00:53:14.000000000 +0100
+++ drivers/sound/ac97_codec.c 2002-12-03 20:33:13.000000000 +0100
@@ -657,7 +657,7 @@
* codec_id - Turn id1/id2 into a PnP string
* @id1: Vendor ID1
* @id2: Vendor ID2
- * @buf: 10 byte buffer
+ * @buf: 14 byte buffer
*
* Fills buf with a zero terminated PnP ident string for the id1/id2
* pair. For convenience the return is the passed in buffer pointer.
@@ -665,13 +665,9 @@

static char *codec_id(u16 id1, u16 id2, char *buf)
{
- if(id1&0x8080)
- snprintf(buf, 10, "%0x4X:%0x4X", id1, id2);
- buf[0] = (id1 >> 8);
- buf[1] = (id1 & 0xFF);
- buf[2] = (id2 >> 8);
- snprintf(buf+3, 7, "%d", id2&0xFF);
- return buf;
+ snprintf(buf, 14, "0x%04X:0x%04X", id1, id2);
+
+ return buf;
}

/**
@@ -702,7 +698,7 @@
u16 id1, id2;
u16 audio, modem;
int i;
- char cidbuf[10];
+ char cidbuf[14];

/* probing AC97 codec, AC97 2.0 says that bit 15 of register 0x00 (reset) should
* be read zero.

--------------Boundary-00=_T97KH0660IM31577OYAG--

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/