Re: [RFC] ARM: OMAP2+: hwmod: don't touch hwmod if disabled

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 25 July 2017 at 17:03, Tony Lindgren <tony@xxxxxxxxxxx> wrote:
> * Dave Gerlach <d-gerlach@xxxxxx> [170725 07:18]:
>>
>> This patch will introduce all sorts of chaos with PM low power modes in addition
>> to leaving many IPs in undefined power states. What happens on a system when RTC
>> is present and powered but is marked disabled in the DT? Nothing, which means it
>> is just left powered for no reason at all.
>
> What status = "disabled" means is that Linux does not know about the
> device at all. We are not following the standard right now, and that's why I
> introduced status = "incomplete" which means the device driver can probe and
> bail out after idling the device.

I was also interpreting it this way. But I can live with simply
removing the node. I
didn't think about that to be honest.
Now I did the following in the devicetree:
/delete-node/ &rtc;
This works fine but now I get the following message:
[    0.247298] omap_hwmod: rtc: no dt node
[    0.251341] ------------[ cut here ]------------
[    0.256258] WARNING: CPU: 0 PID: 1 at
arch/arm/mach-omap2/omap_hwmod.c:2359 _init.constprop.18+0x414/0x4a8
[    0.266297] omap_hwmod: rtc: doesn't have mpu register target base
[    0.272733] Modules linked in:
[    0.275994] CPU: 0 PID: 1 Comm: swapper/0 Not tainted
4.12.0-00008-gadd83f8 #225
[    0.283687] Hardware name: Generic AM33XX (Flattened Device Tree)
[    0.290080] [<c03112b4>] (unwind_backtrace) from [<c030c39c>]
(show_stack+0x10/0x14)
[    0.298143] [<c030c39c>] (show_stack) from [<c0613940>]
(dump_stack+0x90/0xa4)
[    0.305678] [<c0613940>] (dump_stack) from [<c0344034>] (__warn+0xec/0x104)
[    0.312937] [<c0344034>] (__warn) from [<c0344084>]
(warn_slowpath_fmt+0x38/0x48)
[    0.320730] [<c0344084>] (warn_slowpath_fmt) from [<c1211d98>]
(_init.constprop.18+0x414/0x4a8)
[    0.329774] [<c1211d98>] (_init.constprop.18) from [<c1212334>]
(__omap_hwmod_setup_all+0x40/0x100)
[    0.339170] [<c1212334>] (__omap_hwmod_setup_all) from [<c0301f30>]
(do_one_initcall+0x40/0x16c)
[    0.348299] [<c0301f30>] (do_one_initcall) from [<c1200de8>]
(kernel_init_freeable+0x164/0x200)
[    0.357341] [<c1200de8>] (kernel_init_freeable) from [<c0cd64ec>]
(kernel_init+0x8/0x110)
[    0.365853] [<c0cd64ec>] (kernel_init) from [<c0307ef8>]
(ret_from_fork+0x14/0x3c)
[    0.373763] ---[ end trace 2556e9179495fcaf ]---
[    0.396526] omap_hwmod: debugss: _wait_target_disable failed

Beside that it is booting without another modification:)

Would it be acceptable to check in _init if a node for the specific
module exists and if not set it to _HWMOD_STATE_DISABLED? The check
already exists but it will continue with the initialization.

Thanks so far,
Stefan
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux