Skip to contentSkip to conversation

at91: sam9gx5/9g45/9n12 sd/ddrram autodetect size

PATCH Applied Jean-Christophe PLAGNIOL-VILLARD 2 participants 6 messages Jan 27, 2013 – Jan 28, 2013

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

cover at91: sam9gx5/9g45/9n12 sd/ddrram autodetect size

Hi,

The following changes since commit cd1c289b2a4949e8acb235d4847419bde784a9d6:

Merge branch 'for-next/misc' into next (2013-01-25 19:51:11 +0100)

are available in the git repository at:

git://git.jcrosoft.org/barebox.git delivery/at91_ddr_autodetect_size

for you to fetch changes up to 1cfd6344df05b57d5ee2103b03f9b3bafcebd0a8:

at91: Atmel ref board sam{9x5/9n12/m109g45} EK and Ronetix pm9g45 autodetect ddr size (2013-01-23 17:27:50 +0800)

----------------------------------------------------------------
Jean-Christophe PLAGNIOL-VILLARD (4):
at91sam9x5: add autodetect sd/ddram size
at91sam9n12: add autodetect sd/ddram size
at91sam9g45: add autodetect sd/ddram size
at91: Atmel ref board sam{9x5/9n12/m109g45} EK and Ronetix pm9g45 autodetect ddr size

 arch/arm/boards/at91sam9m10g45ek/init.c           |    2 +-
 arch/arm/boards/at91sam9m10ihd/init.c             |    2 +-
 arch/arm/boards/at91sam9n12ek/init.c              |    2 +-
 arch/arm/boards/at91sam9x5ek/init.c               |    2 +-
 arch/arm/boards/pm9g45/init.c                     |    2 +-
 arch/arm/mach-at91/at91sam9g45_devices.c          |    4 ++++
 arch/arm/mach-at91/at91sam9n12_devices.c          |    4 ++++
 arch/arm/mach-at91/at91sam9x5_devices.c           |    4 ++++
 arch/arm/mach-at91/include/mach/at91sam9_ddrsdr.h |   89 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 9 files changed, 106 insertions(+), 5 deletions(-)

Best Regards,
J.

_______________________________________________
barebox mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/barebox

#1 lore raw

PATCH 1/4 at91sam9x5: add autodetect sd/ddram size

---
 arch/arm/mach-at91/at91sam9x5_devices.c           |    4 ++
 arch/arm/mach-at91/include/mach/at91sam9_ddrsdr.h |   58 +++++++++++++++++++++
 2 files changed, 62 insertions(+)
arch/arm/mach-at91/at91sam9x5_devices.c +4 -0
index 8e59fe0..90d8756 100644
@@ -16,6 +16,7 @@
 #include <mach/board.h>
 #include <mach/at91_pmc.h>
 #include <mach/at91sam9x5_matrix.h>
+#include <mach/at91sam9_ddrsdr.h>
 #include <mach/gpio.h>
 #include <mach/io.h>
 #include <mach/cpu.h>
