* [v3, 1/5] powerpc/fsl: move mpc85xx.h to include/linux
2015-11-27 3:20 [v3, 0/5] eSDHC patches introduction Yangbo Lu
@ 2015-11-27 3:20 ` Yangbo Lu
2015-12-08 13:49 ` Ulf Hansson
2015-12-08 17:44 ` Scott Wood
2015-11-27 3:20 ` [v3, 2/5] mmc: sdhci-of-esdhc: get SVR from global utilities registers Yangbo Lu
` (4 subsequent siblings)
5 siblings, 2 replies; 19+ messages in thread
From: Yangbo Lu @ 2015-11-27 3:20 UTC (permalink / raw)
To: linux-mmc, ulf.hansson; +Cc: scottwood, X.Xie, LeoLi, Yangbo Lu
Move mpc85xx.h to include/linux and rename it to fsl-svr.h as
a common header file. It has been used for mpc85xx and it will
be used for ARM-based SoC as well.
Signed-off-by: Yangbo Lu <yangbo.lu@freescale.com>
---
Changes for v2:
- None
Changes for v3:
- Added this patch
---
arch/powerpc/include/asm/mpc85xx.h | 95 -------------------------------
drivers/clk/clk-qoriq.c | 2 +-
drivers/i2c/busses/i2c-mpc.c | 2 +-
drivers/iommu/fsl_pamu.c | 2 +-
drivers/net/ethernet/freescale/gianfar.c | 2 +-
include/linux/fsl-svr.h | 97 ++++++++++++++++++++++++++++++++
6 files changed, 101 insertions(+), 99 deletions(-)
delete mode 100644 arch/powerpc/include/asm/mpc85xx.h
create mode 100644 include/linux/fsl-svr.h
diff --git a/arch/powerpc/include/asm/mpc85xx.h b/arch/powerpc/include/asm/mpc85xx.h
deleted file mode 100644
index 213f3a8..0000000
--- a/arch/powerpc/include/asm/mpc85xx.h
+++ /dev/null
@@ -1,95 +0,0 @@
-/*
- * MPC85xx cpu type detection
- *
- * Copyright 2011-2012 Freescale Semiconductor, Inc.
- *
- * This is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- */
-
-#ifndef __ASM_PPC_MPC85XX_H
-#define __ASM_PPC_MPC85XX_H
-
-#define SVR_REV(svr) ((svr) & 0xFF) /* SOC design resision */
-#define SVR_MAJ(svr) (((svr) >> 4) & 0xF) /* Major revision field*/
-#define SVR_MIN(svr) (((svr) >> 0) & 0xF) /* Minor revision field*/
-
-/* Some parts define SVR[0:23] as the SOC version */
-#define SVR_SOC_VER(svr) (((svr) >> 8) & 0xFFF7FF) /* SOC Version fields */
-
-#define SVR_8533 0x803400
-#define SVR_8535 0x803701
-#define SVR_8536 0x803700
-#define SVR_8540 0x803000
-#define SVR_8541 0x807200
-#define SVR_8543 0x803200
-#define SVR_8544 0x803401
-#define SVR_8545 0x803102
-#define SVR_8547 0x803101
-#define SVR_8548 0x803100
-#define SVR_8555 0x807100
-#define SVR_8560 0x807000
-#define SVR_8567 0x807501
-#define SVR_8568 0x807500
-#define SVR_8569 0x808000
-#define SVR_8572 0x80E000
-#define SVR_P1010 0x80F100
-#define SVR_P1011 0x80E500
-#define SVR_P1012 0x80E501
-#define SVR_P1013 0x80E700
-#define SVR_P1014 0x80F101
-#define SVR_P1017 0x80F700
-#define SVR_P1020 0x80E400
-#define SVR_P1021 0x80E401
-#define SVR_P1022 0x80E600
-#define SVR_P1023 0x80F600
-#define SVR_P1024 0x80E402
-#define SVR_P1025 0x80E403
-#define SVR_P2010 0x80E300
-#define SVR_P2020 0x80E200
-#define SVR_P2040 0x821000
-#define SVR_P2041 0x821001
-#define SVR_P3041 0x821103
-#define SVR_P4040 0x820100
-#define SVR_P4080 0x820000
-#define SVR_P5010 0x822100
-#define SVR_P5020 0x822000
-#define SVR_P5021 0X820500
-#define SVR_P5040 0x820400
-#define SVR_T4240 0x824000
-#define SVR_T4120 0x824001
-#define SVR_T4160 0x824100
-#define SVR_T4080 0x824102
-#define SVR_C291 0x850000
-#define SVR_C292 0x850020
-#define SVR_C293 0x850030
-#define SVR_B4860 0X868000
-#define SVR_G4860 0x868001
-#define SVR_G4060 0x868003
-#define SVR_B4440 0x868100
-#define SVR_G4440 0x868101
-#define SVR_B4420 0x868102
-#define SVR_B4220 0x868103
-#define SVR_T1040 0x852000
-#define SVR_T1041 0x852001
-#define SVR_T1042 0x852002
-#define SVR_T1020 0x852100
-#define SVR_T1021 0x852101
-#define SVR_T1022 0x852102
-#define SVR_T2080 0x853000
-#define SVR_T2081 0x853100
-
-#define SVR_8610 0x80A000
-#define SVR_8641 0x809000
-#define SVR_8641D 0x809001
-
-#define SVR_9130 0x860001
-#define SVR_9131 0x860000
-#define SVR_9132 0x861000
-#define SVR_9232 0x861400
-
-#define SVR_Unknown 0xFFFFFF
-
-#endif
diff --git a/drivers/clk/clk-qoriq.c b/drivers/clk/clk-qoriq.c
index 1ab0fb8..f883ed0 100644
--- a/drivers/clk/clk-qoriq.c
+++ b/drivers/clk/clk-qoriq.c
@@ -1146,7 +1146,7 @@ bad_args:
}
#ifdef CONFIG_PPC
-#include <asm/mpc85xx.h>
+#include <linux/fsl-svr.h>
static const u32 a4510_svrs[] __initconst = {
(SVR_P2040 << 8) | 0x10, /* P2040 1.0 */
diff --git a/drivers/i2c/busses/i2c-mpc.c b/drivers/i2c/busses/i2c-mpc.c
index 48ecffe..a8153dd 100644
--- a/drivers/i2c/busses/i2c-mpc.c
+++ b/drivers/i2c/busses/i2c-mpc.c
@@ -27,9 +27,9 @@
#include <linux/i2c.h>
#include <linux/interrupt.h>
#include <linux/delay.h>
+#include <linux/fsl-svr.h>
#include <asm/mpc52xx.h>
-#include <asm/mpc85xx.h>
#include <sysdev/fsl_soc.h>
#define DRV_NAME "mpc-i2c"
diff --git a/drivers/iommu/fsl_pamu.c b/drivers/iommu/fsl_pamu.c
index a34355f..abbfd9d 100644
--- a/drivers/iommu/fsl_pamu.c
+++ b/drivers/iommu/fsl_pamu.c
@@ -24,7 +24,7 @@
#include <linux/interrupt.h>
#include <linux/genalloc.h>
-#include <asm/mpc85xx.h>
+#include <linux/fsl-svr.h>
/* define indexes for each operation mapping scenario */
#define OMI_QMAN 0x00
diff --git a/drivers/net/ethernet/freescale/gianfar.c b/drivers/net/ethernet/freescale/gianfar.c
index 3e6b9b4..130cc90 100644
--- a/drivers/net/ethernet/freescale/gianfar.c
+++ b/drivers/net/ethernet/freescale/gianfar.c
@@ -90,7 +90,7 @@
#include <asm/io.h>
#ifdef CONFIG_PPC
#include <asm/reg.h>
-#include <asm/mpc85xx.h>
+#include <linux/fsl-svr.h>
#endif
#include <asm/irq.h>
#include <asm/uaccess.h>
diff --git a/include/linux/fsl-svr.h b/include/linux/fsl-svr.h
new file mode 100644
index 0000000..fc8fcc2
--- /dev/null
+++ b/include/linux/fsl-svr.h
@@ -0,0 +1,97 @@
+/*
+ * MPC85xx cpu type detection
+ *
+ * Copyright 2011-2012 Freescale Semiconductor, Inc.
+ *
+ * This is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ */
+
+#ifndef __FSL_SVR_H__
+#define __FSL_SVR_H__
+
+#define SVR_OFFSET 0xA4
+
+#define SVR_REV(svr) ((svr) & 0xFF) /* SOC design resision */
+#define SVR_MAJ(svr) (((svr) >> 4) & 0xF) /* Major revision field*/
+#define SVR_MIN(svr) (((svr) >> 0) & 0xF) /* Minor revision field*/
+
+/* Some parts define SVR[0:23] as the SOC version */
+#define SVR_SOC_VER(svr) (((svr) >> 8) & 0xFFF7FF) /* SOC Version fields */
+
+#define SVR_8533 0x803400
+#define SVR_8535 0x803701
+#define SVR_8536 0x803700
+#define SVR_8540 0x803000
+#define SVR_8541 0x807200
+#define SVR_8543 0x803200
+#define SVR_8544 0x803401
+#define SVR_8545 0x803102
+#define SVR_8547 0x803101
+#define SVR_8548 0x803100
+#define SVR_8555 0x807100
+#define SVR_8560 0x807000
+#define SVR_8567 0x807501
+#define SVR_8568 0x807500
+#define SVR_8569 0x808000
+#define SVR_8572 0x80E000
+#define SVR_P1010 0x80F100
+#define SVR_P1011 0x80E500
+#define SVR_P1012 0x80E501
+#define SVR_P1013 0x80E700
+#define SVR_P1014 0x80F101
+#define SVR_P1017 0x80F700
+#define SVR_P1020 0x80E400
+#define SVR_P1021 0x80E401
+#define SVR_P1022 0x80E600
+#define SVR_P1023 0x80F600
+#define SVR_P1024 0x80E402
+#define SVR_P1025 0x80E403
+#define SVR_P2010 0x80E300
+#define SVR_P2020 0x80E200
+#define SVR_P2040 0x821000
+#define SVR_P2041 0x821001
+#define SVR_P3041 0x821103
+#define SVR_P4040 0x820100
+#define SVR_P4080 0x820000
+#define SVR_P5010 0x822100
+#define SVR_P5020 0x822000
+#define SVR_P5021 0X820500
+#define SVR_P5040 0x820400
+#define SVR_T4240 0x824000
+#define SVR_T4120 0x824001
+#define SVR_T4160 0x824100
+#define SVR_T4080 0x824102
+#define SVR_C291 0x850000
+#define SVR_C292 0x850020
+#define SVR_C293 0x850030
+#define SVR_B4860 0X868000
+#define SVR_G4860 0x868001
+#define SVR_G4060 0x868003
+#define SVR_B4440 0x868100
+#define SVR_G4440 0x868101
+#define SVR_B4420 0x868102
+#define SVR_B4220 0x868103
+#define SVR_T1040 0x852000
+#define SVR_T1041 0x852001
+#define SVR_T1042 0x852002
+#define SVR_T1020 0x852100
+#define SVR_T1021 0x852101
+#define SVR_T1022 0x852102
+#define SVR_T2080 0x853000
+#define SVR_T2081 0x853100
+
+#define SVR_8610 0x80A000
+#define SVR_8641 0x809000
+#define SVR_8641D 0x809001
+
+#define SVR_9130 0x860001
+#define SVR_9131 0x860000
+#define SVR_9132 0x861000
+#define SVR_9232 0x861400
+
+#define SVR_Unknown 0xFFFFFF
+
+#endif
--
2.1.0.27.g96db324
^ permalink raw reply related [flat|nested] 19+ messages in thread* Re: [v3, 1/5] powerpc/fsl: move mpc85xx.h to include/linux
2015-11-27 3:20 ` [v3, 1/5] powerpc/fsl: move mpc85xx.h to include/linux Yangbo Lu
@ 2015-12-08 13:49 ` Ulf Hansson
2015-12-08 17:38 ` Scott Wood
2015-12-08 17:44 ` Scott Wood
1 sibling, 1 reply; 19+ messages in thread
From: Ulf Hansson @ 2015-12-08 13:49 UTC (permalink / raw)
To: Yangbo Lu, Lee Jones; +Cc: linux-mmc, Scott Wood, X.Xie, Li Leo
+Lee Jones
On 27 November 2015 at 04:20, Yangbo Lu <yangbo.lu@freescale.com> wrote:
> Move mpc85xx.h to include/linux and rename it to fsl-svr.h as
> a common header file. It has been used for mpc85xx and it will
> be used for ARM-based SoC as well.
>
> Signed-off-by: Yangbo Lu <yangbo.lu@freescale.com>
> ---
> Changes for v2:
> - None
> Changes for v3:
> - Added this patch
> ---
> arch/powerpc/include/asm/mpc85xx.h | 95 -------------------------------
> drivers/clk/clk-qoriq.c | 2 +-
> drivers/i2c/busses/i2c-mpc.c | 2 +-
> drivers/iommu/fsl_pamu.c | 2 +-
> drivers/net/ethernet/freescale/gianfar.c | 2 +-
> include/linux/fsl-svr.h | 97 ++++++++++++++++++++++++++++++++
> 6 files changed, 101 insertions(+), 99 deletions(-)
> delete mode 100644 arch/powerpc/include/asm/mpc85xx.h
> create mode 100644 include/linux/fsl-svr.h
I am not sure, but perhaps the more proper location is:
include/linux/mfd/fsl-svr.h
...or maybe even better:
include/linux/mfd/syscon/fsl-svr.h
I have added Lee (as the mfd maintainer) to see if he has any advise here.
Kind regards
Uffe
>
> diff --git a/arch/powerpc/include/asm/mpc85xx.h b/arch/powerpc/include/asm/mpc85xx.h
> deleted file mode 100644
> index 213f3a8..0000000
> --- a/arch/powerpc/include/asm/mpc85xx.h
> +++ /dev/null
> @@ -1,95 +0,0 @@
> -/*
> - * MPC85xx cpu type detection
> - *
> - * Copyright 2011-2012 Freescale Semiconductor, Inc.
> - *
> - * This is free software; you can redistribute it and/or modify
> - * it under the terms of the GNU General Public License as published by
> - * the Free Software Foundation; either version 2 of the License, or
> - * (at your option) any later version.
> - */
> -
> -#ifndef __ASM_PPC_MPC85XX_H
> -#define __ASM_PPC_MPC85XX_H
> -
> -#define SVR_REV(svr) ((svr) & 0xFF) /* SOC design resision */
> -#define SVR_MAJ(svr) (((svr) >> 4) & 0xF) /* Major revision field*/
> -#define SVR_MIN(svr) (((svr) >> 0) & 0xF) /* Minor revision field*/
> -
> -/* Some parts define SVR[0:23] as the SOC version */
> -#define SVR_SOC_VER(svr) (((svr) >> 8) & 0xFFF7FF) /* SOC Version fields */
> -
> -#define SVR_8533 0x803400
> -#define SVR_8535 0x803701
> -#define SVR_8536 0x803700
> -#define SVR_8540 0x803000
> -#define SVR_8541 0x807200
> -#define SVR_8543 0x803200
> -#define SVR_8544 0x803401
> -#define SVR_8545 0x803102
> -#define SVR_8547 0x803101
> -#define SVR_8548 0x803100
> -#define SVR_8555 0x807100
> -#define SVR_8560 0x807000
> -#define SVR_8567 0x807501
> -#define SVR_8568 0x807500
> -#define SVR_8569 0x808000
> -#define SVR_8572 0x80E000
> -#define SVR_P1010 0x80F100
> -#define SVR_P1011 0x80E500
> -#define SVR_P1012 0x80E501
> -#define SVR_P1013 0x80E700
> -#define SVR_P1014 0x80F101
> -#define SVR_P1017 0x80F700
> -#define SVR_P1020 0x80E400
> -#define SVR_P1021 0x80E401
> -#define SVR_P1022 0x80E600
> -#define SVR_P1023 0x80F600
> -#define SVR_P1024 0x80E402
> -#define SVR_P1025 0x80E403
> -#define SVR_P2010 0x80E300
> -#define SVR_P2020 0x80E200
> -#define SVR_P2040 0x821000
> -#define SVR_P2041 0x821001
> -#define SVR_P3041 0x821103
> -#define SVR_P4040 0x820100
> -#define SVR_P4080 0x820000
> -#define SVR_P5010 0x822100
> -#define SVR_P5020 0x822000
> -#define SVR_P5021 0X820500
> -#define SVR_P5040 0x820400
> -#define SVR_T4240 0x824000
> -#define SVR_T4120 0x824001
> -#define SVR_T4160 0x824100
> -#define SVR_T4080 0x824102
> -#define SVR_C291 0x850000
> -#define SVR_C292 0x850020
> -#define SVR_C293 0x850030
> -#define SVR_B4860 0X868000
> -#define SVR_G4860 0x868001
> -#define SVR_G4060 0x868003
> -#define SVR_B4440 0x868100
> -#define SVR_G4440 0x868101
> -#define SVR_B4420 0x868102
> -#define SVR_B4220 0x868103
> -#define SVR_T1040 0x852000
> -#define SVR_T1041 0x852001
> -#define SVR_T1042 0x852002
> -#define SVR_T1020 0x852100
> -#define SVR_T1021 0x852101
> -#define SVR_T1022 0x852102
> -#define SVR_T2080 0x853000
> -#define SVR_T2081 0x853100
> -
> -#define SVR_8610 0x80A000
> -#define SVR_8641 0x809000
> -#define SVR_8641D 0x809001
> -
> -#define SVR_9130 0x860001
> -#define SVR_9131 0x860000
> -#define SVR_9132 0x861000
> -#define SVR_9232 0x861400
> -
> -#define SVR_Unknown 0xFFFFFF
> -
> -#endif
> diff --git a/drivers/clk/clk-qoriq.c b/drivers/clk/clk-qoriq.c
> index 1ab0fb8..f883ed0 100644
> --- a/drivers/clk/clk-qoriq.c
> +++ b/drivers/clk/clk-qoriq.c
> @@ -1146,7 +1146,7 @@ bad_args:
> }
>
> #ifdef CONFIG_PPC
> -#include <asm/mpc85xx.h>
> +#include <linux/fsl-svr.h>
>
> static const u32 a4510_svrs[] __initconst = {
> (SVR_P2040 << 8) | 0x10, /* P2040 1.0 */
> diff --git a/drivers/i2c/busses/i2c-mpc.c b/drivers/i2c/busses/i2c-mpc.c
> index 48ecffe..a8153dd 100644
> --- a/drivers/i2c/busses/i2c-mpc.c
> +++ b/drivers/i2c/busses/i2c-mpc.c
> @@ -27,9 +27,9 @@
> #include <linux/i2c.h>
> #include <linux/interrupt.h>
> #include <linux/delay.h>
> +#include <linux/fsl-svr.h>
>
> #include <asm/mpc52xx.h>
> -#include <asm/mpc85xx.h>
> #include <sysdev/fsl_soc.h>
>
> #define DRV_NAME "mpc-i2c"
> diff --git a/drivers/iommu/fsl_pamu.c b/drivers/iommu/fsl_pamu.c
> index a34355f..abbfd9d 100644
> --- a/drivers/iommu/fsl_pamu.c
> +++ b/drivers/iommu/fsl_pamu.c
> @@ -24,7 +24,7 @@
> #include <linux/interrupt.h>
> #include <linux/genalloc.h>
>
> -#include <asm/mpc85xx.h>
> +#include <linux/fsl-svr.h>
>
> /* define indexes for each operation mapping scenario */
> #define OMI_QMAN 0x00
> diff --git a/drivers/net/ethernet/freescale/gianfar.c b/drivers/net/ethernet/freescale/gianfar.c
> index 3e6b9b4..130cc90 100644
> --- a/drivers/net/ethernet/freescale/gianfar.c
> +++ b/drivers/net/ethernet/freescale/gianfar.c
> @@ -90,7 +90,7 @@
> #include <asm/io.h>
> #ifdef CONFIG_PPC
> #include <asm/reg.h>
> -#include <asm/mpc85xx.h>
> +#include <linux/fsl-svr.h>
> #endif
> #include <asm/irq.h>
> #include <asm/uaccess.h>
> diff --git a/include/linux/fsl-svr.h b/include/linux/fsl-svr.h
> new file mode 100644
> index 0000000..fc8fcc2
> --- /dev/null
> +++ b/include/linux/fsl-svr.h
> @@ -0,0 +1,97 @@
> +/*
> + * MPC85xx cpu type detection
> + *
> + * Copyright 2011-2012 Freescale Semiconductor, Inc.
> + *
> + * This is free software; you can redistribute it and/or modify
> + * it under the terms of the GNU General Public License as published by
> + * the Free Software Foundation; either version 2 of the License, or
> + * (at your option) any later version.
> + */
> +
> +#ifndef __FSL_SVR_H__
> +#define __FSL_SVR_H__
> +
> +#define SVR_OFFSET 0xA4
> +
> +#define SVR_REV(svr) ((svr) & 0xFF) /* SOC design resision */
> +#define SVR_MAJ(svr) (((svr) >> 4) & 0xF) /* Major revision field*/
> +#define SVR_MIN(svr) (((svr) >> 0) & 0xF) /* Minor revision field*/
> +
> +/* Some parts define SVR[0:23] as the SOC version */
> +#define SVR_SOC_VER(svr) (((svr) >> 8) & 0xFFF7FF) /* SOC Version fields */
> +
> +#define SVR_8533 0x803400
> +#define SVR_8535 0x803701
> +#define SVR_8536 0x803700
> +#define SVR_8540 0x803000
> +#define SVR_8541 0x807200
> +#define SVR_8543 0x803200
> +#define SVR_8544 0x803401
> +#define SVR_8545 0x803102
> +#define SVR_8547 0x803101
> +#define SVR_8548 0x803100
> +#define SVR_8555 0x807100
> +#define SVR_8560 0x807000
> +#define SVR_8567 0x807501
> +#define SVR_8568 0x807500
> +#define SVR_8569 0x808000
> +#define SVR_8572 0x80E000
> +#define SVR_P1010 0x80F100
> +#define SVR_P1011 0x80E500
> +#define SVR_P1012 0x80E501
> +#define SVR_P1013 0x80E700
> +#define SVR_P1014 0x80F101
> +#define SVR_P1017 0x80F700
> +#define SVR_P1020 0x80E400
> +#define SVR_P1021 0x80E401
> +#define SVR_P1022 0x80E600
> +#define SVR_P1023 0x80F600
> +#define SVR_P1024 0x80E402
> +#define SVR_P1025 0x80E403
> +#define SVR_P2010 0x80E300
> +#define SVR_P2020 0x80E200
> +#define SVR_P2040 0x821000
> +#define SVR_P2041 0x821001
> +#define SVR_P3041 0x821103
> +#define SVR_P4040 0x820100
> +#define SVR_P4080 0x820000
> +#define SVR_P5010 0x822100
> +#define SVR_P5020 0x822000
> +#define SVR_P5021 0X820500
> +#define SVR_P5040 0x820400
> +#define SVR_T4240 0x824000
> +#define SVR_T4120 0x824001
> +#define SVR_T4160 0x824100
> +#define SVR_T4080 0x824102
> +#define SVR_C291 0x850000
> +#define SVR_C292 0x850020
> +#define SVR_C293 0x850030
> +#define SVR_B4860 0X868000
> +#define SVR_G4860 0x868001
> +#define SVR_G4060 0x868003
> +#define SVR_B4440 0x868100
> +#define SVR_G4440 0x868101
> +#define SVR_B4420 0x868102
> +#define SVR_B4220 0x868103
> +#define SVR_T1040 0x852000
> +#define SVR_T1041 0x852001
> +#define SVR_T1042 0x852002
> +#define SVR_T1020 0x852100
> +#define SVR_T1021 0x852101
> +#define SVR_T1022 0x852102
> +#define SVR_T2080 0x853000
> +#define SVR_T2081 0x853100
> +
> +#define SVR_8610 0x80A000
> +#define SVR_8641 0x809000
> +#define SVR_8641D 0x809001
> +
> +#define SVR_9130 0x860001
> +#define SVR_9131 0x860000
> +#define SVR_9132 0x861000
> +#define SVR_9232 0x861400
> +
> +#define SVR_Unknown 0xFFFFFF
> +
> +#endif
> --
> 2.1.0.27.g96db324
>
^ permalink raw reply [flat|nested] 19+ messages in thread* Re: [v3, 1/5] powerpc/fsl: move mpc85xx.h to include/linux
2015-12-08 13:49 ` Ulf Hansson
@ 2015-12-08 17:38 ` Scott Wood
0 siblings, 0 replies; 19+ messages in thread
From: Scott Wood @ 2015-12-08 17:38 UTC (permalink / raw)
To: Ulf Hansson, Yangbo Lu, Lee Jones; +Cc: linux-mmc, X.Xie, Li Leo
On Tue, 2015-12-08 at 14:49 +0100, Ulf Hansson wrote:
> +Lee Jones
>
> On 27 November 2015 at 04:20, Yangbo Lu <yangbo.lu@freescale.com> wrote:
> > Move mpc85xx.h to include/linux and rename it to fsl-svr.h as
> > a common header file. It has been used for mpc85xx and it will
> > be used for ARM-based SoC as well.
> >
> > Signed-off-by: Yangbo Lu <yangbo.lu@freescale.com>
> > ---
> > Changes for v2:
> > - None
> > Changes for v3:
> > - Added this patch
> > ---
> > arch/powerpc/include/asm/mpc85xx.h | 95 ---------------------------
> > ----
> > drivers/clk/clk-qoriq.c | 2 +-
> > drivers/i2c/busses/i2c-mpc.c | 2 +-
> > drivers/iommu/fsl_pamu.c | 2 +-
> > drivers/net/ethernet/freescale/gianfar.c | 2 +-
> > include/linux/fsl-svr.h | 97
> > ++++++++++++++++++++++++++++++++
> > 6 files changed, 101 insertions(+), 99 deletions(-)
> > delete mode 100644 arch/powerpc/include/asm/mpc85xx.h
> > create mode 100644 include/linux/fsl-svr.h
>
> I am not sure, but perhaps the more proper location is:
>
> include/linux/mfd/fsl-svr.h
>
> ...or maybe even better:
>
> include/linux/mfd/syscon/fsl-svr.h
There is nothing mfd or syscon specific about this data (and in fact I'm a bit
skeptical about using syscon for this, especially since it seems to require a
device tree modification); it's already used in other places that read the SVR
via the PPC SPR.
-Scott
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [v3, 1/5] powerpc/fsl: move mpc85xx.h to include/linux
2015-11-27 3:20 ` [v3, 1/5] powerpc/fsl: move mpc85xx.h to include/linux Yangbo Lu
2015-12-08 13:49 ` Ulf Hansson
@ 2015-12-08 17:44 ` Scott Wood
1 sibling, 0 replies; 19+ messages in thread
From: Scott Wood @ 2015-12-08 17:44 UTC (permalink / raw)
To: Yangbo Lu, linux-mmc, ulf.hansson; +Cc: X.Xie, LeoLi
On Fri, 2015-11-27 at 11:20 +0800, Yangbo Lu wrote:
> Move mpc85xx.h to include/linux and rename it to fsl-svr.h as
> a common header file. It has been used for mpc85xx and it will
> be used for ARM-based SoC as well.
>
> Signed-off-by: Yangbo Lu <yangbo.lu@freescale.com>
> ---
> Changes for v2:
> - None
> Changes for v3:
> - Added this patch
> ---
> arch/powerpc/include/asm/mpc85xx.h | 95 -----------------------------
> --
> drivers/clk/clk-qoriq.c | 2 +-
> drivers/i2c/busses/i2c-mpc.c | 2 +-
> drivers/iommu/fsl_pamu.c | 2 +-
> drivers/net/ethernet/freescale/gianfar.c | 2 +-
> include/linux/fsl-svr.h | 97
> ++++++++++++++++++++++++++++++++
> 6 files changed, 101 insertions(+), 99 deletions(-)
> delete mode 100644 arch/powerpc/include/asm/mpc85xx.h
> create mode 100644 include/linux/fsl-svr.h
Pass -M -C to git format-patch so it detects moves and copies, and shows what
changed during the move/copy.
Could you make it include/linux/fsl/svr.h instead?
-Scott
^ permalink raw reply [flat|nested] 19+ messages in thread
* [v3, 2/5] mmc: sdhci-of-esdhc: get SVR from global utilities registers
2015-11-27 3:20 [v3, 0/5] eSDHC patches introduction Yangbo Lu
2015-11-27 3:20 ` [v3, 1/5] powerpc/fsl: move mpc85xx.h to include/linux Yangbo Lu
@ 2015-11-27 3:20 ` Yangbo Lu
2015-12-08 17:45 ` Scott Wood
2015-11-27 3:20 ` [v3, 3/5] mmc: kconfig: select MFD_SYSCON for MMC_SDHCI_OF_ESDHC Yangbo Lu
` (3 subsequent siblings)
5 siblings, 1 reply; 19+ messages in thread
From: Yangbo Lu @ 2015-11-27 3:20 UTC (permalink / raw)
To: linux-mmc, ulf.hansson; +Cc: scottwood, X.Xie, LeoLi, Yangbo Lu
Most of silicon errata about the eSDHC need to be identified through
the SoC version/revision. This patch makes the driver get these
information from SVR(system version register) of global utilities
registers.
Signed-off-by: Yangbo Lu <yangbo.lu@freescale.com>
---
Changes for v2:
- Got SVR through iomap instead of dts
Changes for v3:
- Managed GUTS through syscon instead of iomap in eSDHC driver
---
drivers/mmc/host/sdhci-of-esdhc.c | 19 +++++++++++++++++--
1 file changed, 17 insertions(+), 2 deletions(-)
diff --git a/drivers/mmc/host/sdhci-of-esdhc.c b/drivers/mmc/host/sdhci-of-esdhc.c
index 83b1226..fce24b7 100644
--- a/drivers/mmc/host/sdhci-of-esdhc.c
+++ b/drivers/mmc/host/sdhci-of-esdhc.c
@@ -19,6 +19,9 @@
#include <linux/delay.h>
#include <linux/module.h>
#include <linux/mmc/host.h>
+#include <linux/mfd/syscon.h>
+#include <linux/regmap.h>
+#include <linux/fsl-svr.h>
#include "sdhci-pltfm.h"
#include "sdhci-esdhc.h"
@@ -28,6 +31,8 @@
struct sdhci_esdhc {
u8 vendor_ver;
u8 spec_ver;
+ u32 soc_ver;
+ u8 soc_rev;
};
/**
@@ -566,18 +571,28 @@ static void esdhc_init(struct platform_device *pdev, struct sdhci_host *host)
{
struct sdhci_pltfm_host *pltfm_host;
struct sdhci_esdhc *esdhc;
+ struct regmap *guts_regmap;
+ u32 svr;
u16 host_ver;
pltfm_host = sdhci_priv(host);
esdhc = devm_kzalloc(&pdev->dev, sizeof(struct sdhci_esdhc),
GFP_KERNEL);
+ pltfm_host->priv = esdhc;
+
+ guts_regmap = syscon_regmap_lookup_by_compatible("syscon");
+ if (IS_ERR(guts_regmap)) {
+ dev_err(&pdev->dev, "unable to find global utilities registers\n");
+ } else {
+ regmap_read(guts_regmap, SVR_OFFSET, &svr);
+ esdhc->soc_ver = SVR_SOC_VER(svr);
+ esdhc->soc_rev = SVR_REV(svr);
+ }
host_ver = sdhci_readw(host, SDHCI_HOST_VERSION);
esdhc->vendor_ver = (host_ver & SDHCI_VENDOR_VER_MASK) >>
SDHCI_VENDOR_VER_SHIFT;
esdhc->spec_ver = host_ver & SDHCI_SPEC_VER_MASK;
-
- pltfm_host->priv = esdhc;
}
static int sdhci_esdhc_probe(struct platform_device *pdev)
--
2.1.0.27.g96db324
^ permalink raw reply related [flat|nested] 19+ messages in thread* Re: [v3, 2/5] mmc: sdhci-of-esdhc: get SVR from global utilities registers
2015-11-27 3:20 ` [v3, 2/5] mmc: sdhci-of-esdhc: get SVR from global utilities registers Yangbo Lu
@ 2015-12-08 17:45 ` Scott Wood
0 siblings, 0 replies; 19+ messages in thread
From: Scott Wood @ 2015-12-08 17:45 UTC (permalink / raw)
To: Yangbo Lu, linux-mmc, ulf.hansson; +Cc: X.Xie, LeoLi
On Fri, 2015-11-27 at 11:20 +0800, Yangbo Lu wrote:
> Most of silicon errata about the eSDHC need to be identified through
> the SoC version/revision. This patch makes the driver get these
> information from SVR(system version register) of global utilities
> registers.
>
> Signed-off-by: Yangbo Lu <yangbo.lu@freescale.com>
> ---
> Changes for v2:
> - Got SVR through iomap instead of dts
> Changes for v3:
> - Managed GUTS through syscon instead of iomap in eSDHC driver
> ---
> drivers/mmc/host/sdhci-of-esdhc.c | 19 +++++++++++++++++--
> 1 file changed, 17 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/mmc/host/sdhci-of-esdhc.c b/drivers/mmc/host/sdhci-of
> -esdhc.c
> index 83b1226..fce24b7 100644
> --- a/drivers/mmc/host/sdhci-of-esdhc.c
> +++ b/drivers/mmc/host/sdhci-of-esdhc.c
> @@ -19,6 +19,9 @@
> #include <linux/delay.h>
> #include <linux/module.h>
> #include <linux/mmc/host.h>
> +#include <linux/mfd/syscon.h>
> +#include <linux/regmap.h>
> +#include <linux/fsl-svr.h>
> #include "sdhci-pltfm.h"
> #include "sdhci-esdhc.h"
>
> @@ -28,6 +31,8 @@
> struct sdhci_esdhc {
> u8 vendor_ver;
> u8 spec_ver;
> + u32 soc_ver;
> + u8 soc_rev;
> };
>
> /**
> @@ -566,18 +571,28 @@ static void esdhc_init(struct platform_device *pdev,
> struct sdhci_host *host)
> {
> struct sdhci_pltfm_host *pltfm_host;
> struct sdhci_esdhc *esdhc;
> + struct regmap *guts_regmap;
> + u32 svr;
> u16 host_ver;
>
> pltfm_host = sdhci_priv(host);
> esdhc = devm_kzalloc(&pdev->dev, sizeof(struct sdhci_esdhc),
> GFP_KERNEL);
> + pltfm_host->priv = esdhc;
> +
> + guts_regmap = syscon_regmap_lookup_by_compatible("syscon");
> + if (IS_ERR(guts_regmap)) {
> + dev_err(&pdev->dev, "unable to find global utilities
> registers\n");
> + } else {
> + regmap_read(guts_regmap, SVR_OFFSET, &svr);
> + esdhc->soc_ver = SVR_SOC_VER(svr);
> + esdhc->soc_rev = SVR_REV(svr);
> + }
As this patchset stands you're going to be spitting out that error message on
everything that isn't t4240...
-Scott
^ permalink raw reply [flat|nested] 19+ messages in thread
* [v3, 3/5] mmc: kconfig: select MFD_SYSCON for MMC_SDHCI_OF_ESDHC
2015-11-27 3:20 [v3, 0/5] eSDHC patches introduction Yangbo Lu
2015-11-27 3:20 ` [v3, 1/5] powerpc/fsl: move mpc85xx.h to include/linux Yangbo Lu
2015-11-27 3:20 ` [v3, 2/5] mmc: sdhci-of-esdhc: get SVR from global utilities registers Yangbo Lu
@ 2015-11-27 3:20 ` Yangbo Lu
2015-12-08 13:49 ` Ulf Hansson
2015-11-27 3:20 ` [v3, 4/5] powerpc: dts: t4240: add syscon support for DCFG node Yangbo Lu
` (2 subsequent siblings)
5 siblings, 1 reply; 19+ messages in thread
From: Yangbo Lu @ 2015-11-27 3:20 UTC (permalink / raw)
To: linux-mmc, ulf.hansson; +Cc: scottwood, X.Xie, LeoLi, Yangbo Lu
The sdhci-of-esdhc driver needs the syscon support to do
regmap and access the global utilities registers. So we
select MFD_SYSCON for MMC_SDHCI_OF_ESDHC here.
Signed-off-by: Yangbo Lu <yangbo.lu@freescale.com>
---
Changes for v2:
- None
Changes for v3:
- Added this patch
---
drivers/mmc/host/Kconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/mmc/host/Kconfig b/drivers/mmc/host/Kconfig
index 1526b8a..4fb88ba 100644
--- a/drivers/mmc/host/Kconfig
+++ b/drivers/mmc/host/Kconfig
@@ -142,6 +142,7 @@ config MMC_SDHCI_OF_ESDHC
depends on MMC_SDHCI_PLTFM
depends on PPC || ARCH_MXC || ARCH_LAYERSCAPE
select MMC_SDHCI_IO_ACCESSORS
+ select MFD_SYSCON
help
This selects the Freescale eSDHC controller support.
--
2.1.0.27.g96db324
^ permalink raw reply related [flat|nested] 19+ messages in thread* Re: [v3, 3/5] mmc: kconfig: select MFD_SYSCON for MMC_SDHCI_OF_ESDHC
2015-11-27 3:20 ` [v3, 3/5] mmc: kconfig: select MFD_SYSCON for MMC_SDHCI_OF_ESDHC Yangbo Lu
@ 2015-12-08 13:49 ` Ulf Hansson
2015-12-08 17:40 ` Scott Wood
0 siblings, 1 reply; 19+ messages in thread
From: Ulf Hansson @ 2015-12-08 13:49 UTC (permalink / raw)
To: Yangbo Lu; +Cc: linux-mmc, Scott Wood, X.Xie, Li Leo
On 27 November 2015 at 04:20, Yangbo Lu <yangbo.lu@freescale.com> wrote:
> The sdhci-of-esdhc driver needs the syscon support to do
> regmap and access the global utilities registers. So we
> select MFD_SYSCON for MMC_SDHCI_OF_ESDHC here.
>
> Signed-off-by: Yangbo Lu <yangbo.lu@freescale.com>
> ---
> Changes for v2:
> - None
> Changes for v3:
> - Added this patch
> ---
> drivers/mmc/host/Kconfig | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/mmc/host/Kconfig b/drivers/mmc/host/Kconfig
> index 1526b8a..4fb88ba 100644
> --- a/drivers/mmc/host/Kconfig
> +++ b/drivers/mmc/host/Kconfig
> @@ -142,6 +142,7 @@ config MMC_SDHCI_OF_ESDHC
> depends on MMC_SDHCI_PLTFM
> depends on PPC || ARCH_MXC || ARCH_LAYERSCAPE
> select MMC_SDHCI_IO_ACCESSORS
> + select MFD_SYSCON
Perhaps "depends on" is better to use here.
> help
> This selects the Freescale eSDHC controller support.
>
> --
> 2.1.0.27.g96db324
>
Kind regards
Uffe
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [v3, 3/5] mmc: kconfig: select MFD_SYSCON for MMC_SDHCI_OF_ESDHC
2015-12-08 13:49 ` Ulf Hansson
@ 2015-12-08 17:40 ` Scott Wood
0 siblings, 0 replies; 19+ messages in thread
From: Scott Wood @ 2015-12-08 17:40 UTC (permalink / raw)
To: Ulf Hansson, Yangbo Lu; +Cc: linux-mmc, X.Xie, Li Leo
On Tue, 2015-12-08 at 14:49 +0100, Ulf Hansson wrote:
> On 27 November 2015 at 04:20, Yangbo Lu <yangbo.lu@freescale.com> wrote:
> > The sdhci-of-esdhc driver needs the syscon support to do
> > regmap and access the global utilities registers. So we
> > select MFD_SYSCON for MMC_SDHCI_OF_ESDHC here.
> >
> > Signed-off-by: Yangbo Lu <yangbo.lu@freescale.com>
> > ---
> > Changes for v2:
> > - None
> > Changes for v3:
> > - Added this patch
> > ---
> > drivers/mmc/host/Kconfig | 1 +
> > 1 file changed, 1 insertion(+)
> >
> > diff --git a/drivers/mmc/host/Kconfig b/drivers/mmc/host/Kconfig
> > index 1526b8a..4fb88ba 100644
> > --- a/drivers/mmc/host/Kconfig
> > +++ b/drivers/mmc/host/Kconfig
> > @@ -142,6 +142,7 @@ config MMC_SDHCI_OF_ESDHC
> > depends on MMC_SDHCI_PLTFM
> > depends on PPC || ARCH_MXC || ARCH_LAYERSCAPE
> > select MMC_SDHCI_IO_ACCESSORS
> > + select MFD_SYSCON
>
> Perhaps "depends on" is better to use here.
Plenty of other thing select MFD_SYSCON, and MFD_SYSCON doesn't have any
dependencies. Why would you torment a user by making them somehow guess (or
dig around to find out) that they need to enable MFD_SYSCON before seeing a
random other driver appear?
-Scott
^ permalink raw reply [flat|nested] 19+ messages in thread
* [v3, 4/5] powerpc: dts: t4240: add syscon support for DCFG node
2015-11-27 3:20 [v3, 0/5] eSDHC patches introduction Yangbo Lu
` (2 preceding siblings ...)
2015-11-27 3:20 ` [v3, 3/5] mmc: kconfig: select MFD_SYSCON for MMC_SDHCI_OF_ESDHC Yangbo Lu
@ 2015-11-27 3:20 ` Yangbo Lu
2015-12-08 17:46 ` Scott Wood
2015-11-27 3:20 ` [v3, 5/5] mmc: sdhci-of-esdhc: fix host version for T4240-R1.0-R2.0 Yangbo Lu
2015-12-08 13:59 ` [v3, 0/5] eSDHC patches introduction Ulf Hansson
5 siblings, 1 reply; 19+ messages in thread
From: Yangbo Lu @ 2015-11-27 3:20 UTC (permalink / raw)
To: linux-mmc, ulf.hansson; +Cc: scottwood, X.Xie, LeoLi, Yangbo Lu
Add syscon support for DCFG node, so that the driver could use
syscon regmap interface to access the device config module registers.
And the CONFIG_MFD_SYSCON should be enabled for this.
Signed-off-by: Yangbo Lu <yangbo.lu@freescale.com>
---
Changes for v2:
- None
Changes for v3:
- Added this patch
---
arch/powerpc/boot/dts/fsl/t4240si-post.dtsi | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/arch/powerpc/boot/dts/fsl/t4240si-post.dtsi b/arch/powerpc/boot/dts/fsl/t4240si-post.dtsi
index 68c4ead..5f148b2 100644
--- a/arch/powerpc/boot/dts/fsl/t4240si-post.dtsi
+++ b/arch/powerpc/boot/dts/fsl/t4240si-post.dtsi
@@ -941,7 +941,9 @@
/include/ "qoriq-mpic4.3.dtsi"
guts: global-utilities@e0000 {
- compatible = "fsl,t4240-device-config", "fsl,qoriq-device-config-2.0";
+ compatible = "fsl,t4240-device-config",
+ "fsl,qoriq-device-config-2.0",
+ "syscon";
reg = <0xe0000 0xe00>;
fsl,has-rstcr;
fsl,liodn-bits = <12>;
--
2.1.0.27.g96db324
^ permalink raw reply related [flat|nested] 19+ messages in thread* Re: [v3, 4/5] powerpc: dts: t4240: add syscon support for DCFG node
2015-11-27 3:20 ` [v3, 4/5] powerpc: dts: t4240: add syscon support for DCFG node Yangbo Lu
@ 2015-12-08 17:46 ` Scott Wood
[not found] ` <BLUPR0301MB2065B5878A43F66982D6B30BF2E80@BLUPR0301MB2065.namprd03.prod.outlook.com>
0 siblings, 1 reply; 19+ messages in thread
From: Scott Wood @ 2015-12-08 17:46 UTC (permalink / raw)
To: Yangbo Lu, linux-mmc, ulf.hansson; +Cc: X.Xie, LeoLi
On Fri, 2015-11-27 at 11:20 +0800, Yangbo Lu wrote:
> Add syscon support for DCFG node, so that the driver could use
> syscon regmap interface to access the device config module registers.
> And the CONFIG_MFD_SYSCON should be enabled for this.
>
> Signed-off-by: Yangbo Lu <yangbo.lu@freescale.com>
> ---
> Changes for v2:
> - None
> Changes for v3:
> - Added this patch
> ---
> arch/powerpc/boot/dts/fsl/t4240si-post.dtsi | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/arch/powerpc/boot/dts/fsl/t4240si-post.dtsi
> b/arch/powerpc/boot/dts/fsl/t4240si-post.dtsi
> index 68c4ead..5f148b2 100644
> --- a/arch/powerpc/boot/dts/fsl/t4240si-post.dtsi
> +++ b/arch/powerpc/boot/dts/fsl/t4240si-post.dtsi
> @@ -941,7 +941,9 @@
> /include/ "qoriq-mpic4.3.dtsi"
>
> guts: global-utilities@e0000 {
> - compatible = "fsl,t4240-device-config", "fsl,qoriq-device
> -config-2.0";
> + compatible = "fsl,t4240-device-config",
> + "fsl,qoriq-device-config-2.0",
> + "syscon";
I really don't like changing the device tree based on Linux internals. It
also means that the workaround wouldn't work for users that don't upgrade
their device tree. I definitely don't like one QorIQ chip having "syscon" on
the dcfg node but others not having it.
The guts driver should just maintain a list of compatibles to match. Why do
we need to use syscon, rather than a guts driver that exports an fsl_get_svr()
function?
-Scott
^ permalink raw reply [flat|nested] 19+ messages in thread
* [v3, 5/5] mmc: sdhci-of-esdhc: fix host version for T4240-R1.0-R2.0
2015-11-27 3:20 [v3, 0/5] eSDHC patches introduction Yangbo Lu
` (3 preceding siblings ...)
2015-11-27 3:20 ` [v3, 4/5] powerpc: dts: t4240: add syscon support for DCFG node Yangbo Lu
@ 2015-11-27 3:20 ` Yangbo Lu
2015-12-08 13:59 ` [v3, 0/5] eSDHC patches introduction Ulf Hansson
5 siblings, 0 replies; 19+ messages in thread
From: Yangbo Lu @ 2015-11-27 3:20 UTC (permalink / raw)
To: linux-mmc, ulf.hansson; +Cc: scottwood, X.Xie, LeoLi, Yangbo Lu
The eSDHC of T4240-R1.0-R2.0 has incorrect vender version and spec version.
Acturally, the right version numbers should be VVN=0x13 and SVN = 0x1.
So, fix it in driver to avoid that incorrect version numbers break down the
ADMA data transfer.
Signed-off-by: Yangbo Lu <yangbo.lu@freescale.com>
---
Changes for v2:
- None
Changes for v3:
- Got SoC version/revision from struct sdhci_esdhc instead of global variables
---
drivers/mmc/host/sdhci-of-esdhc.c | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/drivers/mmc/host/sdhci-of-esdhc.c b/drivers/mmc/host/sdhci-of-esdhc.c
index fce24b7..3a47243 100644
--- a/drivers/mmc/host/sdhci-of-esdhc.c
+++ b/drivers/mmc/host/sdhci-of-esdhc.c
@@ -78,6 +78,8 @@ static u32 esdhc_readl_fixup(struct sdhci_host *host,
static u16 esdhc_readw_fixup(struct sdhci_host *host,
int spec_reg, u32 value)
{
+ struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host);
+ struct sdhci_esdhc *esdhc = pltfm_host->priv;
u16 ret;
int shift = (spec_reg & 0x2) * 8;
@@ -85,6 +87,13 @@ static u16 esdhc_readw_fixup(struct sdhci_host *host,
ret = value & 0xffff;
else
ret = (value >> shift) & 0xffff;
+
+ /* Workaround for T4240-R1.0-R2.0 eSDHC which has incorrect
+ * vendor version and spec version information.
+ */
+ if ((spec_reg == SDHCI_HOST_VERSION) &&
+ (esdhc->soc_ver == SVR_T4240) && (esdhc->soc_rev <= 0x20))
+ ret = (VENDOR_V_23 << SDHCI_VENDOR_VER_SHIFT) | SDHCI_SPEC_200;
return ret;
}
--
2.1.0.27.g96db324
^ permalink raw reply related [flat|nested] 19+ messages in thread* Re: [v3, 0/5] eSDHC patches introduction
2015-11-27 3:20 [v3, 0/5] eSDHC patches introduction Yangbo Lu
` (4 preceding siblings ...)
2015-11-27 3:20 ` [v3, 5/5] mmc: sdhci-of-esdhc: fix host version for T4240-R1.0-R2.0 Yangbo Lu
@ 2015-12-08 13:59 ` Ulf Hansson
5 siblings, 0 replies; 19+ messages in thread
From: Ulf Hansson @ 2015-12-08 13:59 UTC (permalink / raw)
To: Yangbo Lu; +Cc: linux-mmc, Scott Wood, X.Xie, Li Leo
On 27 November 2015 at 04:20, Yangbo Lu <yangbo.lu@freescale.com> wrote:
> This patchset is used to fix host version in eSDHC_HOSTVER for T4240-R1.0-R2.0.
> To get the SoC version and revision, it's needed to add syscon support to access
> the SVR(system version register) of global utilities registers through regmap.
>
> So, the first three patches are to add syscon support to access SVR.
> The following two patches are to fix host version for T4240.
>
> Yangbo Lu (5):
> powerpc/fsl: move mpc85xx.h to include/linux
> mmc: sdhci-of-esdhc: get SVR from global utilities registers
> mmc: kconfig: select MFD_SYSCON for MMC_SDHCI_OF_ESDHC
> powerpc: dts: t4240: add syscon support for DCFG node
> mmc: sdhci-of-esdhc: fix host version for T4240-R1.0-R2.0
>
> arch/powerpc/boot/dts/fsl/t4240si-post.dtsi | 4 +-
> arch/powerpc/include/asm/mpc85xx.h | 95 ----------------------------
> drivers/clk/clk-qoriq.c | 2 +-
> drivers/i2c/busses/i2c-mpc.c | 2 +-
> drivers/iommu/fsl_pamu.c | 2 +-
> drivers/mmc/host/Kconfig | 1 +
> drivers/mmc/host/sdhci-of-esdhc.c | 28 ++++++++-
> drivers/net/ethernet/freescale/gianfar.c | 2 +-
> include/linux/fsl-svr.h | 97 +++++++++++++++++++++++++++++
> 9 files changed, 131 insertions(+), 102 deletions(-)
> delete mode 100644 arch/powerpc/include/asm/mpc85xx.h
> create mode 100644 include/linux/fsl-svr.h
>
> --
> 2.1.0.27.g96db324
>
Overall it looks good. I just posted some minor comments for two of the patches.
I assume it's easiest if I queue this via my mmc tree, but that
requires the non-mmc parts to be acked. Or you have another
suggestion?
Regarding the DT changes, normally SOC maintainers wants them to go
separately via their SOC trees. Although, I can pick them also, if
those are acked.
Kind regards
Uffe
^ permalink raw reply [flat|nested] 19+ messages in thread