From 5c9c5e454b241d578a173b11fcde0cd179373d41 Mon Sep 17 00:00:00 2001 From: Ian McFarlane Date: Thu, 17 Apr 2025 15:44:27 -0400 Subject: added logging, but we still get warnings about __FUNCTION__ --- kernel/drivers/ata.c | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) (limited to 'kernel/drivers/ata.c') diff --git a/kernel/drivers/ata.c b/kernel/drivers/ata.c index 4c5896c..e940ad4 100644 --- a/kernel/drivers/ata.c +++ b/kernel/drivers/ata.c @@ -19,19 +19,24 @@ #define IDE_PROG_IF_SECONDARY_CHANNEL_CAN_SWITCH_TO_AND_FROM_PCI_NATIVE_FLAG 0x4 #define IDE_PROG_IF_DMA_SUPPORT_FLAG 0x7 -#include "comus/drivers/pci.h" -#include "comus/drivers/ata.h" +#include +#include +#include bool ata_find_primary_drive(struct pci_device *out) { if (!pci_findby_class(out, CLASS_MASS_STORAGE_CONTROLLER, - SUBCLASS_IDE_CONTROLLER, NULL)) { + SUBCLASS_IDE_CONTROLLER, NULL)) { + return false; + } + + const uint8_t prog_if = pci_rcfg_b(*out, PCI_PROG_IF_B); + const uint8_t header_type = pci_rcfg_b(*out, PCI_HEADER_TYPE_B); + + if (header_type != 0x0) { + TRACE("Wrong header type for IDE_CONTROLLER device, not reading BARs"); return false; } - const uint8_t prog_if = pci_rcfg_b(*out, PCI_PROG_IF_B); - - return true; + return true; } - - -- cgit v1.2.3-freya