mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-25 00:11:13 +00:00
f1f97db627
OpenWRT's developer guide prefers having actual patches so they an be sent upstream more easily. However, in this case, Adding proper fields also allows for `git am` to properly function. Some of these patches are quite old, and lack much traceable history. This commit tries to rectify that, by digging in the history to find where and how it was first added. It is by no means perfect and also shows some patches that should have been long gone. Signed-off-by: Olliver Schinagl <oliver@schinagl.nl>
55 lines
1.9 KiB
Diff
55 lines
1.9 KiB
Diff
From 775d903216a08c2a8009863d2f9c33f62657ba94 Mon Sep 17 00:00:00 2001
|
|
From: Birger Koblitz <git@birger-koblitz.de>
|
|
Date: Thu, 6 Jan 2022 20:27:01 +0100
|
|
Subject: [PATCH] realtek: Replace the RTL9300 generic timer with a CEVT timer
|
|
|
|
The RTL9300 has a broken R4K MIPS timer interrupt, however, the
|
|
R4K clocksource works. We replace the RTL9300 timer with a
|
|
Clock Event Timer (CEVT), which is VSMP aware and can be instantiated
|
|
as part of brining a VSMTP cpu up instead of the R4K CEVT source.
|
|
For this we place the RTL9300 CEVT timer in arch/mips/kernel
|
|
together with other MIPS CEVT timers, initialize the SoC IRQs
|
|
from a modified smp-mt.c and instantiate each timer as part
|
|
of the MIPS time setup in arch/mips/include/asm/time.h instead
|
|
of the R4K CEVT, similarly as is done by other MIPS CEVT timers.
|
|
|
|
Submitted-by: Birger Koblitz <git@birger-koblitz.de>
|
|
---
|
|
arch/mips/kernel/Makefile | 1 +
|
|
arch/mips/include/asm/time.h | 7 +++++++
|
|
2 files changed, 8 insertions(+)
|
|
|
|
--- a/arch/mips/kernel/Makefile
|
|
+++ b/arch/mips/kernel/Makefile
|
|
@@ -27,6 +27,7 @@ obj-$(CONFIG_CEVT_BCM1480) += cevt-bcm14
|
|
obj-$(CONFIG_CEVT_R4K) += cevt-r4k.o
|
|
obj-$(CONFIG_CEVT_DS1287) += cevt-ds1287.o
|
|
obj-$(CONFIG_CEVT_GT641XX) += cevt-gt641xx.o
|
|
+obj-$(CONFIG_CEVT_RTL9300) += cevt-rtl9300.o
|
|
obj-$(CONFIG_CEVT_SB1250) += cevt-sb1250.o
|
|
obj-$(CONFIG_CEVT_TXX9) += cevt-txx9.o
|
|
obj-$(CONFIG_CSRC_BCM1480) += csrc-bcm1480.o
|
|
--- a/arch/mips/include/asm/time.h
|
|
+++ b/arch/mips/include/asm/time.h
|
|
@@ -15,6 +15,8 @@
|
|
#include <linux/clockchips.h>
|
|
#include <linux/clocksource.h>
|
|
|
|
+extern void rtl9300_clockevent_init(void);
|
|
+
|
|
extern spinlock_t rtc_lock;
|
|
|
|
/*
|
|
@@ -43,6 +45,11 @@ extern int r4k_clockevent_init(void);
|
|
|
|
static inline int mips_clockevent_init(void)
|
|
{
|
|
+#ifdef CONFIG_CEVT_RTL9300
|
|
+ rtl9300_clockevent_init();
|
|
+ return 0;
|
|
+#endif
|
|
+
|
|
#ifdef CONFIG_CEVT_R4K
|
|
return r4k_clockevent_init();
|
|
#else
|