aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/sunxi/patches-3.12/142-register-a31-reset.patch
diff options
context:
space:
mode:
authorZoltan Herpai <wigyori@uid0.hu>2013-11-14 23:12:52 +0000
committerZoltan Herpai <wigyori@uid0.hu>2013-11-14 23:12:52 +0000
commitf58bfd1df4e4a9b84a0e94691986c38bab6d8730 (patch)
tree9efce69525f7b07a108c03ba53b6721ebb1c8be2 /target/linux/sunxi/patches-3.12/142-register-a31-reset.patch
parent2077361f128ff32dd6bb9fed7a4b3cd813863a9c (diff)
downloadupstream-f58bfd1df4e4a9b84a0e94691986c38bab6d8730.tar.gz
upstream-f58bfd1df4e4a9b84a0e94691986c38bab6d8730.tar.bz2
upstream-f58bfd1df4e4a9b84a0e94691986c38bab6d8730.zip
sunxi: rework target - update kernel to 3.12 - add patches for clocks, i2c, usb, sid, rtc - support common image for A10/A13/A20 - add support for a couple boards - most drivers are configured into the kernel as of now
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu> SVN-Revision: 38811
Diffstat (limited to 'target/linux/sunxi/patches-3.12/142-register-a31-reset.patch')
-rw-r--r--target/linux/sunxi/patches-3.12/142-register-a31-reset.patch41
1 files changed, 41 insertions, 0 deletions
diff --git a/target/linux/sunxi/patches-3.12/142-register-a31-reset.patch b/target/linux/sunxi/patches-3.12/142-register-a31-reset.patch
new file mode 100644
index 0000000000..4853647298
--- /dev/null
+++ b/target/linux/sunxi/patches-3.12/142-register-a31-reset.patch
@@ -0,0 +1,41 @@
+From ba9cb86c174603252ee5b5f2b277dab46a99cf02 Mon Sep 17 00:00:00 2001
+From: Maxime Ripard <maxime.ripard@free-electrons.com>
+Date: Sat, 5 Oct 2013 14:53:48 +0200
+Subject: [PATCH] ARM: sunxi: Register the A31 reset IP in init_time
+
+The A31 has a reset IP that maintains a few other IPs in reset by
+default. Among these IPs are the UARTs, and most notably the timers. We
+thus need to register the reset driver before initializing the timers so
+that the reset timer can use the reset framework.
+
+Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
+---
+ arch/arm/mach-sunxi/sunxi.c | 10 +++++++++-
+ 1 file changed, 9 insertions(+), 1 deletion(-)
+
+diff --git a/arch/arm/mach-sunxi/sunxi.c b/arch/arm/mach-sunxi/sunxi.c
+index f184f6c..2e79736 100644
+--- a/arch/arm/mach-sunxi/sunxi.c
++++ b/arch/arm/mach-sunxi/sunxi.c
+@@ -142,9 +142,17 @@ static void __init sunxi_dt_init(void)
+ NULL,
+ };
+
++extern void __init sun6i_reset_init(void);
++static void __init sun6i_timer_init(void)
++{
++ sunxi_init_clocks();
++ sun6i_reset_init();
++ clocksource_of_init();
++}
++
+ DT_MACHINE_START(SUN6I_DT, "Allwinner sun6i (A31) Family")
+ .init_machine = sunxi_dt_init,
+- .init_time = sunxi_timer_init,
++ .init_time = sun6i_timer_init,
+ .dt_compat = sun6i_board_dt_compat,
+ .restart = sun6i_restart,
+ MACHINE_END
+--
+1.8.4
+