Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b64c1116 authored by Sudeep Holla's avatar Sudeep Holla Committed by Greg Kroah-Hartman
Browse files

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



commit caab13b4960416b9fee83169a758eb0f31e65109 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: default avatarSudeep Holla <sudeep.holla@arm.com>
Signed-off-by: default avatarAlexandre Belloni <alexandre.belloni@bootlin.com>
Link: https://lore.kernel.org/r/20201211135846.1334322-1-sudeep.holla@arm.com


Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 1c931eb8
Loading
Loading
Loading
Loading
+12 −0
Original line number Diff line number Diff line
@@ -246,8 +246,20 @@ struct soc_device * __init at91_soc_init(const struct at91_soc *socs)
	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)
{
	struct device_node *np = of_find_node_by_path("/");

	if (!of_match_node(at91_soc_allowed_list, np))
		return 0;

	at91_soc_init(socs);

	return 0;