On Wed, Feb 05, 2025 at 10:53:04AM -0500, Christopher Lentocha wrote:
Is it already pushed?
Nope, apparently something went wrong ...
I think I need to add a `if (CONFIG_CSM) {` to it
because I think it wasn't working with the regual bios.bin without CSM
Does a controller reset (see below) work in both cases?
take care, Gerd
commit 79d50d3c156dfd15ed710d0e2313d113251aeb2e Author: Gerd Hoffmann kraxel@redhat.com Date: Thu Feb 6 12:10:21 2025 +0100
ahci: add controller reset
diff --git a/src/hw/ahci.c b/src/hw/ahci.c index 4f0f640a1c64..2285d33d4ae2 100644 --- a/src/hw/ahci.c +++ b/src/hw/ahci.c @@ -637,7 +637,7 @@ static void ahci_controller_setup(struct pci_device *pci) { struct ahci_port_s *port; - u32 val, pnr, max; + u32 pnr, max;
if (create_bounce_buf() < 0) return; @@ -660,8 +660,8 @@ ahci_controller_setup(struct pci_device *pci)
pci_enable_busmaster(pci);
- val = ahci_ctrl_readl(ctrl, HOST_CTL); - ahci_ctrl_writel(ctrl, HOST_CTL, val | HOST_CTL_AHCI_EN); + ahci_ctrl_writel(ctrl, HOST_CTL, HOST_CTL_RESET); + ahci_ctrl_writel(ctrl, HOST_CTL, HOST_CTL_AHCI_EN);
ctrl->caps = ahci_ctrl_readl(ctrl, HOST_CAP); ctrl->ports = ahci_ctrl_readl(ctrl, HOST_PORTS_IMPL);