Re: [PATCH v2 1/1] powerpc/86xx: Consolidate common platform code
From: Scott Wood <oss@buserror.net>
Date: 2016-02-11 16:10:20
Also in:
lkml
On Thu, 2016-02-11 at 12:21 +0300, Denis Kirjanov wrote:
On 2/11/16, Alessio Igor Bogani [off-list ref] wrote:quoted
Signed-off-by: Alessio Igor Bogani <redacted> --- v1 -> v2 Use appropriate [PATCH] prefix arch/powerpc/platforms/86xx/Makefile | 2 +- arch/powerpc/platforms/86xx/common.c | 42 ++++++++++++++++++++++++++++++ arch/powerpc/platforms/86xx/gef_ppc9a.c | 32 +---------------------- arch/powerpc/platforms/86xx/gef_sbc310.c | 32 +---------------------- arch/powerpc/platforms/86xx/gef_sbc610.c | 32 +---------------------- arch/powerpc/platforms/86xx/mpc8610_hpcd.c | 20 ++------------ arch/powerpc/platforms/86xx/mpc86xx.h | 2 ++ arch/powerpc/platforms/86xx/mpc86xx_hpcn.c | 21 +-------------- arch/powerpc/platforms/86xx/sbc8641d.c | 32 +---------------------- 9 files changed, 52 insertions(+), 163 deletions(-) create mode 100644 arch/powerpc/platforms/86xx/common.cdiff --git a/arch/powerpc/platforms/86xx/Makefileb/arch/powerpc/platforms/86xx/Makefile index ede815d..2d889ad 100644--- a/arch/powerpc/platforms/86xx/Makefile +++ b/arch/powerpc/platforms/86xx/Makefile@@ -2,7 +2,7 @@ # Makefile for the PowerPC 86xx linux kernel. # -obj-y := pic.o +obj-y := pic.o common.o obj-$(CONFIG_SMP) += mpc86xx_smp.o obj-$(CONFIG_MPC8641_HPCN) += mpc86xx_hpcn.o obj-$(CONFIG_SBC8641D) += sbc8641d.odiff --git a/arch/powerpc/platforms/86xx/common.cb/arch/powerpc/platforms/86xx/common.c new file mode 100644 index 0000000..bee3177--- /dev/null +++ b/arch/powerpc/platforms/86xx/common.c@@ -0,0 +1,42 @@ +/* + * Routines common to most mpc86xx-based boards. + * + * This is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + */ + +#include <linux/of_platform.h> + +#include "mpc86xx.h" + +static const struct of_device_id mpc86xx_common_ids[] __initconst = { + { .type = "soc", }, + { .compatible = "soc", }, + { .compatible = "simple-bus", }, + { .name = "localbus", }, + { .compatible = "gianfar", }, + { .compatible = "fsl,mpc8641-pcie", }, + {}, +}; + +int __init mpc86xx_common_publish_devices(void) +{ + return of_platform_bus_probe(NULL, mpc86xx_common_ids, NULL); +} + +long __init mpc86xx_time_init(void) +{ + unsigned int temp; + + /* Set the time base to zero */ + mtspr(SPRN_TBWL, 0); + mtspr(SPRN_TBWU, 0); + + temp = mfspr(SPRN_HID0); + temp |= HID0_TBEN; + mtspr(SPRN_HID0, temp); + asm volatile("isync");While we're here you could just use isync()
Could you please trim the part of the mail you're not replying to? It takes a while to scan to find where the reply actually is. -Scott