All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/5] powerpc/85xx: Add support for 85xx cpu type detection
@ 2013-09-03  7:33 Haijun Zhang
  2013-09-03  7:33 ` [PATCH 2/5] mmc:sdhc: Share function sdhci_reset for platform use Haijun Zhang
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: Haijun Zhang @ 2013-09-03  7:33 UTC (permalink / raw)
  To: cbouatmailru, galak
  Cc: linux-mmc, cjb, scottwood, X.Xie, Haijun Zhang, Zhao Chenhui

Add this file to help detect cpu type in runtime.
These macros will be more favorable for driver
to apply errata and workaround to specified cpu type.

Signed-off-by: Haijun Zhang <Haijun.Zhang@freescale.com>
Signed-off-by: Zhao Chenhui <chenhui.zhao@freescale.com>
---
 arch/powerpc/include/asm/mpc85xx.h | 92 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 92 insertions(+)
 create mode 100644 arch/powerpc/include/asm/mpc85xx.h

diff --git a/arch/powerpc/include/asm/mpc85xx.h b/arch/powerpc/include/asm/mpc85xx.h
new file mode 100644
index 0000000..736d4ac
--- /dev/null
+++ b/arch/powerpc/include/asm/mpc85xx.h
@@ -0,0 +1,92 @@
+/*
+ * 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_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_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
-- 
1.8.0



^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 2/5] mmc:sdhc: Share function sdhci_reset for platform use
  2013-09-03  7:33 [PATCH 1/5] powerpc/85xx: Add support for 85xx cpu type detection Haijun Zhang
@ 2013-09-03  7:33 ` Haijun Zhang
  2013-09-03  7:33 ` [PATCH 3/5] mmc: esdhc: workaround for dma err in the last system transaction Haijun Zhang
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: Haijun Zhang @ 2013-09-03  7:33 UTC (permalink / raw)
  To: cbouatmailru, galak; +Cc: linux-mmc, cjb, scottwood, X.Xie, Haijun Zhang

In some case, sdhci_reset is need to be invoked in some
platform related workaround. So export it for public use.

Signed-off-by: Haijun Zhang <Haijun.Zhang@freescale.com>
---
 drivers/mmc/host/sdhci.c | 3 ++-
 drivers/mmc/host/sdhci.h | 1 +
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c
index 57541e0..f81439b 100644
--- a/drivers/mmc/host/sdhci.c
+++ b/drivers/mmc/host/sdhci.c
@@ -181,7 +181,7 @@ static void sdhci_disable_card_detection(struct sdhci_host *host)
 	sdhci_set_card_detection(host, false);
 }
 
-static void sdhci_reset(struct sdhci_host *host, u8 mask)
+void sdhci_reset(struct sdhci_host *host, u8 mask)
 {
 	unsigned long timeout;
 	u32 uninitialized_var(ier);
@@ -233,6 +233,7 @@ static void sdhci_reset(struct sdhci_host *host, u8 mask)
 			host->ops->enable_dma(host);
 	}
 }
+EXPORT_SYMBOL_GPL(sdhci_reset);
 
 static void sdhci_set_ios(struct mmc_host *mmc, struct mmc_ios *ios);
 
diff --git a/drivers/mmc/host/sdhci.h b/drivers/mmc/host/sdhci.h
index b037f18..26fca04 100644
--- a/drivers/mmc/host/sdhci.h
+++ b/drivers/mmc/host/sdhci.h
@@ -393,6 +393,7 @@ static inline void *sdhci_priv(struct sdhci_host *host)
 extern void sdhci_card_detect(struct sdhci_host *host);
 extern int sdhci_add_host(struct sdhci_host *host);
 extern void sdhci_remove_host(struct sdhci_host *host, int dead);
+extern void sdhci_reset(struct sdhci_host *host, u8 mask);
 
 #ifdef CONFIG_PM
 extern int sdhci_suspend_host(struct sdhci_host *host);
-- 
1.8.0



^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 3/5] mmc: esdhc: workaround for dma err in the last system transaction
  2013-09-03  7:33 [PATCH 1/5] powerpc/85xx: Add support for 85xx cpu type detection Haijun Zhang
  2013-09-03  7:33 ` [PATCH 2/5] mmc:sdhc: Share function sdhci_reset for platform use Haijun Zhang
