linux-usb.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Tzung-Bi Shih <tzungbi@kernel.org>
To: Krzysztof Kozlowski <krzk@kernel.org>
Cc: Pavan Holla <pholla@chromium.org>,
	abhishekpandit@chromium.org, bleung@chromium.org,
	chrome-platform@lists.linux.dev, gregkh@linuxfoundation.org,
	groeck@chromium.org, heikki.krogerus@linux.intel.com,
	linux-kernel@vger.kernel.org, linux-usb@vger.kernel.org
Subject: Re: [PATCH v2 3/3] platform/chrome: cros_ec_ucsi: Implement UCSI PDC driver
Date: Thu, 28 Mar 2024 17:57:51 +0800	[thread overview]
Message-ID: <ZgU_H4zceFlQUz8f@google.com> (raw)
In-Reply-To: <2357d78f-8879-41ca-b0e1-6593400252c8@kernel.org>

On Thu, Mar 28, 2024 at 09:36:54AM +0100, Krzysztof Kozlowski wrote:
> On 28/03/2024 03:32, Pavan Holla wrote:
> > On Tue, Mar 26, 2024 at 9:59 PM Krzysztof Kozlowski <krzk@kernel.org> wrote:
> >>
> >> On 27/03/2024 04:39, Pavan Holla wrote:
> >>> Hi Krzysztof,
> >>>
> >>> Thanks for the review.
> >>>
> >>> On Tue, Mar 26, 2024 at 1:47 AM Krzysztof Kozlowski <krzk@kernel.org> wrote:
> >>>> Nothing improved.
> >>>
> >>> Yes. I only added maintainers of drivers/platform/chrome in v2. I am
> >>> still investigating why MODULE_ALIAS() is required.
> >>
> >> Heh, I wrote why. You miss ID table.
> > 
> > This driver is going to be used by the cros_ec_dev.c MFD. The UCSI device doesn’t
> > have an ACPI or OF entry, so I am not sure how I can use MODULE_DEVICE_TABLE
> > here. If I don’t use MODULE_ALIAS(“platform:” DRV_NAME),
> > https://elixir.bootlin.com/linux/latest/source/drivers/mfd/cros_ec_dev.c#L206
> > isn’t able to automatically associate the driver with the device at boot.
> > I haven’t upstreamed the change in cros_ec_dev.c yet, but the code is similar to
> > existing code for drivers/platform/chrome/cros_usbpd_logger.c. There are many
> > other occurrences of the same MODULE_ALIAS pattern:
> 
> Just open other platform drivers and look how it is done there. Or ask
> colleagues. There is absolutely no one in entire Chromium/google who
> ever wrote platform_driver? platform_driver has ID table for matching.
> 
> Otherwise how do you expect this to be matched? How your driver is being
> matched and device bound? By fallback, right? So what is the primary method?

Those platform devices are adding in drivers/mfd/cros_ec_dev.c via
mfd_add_hotplug_devices().

By looking other use cases of mfd_add_hotplug_devices():
$ grep -R --files-with-matches mfd_add_hotplug_devices drivers/mfd/
drivers/mfd/dln2.c
drivers/mfd/cros_ec_dev.c
drivers/mfd/viperboard.c

They also have no ID tables and need MODULE_ALIAS().
- drivers/gpio/gpio-dln2.c
- drivers/i2c/busses/i2c-dln2.c
- drivers/spi/spi-dln2.c
- drivers/iio/adc/dln2-adc.c
- drivers/gpio/gpio-viperboard.c
- drivers/i2c/busses/i2c-viperboard.c
- drivers/iio/adc/viperboard_adc.c

I'm not sure whether using the path results in:
- Lack of device ID table.
- Need MODULE_ALIAS().
in the platform device drivers.  And perhaps it relies on the fallback match?

  reply	other threads:[~2024-03-28  9:57 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-03-25 23:42 [PATCH v2 0/3] usb: typec: Implement UCSI driver for ChromeOS Pavan Holla
2024-03-25 23:42 ` [PATCH v2 1/3] usb: typec: ucsi: Provide interface for UCSI transport Pavan Holla
2024-03-25 23:42 ` [PATCH v2 2/3] usb: typec: ucsi: Import " Pavan Holla
2024-03-27 11:22   ` Heikki Krogerus
2024-03-27 22:40     ` Pavan Holla
2024-03-25 23:42 ` [PATCH v2 3/3] platform/chrome: cros_ec_ucsi: Implement UCSI PDC driver Pavan Holla
2024-03-26  8:46   ` Krzysztof Kozlowski
2024-03-27  3:39     ` Pavan Holla
2024-03-27  4:59       ` Krzysztof Kozlowski
2024-03-28  2:32         ` Pavan Holla
2024-03-28  8:36           ` Krzysztof Kozlowski
2024-03-28  9:57             ` Tzung-Bi Shih [this message]
2024-03-28 12:16               ` Krzysztof Kozlowski
2024-03-29  1:37                 ` Tzung-Bi Shih
2024-03-28 15:32   ` Dmitry Baryshkov
2024-03-29 15:08     ` Pavan Holla
2024-03-29 15:13       ` Dmitry Baryshkov
2024-04-01 20:32         ` Pavan Holla

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=ZgU_H4zceFlQUz8f@google.com \
    --to=tzungbi@kernel.org \
    --cc=abhishekpandit@chromium.org \
    --cc=bleung@chromium.org \
    --cc=chrome-platform@lists.linux.dev \
    --cc=gregkh@linuxfoundation.org \
    --cc=groeck@chromium.org \
    --cc=heikki.krogerus@linux.intel.com \
    --cc=krzk@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=pholla@chromium.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).