linux-usb.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Christian Eggers <ceggers@arri.de>
To: Richard Leitner <richard.leitner@skidata.com>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Rob Herring <robh@kernel.org>, Rob Herring <robh+dt@kernel.org>,
	<devicetree@vger.kernel.org>, <linux-usb@vger.kernel.org>,
	<linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v3] Add two new configuration drivers for Microchip USB hubs
Date: Mon, 24 Aug 2020 12:31:40 +0200	[thread overview]
Message-ID: <3231735.vQvGARyy4L@n95hx1g2> (raw)
In-Reply-To: <20200817075426.GA560469@pcleri>

Hi Richard,

On Monday, 17 August 2020, 09:54:26 CEST, Richard Leitner wrote:
> Hi Christian,
> sorry for the late reply. My MUA somehow didn't show me that series
> earlier...
likewise... I was on holiday last week.

> I haven't looked into the patches in detail, but at a first glance it
> looks like a lot copy-n-paste.
> Have you thought about merging the (after your series) 3 hub drivers
> into one? Something like a "microchip i2c usb hub driver"?
> Would that be feasible for your point of view?
I'm not sure about the criteria for having separate drivers vs. a combined 
one.
As changing the driver usually requires testing with real hardware, keeping 
them separate may be easier. On the other hand, I already synced some changes 
from usb251xb into "my" drivers, so it is likely that such work will also have 
to done in future.

Rob Herring already suggested to create a common yaml document for the
device tree bindings. It would probably make sense to share the device tree 
code between our drivers. But I would like to keep the "hardware" side of the 
drivers independent, as there are subtle differences between the different hub 
series.

Compared to usb251x, the new drivers don't write the full configuration memory 
of the hub (the configuration memory space is much bigger than 8 bit and has 
many holes). They rely on the defaults after hardware reset on perform read-
modify-write for the properties set in the device tree.

If the usb251xb hubs could be programmed in a similar way, merging all drivers 
should be possible using a mic_usb_hub_ops struct with function pointers for 
applying the (common) device tree properties (e.g. set_product_id(), 
set_device_id(), ..., set_oc_delay(), set_manufacturer_string(), ...).

Best regards
Christian





  reply	other threads:[~2020-08-24 10:32 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-07-22 18:38 [PATCH] Add two new configuration drivers for Microchip USB hubs Christian Eggers
2020-07-22 18:38 ` [PATCH 1/4] dt-bindings: usb: Add Microchip USB253x/USB3x13/USB46x4 support Christian Eggers
2020-07-22 18:38 ` [PATCH 2/4] usb: misc: Add USB253x/xi Hi-Speed Hub Controller Driver Christian Eggers
2020-07-22 18:38 ` [PATCH 3/4] dt-bindings: usb: Add Microchip USB47xx/USB49xx support Christian Eggers
2020-07-23 15:35   ` Rob Herring
2020-07-23 19:29     ` [PATCH v2 " Christian Eggers
2020-07-26  8:41       ` Greg Kroah-Hartman
2020-07-27  8:33         ` [PATCH v3] Add two new configuration drivers for Microchip USB hubs Christian Eggers
2020-07-27  8:33           ` [PATCH v3 1/4] dt-bindings: usb: Add Microchip USB253x/USB3x13/USB46x4 support Christian Eggers
2020-07-31 20:38             ` Rob Herring
2020-07-27  8:33           ` [PATCH v3 2/4] usb: misc: Add USB253x/xi Hi-Speed Hub Controller Driver Christian Eggers
2020-07-27  8:33           ` [PATCH v3 3/4] dt-bindings: usb: Add Microchip USB47xx/USB49xx support Christian Eggers
2020-07-27  8:33           ` [PATCH v3 4/4] usb: misc: Add USB49xx/xi Hi-Speed Hub Controller Driver Christian Eggers
2020-08-17  7:54           ` [PATCH v3] Add two new configuration drivers for Microchip USB hubs Richard Leitner
2020-08-24 10:31             ` Christian Eggers [this message]
2020-07-22 18:38 ` [PATCH 4/4] usb: misc: Add USB49xx/xi Hi-Speed Hub Controller Driver Christian Eggers

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=3231735.vQvGARyy4L@n95hx1g2 \
    --to=ceggers@arri.de \
    --cc=devicetree@vger.kernel.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=richard.leitner@skidata.com \
    --cc=robh+dt@kernel.org \
    --cc=robh@kernel.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;
as well as URLs for NNTP newsgroup(s).