diff options
author | Claudiu Beznea <claudiu.beznea@microchip.com> | 2022-02-04 15:57:50 +0200 |
---|---|---|
committer | Petr Štetiar <ynezz@true.cz> | 2022-02-24 19:05:28 +0100 |
commit | e58cd453d58b20c6a6f34d3591640aa19aa14d25 (patch) | |
tree | a4fef5f5d79575a7a60b516482ee114c1dbc932e /target/linux/at91/patches-5.10/210-ARM-at91-pm-add-support-for-2.5V-LDO-regulator-contr.patch | |
parent | 3ed992a99630457f660761ce199e3d2a00f06168 (diff) | |
download | upstream-e58cd453d58b20c6a6f34d3591640aa19aa14d25.tar.gz upstream-e58cd453d58b20c6a6f34d3591640aa19aa14d25.tar.bz2 upstream-e58cd453d58b20c6a6f34d3591640aa19aa14d25.zip |
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 <claudiu.beznea@microchip.com>
Diffstat (limited to 'target/linux/at91/patches-5.10/210-ARM-at91-pm-add-support-for-2.5V-LDO-regulator-contr.patch')
-rw-r--r-- | target/linux/at91/patches-5.10/210-ARM-at91-pm-add-support-for-2.5V-LDO-regulator-contr.patch | 86 |
1 files changed, 86 insertions, 0 deletions
diff --git a/target/linux/at91/patches-5.10/210-ARM-at91-pm-add-support-for-2.5V-LDO-regulator-contr.patch b/target/linux/at91/patches-5.10/210-ARM-at91-pm-add-support-for-2.5V-LDO-regulator-contr.patch new file mode 100644 index 0000000000..48638fa75e --- /dev/null +++ b/target/linux/at91/patches-5.10/210-ARM-at91-pm-add-support-for-2.5V-LDO-regulator-contr.patch @@ -0,0 +1,86 @@ +From b2073cc043612bf95b115bd94103cfb2936f05bf Mon Sep 17 00:00:00 2001 +From: Claudiu Beznea <claudiu.beznea@microchip.com> +Date: Thu, 15 Apr 2021 13:50:00 +0300 +Subject: [PATCH 210/247] ARM: at91: pm: add support for 2.5V LDO regulator + control + +Add support to disable/enable 2.5V LDO regulator when entering/exiting +any ULP mode. + +Signed-off-by: Claudiu Beznea <claudiu.beznea@microchip.com> +Signed-off-by: Nicolas Ferre <nicolas.ferre@microchip.com> +Link: https://lore.kernel.org/r/20210415105010.569620-15-claudiu.beznea@microchip.com +--- + arch/arm/mach-at91/pm.h | 1 + + arch/arm/mach-at91/pm_suspend.S | 29 +++++++++++++++++++++++++++++ + 2 files changed, 30 insertions(+) + +diff --git a/arch/arm/mach-at91/pm.h b/arch/arm/mach-at91/pm.h +index 666474088d55..53bdc9000e44 100644 +--- a/arch/arm/mach-at91/pm.h ++++ b/arch/arm/mach-at91/pm.h +@@ -13,6 +13,7 @@ + #include <soc/at91/at91sam9_ddrsdr.h> + #include <soc/at91/at91sam9_sdramc.h> + #include <soc/at91/sama7-ddr.h> ++#include <soc/at91/sama7-sfrbu.h> + + #define AT91_MEMCTRL_MC 0 + #define AT91_MEMCTRL_SDRAMC 1 +diff --git a/arch/arm/mach-at91/pm_suspend.S b/arch/arm/mach-at91/pm_suspend.S +index 8b0b8619ee8a..9c9e08fd8300 100644 +--- a/arch/arm/mach-at91/pm_suspend.S ++++ b/arch/arm/mach-at91/pm_suspend.S +@@ -83,6 +83,29 @@ tmp3 .req r6 + + .endm + ++/** ++ * Set state for 2.5V low power regulator ++ * @ena: 0 - disable regulator ++ * 1 - enable regulator ++ * ++ * Side effects: overwrites r7, r8, r9, r10 ++ */ ++ .macro at91_2_5V_reg_set_low_power ena ++#ifdef CONFIG_SOC_SAMA7 ++ ldr r7, .sfrbu ++ mov r8, #\ena ++ ldr r9, [r7, #AT91_SFRBU_25LDOCR] ++ orr r9, r9, #AT91_SFRBU_25LDOCR_LP ++ cmp r8, #1 ++ beq lp_done_\ena ++ bic r9, r9, #AT91_SFRBU_25LDOCR_LP ++lp_done_\ena: ++ ldr r10, =AT91_SFRBU_25LDOCR_LDOANAKEY ++ orr r9, r9, r10 ++ str r9, [r7, #AT91_SFRBU_25LDOCR] ++#endif ++ .endm ++ + .text + + .arm +@@ -906,6 +929,9 @@ save_mck: + + at91_plla_disable + ++ /* Enable low power mode for 2.5V regulator. */ ++ at91_2_5V_reg_set_low_power 1 ++ + ldr tmp3, .pm_mode + cmp tmp3, #AT91_PM_ULP1 + beq ulp1_mode +@@ -918,6 +944,9 @@ ulp1_mode: + b ulp_exit + + ulp_exit: ++ /* Disable low power mode for 2.5V regulator. */ ++ at91_2_5V_reg_set_low_power 0 ++ + ldr pmc, .pmc_base + + at91_plla_enable +-- +2.32.0 + |