@ 2013-09-03  7:33 ` Haijun Zhang
  2013-09-03  7:33 ` [PATCH 4/5] mmc: esdhc: Correct host version of T4240-R1.0-R2.0 Haijun Zhang
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: Haijun Zhang @ 2013-09-03  7:33 UTC (permalink / raw)
  To: cbouatmailru, galak
  Cc: linux-mmc, cjb, scottwood, X.Xie, Haijun Zhang, Haijun Zhang

A-004388: eSDHC DMA might not stop if error occurs on system transaction

eSDHC DMA(SDMA/ADMA) might not stop if an error occurs in the last system
transaction. It may continue initiating additional transactions until
software reset for data/all is issued during error recovery. There is not
any data corruption to the SD data. The IRQSTAT[DMAE] is set when the
erratum occurs.
The only conditions under which issues occur are the following:
1. SDMA - For SD Write , the error occurs in the last system transaction.
No issue for SD read
2. ADMA
a. Block count is enabled: For SD write, the error occurs in the last system
transaction. There is no issue for SD read when block count is enabled.
b. Block count is disabled: Block count is designated by the ADMA descriptor
table, and the error occurs in the last system transaction when ADMA is
executing last descriptor line of table.

eSDHC may initiate additional system transactions. There is no data integrity
issue for case 1 and 2a described below. For case 2b, system data might be
corrupted.

Workaround: Set eSDHC_SYSCTL[RSTD] when IRQSTAT[DMAE] is set. For cases 2a and
2b above, add an extra descriptor line with zero data next to the last
descriptor line.

Signed-off-by: Haijun Zhang <haijun.zhang@freescale.com>
---
	- Depend on patch [1/5]

 drivers/mmc/host/sdhci-of-esdhc.c | 101 ++++++++++++++++++++++++++++++++++----
 1 file changed, 91 insertions(+), 10 deletions(-)

diff --git a/drivers/mmc/host/sdhci-of-esdhc.c b/drivers/mmc/host/sdhci-of-esdhc.c
index e328252..c531d75 100644
--- a/drivers/mmc/host/sdhci-of-esdhc.c
+++ b/drivers/mmc/host/sdhci-of-esdhc.c
@@ -21,9 +21,13 @@
 #include <linux/mmc/host.h>
 #include "sdhci-pltfm.h"
 #include "sdhci-esdhc.h"
+#include <asm/mpc85xx.h>
 
 #define VENDOR_V_22	0x12
 #define VENDOR_V_23	0x13
