Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1400392
| From | Benjamin Herrenschmidt <benh@kernel.crashing.org> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: usb: dwc2: regression on MyBook Live Duo / Canyonlands since 4.3.0-rc4 |
| Date | 2016-05-13 00:20 +0200 |
| Message-ID | <ry77z-6Pl-5@gated-at.bofh.it> (permalink) |
| References | <rwvnI-6dm-7@gated-at.bofh.it> <rx20i-6qo-7@gated-at.bofh.it> <rxahc-69M-11@gated-at.bofh.it> <rxVzt-30G-13@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
On Thu, 2016-05-12 at 11:58 +0200, Christian Lamparter wrote: > > > http://www.linuxplumbersconf.org/2012/wp-content/uploads/2012/09/2012-lpc-ref-big-little-endian-herrenschmidt.odp > > > > but there are at least two more twists that you completely missed here: > > > > - Some architectures (e.g. ARMv5 "BE32" mode in IXP4xx, surely some others) > > do not implement big-endian mode by wiring up the data lines between the > > bus and the CPU differently between big- and little-endian mode like > > powerpc and armv7 "BE8" do, but instead they swizzle the *address* lines > > on 8-bit and 16-bit addresses. The effect of that is that normal RAM > > accesses work as expected both ways, and devices that are accessed using > > 32-bit MMIO ops never need any byteswap (you actually get "native > > endian") while MMIO with 8 and 16 bit width does something completely > > unexpected and touches the wrong register. Having an explicit byteswap > > on the PCI host bridge gets you the expected addresses again for 8-bit > > cycles but it also means that readl()/writel() again need to swap the > > data. Right. Old PowerPC did that too and it's completely stupid. Thankfully most vendors grew a clue since then and this practice has slowly fallen into oblivion. > > - Some other architectures (e.g. Broadcom MIPS) apparently are even fancier > > and use a strapping pin on the SoC flips the endianess of the CPU core > > at the same time as all the peripheral MMIO registers, with the intention > > of never requiring any byte swaps. I believe they are implemented careful > > enough to actually get this right, but it confuses the heck out of > > Linux drivers that don't expect this. Right. Drivers like that will need an explicit test in the accessors. Cheers, Ben.
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Re: usb: dwc2: regression on MyBook Live Duo / Canyonlands since 4.3.0-rc4 Christian Lamparter <chunkeey@googlemail.com> - 2016-05-08 13:50 +0200
Re: usb: dwc2: regression on MyBook Live Duo / Canyonlands since 4.3.0-rc4 Benjamin Herrenschmidt <benh@au1.ibm.com> - 2016-05-09 02:30 +0200
Re: usb: dwc2: regression on MyBook Live Duo / Canyonlands since 4.3.0-rc4 Arnd Bergmann <arnd@arndb.de> - 2016-05-09 12:40 +0200
Re: usb: dwc2: regression on MyBook Live Duo / Canyonlands since 4.3.0-rc4 Felipe Balbi <felipe.balbi@linux.intel.com> - 2016-05-09 12:50 +0200
Re: usb: dwc2: regression on MyBook Live Duo / Canyonlands since 4.3.0-rc4 Arnd Bergmann <arnd@arndb.de> - 2016-05-09 17:10 +0200
Re: usb: dwc2: regression on MyBook Live Duo / Canyonlands since 4.3.0-rc4 Arnd Bergmann <arnd@arndb.de> - 2016-05-09 22:20 +0200
Re: usb: dwc2: regression on MyBook Live Duo / Canyonlands since 4.3.0-rc4 Benjamin Herrenschmidt <benh@kernel.crashing.org> - 2016-05-10 00:40 +0200
Re: usb: dwc2: regression on MyBook Live Duo / Canyonlands since 4.3.0-rc4 Arnd Bergmann <arnd@arndb.de> - 2016-05-10 09:30 +0200
Re: usb: dwc2: regression on MyBook Live Duo / Canyonlands since 4.3.0-rc4 Christian Lamparter <chunkeey@googlemail.com> - 2016-05-12 12:00 +0200
Re: usb: dwc2: regression on MyBook Live Duo / Canyonlands since 4.3.0-rc4 Arnd Bergmann <arnd@arndb.de> - 2016-05-12 14:00 +0200
Re: usb: dwc2: regression on MyBook Live Duo / Canyonlands since 4.3.0-rc4 Christian Lamparter <chunkeey@googlemail.com> - 2016-05-12 15:40 +0200
Re: usb: dwc2: regression on MyBook Live Duo / Canyonlands since 4.3.0-rc4 John Youn <John.Youn@synopsys.com> - 2016-05-12 20:50 +0200
Re: usb: dwc2: regression on MyBook Live Duo / Canyonlands since 4.3.0-rc4 Christian Lamparter <chunkeey@googlemail.com> - 2016-05-12 22:40 +0200
Re: usb: dwc2: regression on MyBook Live Duo / Canyonlands since 4.3.0-rc4 Arnd Bergmann <arnd@arndb.de> - 2016-05-12 23:00 +0200
Re: usb: dwc2: regression on MyBook Live Duo / Canyonlands since 4.3.0-rc4 John Youn <John.Youn@synopsys.com> - 2016-05-12 23:00 +0200
Re: usb: dwc2: regression on MyBook Live Duo / Canyonlands since 4.3.0-rc4 Arnd Bergmann <arnd@arndb.de> - 2016-05-14 21:50 +0200
Re: usb: dwc2: regression on MyBook Live Duo / Canyonlands since 4.3.0-rc4 John Youn <John.Youn@synopsys.com> - 2016-05-18 02:00 +0200
Re: usb: dwc2: regression on MyBook Live Duo / Canyonlands since 4.3.0-rc4 Christian Lamparter <chunkeey@googlemail.com> - 2016-05-18 21:20 +0200
Re: usb: dwc2: regression on MyBook Live Duo / Canyonlands since 4.3.0-rc4 Arnd Bergmann <arnd@arndb.de> - 2016-05-18 23:10 +0200
Re: usb: dwc2: regression on MyBook Live Duo / Canyonlands since 4.3.0-rc4 John Youn <John.Youn@synopsys.com> - 2016-05-19 02:40 +0200
Re: usb: dwc2: regression on MyBook Live Duo / Canyonlands since 4.3.0-rc4 Benjamin Herrenschmidt <benh@kernel.crashing.org> - 2016-05-13 00:20 +0200
Re: usb: dwc2: regression on MyBook Live Duo / Canyonlands since 4.3.0-rc4 Benjamin Herrenschmidt <benh@kernel.crashing.org> - 2016-05-10 00:50 +0200
Re: usb: dwc2: regression on MyBook Live Duo / Canyonlands since 4.3.0-rc4 Benjamin Herrenschmidt <benh@kernel.crashing.org> - 2016-05-10 00:40 +0200
Re: usb: dwc2: regression on MyBook Live Duo / Canyonlands since 4.3.0-rc4 Benjamin Herrenschmidt <benh@au1.ibm.com> - 2016-05-09 16:10 +0200
Re: usb: dwc2: regression on MyBook Live Duo / Canyonlands since 4.3.0-rc4 John Youn <John.Youn@synopsys.com> - 2016-05-09 22:30 +0200
Re: usb: dwc2: regression on MyBook Live Duo / Canyonlands since 4.3.0-rc4 Arnd Bergmann <arnd@arndb.de> - 2016-05-09 22:40 +0200
Re: usb: dwc2: regression on MyBook Live Duo / Canyonlands since 4.3.0-rc4 John Youn <John.Youn@synopsys.com> - 2016-05-09 23:20 +0200
Re: usb: dwc2: regression on MyBook Live Duo / Canyonlands since 4.3.0-rc4 Arnd Bergmann <arnd@arndb.de> - 2016-05-09 23:40 +0200
csiph-web