diff options
author | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2008-02-26 21:50:35 +0100 |
---|---|---|
committer | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2008-02-26 21:50:35 +0100 |
commit | 788d669736dd3d15195fea07bf97ec5a2e9f15e7 (patch) | |
tree | 76ebb3213c73556f0d9dc13faff21e7011244ff0 /drivers/ide | |
parent | c53ea18dc29a1ac075119f651d6ac4386a549a34 (diff) |
qd65xx: fix setup of QD6580 Control register
Control register of QD6580 should be setup before probing for devices.
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'drivers/ide')
-rw-r--r-- | drivers/ide/legacy/qd65xx.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/ide/legacy/qd65xx.c b/drivers/ide/legacy/qd65xx.c index bba29df5f21..1ec0e970f57 100644 --- a/drivers/ide/legacy/qd65xx.c +++ b/drivers/ide/legacy/qd65xx.c @@ -444,6 +444,8 @@ static int __init qd_probe(int base) printk(KERN_DEBUG "qd6580: config=%#x, control=%#x, ID3=%u\n", config, control, QD_ID3); + outb(QD_DEF_CONTR, QD_CONTROL_PORT); + if (control & QD_CONTR_SEC_DISABLED) { /* secondary disabled */ @@ -460,8 +462,6 @@ static int __init qd_probe(int base) ide_device_add(idx, &qd65xx_port_info); - outb(QD_DEF_CONTR, QD_CONTROL_PORT); - return 1; } else { ide_hwif_t *mate; @@ -487,8 +487,6 @@ static int __init qd_probe(int base) ide_device_add(idx, &qd65xx_port_info); - outb(QD_DEF_CONTR, QD_CONTROL_PORT); - return 0; /* no other qd65xx possible */ } } |