diff options
author | Adrian Chadd <adrian@FreeBSD.org> | 2013-06-28 01:43:57 +0000 |
---|---|---|
committer | Adrian Chadd <adrian@FreeBSD.org> | 2013-06-28 01:43:57 +0000 |
commit | 9d2b32a021a36fcf09898b813493cd4643130de3 (patch) | |
tree | 7892b35e83cbb4b86696d0b64fb41ea9bf725f37 /emulators/gxemul | |
parent | 79ca5c9a9a4df23e9a09a8fb1f8311818a2ffc32 (diff) |
Enable LBA in GXEMUL.
FreeBSD-10's ATA code requires LBA to be used. There's no code in the
ATA stack to send CHS commands to the hardware these days.
* Enable it by default;
* Turn print() into debug()
Tested:
* MALTA kernel on gxemul.
Notes
Notes:
svn path=/head/; revision=321919
Diffstat (limited to 'emulators/gxemul')
-rw-r--r-- | emulators/gxemul/files/patch-aa | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/emulators/gxemul/files/patch-aa b/emulators/gxemul/files/patch-aa new file mode 100644 index 000000000000..752e7f318aae --- /dev/null +++ b/emulators/gxemul/files/patch-aa @@ -0,0 +1,32 @@ +--- src/devices/dev_wdc.cc.orig 2013-06-27 18:10:50.000000000 -0700 ++++ src/devices/dev_wdc.cc 2013-06-27 18:11:13.000000000 -0700 +@@ -274,12 +274,12 @@ + + (int64_t)d->head * d->sectors_per_track[d->drive] + + (int64_t)d->heads[d->drive] * d->sectors_per_track[d->drive] * cyl); + +-#if 0 ++#if 1 + /* LBA: */ + if (d->lba) + offset = 512 * (((d->head & 0xf) << 24) + (cyl << 8) + + d->sector); +- printf("WDC read from offset %lli\n", (long long)offset); ++ debug("WDC read from offset %lli\n", (long long)offset); + #endif + + while (count > 0) { +@@ -320,12 +320,12 @@ + uint64_t offset = 512 * (d->sector - 1 + + (int64_t)d->head * d->sectors_per_track[d->drive] + + (int64_t)d->heads[d->drive] * d->sectors_per_track[d->drive] * cyl); +-#if 0 ++#if 1 + /* LBA: */ + if (d->lba) + offset = 512 * (((d->head & 0xf) << 24) + + (cyl << 8) + d->sector); +- printf("WDC write to offset %lli\n", (long long)offset); ++ debug("WDC write to offset %lli\n", (long long)offset); + #endif + + d->write_in_progress = d->cur_command; |