[PATCH] Fix IDE commands issued, fix endian issues, fix non MMIO

Reinoud Zandijk reinoud at NetBSD.org
Fri Apr 16 15:42:44 CEST 2021


ping?

On Wed, Feb 24, 2021 at 10:55:07PM +0100, Reinoud Zandijk wrote:
> Dear Heinrich,
> 
> On Wed, Feb 24, 2021 at 06:57:08PM +0100, Heinrich Schuchardt wrote:
> > On 24.02.21 17:44, Reinoud Zandijk wrote:
> > >
> > > Fixes IDE issues found on the Malta board under Qemu:
> > >
> > > 1) DMA implied commands were sent to the controller in stead of the PIO
> > > variants. The rest of the code is DMA free and written for PIO operation.
> > >
> > > 2) direct pointer access was used to read and write the registers instead
> > > of the inb/inw/outb/outw functions/macros. Registers don't have to be
> > > memory mapped and ATA_CURR_BASE() does not have to return an offset from
> > > address zero.
> > >
> > > 3) Endian isues in ide_ident() and reading/writing data in general. Names
> > > were corrupted and sizes misreported.
> > 
> > It is preferable to have each issue fixed in a separate patch.
> 
> They are related; 2 and 3 are really one and 1 could in theory be separate but
> it won't work on its own.
> 
> > > Tested malta_defconfig and maltael_defconfig to work again in Qemu.
> > 
> > What about the other architectures which can use the driver?
> 
> As for testing, I compile tested an ARM board, edminiv2, successfully, but
> don't know how to invoke qemu for it. As for running the tests, my setup is
> not capable of running the tests since they seem to be for linux only.
> 
> Does the automatic testing check if disks are indeed found correctly and
> checking reading or writing to a disk image?
> 
> With regards,
> Reinoud


More information about the U-Boot mailing list