Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1475526
| From | Stephen Boyd <stephen.boyd@linaro.org> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [PATCH v3 03/22] usb: ulpi: Support device discovery via device properties |
| Date | 2016-09-03 03:20 +0200 |
| Message-ID | <sd7MK-6Zb-1@gated-at.bofh.it> (permalink) |
| References | <scomB-15L-3@gated-at.bofh.it> <scomB-15L-13@gated-at.bofh.it> <scXu2-wL-15@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
On Fri, Sep 2, 2016 at 7:09 AM, Heikki Krogerus
<heikki.krogerus@linux.intel.com> wrote:
> Hi,
>
> On Wed, Aug 31, 2016 at 05:40:17PM -0700, Stephen Boyd wrote:
>> @@ -174,14 +219,37 @@ static int ulpi_register(struct device *dev, struct ulpi *ulpi)
>> ulpi->id.product = ulpi_read(ulpi, ULPI_PRODUCT_ID_LOW);
>> ulpi->id.product |= ulpi_read(ulpi, ULPI_PRODUCT_ID_HIGH) << 8;
>>
>> + return 0;
>> +}
>> +
>> +static int ulpi_register(struct device *dev, struct ulpi *ulpi)
>> +{
>> + int ret;
>> +
>> ulpi->dev.parent = dev;
>> ulpi->dev.bus = &ulpi_bus;
>> ulpi->dev.type = &ulpi_dev_type;
>> dev_set_name(&ulpi->dev, "%s.ulpi", dev_name(dev));
>>
>> + if (IS_ENABLED(CONFIG_OF)) {
>
> I don't think you need to check that in this case.
>
>> + ret = ulpi_of_register(ulpi);
>> + if (ret)
>> + return ret;
>> + }
>> +
>> ACPI_COMPANION_SET(&ulpi->dev, ACPI_COMPANION(dev));
>
> ACPI_COMPANION_SET will overwrite the primary fwnode unconditionally,
> so just to play it safe, do this before you call ulpi_of_register().
Ok.
>
>> - request_module("ulpi:v%04xp%04x", ulpi->id.vendor, ulpi->id.product);
>> + ret = ulpi_read_id(ulpi);
>> + /*
>> + * Ignore failure in case of DT node because the device may
>> + * not be powered up yet but we can still match by compatible
>> + */
>> + if (ret && !ulpi->dev.of_node)
>> + return ret;
>> +
>> + if (of_device_request_module(&ulpi->dev))
>> + request_module("ulpi:v%04xp%04x", ulpi->id.vendor,
>> + ulpi->id.product);
>
> I don't think this works in all cases. If of_device_request_module()
> fails and we don't have the id.vendor/product set, we should not
> register the device. It also looks a bit messy.
>
> How about just using of_device_request_module() call as fallback in
> ulpi_read_id() and moving also request_module() call there:
Sure I'll fold it in and test. Should we "goto err" if we can't read
the scratch register though? I would think that's a "real" failure and
we shouldn't try to support DT in that case.
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
[PATCH v3 00/22] Support qcom's HSIC USB and rewrite USB2 HS phy support Stephen Boyd <stephen.boyd@linaro.org> - 2016-09-01 02:50 +0200
[PATCH v3 06/22] usb: chipidea: Add platform flag for wrapper phy management Stephen Boyd <stephen.boyd@linaro.org> - 2016-09-01 02:50 +0200
[PATCH v3 12/22] usb: chipidea: msm: Rely on core to override AHBBURST Stephen Boyd <stephen.boyd@linaro.org> - 2016-09-01 02:50 +0200
[PATCH v3 16/22] usb: chipidea: msm: Restore wrapper settings after reset Stephen Boyd <stephen.boyd@linaro.org> - 2016-09-01 02:50 +0200
[PATCH v3 11/22] usb: chipidea: msm: Mark device as runtime pm active Stephen Boyd <stephen.boyd@linaro.org> - 2016-09-01 02:50 +0200
[PATCH v3 04/22] usb: chipidea: Only read/write OTGSC from one place Stephen Boyd <stephen.boyd@linaro.org> - 2016-09-01 02:50 +0200
Re: [PATCH v3 04/22] usb: chipidea: Only read/write OTGSC from one place Peter Chen <hzpeterchen@gmail.com> - 2016-09-02 05:00 +0200
[PATCH v3 17/22] usb: chipidea: msm: Make platform data driver local instead of global Stephen Boyd <stephen.boyd@linaro.org> - 2016-09-01 02:50 +0200
[PATCH v3 03/22] usb: ulpi: Support device discovery via device properties Stephen Boyd <stephen.boyd@linaro.org> - 2016-09-01 02:50 +0200
Re: [PATCH v3 03/22] usb: ulpi: Support device discovery via device properties Heikki Krogerus <heikki.krogerus@linux.intel.com> - 2016-09-02 16:20 +0200
Re: [PATCH v3 03/22] usb: ulpi: Support device discovery via device properties Stephen Boyd <stephen.boyd@linaro.org> - 2016-09-03 03:20 +0200
[PATCH v3 20/22] usb: chipidea: msm: Be silent on probe defer errors Stephen Boyd <stephen.boyd@linaro.org> - 2016-09-01 02:50 +0200
[PATCH v3 15/22] usb: chipidea: msm: Mux over secondary phy at the right time Stephen Boyd <stephen.boyd@linaro.org> - 2016-09-01 02:50 +0200
[PATCH v3 13/22] usb: chipidea: msm: Use hw_write_id_reg() instead of writel Stephen Boyd <stephen.boyd@linaro.org> - 2016-09-01 02:50 +0200
[PATCH v3 19/22] usb: chipidea: msm: Handle phy power states Stephen Boyd <stephen.boyd@linaro.org> - 2016-09-01 02:50 +0200
[PATCH v3 22/22] phy: Add support for Qualcomm's USB HS phy Stephen Boyd <stephen.boyd@linaro.org> - 2016-09-01 02:50 +0200
[PATCH v3 05/22] usb: chipidea: Handle extcon events properly Stephen Boyd <stephen.boyd@linaro.org> - 2016-09-01 02:50 +0200
[PATCH v3 01/22] of: device: Support loading a module with OF based modalias Stephen Boyd <stephen.boyd@linaro.org> - 2016-09-01 02:50 +0200
[PATCH v3 02/22] of: device: Export of_device_{get_modalias,uvent_modalias} to modules Stephen Boyd <stephen.boyd@linaro.org> - 2016-09-01 02:50 +0200
[PATCH v3 14/22] usb: chipidea: msm: Add proper clk and reset support Stephen Boyd <stephen.boyd@linaro.org> - 2016-09-01 02:50 +0200
[PATCH v3 09/22] usb: chipidea: Add support for ULPI PHY bus Stephen Boyd <stephen.boyd@linaro.org> - 2016-09-01 02:50 +0200
Re: [PATCH v3 09/22] usb: chipidea: Add support for ULPI PHY bus Peter Chen <hzpeterchen@gmail.com> - 2016-09-02 05:00 +0200
[PATCH v3 18/22] usb: chipidea: msm: Add reset controller for PHY POR bit Stephen Boyd <stephen.boyd@linaro.org> - 2016-09-01 02:50 +0200
Re: [PATCH v3 18/22] usb: chipidea: msm: Add reset controller for PHY POR bit Peter Chen <hzpeterchen@gmail.com> - 2016-09-02 05:50 +0200
[PATCH v3 10/22] usb: chipidea: Consolidate extcon notifiers Stephen Boyd <stephen.boyd@linaro.org> - 2016-09-01 02:50 +0200
Re: [PATCH v3 10/22] usb: chipidea: Consolidate extcon notifiers Peter Chen <hzpeterchen@gmail.com> - 2016-09-02 05:30 +0200
Re: [PATCH v3 10/22] usb: chipidea: Consolidate extcon notifiers Stephen Boyd <stephen.boyd@linaro.org> - 2016-09-03 03:10 +0200
Re: [PATCH v3 10/22] usb: chipidea: Consolidate extcon notifiers Peter Chen <hzpeterchen@gmail.com> - 2016-09-05 04:40 +0200
Re: [PATCH v3 10/22] usb: chipidea: Consolidate extcon notifiers Stephen Boyd <stephen.boyd@linaro.org> - 2016-09-06 19:50 +0200
[PATCH v3 21/22] phy: Add support for Qualcomm's USB HSIC phy Stephen Boyd <stephen.boyd@linaro.org> - 2016-09-01 02:50 +0200
Re: [PATCH v3 21/22] phy: Add support for Qualcomm's USB HSIC phy Vivek Gautam <vivek.gautam@codeaurora.org> - 2016-09-01 08:20 +0200
Re: [PATCH v3 21/22] phy: Add support for Qualcomm's USB HSIC phy vivek.gautam@codeaurora.org - 2016-09-02 13:30 +0200
[PATCH v3 07/22] usb: chipidea: Notify events when switching host mode Stephen Boyd <stephen.boyd@linaro.org> - 2016-09-01 02:50 +0200
csiph-web