Re: [PATCH] can: flexcan: Implement CAN Runtime PM

From: Marc Kleine-Budde
Date: Tue Nov 27 2018 - 02:52:26 EST


On 11/27/18 8:44 AM, Joakim Zhang wrote:
>>> Flexcan will be disabled during suspend if no wakeup function required
>>> and enabled after resume accordingly. During this period, we could
>>> explicitly disable clocks.
>>>
>>> Implement Runtime PM which will:
>>> 1) Keep device in suspend state (clocks disabled) if it's not openned
>>> 2) Make Power Domain framework be able to shutdown the corresponding
>>> power domain of this device.
>>
>> Without CONFIG_PM the device fails to probe:
>>
>>> [ 214.420606] flexcan 2090000.flexcan: 2090000.flexcan supply xceiver
>>> not found, using dummy regulator [ 214.445952] flexcan
>>> 2090000.flexcan: Linked as a consumer to regulator.0 [ 214.453448]
>>> flexcan 2090000.flexcan: registering netdev failed [ 214.459666]
>>> flexcan 2090000.flexcan: Dropping the link to regulator.0 [
>>> 214.472066] flexcan: probe of 2090000.flexcan failed with error -110

> I would sent V2 rebased on patch "can: flexcan: add self wakeup
> support", and runtime pm works normally on MX6SX-SDB and MX7D-SDB.
> So, could you tell me which board you tested on that causes the
> device probe failed?

I tested on an imx6dl riotboard
(https://elixir.bootlin.com/linux/latest/source/arch/arm/boot/dts/imx6dl-riotboard.dts
+ patches to enable CAN1) with an external PHY.

> And that CONFIG_PM has set in imx_v6_v7_defconfig which config file I used.

I disabled CONFIG_PM on purpose.

Marc

--
Pengutronix e.K. | Marc Kleine-Budde |
Industrial Linux Solutions | Phone: +49-231-2826-924 |
Vertretung West/Dortmund | Fax: +49-5121-206917-5555 |
Amtsgericht Hildesheim, HRA 2686 | http://www.pengutronix.de |