+
+static u32 svr;
+
 static u32 esdhc_readl(struct sdhci_host *host, int reg)
 {
 	u32 ret;
@@ -156,25 +160,101 @@ static void esdhci_of_adma_workaround(struct sdhci_host *host, u32 intmask)
 	dma_addr_t dmastart;
 	dma_addr_t dmanow;
 
-	tmp = in_be32(host->ioaddr + SDHCI_SLOT_INT_STATUS);
+	tmp = esdhc_readl(host, SDHCI_SLOT_INT_STATUS);
 	tmp = (tmp & SDHCI_VENDOR_VER_MASK) >> SDHCI_VENDOR_VER_SHIFT;
 
 	applicable = (intmask & SDHCI_INT_DATA_END) &&
 		(intmask & SDHCI_INT_BLK_GAP) &&
 		(tmp == VENDOR_V_23);
-	if (!applicable)
+	if (applicable) {
+
+		sdhci_reset(host, SDHCI_RESET_DATA);
+		host->data->error = 0;
+		dmastart = sg_dma_address(host->data->sg);
+		dmanow = dmastart + host->data->bytes_xfered;
+
+		/* Force update to the next DMA block boundary. */
+		dmanow = (dmanow & ~(SDHCI_DEFAULT_BOUNDARY_SIZE - 1)) +
+			SDHCI_DEFAULT_BOUNDARY_SIZE;
+		host->data->bytes_xfered = dmanow - dmastart;
+		esdhc_writel(host, dmanow, SDHCI_DMA_ADDRESS);
+
 		return;
+	}
 
-	host->data->error = 0;
-	dmastart = sg_dma_address(host->data->sg);
-	dmanow = dmastart + host->data->bytes_xfered;
 	/*
-	 * Force update to the next DMA block boundary.
+	 * Check for A-004388: eSDHC DMA might not stop if error
+	 * occurs on system transaction
+	 * Impact list:
+	 * T4240-4160-R1.0 B4860-4420-R1.0-R2.0 P1010-1014-R1.0
+	 * P3041-R1.0-R2.0-R1.1 P2041-2040-R1.0-R1.1-R2.0
+	 * P5020-5010-R2.0-R1.0 P5040-5021-R2.0-R2.1
 	 */
-	dmanow = (dmanow & ~(SDHCI_DEFAULT_BOUNDARY_SIZE - 1)) +
-		SDHCI_DEFAULT_BOUNDARY_SIZE;
-	host->data->bytes_xfered = dmanow - dmastart;
-	sdhci_writel(host, dmanow, SDHCI_DMA_ADDRESS);
+	if (!(((SVR_SOC_VER(svr) == SVR_T4240) && (SVR_REV(svr) == 0x10)) ||
+		((SVR_SOC_VER(svr) == SVR_T4160) && (SVR_REV(svr) == 0x10)) ||
+		((SVR_SOC_VER(svr) == SVR_B4420) && (SVR_REV(svr) == 0x10)) ||
+		((SVR_SOC_VER(svr) == SVR_B4420) && (SVR_REV(svr) == 0x20)) ||
+		((SVR_SOC_VER(svr) == SVR_B4860) && (SVR_REV(svr) == 0x10)) ||
+		((SVR_SOC_VER(svr) == SVR_B4860) && (SVR_REV(svr) == 0x20)) ||
+		((SVR_SOC_VER(svr) == SVR_P1010) && (SVR_REV(svr) == 0x10)) ||
+		((SVR_SOC_VER(svr) == SVR_P1014) && (SVR_REV(svr) == 0x10)) ||
+		((SVR_SOC_VER(svr) == SVR_P3041) && (SVR_REV(svr) <= 0x20)) ||
+		((SVR_SOC_VER(svr) == SVR_P2041) && (SVR_REV(svr) <= 0x20)) ||
+		((SVR_SOC_VER(svr) == SVR_P2040) && (SVR_REV(svr) <= 0x20)) ||
+		((SVR_SOC_VER(svr) == SVR_P5020) && (SVR_REV(svr) <= 0x20)) ||
+		((SVR_SOC_VER(svr) == SVR_P5010) && (SVR_REV(svr) <= 0x20)) ||
+		((SVR_SOC_VER(svr) == SVR_P5021) && (SVR_REV(svr) <= 0x21)) ||
+		((SVR_SOC_VER(svr) == SVR_P5040) && (SVR_REV(svr) <= 0x21))))
+		return;
+
+	sdhci_reset(host, SDHCI_RESET_DATA);
+
+	if (host->flags & SDHCI_USE_ADMA) {
+		u32 mod, i, offset;
+		u8 *desc;
+		dma_addr_t addr;
+		struct scatterlist *sg;
+		__le32 *dataddr;
+		__le32 *cmdlen;
+
+		/*
+		 * If block count was enabled, in case read transfer there
+		 * is no data was corrupted
+		 */
+		mod = esdhc_readl(host, SDHCI_TRANSFER_MODE);
+		if ((mod & SDHCI_TRNS_BLK_CNT_EN) &&
+			(host->data->flags & MMC_DATA_READ))
+			host->data->error = 0;
+
+		BUG_ON(!host->data);
+		desc = host->adma_desc;
+		for_each_sg(host->data->sg, sg, host->sg_count, i) {
+			addr = sg_dma_address(sg);
+			offset = (4 - (addr & 0x3)) & 0x3;
+			if (offset)
+				desc += 8;
+			desc += 8;
+		}
+
+		/*
+		 * Add an extra zero descriptor next to the
+		 * terminating descriptor.
+		 */
+		desc += 8;
+		WARN_ON((desc - host->adma_desc) > (128 * 2 + 1) * 4);
+
+		dataddr = (__le32 __force *)(desc + 4);
+		cmdlen = (__le32 __force *)desc;
+
+		cmdlen[0] = cpu_to_le32(0);
+		dataddr[0] = cpu_to_le32(0);
+	}
+
+	if ((host->flags & SDHCI_USE_SDMA) &&
+		(host->data->flags & MMC_DATA_READ))
+		host->data->error = 0;
+
+	return;
 }
 
 static int esdhc_of_enable_dma(struct sdhci_host *host)