@@ -25,6 +26,9 @@
 
 void at91_add_device_sdram(u32 size)
 {
+	if (!size)
+		size = at91sam9x5_get_ddram_size();
+
 	arm_add_mem_device("ram0", AT91_CHIPSELECT_1, size);
 	add_mem_device("sram0", AT91SAM9X5_SRAM_BASE,
 			AT91SAM9X5_SRAM_SIZE, IORESOURCE_MEM_WRITEABLE);
arch/arm/mach-at91/include/mach/at91sam9_ddrsdr.h +58 -0

68 lines not on this page · raw message

Signature · 7 lines
1.7.10.4


_______________________________________________
barebox mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/barebox
#2 lore raw

PATCH 2/4 at91sam9n12: add autodetect sd/ddram size

---
 arch/arm/mach-at91/at91sam9n12_devices.c          |    4 ++++
 arch/arm/mach-at91/include/mach/at91sam9_ddrsdr.h |   12 ++++++++++++
 2 files changed, 16 insertions(+)
arch/arm/mach-at91/at91sam9n12_devices.c +4 -0
index 9d6e80f..17e2da0 100644
@@ -17,6 +17,7 @@
 #include <mach/board.h>
 #include <mach/at91_pmc.h>
 #include <mach/at91sam9n12_matrix.h>
+#include <mach/at91sam9_ddrsdr.h>
 #include <mach/gpio.h>
 #include <mach/io.h>
 #include <mach/cpu.h>
@@ -26,6 +27,9 @@
 
 void at91_add_device_sdram(u32 size)
 {
+	if (!size)
+		size = at91sam9n12_get_ddram_size();
+
 	arm_add_mem_device("ram0", AT91_CHIPSELECT_1, size);
 	add_mem_device("sram0", AT91SAM9N12_SRAM_BASE,
 			AT91SAM9N12_SRAM_SIZE, IORESOURCE_MEM_WRITEABLE);
arch/arm/mach-at91/include/mach/at91sam9_ddrsdr.h +12 -0
index 90937f4..c90a248 100644
@@ -187,6 +187,18 @@ static inline u32 at91sam9x5_get_ddram_size(void)
 }
 #endif
 
+#ifdef CONFIG_SOC_AT91SAM9N12
+static inline u32 at91sam9n12_get_ddram_size(void)
+{
+	return at91_get_ddram_size(IOMEM(AT91SAM9N12_BASE_DDRSDRC0), true);
+}
+#else
+static inline u32 at91sam9n12_get_ddram_size(void)
+{
+	return 0;
+}
+#endif
+
 #endif
 
 #endif
Signature · 7 lines
1.7.10.4


_______________________________________________
barebox mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/barebox
#3 lore raw

PATCH 3/4 at91sam9g45: add autodetect sd/ddram size

In reply to Jean-Christophe PLAGNIOL-VILLARD
---
 arch/arm/mach-at91/at91sam9g45_devices.c          |    4 ++++
 arch/arm/mach-at91/include/mach/at91sam9_ddrsdr.h |   19 +++++++++++++++++++
 2 files changed, 23 insertions(+)
arch/arm/mach-at91/at91sam9g45_devices.c +4 -0
index c4ca7c6..a2f26b5 100644
@@ -15,6 +15,7 @@
 #include <asm/hardware.h>
 #include <mach/at91_pmc.h>
 #include <mach/at91sam9g45_matrix.h>
+#include <mach/at91sam9_ddrsdr.h>
 #include <mach/board.h>
 #include <mach/gpio.h>
 #include <mach/io.h>
@@ -24,6 +25,9 @@
 
 void at91_add_device_sdram(u32 size)
 {
+	if (!size)
+		size = at91sam9g45_get_ddram_size(1);
+
 	arm_add_mem_device("ram0", AT91_CHIPSELECT_6, size);
 	add_mem_device("sram0", AT91SAM9G45_SRAM_BASE,
 			AT91SAM9G45_SRAM_SIZE, IORESOURCE_MEM_WRITEABLE);
arch/arm/mach-at91/include/mach/at91sam9_ddrsdr.h +19 -0
index c90a248..f8699d7 100644
@@ -175,6 +175,25 @@ static inline u32 at91_get_ddram_size(void * __iomem base, bool is_nb)
 	return size;
 }
 
+#ifdef CONFIG_SOC_AT91SAM9G45
+static inline u32 at91sam9g45_get_ddram_size(int bank)
+{
+	switch (bank) {
+	case 0:
+		return at91_get_ddram_size(IOMEM(AT91SAM9G45_BASE_DDRSDRC0), false);
+	case 1:
+		return at91_get_ddram_size(IOMEM(AT91SAM9G45_BASE_DDRSDRC1), false);
+	default:
+		return 0;
+	}
+}
+#else
+static inline u32 at91sam9g45_get_ddram_size(int bank)
+{
+	return 0;
+}
+#endif
+
 #ifdef CONFIG_SOC_AT91SAM9X5
 static inline u32 at91sam9x5_get_ddram_size(void)
 {
Signature · 7 lines
1.7.10.4


_______________________________________________
barebox mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/barebox
#4 lore raw

PATCH 4/4 at91: Atmel ref board sam{9x5/9n12/m109g45} EK and Ronetix pm9g45 autodetect ddr size

In reply to Jean-Christophe PLAGNIOL-VILLARD
---
 arch/arm/boards/at91sam9m10g45ek/init.c |    2 +-
 arch/arm/boards/at91sam9m10ihd/init.c   |    2 +-
 arch/arm/boards/at91sam9n12ek/init.c    |    2 +-
 arch/arm/boards/at91sam9x5ek/init.c     |    2 +-
 arch/arm/boards/pm9g45/init.c           |    2 +-
 5 files changed, 5 insertions(+), 5 deletions(-)
arch/arm/boards/at91sam9m10g45ek/init.c +1 -1
index 214de96..a32e6cc 100644
@@ -230,7 +230,7 @@ static void ek_add_device_usb(void) {}
 
 static int at91sam9m10g45ek_mem_init(void)
 {
-	at91_add_device_sdram(128 * 1024 * 1024);
+	at91_add_device_sdram(0);
 
 	return 0;
 }
arch/arm/boards/at91sam9m10ihd/init.c +1 -1
index beede0b..32f6a8c 100644
@@ -167,7 +167,7 @@ static void ek_add_device_usb(void)
 
 static int at91sam9m10g45ek_mem_init(void)
 {
-	at91_add_device_sdram(128 * 1024 * 1024);
+	at91_add_device_sdram(0);
 
 	return 0;
 }
arch/arm/boards/at91sam9n12ek/init.c +1 -1
index 310f418..57ab607 100644
@@ -228,7 +228,7 @@ static void __init ek_add_device_buttons(void)
 
 static int at91sam9n12ek_mem_init(void)
 {
-	at91_add_device_sdram(128 * 1024 * 1024);
+	at91_add_device_sdram(0);
 
 	return 0;
 }
arch/arm/boards/at91sam9x5ek/init.c +1 -1
index 5e11241..29224e2 100644
@@ -238,7 +238,7 @@ static void __init ek_add_led(void)
 
 static int at91sam9x5ek_mem_init(void)
 {
-	at91_add_device_sdram(128 * 1024 * 1024);
+	at91_add_device_sdram(0);
 
 	return 0;
 }
arch/arm/boards/pm9g45/init.c +1 -1
index 8e29f62..db1c551 100644
@@ -137,7 +137,7 @@ static void pm9g45_add_device_eth(void)
 
 static int pm9g45_mem_init(void)
 {
-	at91_add_device_sdram(128 * 1024 * 1024);
+	at91_add_device_sdram(0);
 
 	return 0;
 }
Signature · 7 lines
1.7.10.4


_______________________________________________
barebox mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/barebox
Applied
#5 lore raw
In reply to Jean-Christophe PLAGNIOL-VILLARD
Quoted 10 lines · Jean-Christophe PLAGNIOL-VILLARD

Hi,

The following changes since commit cd1c289b2a4949e8acb235d4847419bde784a9d6:

Merge branch 'for-next/misc' into next (2013-01-25 19:51:11 +0100)

are available in the git repository at:

git://git.jcrosoft.org/barebox.git delivery/at91_ddr_autodetect_size

Applied, thanks

Sascha

Quoted 31 lines

for you to fetch changes up to 1cfd6344df05b57d5ee2103b03f9b3bafcebd0a8:

at91: Atmel ref board sam{9x5/9n12/m109g45} EK and Ronetix pm9g45 autodetect ddr size (2013-01-23 17:27:50 +0800)

----------------------------------------------------------------
Jean-Christophe PLAGNIOL-VILLARD (4):
at91sam9x5: add autodetect sd/ddram size
at91sam9n12: add autodetect sd/ddram size
at91sam9g45: add autodetect sd/ddram size
at91: Atmel ref board sam{9x5/9n12/m109g45} EK and Ronetix pm9g45 autodetect ddr size

 arch/arm/boards/at91sam9m10g45ek/init.c           |    2 +-
 arch/arm/boards/at91sam9m10ihd/init.c             |    2 +-
 arch/arm/boards/at91sam9n12ek/init.c              |    2 +-
 arch/arm/boards/at91sam9x5ek/init.c               |    2 +-
 arch/arm/boards/pm9g45/init.c                     |    2 +-
 arch/arm/mach-at91/at91sam9g45_devices.c          |    4 ++++
 arch/arm/mach-at91/at91sam9n12_devices.c          |    4 ++++
 arch/arm/mach-at91/at91sam9x5_devices.c           |    4 ++++
 arch/arm/mach-at91/include/mach/at91sam9_ddrsdr.h |   89 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 9 files changed, 106 insertions(+), 5 deletions(-)

Best Regards,
J.

_______________________________________________
barebox mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/barebox

Signature · 9 lines
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

_______________________________________________
barebox mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/barebox