From e58cd453d58b20c6a6f34d3591640aa19aa14d25 Mon Sep 17 00:00:00 2001 From: Claudiu Beznea Date: Fri, 4 Feb 2022 15:57:50 +0200 Subject: at91: add kernel support for sama7g5 soc Add kernel support for SAMA7G5 by back-porting mainline kernel patches. Among SAMA7G5 features could be remembered: - ARM Cortex-A7 - double data rate multi-port dynamic RAM controller supporting DDR2, DDR3, DDR3L, LPDDR2, LPDDR3 up to 533MHz - peripherals for audio, video processing - 1 gigabit + 1 megabit Ethernet controllers - 6 CAN controllers - trust zone support - DVFS for CPU - criptography IPs Signed-off-by: Claudiu Beznea --- ...-Move-prototypes-to-mutually-included-hea.patch | 118 +++++++++++++++++++++ 1 file changed, 118 insertions(+) create mode 100644 target/linux/at91/patches-5.10/149-ARM-at91-pm-Move-prototypes-to-mutually-included-hea.patch (limited to 'target/linux/at91/patches-5.10/149-ARM-at91-pm-Move-prototypes-to-mutually-included-hea.patch') diff --git a/target/linux/at91/patches-5.10/149-ARM-at91-pm-Move-prototypes-to-mutually-included-hea.patch b/target/linux/at91/patches-5.10/149-ARM-at91-pm-Move-prototypes-to-mutually-included-hea.patch new file mode 100644 index 0000000000..892e8be295 --- /dev/null +++ b/target/linux/at91/patches-5.10/149-ARM-at91-pm-Move-prototypes-to-mutually-included-hea.patch @@ -0,0 +1,118 @@ +From 746aba88c64e409cbc3757a5f81fad5b5c74bbcc Mon Sep 17 00:00:00 2001 +From: Lee Jones +Date: Wed, 3 Mar 2021 12:41:49 +0000 +Subject: [PATCH 149/247] ARM: at91: pm: Move prototypes to mutually included + header +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Both the caller and the supplier's source file should have access to +the include file containing the prototypes. + +Fixes the following W=1 kernel build warning(s): + + drivers/pinctrl/pinctrl-at91.c:1637:6: warning: no previous prototype for ‘at91_pinctrl_gpio_suspend’ [-Wmissing-prototypes] + 1637 | void at91_pinctrl_gpio_suspend(void) + | ^~~~~~~~~~~~~~~~~~~~~~~~~ + drivers/pinctrl/pinctrl-at91.c:1661:6: warning: no previous prototype for ‘at91_pinctrl_gpio_resume’ [-Wmissing-prototypes] + 1661 | void at91_pinctrl_gpio_resume(void) + | ^~~~~~~~~~~~~~~~~~~~~~~~ + +Cc: Russell King +Cc: Nicolas Ferre +Cc: Alexandre Belloni +Cc: Ludovic Desroches +Signed-off-by: Lee Jones +Acked-by: Linus Walleij +Signed-off-by: Alexandre Belloni +Link: https://lore.kernel.org/r/20210303124149.3149511-1-lee.jones@linaro.org +--- + arch/arm/mach-at91/pm.c | 19 ++++++++----------- + drivers/pinctrl/pinctrl-at91.c | 2 ++ + include/soc/at91/pm.h | 16 ++++++++++++++++ + 3 files changed, 26 insertions(+), 11 deletions(-) + create mode 100644 include/soc/at91/pm.h + +diff --git a/arch/arm/mach-at91/pm.c b/arch/arm/mach-at91/pm.c +index 3f015cb6ec2b..2dee383f9050 100644 +--- a/arch/arm/mach-at91/pm.c ++++ b/arch/arm/mach-at91/pm.c +@@ -17,6 +17,8 @@ + #include + #include + ++#include ++ + #include + #include + #include +@@ -25,17 +27,6 @@ + #include "generic.h" + #include "pm.h" + +-/* +- * FIXME: this is needed to communicate between the pinctrl driver and +- * the PM implementation in the machine. Possibly part of the PM +- * implementation should be moved down into the pinctrl driver and get +- * called as part of the generic suspend/resume path. +- */ +-#ifdef CONFIG_PINCTRL_AT91 +-extern void at91_pinctrl_gpio_suspend(void); +-extern void at91_pinctrl_gpio_resume(void); +-#endif +- + struct at91_soc_pm { + int (*config_shdwc_ws)(void __iomem *shdwc, u32 *mode, u32 *polarity); + int (*config_pmc_ws)(void __iomem *pmc, u32 mode, u32 polarity); +@@ -326,6 +317,12 @@ static void at91_pm_suspend(suspend_state_t state) + static int at91_pm_enter(suspend_state_t state) + { + #ifdef CONFIG_PINCTRL_AT91 ++ /* ++ * FIXME: this is needed to communicate between the pinctrl driver and ++ * the PM implementation in the machine. Possibly part of the PM ++ * implementation should be moved down into the pinctrl driver and get ++ * called as part of the generic suspend/resume path. ++ */ + at91_pinctrl_gpio_suspend(); + #endif + +diff --git a/drivers/pinctrl/pinctrl-at91.c b/drivers/pinctrl/pinctrl-at91.c +index 9015486e38c1..dcbb71fa1b2b 100644 +--- a/drivers/pinctrl/pinctrl-at91.c ++++ b/drivers/pinctrl/pinctrl-at91.c +@@ -23,6 +23,8 @@ + /* Since we request GPIOs from ourself */ + #include + ++#include ++ + #include "pinctrl-at91.h" + #include "core.h" + +diff --git a/include/soc/at91/pm.h b/include/soc/at91/pm.h +new file mode 100644 +index 000000000000..7a41e53a3ffa +--- /dev/null ++++ b/include/soc/at91/pm.h +@@ -0,0 +1,16 @@ ++/* SPDX-License-Identifier: GPL-2.0-only */ ++/* ++ * Atmel Power Management ++ * ++ * Copyright (C) 2020 Atmel ++ * ++ * Author: Lee Jones ++ */ ++ ++#ifndef __SOC_ATMEL_PM_H ++#define __SOC_ATMEL_PM_H ++ ++void at91_pinctrl_gpio_suspend(void); ++void at91_pinctrl_gpio_resume(void); ++ ++#endif /* __SOC_ATMEL_PM_H */ +-- +2.32.0 + -- cgit v1.2.3