@@ -299,6 +379,7 @@ static int sdhci_esdhc_probe(struct platform_device *pdev)
 	struct device_node *np;
 	int ret;
 
+	svr = mfspr(SPRN_SVR);
 	host = sdhci_pltfm_init(pdev, &sdhci_esdhc_pdata, 0);
 	if (IS_ERR(host))
 		return PTR_ERR(host);
-- 
1.8.0



^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 4/5] mmc: esdhc: Correct host version of T4240-R1.0-R2.0
  2013-09-03  7:33 [PATCH 1/5] powerpc/85xx: Add support for 85xx cpu type detection Haijun Zhang
  2013-09-03  7:33 ` [PATCH 2/5] mmc:sdhc: Share function sdhci_reset for platform use Haijun Zhang
  2013-09-03  7:33 ` [PATCH 3/5] mmc: esdhc: workaround for dma err in the last system transaction Haijun Zhang
@ 2013-09-03  7:33 ` Haijun Zhang
  2013-09-03  7:33 ` [PATCH 5/5] mmc:esdhc: eSDHC host don't have highspeed bit Haijun Zhang
  2013-09-03  7:43 ` [PATCH 1/5] powerpc/85xx: Add support for 85xx cpu type detection Zhang Haijun
  4 siblings, 0 replies; 6+ messages in thread
From: Haijun Zhang @ 2013-09-03  7:33 UTC (permalink / raw)
  To: cbouatmailru, galak
  Cc: linux-mmc, cjb, scottwood, X.Xie, Haijun Zhang, Haijun Zhang

Vender version and sdhc spec version of T4240-R1.0-R2.0 is incorrect.
The right value should be VVN=0x13, SVN = 0x1. The wrong version number
will break down the ADMA data transfer. This defect only exist in
T4240-R1.0-R2.0.

Signed-off-by: Haijun Zhang <haijun.zhang@freescale.com>
---
	- Depend on patch [1/5]

 drivers/mmc/host/sdhci-of-esdhc.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/drivers/mmc/host/sdhci-of-esdhc.c b/drivers/mmc/host/sdhci-of-esdhc.c
index c531d75..ba2f234 100644
--- a/drivers/mmc/host/sdhci-of-esdhc.c
+++ b/drivers/mmc/host/sdhci-of-esdhc.c
@@ -63,6 +63,13 @@ static u16 esdhc_readw(struct sdhci_host *host, int reg)
 		ret = in_be32(host->ioaddr + base) & 0xffff;
 	else
 		ret = (in_be32(host->ioaddr + base) >> shift) & 0xffff;
+
+	/* T4240-R1.0-R2.0 had a incorrect vendor version and spec version */
+	if ((reg == SDHCI_HOST_VERSION) &&
+			((SVR_SOC_VER(svr) == SVR_T4240) &&
+			 (SVR_REV(svr) <= 0x20)))
+		ret = (VENDOR_V_23 << SDHCI_VENDOR_VER_SHIFT) | SDHCI_SPEC_200;
+
 	return ret;
 }
 
-- 
1.8.0



^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 5/5] mmc:esdhc: eSDHC host don't have highspeed bit
  2013-09-03  7:33 [PATCH 1/5] powerpc/85xx: Add support for 85xx cpu type detection Haijun Zhang
                   ` (2 preceding siblings ...)
  2013-09-03  7:33 ` [PATCH 4/5] mmc: esdhc: Correct host version of T4240-R1.0-R2.0 Haijun Zhang
@ 2013-09-03  7:33 ` Haijun Zhang
  2013-09-03  7:43 ` [PATCH 1/5] powerpc/85xx: Add support for 85xx cpu type detection Zhang Haijun
  4 siblings, 0 replies; 6+ messages in thread
From: Haijun Zhang @ 2013-09-03  7:33 UTC (permalink / raw)
  To: cbouatmailru, galak; +Cc: linux-mmc, cjb, scottwood, X.Xie, Haijun Zhang

eSDHC host is not a standand host, there is no
SDHCI_CTRL_HISPD bit in SDHCI_HOST_CONTROL register.
Add this quirk to avoid changing the Data transfer width
bit of eSDHC host.

Signed-off-by: Haijun Zhang <Haijun.Zhang@freescale.com>
---
 drivers/mmc/host/sdhci-esdhc.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/mmc/host/sdhci-esdhc.h b/drivers/mmc/host/sdhci-esdhc.h
index a2a0642..6de001e 100644
--- a/drivers/mmc/host/sdhci-esdhc.h
+++ b/drivers/mmc/host/sdhci-esdhc.h
@@ -23,6 +23,7 @@
 				SDHCI_QUIRK_NONSTANDARD_CLOCK | \
 				SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK | \
 				SDHCI_QUIRK_PIO_NEEDS_DELAY | \
+				SDHCI_QUIRK_NO_HISPD_BIT | \
 				SDHCI_QUIRK_RESTORE_IRQS_AFTER_RESET)
 
 #define ESDHC_SYSTEM_CONTROL	0x2c
-- 
1.8.0



^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH 1/5] powerpc/85xx: Add support for 85xx cpu type detection
  2013-09-03  7:33 [PATCH 1/5] powerpc/85xx: Add support for 85xx cpu type detection Haijun Zhang
                   ` (3 preceding siblings ...)
  2013-09-03  7:33 ` [PATCH 5/5] mmc:esdhc: eSDHC host don't have highspeed bit Haijun Zhang
@ 2013-09-03  7:43 ` Zhang Haijun
  4 siblings, 0 replies; 6+ messages in thread
