On Monday 26 September 2022 09:48:02 Christophe Leroy wrote:
> Le 19/08/2022 à 21:15, Pali Rohár a écrit :
> > This moves machine descriptions and all related code for all P2020 boards
> > into new p2020.c source file. This is preparation for code deduplication
> > and providing one unified machine description for all P2020 boards.
> 
> I'm having hard time to review this patch.
> 
> It looks like you are doing much more than just moving machine 
> descriptions and related code into p2020.c
> 
> Apparently p2020.c has a lot of code that doesn't seem be move from 
> somewhere else.
> 
> Maybe there is a need to tidy up in order to ease reviewing.

This is probably harder to read due to how git format-patch generated
this email. The important is:

 copy from arch/powerpc/platforms/85xx/mpc85xx_ds.c
 copy to arch/powerpc/platforms/85xx/p2020.c

Which means that git thinks that my newly introduced file p2020.c is
similar to old file mpc85xx_ds.c and generated diff in format which do:

 1. copy mpc85xx_ds.c to p2020.c
 2. apply diff on newly introduced file p2020.c

Code is really moved from mpc85xx_ds.c and mpc85xx_rdb.c files into file
p2020.c.

File p2020.c is new in this patch.

> > 
> > Signed-off-by: Pali Rohár <p...@kernel.org>
> > ---
> >   arch/powerpc/platforms/85xx/Makefile          |   2 +
> >   arch/powerpc/platforms/85xx/mpc85xx_ds.c      |  23 ---
> >   arch/powerpc/platforms/85xx/mpc85xx_rdb.c     |  44 ------
> >   .../platforms/85xx/{mpc85xx_ds.c => p2020.c}  | 134 ++++++++++++------
> >   4 files changed, 91 insertions(+), 112 deletions(-)
> >   copy arch/powerpc/platforms/85xx/{mpc85xx_ds.c => p2020.c} (65%)
> > 
> > diff --git a/arch/powerpc/platforms/85xx/Makefile 
> > b/arch/powerpc/platforms/85xx/Makefile
> > index 260fbad7967b..1ad261b4eeb6 100644
> > --- a/arch/powerpc/platforms/85xx/Makefile
> > +++ b/arch/powerpc/platforms/85xx/Makefile
> > @@ -23,6 +23,8 @@ obj-$(CONFIG_P1010_RDB)   += p1010rdb.o
> >   obj-$(CONFIG_P1022_DS)    += p1022_ds.o
> >   obj-$(CONFIG_P1022_RDK)   += p1022_rdk.o
> >   obj-$(CONFIG_P1023_RDB)   += p1023_rdb.o
> > +obj-$(CONFIG_MPC85xx_DS)  += p2020.o
> > +obj-$(CONFIG_MPC85xx_RDB) += p2020.o
> >   obj-$(CONFIG_TWR_P102x)   += twr_p102x.o
> >   obj-$(CONFIG_CORENET_GENERIC)   += corenet_generic.o
> >   obj-$(CONFIG_FB_FSL_DIU)  += t1042rdb_diu.o
> > diff --git a/arch/powerpc/platforms/85xx/mpc85xx_ds.c 
> > b/arch/powerpc/platforms/85xx/mpc85xx_ds.c
> > index 9a6d637ef54a..05aac997b5ed 100644
> > --- a/arch/powerpc/platforms/85xx/mpc85xx_ds.c
> > +++ b/arch/powerpc/platforms/85xx/mpc85xx_ds.c
> > @@ -168,7 +168,6 @@ static int __init mpc8544_ds_probe(void)
> >   
> >   machine_arch_initcall(mpc8544_ds, mpc85xx_common_publish_devices);
> >   machine_arch_initcall(mpc8572_ds, mpc85xx_common_publish_devices);
> > -machine_arch_initcall(p2020_ds, mpc85xx_common_publish_devices);
> >   
> >   /*
> >    * Called very early, device-tree isn't unflattened
> > @@ -178,14 +177,6 @@ static int __init mpc8572_ds_probe(void)
> >     return !!of_machine_is_compatible("fsl,MPC8572DS");
> >   }
> >   
> > -/*
> > - * Called very early, device-tree isn't unflattened
> > - */
> > -static int __init p2020_ds_probe(void)
> > -{
> > -   return !!of_machine_is_compatible("fsl,P2020DS");
> > -}
> > -
> >   define_machine(mpc8544_ds) {
> >     .name                   = "MPC8544 DS",
> >     .probe                  = mpc8544_ds_probe,
> > @@ -213,17 +204,3 @@ define_machine(mpc8572_ds) {
> >     .calibrate_decr         = generic_calibrate_decr,
> >     .progress               = udbg_progress,
> >   };
> > -
> > -define_machine(p2020_ds) {
> > -   .name                   = "P2020 DS",
> > -   .probe                  = p2020_ds_probe,
> > -   .setup_arch             = mpc85xx_ds_setup_arch,
> > -   .init_IRQ               = mpc85xx_ds_pic_init,
> > -#ifdef CONFIG_PCI
> > -   .pcibios_fixup_bus      = fsl_pcibios_fixup_bus,
> > -   .pcibios_fixup_phb      = fsl_pcibios_fixup_phb,
> > -#endif
> > -   .get_irq                = mpic_get_irq,
> > -   .calibrate_decr         = generic_calibrate_decr,
> > -   .progress               = udbg_progress,
> > -};
> > diff --git a/arch/powerpc/platforms/85xx/mpc85xx_rdb.c 
> > b/arch/powerpc/platforms/85xx/mpc85xx_rdb.c
> > index b6129c148fea..05f1ed635735 100644
> > --- a/arch/powerpc/platforms/85xx/mpc85xx_rdb.c
> > +++ b/arch/powerpc/platforms/85xx/mpc85xx_rdb.c
> > @@ -108,8 +108,6 @@ static void __init mpc85xx_rdb_setup_arch(void)
> >     printk(KERN_INFO "MPC85xx RDB board from Freescale Semiconductor\n");
> >   }
> >   
> > -machine_arch_initcall(p2020_rdb, mpc85xx_common_publish_devices);
> > -machine_arch_initcall(p2020_rdb_pc, mpc85xx_common_publish_devices);
> >   machine_arch_initcall(p1020_mbg_pc, mpc85xx_common_publish_devices);
> >   machine_arch_initcall(p1020_rdb, mpc85xx_common_publish_devices);
> >   machine_arch_initcall(p1020_rdb_pc, mpc85xx_common_publish_devices);
> > @@ -122,13 +120,6 @@ machine_arch_initcall(p1024_rdb, 
> > mpc85xx_common_publish_devices);
> >   /*
> >    * Called very early, device-tree isn't unflattened
> >    */
> > -static int __init p2020_rdb_probe(void)
> > -{
> > -   if (of_machine_is_compatible("fsl,P2020RDB"))
> > -           return 1;
> > -   return 0;
> > -}
> > -
> >   static int __init p1020_rdb_probe(void)
> >   {
> >     if (of_machine_is_compatible("fsl,P1020RDB"))
> > @@ -153,13 +144,6 @@ static int __init p1021_rdb_pc_probe(void)
> >     return 0;
> >   }
> >   
> > -static int __init p2020_rdb_pc_probe(void)
> > -{
> > -   if (of_machine_is_compatible("fsl,P2020RDB-PC"))
> > -           return 1;
> > -   return 0;
> > -}
> > -
> >   static int __init p1025_rdb_probe(void)
> >   {
> >     return of_machine_is_compatible("fsl,P1025RDB");
> > @@ -180,20 +164,6 @@ static int __init p1024_rdb_probe(void)
> >     return of_machine_is_compatible("fsl,P1024RDB");
> >   }
> >   
> > -define_machine(p2020_rdb) {
> > -   .name                   = "P2020 RDB",
> > -   .probe                  = p2020_rdb_probe,
> > -   .setup_arch             = mpc85xx_rdb_setup_arch,
> > -   .init_IRQ               = mpc85xx_rdb_pic_init,
> > -#ifdef CONFIG_PCI
> > -   .pcibios_fixup_bus      = fsl_pcibios_fixup_bus,
> > -   .pcibios_fixup_phb      = fsl_pcibios_fixup_phb,
> > -#endif
> > -   .get_irq                = mpic_get_irq,
> > -   .calibrate_decr         = generic_calibrate_decr,
> > -   .progress               = udbg_progress,
> > -};
> > -
> >   define_machine(p1020_rdb) {
> >     .name                   = "P1020 RDB",
> >     .probe                  = p1020_rdb_probe,
> > @@ -222,20 +192,6 @@ define_machine(p1021_rdb_pc) {
> >     .progress               = udbg_progress,
> >   };
> >   
> > -define_machine(p2020_rdb_pc) {
> > -   .name                   = "P2020RDB-PC",
> > -   .probe                  = p2020_rdb_pc_probe,
> > -   .setup_arch             = mpc85xx_rdb_setup_arch,
> > -   .init_IRQ               = mpc85xx_rdb_pic_init,
> > -#ifdef CONFIG_PCI
> > -   .pcibios_fixup_bus      = fsl_pcibios_fixup_bus,
> > -   .pcibios_fixup_phb      = fsl_pcibios_fixup_phb,
> > -#endif
> > -   .get_irq                = mpic_get_irq,
> > -   .calibrate_decr         = generic_calibrate_decr,
> > -   .progress               = udbg_progress,
> > -};
> > -
> >   define_machine(p1025_rdb) {
> >     .name                   = "P1025 RDB",
> >     .probe                  = p1025_rdb_probe,
> > diff --git a/arch/powerpc/platforms/85xx/mpc85xx_ds.c 
> > b/arch/powerpc/platforms/85xx/p2020.c
> > similarity index 65%
> > copy from arch/powerpc/platforms/85xx/mpc85xx_ds.c
> > copy to arch/powerpc/platforms/85xx/p2020.c
> > index 9a6d637ef54a..d65d4c88ac47 100644
> > --- a/arch/powerpc/platforms/85xx/mpc85xx_ds.c
> > +++ b/arch/powerpc/platforms/85xx/p2020.c
> > @@ -1,11 +1,9 @@
> >   // SPDX-License-Identifier: GPL-2.0-or-later
> >   /*
> > - * MPC85xx DS Board Setup
> > + * Freescale P2020 board Setup
> >    *
> > - * Author Xianghua Xiao (x.x...@freescale.com)
> > - * Roy Zang <tie-fei.z...@freescale.com>
> > - *         - Add PCI/PCI Exprees support
> > - * Copyright 2007 Freescale Semiconductor Inc.
> > + * Copyright 2007,2009,2012-2013 Freescale Semiconductor Inc.
> > + * Copyright 2022 Pali Rohár <p...@kernel.org>
> >    */
> >   
> >   #include <linux/stddef.h>
> > @@ -17,6 +15,7 @@
> >   #include <linux/interrupt.h>
> >   #include <linux/of_irq.h>
> >   #include <linux/of_platform.h>
> > +#include <linux/fsl/guts.h>
> >   
> >   #include <asm/time.h>
> >   #include <asm/machdep.h>
> > @@ -27,6 +26,8 @@
> >   #include <asm/i8259.h>
> >   #include <asm/swiotlb.h>
> >   
> > +#include <soc/fsl/qe/qe.h>
> > +
> >   #include <sysdev/fsl_soc.h>
> >   #include <sysdev/fsl_pci.h>
> >   #include "smp.h"
> > @@ -41,6 +42,8 @@
> >   #define DBG(fmt, args...)
> >   #endif
> >   
> > +#ifdef CONFIG_MPC85xx_DS
> > +
> >   #ifdef CONFIG_PPC_I8259
> >   static void mpc85xx_8259_cascade(struct irq_desc *desc)
> >   {
> > @@ -62,18 +65,11 @@ static void __init mpc85xx_ds_pic_init(void)
> >     struct device_node *cascade_node = NULL;
> >     int cascade_irq;
> >   #endif
> > -   if (of_machine_is_compatible("fsl,MPC8572DS-CAMP")) {
> > -           mpic = mpic_alloc(NULL, 0,
> > -                   MPIC_NO_RESET |
> > -                   MPIC_BIG_ENDIAN |
> > -                   MPIC_SINGLE_DEST_CPU,
> > -                   0, 256, " OpenPIC  ");
> > -   } else {
> > -           mpic = mpic_alloc(NULL, 0,
> > -                     MPIC_BIG_ENDIAN |
> > -                     MPIC_SINGLE_DEST_CPU,
> > -                   0, 256, " OpenPIC  ");
> > -   }
> > +
> > +   mpic = mpic_alloc(NULL, 0,
> > +             MPIC_BIG_ENDIAN |
> > +             MPIC_SINGLE_DEST_CPU,
> > +           0, 256, " OpenPIC  ");
> >   
> >     BUG_ON(mpic == NULL);
> >     mpic_init(mpic);
> > @@ -142,9 +138,27 @@ static void __init mpc85xx_ds_uli_init(void)
> >   #endif
> >   }
> >   
> > +#endif /* CONFIG_MPC85xx_DS */
> > +
> > +#ifdef CONFIG_MPC85xx_RDB
> > +static void __init mpc85xx_rdb_pic_init(void)
> > +{
> > +   struct mpic *mpic;
> > +
> > +   mpic = mpic_alloc(NULL, 0,
> > +     MPIC_BIG_ENDIAN |
> > +     MPIC_SINGLE_DEST_CPU,
> > +     0, 256, " OpenPIC  ");
> > +
> > +   BUG_ON(mpic == NULL);
> > +   mpic_init(mpic);
> > +}
> > +#endif /* CONFIG_MPC85xx_RDB */
> > +
> >   /*
> >    * Setup the architecture
> >    */
> > +#ifdef CONFIG_MPC85xx_DS
> >   static void __init mpc85xx_ds_setup_arch(void)
> >   {
> >     if (ppc_md.progress)
> > @@ -157,38 +171,65 @@ static void __init mpc85xx_ds_setup_arch(void)
> >   
> >     printk("MPC85xx DS board from Freescale Semiconductor\n");
> >   }
> > +#endif /* CONFIG_MPC85xx_DS */
> >   
> > -/*
> > - * Called very early, device-tree isn't unflattened
> > - */
> > -static int __init mpc8544_ds_probe(void)
> > +#ifdef CONFIG_MPC85xx_RDB
> > +static void __init mpc85xx_rdb_setup_arch(void)
> >   {
> > -   return !!of_machine_is_compatible("MPC8544DS");
> > +   if (ppc_md.progress)
> > +           ppc_md.progress("mpc85xx_rdb_setup_arch()", 0);
> > +
> > +   mpc85xx_smp_init();
> > +
> > +   fsl_pci_assign_primary();
> > +
> > +#ifdef CONFIG_QUICC_ENGINE
> > +   mpc85xx_qe_par_io_init();
> > +#endif     /* CONFIG_QUICC_ENGINE */
> > +
> > +   printk(KERN_INFO "MPC85xx RDB board from Freescale Semiconductor\n");
> >   }
> > +#endif /* CONFIG_MPC85xx_RDB */
> >   
> > -machine_arch_initcall(mpc8544_ds, mpc85xx_common_publish_devices);
> > -machine_arch_initcall(mpc8572_ds, mpc85xx_common_publish_devices);
> > +#ifdef CONFIG_MPC85xx_DS
> >   machine_arch_initcall(p2020_ds, mpc85xx_common_publish_devices);
> > +#endif /* CONFIG_MPC85xx_DS */
> >   
> > -/*
> > - * Called very early, device-tree isn't unflattened
> > - */
> > -static int __init mpc8572_ds_probe(void)
> > -{
> > -   return !!of_machine_is_compatible("fsl,MPC8572DS");
> > -}
> > +#ifdef CONFIG_MPC85xx_RDB
> > +machine_arch_initcall(p2020_rdb, mpc85xx_common_publish_devices);
> > +machine_arch_initcall(p2020_rdb_pc, mpc85xx_common_publish_devices);
> > +#endif /* CONFIG_MPC85xx_RDB */
> >   
> >   /*
> >    * Called very early, device-tree isn't unflattened
> >    */
> > +#ifdef CONFIG_MPC85xx_DS
> >   static int __init p2020_ds_probe(void)
> >   {
> >     return !!of_machine_is_compatible("fsl,P2020DS");
> >   }
> > +#endif /* CONFIG_MPC85xx_DS */
> > +
> > +#ifdef CONFIG_MPC85xx_RDB
> > +static int __init p2020_rdb_probe(void)
> > +{
> > +   if (of_machine_is_compatible("fsl,P2020RDB"))
> > +           return 1;
> > +   return 0;
> > +}
> > +
> > +static int __init p2020_rdb_pc_probe(void)
> > +{
> > +   if (of_machine_is_compatible("fsl,P2020RDB-PC"))
> > +           return 1;
> > +   return 0;
> > +}
> > +#endif /* CONFIG_MPC85xx_RDB */
> >   
> > -define_machine(mpc8544_ds) {
> > -   .name                   = "MPC8544 DS",
> > -   .probe                  = mpc8544_ds_probe,
> > +#ifdef CONFIG_MPC85xx_DS
> > +define_machine(p2020_ds) {
> > +   .name                   = "P2020 DS",
> > +   .probe                  = p2020_ds_probe,
> >     .setup_arch             = mpc85xx_ds_setup_arch,
> >     .init_IRQ               = mpc85xx_ds_pic_init,
> >   #ifdef CONFIG_PCI
> > @@ -199,12 +240,14 @@ define_machine(mpc8544_ds) {
> >     .calibrate_decr         = generic_calibrate_decr,
> >     .progress               = udbg_progress,
> >   };
> > -
> > -define_machine(mpc8572_ds) {
> > -   .name                   = "MPC8572 DS",
> > -   .probe                  = mpc8572_ds_probe,
> > -   .setup_arch             = mpc85xx_ds_setup_arch,
> > -   .init_IRQ               = mpc85xx_ds_pic_init,
> > +#endif /* CONFIG_MPC85xx_DS */
> > +
> > +#ifdef CONFIG_MPC85xx_RDB
> > +define_machine(p2020_rdb) {
> > +   .name                   = "P2020 RDB",
> > +   .probe                  = p2020_rdb_probe,
> > +   .setup_arch             = mpc85xx_rdb_setup_arch,
> > +   .init_IRQ               = mpc85xx_rdb_pic_init,
> >   #ifdef CONFIG_PCI
> >     .pcibios_fixup_bus      = fsl_pcibios_fixup_bus,
> >     .pcibios_fixup_phb      = fsl_pcibios_fixup_phb,
> > @@ -214,11 +257,11 @@ define_machine(mpc8572_ds) {
> >     .progress               = udbg_progress,
> >   };
> >   
> > -define_machine(p2020_ds) {
> > -   .name                   = "P2020 DS",
> > -   .probe                  = p2020_ds_probe,
> > -   .setup_arch             = mpc85xx_ds_setup_arch,
> > -   .init_IRQ               = mpc85xx_ds_pic_init,
> > +define_machine(p2020_rdb_pc) {
> > +   .name                   = "P2020RDB-PC",
> > +   .probe                  = p2020_rdb_pc_probe,
> > +   .setup_arch             = mpc85xx_rdb_setup_arch,
> > +   .init_IRQ               = mpc85xx_rdb_pic_init,
> >   #ifdef CONFIG_PCI
> >     .pcibios_fixup_bus      = fsl_pcibios_fixup_bus,
> >     .pcibios_fixup_phb      = fsl_pcibios_fixup_phb,
> > @@ -227,3 +270,4 @@ define_machine(p2020_ds) {
> >     .calibrate_decr         = generic_calibrate_decr,
> >     .progress               = udbg_progress,
> >   };
> > +#endif /* CONFIG_MPC85xx_RDB */

Reply via email to