Re: Removing BROKEN scsi drivers

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Nov 15, 2005 at 01:11:47PM +0100, Kars de Jong wrote:
> With all m68k 53c700 implementations currently supported there should be
> no byteswapping done in io{read,write}32(), but that doesn't hold for
> each bus.
> 
> So until we can specify in some way how the io{read,write}{16,32}()
> function should behave on a certain memory region, I see no way to
> integrate this cleanly. For now I am inclined to do something like this
> in 53c700.h:
> 
> #ifdef CONFIG_M68K
>         iowrite32be(bS_to_io(value), hostdata->base + reg);
> #else
>         iowrite32(bS_to_io(value), hostdata->base + reg);
> #endif
> 
> etc.
> 
> IMHO that's cleaner than hardcoding these functions to do no
> byteswapping at all in include/asm-m68k/io.h. Plus that breaks when a
> multi-config kernel is built (like one with PCMCIA and this SCSI driver,
> because the Amiga PCMCIA implementation does need byteswapping). Much
> like what you get now when you build a kernel with APNE and ZORRO8390
> drivers for instance.

I thought that was what the bS_to_io() and friends were for.

In any case, I agree with you.  The iomap call should let you specify
whether this is a big-endian or little-endian region.  Unfortunately,
James Bottomley disagreed and we now have the ioread16be family of
functions.
-
: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux