Skip to content

Commit

Permalink
qtest/ahci: Add a macro bootup routine
Browse files Browse the repository at this point in the history
Add a routine that can be used to engage the AHCI
device at a not-granular level so that bringing up
the functionality of the HBA is easy in future tests
that are not concerned with testing the bring-up process.

Signed-off-by: John Snow <jsnow@redhat.com>
Message-id: 1424905602-24715-3-git-send-email-jsnow@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
  • Loading branch information
jnsnow authored and kevmw committed Mar 10, 2015
1 parent 4a42f6d commit d63b401
Showing 1 changed file with 17 additions and 6 deletions.
23 changes: 17 additions & 6 deletions tests/ahci-test.c
Expand Up @@ -107,6 +107,21 @@ static void ahci_shutdown(AHCIQState *ahci)
qtest_shutdown(qs);
}

/**
* Boot and fully enable the HBA device.
* @see ahci_boot, ahci_pci_enable and ahci_hba_enable.
*/
static AHCIQState *ahci_boot_and_enable(void)
{
AHCIQState *ahci;
ahci = ahci_boot();

ahci_pci_enable(ahci);
ahci_hba_enable(ahci);

return ahci;
}

/*** Specification Adherence Tests ***/

/**
Expand Down Expand Up @@ -831,9 +846,7 @@ static void test_identify(void)
{
AHCIQState *ahci;

ahci = ahci_boot();
ahci_pci_enable(ahci);
ahci_hba_enable(ahci);
ahci = ahci_boot_and_enable();
ahci_test_identify(ahci);
ahci_shutdown(ahci);
}
Expand All @@ -845,9 +858,7 @@ static void test_dma_rw_simple(void)
{
AHCIQState *ahci;

ahci = ahci_boot();
ahci_pci_enable(ahci);
ahci_hba_enable(ahci);
ahci = ahci_boot_and_enable();
ahci_test_dma_rw_simple(ahci);
ahci_shutdown(ahci);
}
Expand Down

0 comments on commit d63b401

Please sign in to comment.