Messages in this thread | | | Date | Sun, 6 Jun 1999 11:21:00 -0700 | From | "David S. Miller" <> | Subject | Re: RFC: Devices, buses and hotplug |
| |
Date: Sun, 06 Jun 1999 13:53:51 -0400 From: Jeff Garzik <jgarzik@pobox.com>
This is also very valuable. The newer S3 cards (and others as well) fully support big endian as well as little endian, and it would be nice to avoid the byteswapping that occurs in some current read*() implementations, such as on PPC (and Sparc too?).
No, it is invaluable and leads to sloppy and inconsistant coding.
Byte swapping happens transparently on Sparc for PCI devices, the normal read{b,w,l}() etc. interfaces are used for everything and it just works.
It works because we architected Sparc to map PCI areas in the proper endianness.
The end result is that you should not need "big endian" supporting PCI devices, and in fact I consider such devices silly. Little endian is the native PCI byte ordering, and any worthwhile architecture we care about has hardware facilities to make them accessible at zero cost (either via MMU mappings of device areas, or endianness attributes in the load/store instructions themselves).
In general, when you start seeing a lot of "knobs" in an interface, it starts to enter ugly territory, let's avoid ending up with a mess like Solaris's DDI ok? :-)
Later, David S. Miller davem@redhat.com
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |