From 7bcf206fb51793f401bb3ed1b9180df8ba153970 Mon Sep 17 00:00:00 2001 From: acevest Date: Mon, 22 Nov 2021 19:26:02 +0800 Subject: [PATCH] =?utf8?q?=E5=90=91ide=5Fdrive=5Ft=E6=B7=BB=E5=8A=A0presen?= =?utf8?q?t=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- drivers/ata.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/ata.c b/drivers/ata.c index 8b6c4f6..3c21625 100644 --- a/drivers/ata.c +++ b/drivers/ata.c @@ -18,6 +18,7 @@ extern ide_pci_controller_t ide_pci_controller; typedef struct _ide_drive { + int present; int dma; uint64_t lba48; uint64_t max_lba; @@ -75,7 +76,10 @@ void ide_ata_init() { uint8_t status = inb(REG_STATUS(dev)); if (status == 0 || (status & ATA_STATUS_ERR) || (status & ATA_STATUS_RDY == 0)) { printk("ata[%d] not exists: %x\n", i, status); + ide_drives[i].present = 0; continue; + } else { + ide_drives[i].present = 1; } printk("ata[%d] exists: %x\n", i, status); -- 2.44.0