On 04/18/2016 11:37 PM, Guenter Roeck wrote: > Hi, > + linux-omap, linux-arm > commit 'ARM: OMAP: Catch callers of revision information prior to it > being populated' results in a runtime warning on various non-OMAP > architectures. I have seen it with the following qemu tests. > > arm:vexpress-a9:multi_v7_defconfig:vexpress-v2p-ca9 > arm:vexpress-a15:multi_v7_defconfig:vexpress-v2p-ca15-tc1 > arm:xilinx-zynq-a9:multi_v7_defconfig:zynq-zc702 > arm:xilinx-zynq-a9:multi_v7_defconfig:zynq-zc706 > arm:xilinx-zynq-a9:multi_v7_defconfig:zynq-zed > arm:midway:multi_v7_defconfig:ecx-2000 > arm:smdkc210:multi_v7_defconfig:exynos4210-smdkv310 > > It is also reported by kernelci.org in at least one boot test for imx6q-cm-fx6. Thanks for the report... :( > > The warning is as follows. > > ------------[ cut here ]------------ > WARNING: CPU: 0 PID: 1 at arch/arm/mach-omap2/id.c:49 omap_rev+0x3c/0x50 > Modules linked in: > CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.6.0-rc2-next-20160411 #1 > Hardware name: SAMSUNG EXYNOS (Flattened Device Tree) > [<c030f970>] (unwind_backtrace) from [<c030b094>] (show_stack+0x10/0x14) > [<c030b094>] (show_stack) from [<c0585424>] (dump_stack+0x84/0xa4) > [<c0585424>] (dump_stack) from [<c0341774>] (__warn+0xd4/0x100) > [<c0341774>] (__warn) from [<c03417c0>] (warn_slowpath_null+0x20/0x28) > [<c03417c0>] (warn_slowpath_null) from [<c0324024>] (omap_rev+0x3c/0x50) > [<c0324024>] (omap_rev) from [<c1114a18>] (__omap4_sar_ram_init+0x8/0x88) > [<c1114a18>] (__omap4_sar_ram_init) from [<c0301e5c>] (do_one_initcall+0x3c/0x16c) > [<c0301e5c>] (do_one_initcall) from [<c1100ccc>] (kernel_init_freeable+0x70/0x1ec) > [<c1100ccc>] (kernel_init_freeable) from [<c0b495e4>] (kernel_init+0x8/0x110) > [<c0b495e4>] (kernel_init) from [<c0307f78>] (ret_from_fork+0x14/0x3c) > ---[ end trace cb88537fdc8fa200 ]--- > > Please have a look. Tony, Should we get rid of omap_initcall callers(move them into board-generic call path or lower the check not to include default of 0? we have the following users: > $ git grep omap_".*"_initcall arch/arm/mach-omap2/ > arch/arm/mach-omap2/board-n8x0.c:omap_late_initcall(n8x0_late_initcall); > arch/arm/mach-omap2/board-rx51-video.c:omap_subsys_initcall(rx51_video_init); > arch/arm/mach-omap2/devices.c:omap_postcore_initcall(omap3_l3_init); > arch/arm/mach-omap2/devices.c:omap_arch_initcall(omap2_init_devices); > arch/arm/mach-omap2/devices.c:omap_postcore_initcall(omap_gpmc_init); > arch/arm/mach-omap2/dma.c:omap_arch_initcall(omap2_system_dma_init); > arch/arm/mach-omap2/gpio.c:omap_postcore_initcall(omap2_gpio_init); > arch/arm/mach-omap2/hdq1w.c:omap_arch_initcall(omap_init_hdq); > arch/arm/mach-omap2/i2c.c:omap_subsys_initcall(omap_i2c_cmdline); > arch/arm/mach-omap2/id.c:omap_device_initcall(omap_feed_randpool); > arch/arm/mach-omap2/mcbsp.c:omap_arch_initcall(omap2_mcbsp_init); > arch/arm/mach-omap2/omap2-restart.c:omap_postcore_initcall(omap2xxx_common_look_up_clks_for_reset); > arch/arm/mach-omap2/omap4-common.c:omap_arch_initcall(omap4_sram_init); > arch/arm/mach-omap2/omap4-common.c:omap_early_initcall(omap4_sar_ram_init); ^^ warning was generated here > arch/arm/mach-omap2/omap_device.c:omap_postcore_initcall(omap_device_init); > arch/arm/mach-omap2/omap_device.c:omap_late_initcall_sync(omap_device_late_init); > arch/arm/mach-omap2/omap_hwmod.c:omap_postcore_initcall(omap_hwmod_setup_all); > arch/arm/mach-omap2/omap_phy_internal.c:omap_early_initcall(omap4430_phy_power_down); > arch/arm/mach-omap2/opp3xxx_data.c:omap_device_initcall(omap3_opp_init); > arch/arm/mach-omap2/opp4xxx_data.c:omap_device_initcall(omap4_opp_init); > arch/arm/mach-omap2/pm-debug.c:omap_arch_initcall(pm_dbg_init); > arch/arm/mach-omap2/pm.c:omap_postcore_initcall(omap2_common_pm_init); > arch/arm/mach-omap2/pmu.c:omap_subsys_initcall(omap_init_pmu); > arch/arm/mach-omap2/serial.c:omap_postcore_initcall(omap_serial_early_init); > arch/arm/mach-omap2/smartreflex-class3.c:omap_late_initcall(sr_class3_init); > arch/arm/mach-omap2/timer.c:omap_arch_initcall(omap2_dm_timer_init); > arch/arm/mach-omap2/wd_timer.c:omap_subsys_initcall(omap_init_wdt); -- Regards, Nishanth Menon -- To unsubscribe from this list: send the line "unsubscribe linux-next" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html