Patchwork [U-Boot,1/3] ARM: at91: add Atmel sama5d3 SoC new pmc register

login
register
mail settings
Submitter Bo Shen
Date May 13, 2013, 8:40 a.m.
Message ID <1368434454-15696-2-git-send-email-voice.shen@atmel.com>
Download mbox | patch
Permalink /patch/243330/
State Accepted
Delegated to: Andreas Bießmann
Headers show

Comments

Bo Shen - May 13, 2013, 8:40 a.m.
Add Atmel sama5d3 SoC new pmc register

Signed-off-by: Bo Shen <voice.shen@atmel.com>
---
Changes in v3:
  - New splitted patch file.

Changes in v2:
  - No change

 arch/arm/include/asm/arch-at91/at91_pmc.h |   23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)
Andreas Bießmann - May 21, 2013, 9:57 a.m.
Dear Bo Shen,

Bo Shen <voice.shen@atmel.com> writes:
>Add Atmel sama5d3 SoC new pmc register
>
>Signed-off-by: Bo Shen <voice.shen@atmel.com>
>
>---
>Changes in v3:
>  - New splitted patch file.
>
>Changes in v2:
>  - No change
>
> arch/arm/include/asm/arch-at91/at91_pmc.h |   23 +++++++++++++++++++++++
> 1 file changed, 23 insertions(+)

applied to u-boot-atmel/master, thanks!

Best regards,
Andreas Bießmann
Andreas Bießmann - May 21, 2013, 9:57 a.m.
Dear Bo Shen,

Bo Shen <voice.shen@atmel.com> writes:
>Add OHCI support for sama5d3x devices
>
>Signed-off-by: Bo Shen <voice.shen@atmel.com>
>
>---
>Changes in v3:
>  - Rebase to u-boot-atmel master branch
>
>Changes in v2:
>  - No Change
>
> drivers/usb/host/ohci-at91.c |   14 ++++++++++++--
> 1 file changed, 12 insertions(+), 2 deletions(-)

applied to u-boot-atmel/master, thanks!

Best regards,
Andreas Bießmann
Andreas Bießmann - May 21, 2013, 9:57 a.m.
Dear Bo Shen,

Bo Shen <voice.shen@atmel.com> writes:
>Add sama5d3xek support with following feature
>  - boot from NAND flash, PMECC support, 4bit ECC @ 512 bytes sector
>  - boot from SPI flash support
>  - boot from SD card support
>  - LCD support
>  - EMAC support
>  - USB OHCI support
>
>Signed-off-by: Bo Shen <voice.shen@atmel.com>
>
>---
>Changes in v3:
>  - Split new pmc register in a standalone patch
>  - The EMAC support need: net: macb: using AT91FAMILY replace #ifdeferry
>    - http://patchwork.ozlabs.org/patch/239064/
>
>Changes in v2:
>  - Remove unneeded #undef
>  - Using string directly
>  - Add missed copyright
>  - Using pull up for usart Tx line
>  - Using pull up for spi cs
>  - make code more readable in clock.c file
>  - move LCD higher 8 bit to board file (This is board related)
>
> MAINTAINERS                                  |    1 +
> arch/arm/cpu/armv7/at91/Makefile             |   52 +++++
> arch/arm/cpu/armv7/at91/clock.c              |  125 ++++++++++++
> arch/arm/cpu/armv7/at91/cpu.c                |   90 +++++++++
> arch/arm/cpu/armv7/at91/reset.c              |   47 +++++
> arch/arm/cpu/armv7/at91/sama5d3_devices.c    |  196 ++++++++++++++++++
> arch/arm/cpu/armv7/at91/timer.c              |  139 +++++++++++++
> arch/arm/include/asm/arch-at91/at91_dbu.h    |    4 +
> arch/arm/include/asm/arch-at91/clk.h         |    1 +
> arch/arm/include/asm/arch-at91/hardware.h    |    2 +
> arch/arm/include/asm/arch-at91/sama5d3.h     |  212 ++++++++++++++++++++
> arch/arm/include/asm/arch-at91/sama5d3_smc.h |   79 ++++++++
> board/atmel/sama5d3xek/Makefile              |   51 +++++
> board/atmel/sama5d3xek/sama5d3xek.c          |  275 ++++++++++++++++++++++++++
> boards.cfg                                   |    3 +
> include/configs/sama5d3xek.h                 |  245 +++++++++++++++++++++++
> 16 files changed, 1522 insertions(+)
> create mode 100644 arch/arm/cpu/armv7/at91/Makefile
> create mode 100644 arch/arm/cpu/armv7/at91/clock.c
> create mode 100644 arch/arm/cpu/armv7/at91/cpu.c
> create mode 100644 arch/arm/cpu/armv7/at91/reset.c
> create mode 100644 arch/arm/cpu/armv7/at91/sama5d3_devices.c
> create mode 100644 arch/arm/cpu/armv7/at91/timer.c
> create mode 100644 arch/arm/include/asm/arch-at91/sama5d3.h
> create mode 100644 arch/arm/include/asm/arch-at91/sama5d3_smc.h
> create mode 100644 board/atmel/sama5d3xek/Makefile
> create mode 100644 board/atmel/sama5d3xek/sama5d3xek.c
> create mode 100644 include/configs/sama5d3xek.h

