diff options
author | John Snow <jsnow@redhat.com> | 2015-02-05 12:41:12 -0500 |
---|---|---|
committer | Stefan Hajnoczi <stefanha@redhat.com> | 2015-02-16 15:07:16 +0000 |
commit | e77448a385dc72fa671752ec11c84c931f316d09 (patch) | |
tree | 3910d33918ca8b913467b7c811942248458ecb9d /tests/ahci-test.c | |
parent | b0e5d90ebc3edb5cfc1d5d33dd3334482dee6d46 (diff) |
libqos/ahci: Add ahci_port_select helper
This helper identifies which port of the
AHCI HBA has a device we may run tests on.
Signed-off-by: John Snow <jsnow@redhat.com>
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
Message-id: 1423158090-25580-2-git-send-email-jsnow@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Diffstat (limited to 'tests/ahci-test.c')
-rw-r--r-- | tests/ahci-test.c | 19 |
1 files changed, 2 insertions, 17 deletions
diff --git a/tests/ahci-test.c b/tests/ahci-test.c index fca33d2998..c689b62fc0 100644 --- a/tests/ahci-test.c +++ b/tests/ahci-test.c @@ -662,7 +662,7 @@ static void ahci_test_identify(AHCIQState *ahci) RegH2DFIS fis; AHCICommand cmd; PRD prd; - uint32_t ports, reg, table, data_ptr; + uint32_t reg, table, data_ptr; uint16_t buff[256]; unsigned i; int rc; @@ -684,22 +684,7 @@ static void ahci_test_identify(AHCIQState *ahci) */ /* Pick the first implemented and running port */ - ports = ahci_rreg(ahci, AHCI_PI); - for (i = 0; i < 32; ports >>= 1, ++i) { - if (ports == 0) { - i = 32; - } - - if (!(ports & 0x01)) { - continue; - } - - reg = ahci_px_rreg(ahci, i, AHCI_PX_CMD); - if (BITSET(reg, AHCI_PX_CMD_ST)) { - break; - } - } - g_assert_cmphex(i, <, 32); + i = ahci_port_select(ahci); g_test_message("Selected port %u for test", i); /* Clear out this port's interrupts (ignore the init register d2h fis) */ |