On Mon, 2018-10-01 at 10:15 +0100, Marc Zyngier wrote: > On 01/10/18 09:48, Yasha Cherikovsky wrote: > > Hi Marc, > > > > On Mon, 2018-10-01 at 09:19 +0100, Marc Zyngier wrote: > > > Hi Yasha, > > > > > > On 30/09/18 15:15, Yasha Cherikovsky wrote: > > > > The Realtek RTL8186 SoC is a MIPS based SoC > > > > used in some home routers [1][2]. > > > > > > > > The hardware includes Lexra LX5280 CPU with a TLB, > > > > two Ethernet controllers, a WLAN controller and more. > > > > > > > > With this patch, it is possible to successfully boot > > > > the kernel and load userspace on the Edimax BR-6204Wg > > > > router. > > > > Network drivers support will come in future patches. > > > > > > > > This patch includes: > > > > - New MIPS rtl8186 platform > > > > - Core platform setup code (mostly DT based) > > > > - New Kconfig option > > > > - defconfig file > > > > - MIPS zboot UART support > > > > - RTL8186 interrupt controller driver > > > > - RTL8186 timer driver > > > > - Device tree files for the RTL8186 SoC and Edimax BR-6204Wg > > > > router > > > > > > > > [1] https://www.linux-mips.org/wiki/Realtek_SOC#Realtek_RTL8186 > > > > [2] https://wikidevi.com/wiki/Realtek_RTL8186 > > > > > > > > Signed-off-by: Yasha Cherikovsky <yasha.che3@xxxxxxxxx> > > > > Cc: Ralf Baechle <ralf@xxxxxxxxxxxxxx> > > > > Cc: Paul Burton <paul.burton@xxxxxxxx> > > > > Cc: James Hogan <jhogan@xxxxxxxxxx> > > > > Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx> > > > > Cc: Jason Cooper <jason@xxxxxxxxxxxxxx> > > > > Cc: Marc Zyngier <marc.zyngier@xxxxxxx> > > > > Cc: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx> > > > > Cc: Rob Herring <robh+dt@xxxxxxxxxx> > > > > Cc: Mark Rutland <mark.rutland@xxxxxxx> > > > > Cc: linux-mips@xxxxxxxxxxxxxx > > > > Cc: devicetree@xxxxxxxxxxxxxxx > > > > Cc: linux-kernel@xxxxxxxxxxxxxxx > > > > --- > > > > arch/mips/Kbuild.platforms | 1 + > > > > arch/mips/Kconfig | 17 ++ > > > > arch/mips/boot/compressed/uart-16550.c | 5 + > > > > arch/mips/boot/dts/Makefile | 1 + > > > > arch/mips/boot/dts/realtek/Makefile | 4 + > > > > arch/mips/boot/dts/realtek/rtl8186.dtsi | 86 +++++++ > > > > .../dts/realtek/rtl8186_edimax_br_6204wg.dts | 45 ++++ > > > > arch/mips/configs/rtl8186_defconfig | 112 +++++++++ > > > > arch/mips/include/asm/mach-rtl8186/rtl8186.h | 37 +++ > > > > arch/mips/rtl8186/Makefile | 2 + > > > > arch/mips/rtl8186/Platform | 7 + > > > > arch/mips/rtl8186/irq.c | 8 + > > > > arch/mips/rtl8186/prom.c | 15 ++ > > > > arch/mips/rtl8186/setup.c | 80 +++++++ > > > > arch/mips/rtl8186/time.c | 10 + > > > > drivers/clocksource/Kconfig | 9 + > > > > drivers/clocksource/Makefile | 1 + > > > > drivers/clocksource/timer-rtl8186.c | 220 > > > > ++++++++++++++++++ > > > > drivers/irqchip/Kconfig | 5 + > > > > drivers/irqchip/Makefile | 1 + > > > > drivers/irqchip/irq-rtl8186.c | 107 +++++++++ > > > > > > Could you please split this into at least three patches (arch code, > > > clocksource, irqchip) to ease the review? > > > > > > Thanks, > > > > > > M. > > > > Currently the RTL8186_IRQ and the RTL8186_TIMER Kconfig entries depend > > on > > MACH_RTL8186 (which is added in the MIPS portion of the same patch). > > Also, MACH_RTL8186 in MIPS selects these two options. > > > > What is the best way to split that? > > It is absolutely fine to have something depending on a non-selectable > config option, which would allow you to split things up as finely as you > want. Just have the patch enabling the config option last. > > Thanks, > > M. Good to know, thanks. I'll send a v2 soon. Yasha