Lines Matching refs:device

437 static u8 do_one_read (int device, ulong block, u8 blkcnt, u16 * buff,  in do_one_read()  argument
445 if (!(sata_chk_status (&port[device].ioaddr, 0) & ATA_DRDY)) { in do_one_read()
446 printf ("Device ata%d not ready\n", device); in do_one_read()
454 writeb (0, port[device].ioaddr.nsect_addr); in do_one_read()
455 writeb ((blknr >> 24) & 0xFF, port[device].ioaddr.lbal_addr); in do_one_read()
456 writeb ((blknr >> 32) & 0xFF, port[device].ioaddr.lbam_addr); in do_one_read()
457 writeb ((blknr >> 40) & 0xFF, port[device].ioaddr.lbah_addr); in do_one_read()
460 writeb (blkcnt, port[device].ioaddr.nsect_addr); in do_one_read()
461 writeb (((blknr) >> 0) & 0xFF, port[device].ioaddr.lbal_addr); in do_one_read()
462 writeb ((blknr >> 8) & 0xFF, port[device].ioaddr.lbam_addr); in do_one_read()
463 writeb ((blknr >> 16) & 0xFF, port[device].ioaddr.lbah_addr); in do_one_read()
467 writeb (ATA_LBA, port[device].ioaddr.device_addr); in do_one_read()
468 writeb (ATA_CMD_PIO_READ_EXT, port[device].ioaddr.command_addr); in do_one_read()
473 port[device].ioaddr.device_addr); in do_one_read()
474 writeb (ATA_CMD_PIO_READ, port[device].ioaddr.command_addr); in do_one_read()
477 status = sata_busy_wait (&port[device].ioaddr, ATA_BUSY, 10000, 1); in do_one_read()
482 printf ("Device %d not responding status %d\n", device, status); in do_one_read()
483 err = readb (port[device].ioaddr.error_addr); in do_one_read()
490 if (wait_for_irq (device, 500)) { in do_one_read()
491 printf ("ata%u irq failed\n", device); in do_one_read()
495 status = sata_chk_status (&port[device].ioaddr, 0); in do_one_read()
497 printf ("ata%u error %d\n", device, in do_one_read()
498 readb (port[device].ioaddr.error_addr)); in do_one_read()
502 input_data (&port[device].ioaddr, buff, ATA_SECTOR_WORDS); in do_one_read()
510 ulong sata_read (int device, ulong block, lbaint_t blkcnt, void *buff) in sata_read() argument
520 if (!sata_dev_desc[device].lba48) { in sata_read()
537 status = do_one_read (device, blknr, sread, buffer, lba48); in sata_read()
551 ulong sata_write (int device, ulong block, lbaint_t blkcnt, const void *buff) in sata_write() argument
561 if (!sata_dev_desc[device].lba48) { in sata_write()
570 num = device; in sata_write()
611 device, (ulong) blknr, status); in sata_write()