提交 e0c99481 编写于 作者: S Sudeep Holla 提交者: Zheng Zengkai

drivers: soc: atmel: Avoid calling at91_soc_init on non AT91 SoCs

stable inclusion
from stable-5.10.13
commit 6975f470ca5dc1f4215b51caf19708f0ff1134c3
bugzilla: 47995

--------------------------------

commit caab13b4 upstream.

Since at91_soc_init is called unconditionally from atmel_soc_device_init,
we get the following warning on all non AT91 SoCs:
	" AT91: Could not find identification node"

Fix the same by filtering with allowed AT91 SoC list.

Cc: Nicolas Ferre <nicolas.ferre@microchip.com>
Cc: Alexandre Belloni <alexandre.belloni@bootlin.com>
Cc: Ludovic Desroches <ludovic.desroches@microchip.com>
Cc: stable@vger.kernel.org #4.12+
Signed-off-by: NSudeep Holla <sudeep.holla@arm.com>
Signed-off-by: NAlexandre Belloni <alexandre.belloni@bootlin.com>
Link: https://lore.kernel.org/r/20201211135846.1334322-1-sudeep.holla@arm.comSigned-off-by: NArnd Bergmann <arnd@arndb.de>
Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: NZheng Zengkai <zhengzengkai@huawei.com>
Acked-by: NXie XiuQi <xiexiuqi@huawei.com>
上级 e6565d37
...@@ -265,8 +265,20 @@ struct soc_device * __init at91_soc_init(const struct at91_soc *socs) ...@@ -265,8 +265,20 @@ struct soc_device * __init at91_soc_init(const struct at91_soc *socs)
return soc_dev; return soc_dev;
} }
static const struct of_device_id at91_soc_allowed_list[] __initconst = {
{ .compatible = "atmel,at91rm9200", },
{ .compatible = "atmel,at91sam9", },
{ .compatible = "atmel,sama5", },
{ .compatible = "atmel,samv7", }
};
static int __init atmel_soc_device_init(void) static int __init atmel_soc_device_init(void)
{ {
struct device_node *np = of_find_node_by_path("/");
if (!of_match_node(at91_soc_allowed_list, np))
return 0;
at91_soc_init(socs); at91_soc_init(socs);
return 0; return 0;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册