[SeaBIOS] [PATCH 1/7] ahci/sata: Fix FIS setup.
Gerd Hoffmann
kraxel at redhat.com
Thu Jul 14 16:23:59 CEST 2011
FIS setup does't follow the SATA specs, fix it.
Credits go to Jonathan Kollasch and Scott Duplichan for finding those.
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
---
src/ahci.c | 7 +++----
1 files changed, 3 insertions(+), 4 deletions(-)
diff --git a/src/ahci.c b/src/ahci.c
index fb4b70c..058416c 100644
--- a/src/ahci.c
+++ b/src/ahci.c
@@ -125,12 +125,11 @@ static int ahci_command(struct ahci_port_s *port, int iswrite, int isatapi,
return -1;
flags = ((1 << 16) | /* one prd entry */
- (1 << 10) | /* clear busy on ok */
(iswrite ? (1 << 6) : 0) |
(isatapi ? (1 << 5) : 0) |
- (4 << 0)); /* fis length (dwords) */
- SET_FLATPTR(list[0].flags, flags);
- SET_FLATPTR(list[0].bytes, bsize);
+ (5 << 0)); /* fis length (dwords) */
+ SET_FLATPTR(list[0].flags, flags);
+ SET_FLATPTR(list[0].bytes, 0);
SET_FLATPTR(list[0].base, ((u32)(cmd)));
SET_FLATPTR(list[0].baseu, 0);
--
1.7.1
More information about the SeaBIOS
mailing list