summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Skeggs <bskeggs@redhat.com>2014-09-08 10:33:32 +1000
committerBen Skeggs <bskeggs@redhat.com>2014-10-02 13:25:44 +1000
commitce12112210bc3e6b1ac87546a60586b6dcd2ded7 (patch)
treebebbd94c749863b87d58fc2309816c97e4b1acb3
parentaa6cd36e0a46113c96350d385a530724cd25a990 (diff)
downloadnouveau-ce12112210bc3e6b1ac87546a60586b6dcd2ded7.tar.gz
bios: memset dcb struct to zero before parsing
Fixes type/mask calculation being based on uninitialised data for VGA outputs. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
-rw-r--r--nvkm/subdev/bios/dcb.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/nvkm/subdev/bios/dcb.c b/nvkm/subdev/bios/dcb.c
index 88606bfaf..bd8d34838 100644
--- a/nvkm/subdev/bios/dcb.c
+++ b/nvkm/subdev/bios/dcb.c
@@ -124,6 +124,7 @@ dcb_outp_parse(struct nouveau_bios *bios, u8 idx, u8 *ver, u8 *len,
struct dcb_output *outp)
{
u16 dcb = dcb_outp(bios, idx, ver, len);
+ memset(outp, 0x00, sizeof(*outp));
if (dcb) {
if (*ver >= 0x20) {
u32 conn = nv_ro32(bios, dcb + 0x00);