Loading drivers/ata/pata_parport/bpck6.c +25 −23 Original line number Diff line number Diff line Loading @@ -318,16 +318,19 @@ static int bpck6_open(struct pi_adapter *pi) j = ((i & 0x08) << 4) | ((i & 0x07) << 3); k = parport_read_status(pi->pardev->port) & 0xB8; if (j == k) { if (j != k) goto fail; parport_frob_control(pi->pardev->port, PARPORT_CONTROL_AUTOFD, 0); k = (parport_read_status(pi->pardev->port) & 0xB8) ^ 0xB8; if (j == k) { if (j != k) goto fail; if (i & 4) // EPP parport_frob_control(pi->pardev->port, PARPORT_CONTROL_SELECT | PARPORT_CONTROL_INIT, 0); else // PPC/ECP parport_frob_control(pi->pardev->port, PARPORT_CONTROL_SELECT, 0); parport_frob_control(pi->pardev->port, PARPORT_CONTROL_SELECT, 0); pi->private = 0; Loading @@ -339,9 +342,8 @@ static int bpck6_open(struct pi_adapter *pi) pi->private |= fifo_wait; return 1; } } fail: parport_write_control(pi->pardev->port, pi->saved_r2); parport_write_data(pi->pardev->port, pi->saved_r0); Loading Loading
drivers/ata/pata_parport/bpck6.c +25 −23 Original line number Diff line number Diff line Loading @@ -318,16 +318,19 @@ static int bpck6_open(struct pi_adapter *pi) j = ((i & 0x08) << 4) | ((i & 0x07) << 3); k = parport_read_status(pi->pardev->port) & 0xB8; if (j == k) { if (j != k) goto fail; parport_frob_control(pi->pardev->port, PARPORT_CONTROL_AUTOFD, 0); k = (parport_read_status(pi->pardev->port) & 0xB8) ^ 0xB8; if (j == k) { if (j != k) goto fail; if (i & 4) // EPP parport_frob_control(pi->pardev->port, PARPORT_CONTROL_SELECT | PARPORT_CONTROL_INIT, 0); else // PPC/ECP parport_frob_control(pi->pardev->port, PARPORT_CONTROL_SELECT, 0); parport_frob_control(pi->pardev->port, PARPORT_CONTROL_SELECT, 0); pi->private = 0; Loading @@ -339,9 +342,8 @@ static int bpck6_open(struct pi_adapter *pi) pi->private |= fifo_wait; return 1; } } fail: parport_write_control(pi->pardev->port, pi->saved_r2); parport_write_data(pi->pardev->port, pi->saved_r0); Loading