From: Zhang Haijun @ 2013-09-03  7:43 UTC (permalink / raw)
  To: Haijun Zhang
  Cc: cbouatmailru, galak, linux-mmc, cjb, scottwood, X.Xie, Zhao Chenhui

Hi, Anton and all

I update all the patch send.

Kindly for review.

Thanks.

On 09/03/2013 03:33 PM, Haijun Zhang wrote:
> Add this file to help detect cpu type in runtime.
> These macros will be more favorable for driver
> to apply errata and workaround to specified cpu type.
>
> Signed-off-by: Haijun Zhang <Haijun.Zhang@freescale.com>
> Signed-off-by: Zhao Chenhui <chenhui.zhao@freescale.com>
> ---
>   arch/powerpc/include/asm/mpc85xx.h | 92 ++++++++++++++++++++++++++++++++++++++
>   1 file changed, 92 insertions(+)
>   create mode 100644 arch/powerpc/include/asm/mpc85xx.h
>
> diff --git a/arch/powerpc/include/asm/mpc85xx.h b/arch/powerpc/include/asm/mpc85xx.h
> new file mode 100644
> index 0000000..736d4ac
> --- /dev/null
> +++ b/arch/powerpc/include/asm/mpc85xx.h
> @@ -0,0 +1,92 @@
> +/*
> + * 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_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_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
>


-- 
Thanks & Regards

Haijun


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2013-09-03  7:40 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-09-03  7:33 [PATCH 1/5] powerpc/85xx: Add support for 85xx cpu type detection Haijun Zhang
2013-09-03  7:33 ` [PATCH 2/5] mmc:sdhc: Share function sdhci_reset for platform use Haijun Zhang
2013-09-03  7:33 ` [PATCH 3/5] mmc: esdhc: workaround for dma err in the last system transaction Haijun Zhang
2013-09-03  7:33 ` [PATCH 4/5] mmc: esdhc: Correct host version of T4240-R1.0-R2.0 Haijun Zhang
2013-09-03  7:33 ` [PATCH 5/5] mmc:esdhc: eSDHC host don't have highspeed bit Haijun Zhang
2013-09-03  7:43 ` [PATCH 1/5] powerpc/85xx: Add support for 85xx cpu type detection Zhang Haijun

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.