From: Arnd Bergmann <arnd-r2nGTMty4D4@public.gmane.org>
To: balbi-l0cyMroinI0@public.gmane.org
Cc: Hans de Goede <hdegoede-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
Kishon Vijay Abraham I <kishon-l0cyMroinI0@public.gmane.org>,
Maxime Ripard
<maxime.ripard-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>,
Chen-Yu Tsai <wens-jdAy2FN1RRM@public.gmane.org>,
Roman Byshko <rbyshko-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
linux-usb-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org,
devicetree <devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
linux-sunxi-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
Subject: Re: [PATCH v2 04/13] musb: Do not use musb_read[b|w] / _write[b|w] wrappers in generic fifo functions
Date: Mon, 11 May 2015 18:21:26 +0200 [thread overview]
Message-ID: <23713585.ok6F49RAiY@wuerfel> (raw)
In-Reply-To: <20150511155846.GH19476-HgARHv6XitJaoMGHk7MhZQC/G2K4zDHf@public.gmane.org>
On Monday 11 May 2015 10:58:46 Felipe Balbi wrote:
> On Fri, Mar 20, 2015 at 08:11:13PM +0100, Hans de Goede wrote:
> > The generic fifo functions already use non wrapped accesses in various
> > cases through the iowrite#_rep functions, and all platforms which override
> > the default musb_read[b|w] / _write[b|w] functions also provide their own
> > fifo access functions, so we can safely drop the unnecessary indirection
> > from the fifo access functions.
> >
> > Signed-off-by: Hans de Goede <hdegoede-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
> > ---
> > drivers/usb/musb/musb_core.c | 8 ++++----
> > 1 file changed, 4 insertions(+), 4 deletions(-)
> >
> > diff --git a/drivers/usb/musb/musb_core.c b/drivers/usb/musb/musb_core.c
> > index 01ed3a6..016b5b9 100644
> > --- a/drivers/usb/musb/musb_core.c
> > +++ b/drivers/usb/musb/musb_core.c
> > @@ -313,7 +313,7 @@ static void musb_default_write_fifo(struct musb_hw_ep *hw_ep, u16 len,
> > index += len & ~0x03;
> > }
> > if (len & 0x02) {
> > - musb_writew(fifo, 0, *(u16 *)&src[index]);
> > + __raw_writew(*(u16 *)&src[index], fifo);
>
> not all architectures provide __raw_* accessors, right ?
>
>
They do, but you shouldn't use them for MMIO registers normall because of
endianess concerns.
However, FIFOs are special, and I'd assume that the code before this patch
does not work on big-endian systems on which musb_writew is defined
as a little-endian accessor (writew, writew_relaxed, or iowrite16).
The reason is that a FIFO generally exposes bytes in streaming order,
so the first byte in the FIFO has to be copied from a memory buffer
first, while writew would do a byte swap here that is used for MMIO.
This should be reflected in the changelog, and possibly tested with a
big-endian kernel, but the patch looks correct to me.
Arnd
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2015-05-11 16:21 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-03-20 19:11 [PATCH v2 00/13] musb: Add support for the Allwinner sunxi musb controller Hans de Goede
[not found] ` <1426878682-14521-1-git-send-email-hdegoede-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2015-03-20 19:11 ` [PATCH v2 01/13] phy-sun4i-usb: Add full support for usb0 phy / OTG Hans de Goede
2015-03-20 19:11 ` [PATCH v2 02/13] musb: Make musb_write_rxfun* and musb_write_rxhub* work like their tx versions Hans de Goede
2015-03-20 19:11 ` [PATCH v2 03/13] musb: Make busctl_offset an io-op rather then a define Hans de Goede
2015-03-20 19:11 ` [PATCH v2 04/13] musb: Do not use musb_read[b|w] / _write[b|w] wrappers in generic fifo functions Hans de Goede
[not found] ` <1426878682-14521-5-git-send-email-hdegoede-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2015-05-11 15:58 ` Felipe Balbi
[not found] ` <20150511155846.GH19476-HgARHv6XitJaoMGHk7MhZQC/G2K4zDHf@public.gmane.org>
2015-05-11 16:21 ` Arnd Bergmann [this message]
2015-05-11 18:14 ` Hans de Goede
[not found] ` <5550F174.6000709-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2015-05-11 18:53 ` [linux-sunxi] " Arnd Bergmann
2015-05-11 19:11 ` Hans de Goede
2015-03-20 19:11 ` [PATCH v2 05/13] musb: Fix platform code being unable to override ep access ops Hans de Goede
2015-03-20 19:11 ` [PATCH v2 06/13] musb: Add support for the Allwinner sunxi musb controller Hans de Goede
[not found] ` <1426878682-14521-7-git-send-email-hdegoede-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2015-03-21 2:04 ` Chen-Yu Tsai
[not found] ` <CAGb2v661EFghwEPER5LEib5RSy1r=dhwBewebJCUO_1sWa5sFQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-03-21 9:30 ` Hans de Goede
2015-05-26 15:48 ` Felipe Balbi
[not found] ` <20150526154802.GL26599-HgARHv6XitJaoMGHk7MhZQC/G2K4zDHf@public.gmane.org>
2015-05-26 16:36 ` Hans de Goede
[not found] ` <5564A10E.3040402-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2015-05-26 17:06 ` Felipe Balbi
2015-03-20 19:11 ` [PATCH v2 07/13] ARM: dts: sun4i: Add USB Dual Role Controller Hans de Goede
2015-03-20 19:11 ` [PATCH v2 08/13] ARM: dts: sun5i: " Hans de Goede
2015-03-20 19:11 ` [PATCH v2 09/13] ARM: dts: sun7i: " Hans de Goede
2015-03-20 19:11 ` [PATCH v2 10/13] ARM: dts: sun4i: Enable USB DRC on Chuwi V7 CW0825 Hans de Goede
2015-03-20 19:11 ` [PATCH v2 11/13] ARM: dts: sun5i: Enable USB DRC on UTOO P66 Hans de Goede
2015-03-20 19:11 ` [PATCH v2 12/13] ARM: dts: sun7i: Enable USB DRC on Cubietruck Hans de Goede
2015-03-20 19:11 ` [PATCH v2 13/13] ARM: dts: sun7i: Enable USB DRC on A20-OLinuxIno-Lime Hans de Goede
2015-03-23 16:49 ` [PATCH v2 00/13] musb: Add support for the Allwinner sunxi musb controller Maxime Ripard
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=23713585.ok6F49RAiY@wuerfel \
--to=arnd-r2ngtmty4d4@public.gmane.org \
--cc=balbi-l0cyMroinI0@public.gmane.org \
--cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=hdegoede-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=kishon-l0cyMroinI0@public.gmane.org \
--cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
--cc=linux-sunxi-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org \
--cc=linux-usb-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=maxime.ripard-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org \
--cc=rbyshko-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=wens-jdAy2FN1RRM@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox