From: maxime.ripard@free-electrons.com (Maxime Ripard)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 00/15] musb: Add support for the Allwinner sunxi musb controller
Date: Tue, 10 Mar 2015 18:41:16 +0100 [thread overview]
Message-ID: <20150310174116.GX5085@lukather> (raw)
In-Reply-To: <1425933628-9672-1-git-send-email-hdegoede@redhat.com>
On Mon, Mar 09, 2015 at 09:40:13PM +0100, Hans de Goede wrote:
> Hi All,
>
> This patch set has been a while in the making, so I'm very happy to present
> the end result here, and I hope everyone likes it.
>
> Before talking about merging this there are 2 things which I would like to
> point out:
>
> a) The musb controller in the sunxi SoCs uses some SRAM which needs to be
> mapped to the musb controller by poking some bits in the SRAM controller,
> just like the EMAC patches which were send a while back I've chosen to use
> syscon for this, actually 2 of the patches in this set come directly from the
> SRAM mapping patchset for the EMAC.
>
> I know that Maxime is not 100% in favor of using syscon:
> http://lists.infradead.org/pipermail/linux-arm-kernel/2015-January/320221.html
>
> But I disagree with his arguments for writing a special driver for the SRAM
> controller:
And I disagree with your disagreement :)
> 1) syscon was specifically designed for global system control registers like
> this and is fine to use as long as there are no conflicts where 1 bit is of
> interest to multiple drivers, and there is no such conflict here
No. Syscon has been designed for being lazy.
This is a huge abstraction non-sense. You have to put all the logic of
dealing with some external register layout in clients drivers,
including dealing with the different revisions/SoC that are different
from that aspect, and duplicating that code across all client drivers.
> 2) Maxime's other arguments seem to boil down to it would be nice / prettier
> to have a specific driver for this, without really proving a hard need for
> such a driver. But writing such a driver is going to be a lot of work, and
> we've a ton of other work to do, and as said there is no real need for a
> separate driver, syscon works fine for this.
Actually, I already wrote some prototype for this. I'll clean this up
and send it tonight/tomorrow.
> 3) I actually believe that having a specific driver for this is a bad idea,
> because that means inventing a whole new cross driver API for this, and
> getting those right is, hard, a lot of work, and even then one is still likely
> to get it wrong. We can avoid all this by going with the proven syscon solution.
Except that modifying an in-kernel API, especially when we have two
users, is easy. Moving back from syscon is not.
> Maxime, can we please have your ack for moving forward with this using syscon?
> (see above for my arguments why)
If you can address my objections above, sure.
Thanks for your awesome work on this,
Maxime
--
Maxime Ripard, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20150310/4f70d506/attachment-0001.sig>
next prev parent reply other threads:[~2015-03-10 17:41 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-03-09 20:40 [PATCH 00/15] musb: Add support for the Allwinner sunxi musb controller Hans de Goede
2015-03-09 20:40 ` [PATCH 01/15] ARM: sunxi: Add register bit definitions for SRAM mapping syscon Hans de Goede
2015-03-09 20:40 ` [PATCH 02/15] phy-sun4i-usb: Add a helper function to update the iscr register Hans de Goede
2015-03-09 21:47 ` Arnd Bergmann
2015-03-10 8:04 ` Hans de Goede
2015-03-10 8:57 ` Arnd Bergmann
2015-03-10 10:13 ` Hans de Goede
2015-03-10 10:53 ` Kishon Vijay Abraham I
2015-03-10 11:03 ` Hans de Goede
2015-03-11 9:13 ` Kishon Vijay Abraham I
2015-03-11 11:39 ` Hans de Goede
2015-03-11 12:50 ` Kishon Vijay Abraham I
2015-03-11 13:03 ` Hans de Goede
2015-03-11 13:07 ` Kishon Vijay Abraham I
2015-03-11 14:44 ` Hans de Goede
2015-03-09 20:40 ` [PATCH 03/15] musb: Make musb_write_rxfun* and musb_write_rxhub* work like their tx versions Hans de Goede
2015-03-09 20:40 ` [PATCH 04/15] musb: Make busctl_offset an io-op rather then a define Hans de Goede
2015-03-09 20:40 ` [PATCH 05/15] musb: Do not use musb_read[b|w] / _write[b|w] wrappers in generic fifo functions Hans de Goede
2015-03-09 21:50 ` Arnd Bergmann
2015-03-10 7:43 ` Hans de Goede
2015-03-10 8:50 ` Arnd Bergmann
2015-03-10 8:56 ` Hans de Goede
2015-03-10 13:43 ` Arnd Bergmann
2015-03-09 20:40 ` [PATCH 06/15] musb: Fix platform code being unable to override ep access ops Hans de Goede
2015-03-09 20:40 ` [PATCH 07/15] musb: Add support for the Allwinner sunxi musb controller Hans de Goede
2015-03-09 20:40 ` [PATCH 08/15] ARM: dts: sunxi: Add syscon node for controlling SRAM mapping Hans de Goede
2015-03-09 20:40 ` [PATCH 09/15] ARM: dts: sun4i: Add USB Dual Role Controller Hans de Goede
2015-03-09 23:31 ` [linux-sunxi] " Julian Calaby
2015-03-10 9:10 ` Hans de Goede
2015-03-09 20:40 ` [PATCH 10/15] ARM: dts: sun5i: " Hans de Goede
2015-03-09 20:40 ` [PATCH 11/15] ARM: dts: sun7i: " Hans de Goede
2015-03-09 20:40 ` [PATCH 12/15] ARM: dts: sun4i: Enable USB DRC on Chuwi V7 CW0825 Hans de Goede
2015-03-10 15:07 ` Maxime Ripard
2015-03-10 15:23 ` Hans de Goede
2015-03-10 18:17 ` Maxime Ripard
2015-03-09 20:40 ` [PATCH 13/15] ARM: dts: sun5i: Enable USB DRC on UTOO P66 Hans de Goede
2015-03-09 20:40 ` [PATCH 14/15] ARM: dts: sun7i: Enable USB DRC on Cubietruck Hans de Goede
2015-03-09 20:40 ` [PATCH 15/15] ARM: dts: sun7i: Enable USB DRC on A20-OLinuxIno-Lime Hans de Goede
2015-03-09 21:44 ` [PATCH 00/15] musb: Add support for the Allwinner sunxi musb controller Arnd Bergmann
2015-03-10 1:46 ` Chen-Yu Tsai
2015-03-10 7:38 ` Hans de Goede
2015-03-10 8:31 ` Arnd Bergmann
2015-03-10 17:41 ` Maxime Ripard [this message]
2015-03-10 22:35 ` Hans de Goede
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=20150310174116.GX5085@lukather \
--to=maxime.ripard@free-electrons.com \
--cc=linux-arm-kernel@lists.infradead.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