applied to u-boot-atmel/master, thanks!

Best regards,
Andreas Bießmann
Andreas Bießmann - May 21, 2013, 9:57 a.m.
Dear Bo Shen,

Bo Shen <voice.shen@atmel.com> writes:
>This patch implement following things
>  - The link no longer accessable
>  - Remove the error configuration command
>  - Update soldered data flash memory map
>  - Update at91sam9m10g45ek memory size to 128MiB
>
>Signed-off-by: Bo Shen <voice.shen@atmel.com>
>
>---
>doc/README.at91 |   23 ++++++-----------------
> 1 file changed, 6 insertions(+), 17 deletions(-)

applied to u-boot-atmel/master, thanks!

Best regards,
Andreas Bießmann
Andreas Bießmann - May 21, 2013, 9:57 a.m.
Dear Bo Shen,

Bo Shen <voice.shen@atmel.com> writes:
>This patch add following EK information
>  - at91sam9n12ek, at91sam9x5ek
>  - sama5d3xek
>
>Signed-off-by: Bo Shen <voice.shen@atmel.com>
>
>---
>doc/README.at91 |   42 ++++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 42 insertions(+)

applied to u-boot-atmel/master, thanks!

Best regards,
Andreas Bießmann
Andreas Bießmann - May 21, 2013, 9:57 a.m.
Dear Bo Shen,

Bo Shen <voice.shen@atmel.com> writes:
>Add NAND partition table, EK board support boot up NAND flash using
>the same NAND partition table
>
>Add Index in this file
>
>Signed-off-by: Bo Shen <voice.shen@atmel.com>
>
>---
>doc/README.at91 |   21 ++++++++++++++++++++-
> 1 file changed, 20 insertions(+), 1 deletion(-)

applied to u-boot-atmel/master, thanks!

Best regards,
Andreas Bießmann

Patch

diff --git a/arch/arm/include/asm/arch-at91/at91_pmc.h b/arch/arm/include/asm/arch-at91/at91_pmc.h
index 086cb9b..66075b4 100644
--- a/arch/arm/include/asm/arch-at91/at91_pmc.h
+++ b/arch/arm/include/asm/arch-at91/at91_pmc.h
@@ -55,7 +55,16 @@  typedef struct at91_pmc {
 	u32	reserved5[21];
 	u32	wpmr;		/* 0xE4 Write Protect Mode Register (CAP0) */
 	u32	wpsr;		/* 0xE8 Write Protect Status Register (CAP0) */
+#ifdef CONFIG_SAMA5D3
+	u32	reserved6[8];
+	u32	pcer1;		/* 0x100 Periperial Clock Enable Register 1 */
+	u32	pcdr1;		/* 0x104 Periperial Clock Disable Register 1 */
+	u32	pcsr1;		/* 0x108 Periperial Clock Status Register 1 */
+	u32	pcr;		/* 0x10c Periperial Control Register */
+	u32	ocr;		/* 0x110 Oscillator Calibration Register */
+#else
 	u32	reserved8[5];
+#endif
 } at91_pmc_t;
 
 #endif	/* end not assembly */
@@ -82,6 +91,16 @@  typedef struct at91_pmc {
 #define AT91_PMC_MCKR_CSS_PLLB		0x00000003
 #define AT91_PMC_MCKR_CSS_MASK		0x00000003
 
+#ifdef CONFIG_SAMA5D3
+#define AT91_PMC_MCKR_PRES_1		0x00000000
+#define AT91_PMC_MCKR_PRES_2		0x00000010
+#define AT91_PMC_MCKR_PRES_4		0x00000020
+#define AT91_PMC_MCKR_PRES_8		0x00000030
+#define AT91_PMC_MCKR_PRES_16		0x00000040
+#define AT91_PMC_MCKR_PRES_32		0x00000050
+#define AT91_PMC_MCKR_PRES_64		0x00000060
+#define AT91_PMC_MCKR_PRES_MASK		0x00000070
+#else
 #define AT91_PMC_MCKR_PRES_1		0x00000000
 #define AT91_PMC_MCKR_PRES_2		0x00000004
 #define AT91_PMC_MCKR_PRES_4		0x00000008
@@ -90,6 +109,7 @@  typedef struct at91_pmc {
 #define AT91_PMC_MCKR_PRES_32		0x00000014
 #define AT91_PMC_MCKR_PRES_64		0x00000018
 #define AT91_PMC_MCKR_PRES_MASK		0x0000001C
+#endif
 
 #ifdef CONFIG_AT91RM9200
 #define AT91_PMC_MCKR_MDIV_1		0x00000000
@@ -100,6 +120,9 @@  typedef struct at91_pmc {
 #else
 #define AT91_PMC_MCKR_MDIV_1		0x00000000
 #define AT91_PMC_MCKR_MDIV_2		0x00000100
+#ifdef CONFIG_SAMA5D3
+#define AT91_PMC_MCKR_MDIV_3		0x00000300
+#endif
 #define AT91_PMC_MCKR_MDIV_4		0x00000200
 #define AT91_PMC_MCKR_MDIV_MASK		0x00000300
 #endif