Skip to contentSkip to conversation

Keymile boards mainlining, part 2

PATCH New Valentin Longchamp 3 participants 25 messages Apr 8, 2011 – Apr 29, 2011

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

PATCH 1/1 Keymile boards mainlining, part 2

This series is the second effort of merging the Keymile boards support back into mainline.

Most of the patches are only keymile relevant and should only affect our boards.

There are also patches for the i2c deblocking support and cramfs for ARM.

The whole series is based on current denx-master with the our first patch series posted by Heiko that was reviewed previous weeks and should still be merged during the current merge window:

http://lists.denx.de/pipermail/u-boot/2011-April/089530.html

Heiko Schocher (5):
lib, vsprintf: introduce strict_strtoul
arm/km: add CRAMFS support for keymile boards
cramfs: make cramfs usable without a NOR flash
i2c, soft_i2c: deblock bus if switching to another i2c bus arm, powerpc, keymile boards: move keymile specific header in subdir

Holger Brunck (18):
km/common: remove hdlc_enet implementation powerpc/km82xx: cleanup coding style for mgcoge.c powerpc/km82xx: rename mgcoge files to km82xx powerpc/km82xx: move SDRAM config to board config powerpc/km82xx: adapt CONFIG_SYSSYPCR to manual powerpc/km82xx: rename mgcoge2ne to mgcoge3ne board support poweprc/km82xx: add board specific environment variable arm/km: add addbootcount environment variable arm/km: remove last_stage_init and unneeded printouts arm/km: add second serial interface for kirkwood common/hush: make get_local_var visible for other users km/common: implement setboardid as a command km/common: add pnvramsize to default environment km/common: fix coding style issues in generic header km/common: simplify default environment
arm/km: rename mgcoge2un to mgcoge3un
arm/km: change default settings for egiga on mgcoge3un arm/km: update mgcoge3un board support

Huber, Andreas (1):
powerpc/km82xx: add DIP switch detection

Stefan Bigler (1):
i2c: add i2c deblock sequence before and after every mux config

Thomas Herzmann (2):
km/common: fix initial_boot_bank for bootpackages km/common: replace env var checkboardidlist by function

Valentin Longchamp (3):
arm/km: add mkimage config file for uart download arm/km: add BootROM config files for memphis SDRAM arm/km: disable ls (through jffs2 support)

 MAINTAINERS                                    |    4 +-
 board/keymile/common/common.c                  |  156 ++++++-
 board/keymile/common/common.h                  |   84 +++-
 board/keymile/common/keymile_hdlc_enet.c       |  620 ------------------------
 board/keymile/km82xx/Makefile                  |   53 ++
 board/keymile/km82xx/km82xx.c                  |  373 ++++++++++++++
 board/keymile/km_arm/km_arm.c                  |   93 +++-
 board/keymile/km_arm/kwbimage-memphis-uart.cfg |  197 ++++++++
 board/keymile/km_arm/kwbimage-memphis.cfg      |  197 ++++++++
 board/keymile/km_arm/kwbimage-uart.cfg         |  179 +++++++
 board/keymile/mgcoge/Makefile                  |   54 --
 board/keymile/mgcoge/mgcoge.c                  |  333 -------------
 board/keymile/mgcoge/mgcoge_hdlc_enet.c        |  276 -----------
 board/keymile/scripts/README                   |   25 +
 board/keymile/scripts/debug-arm-env.txt        |    2 +
 board/keymile/scripts/debug-common-env.txt     |    9 +
 board/keymile/scripts/debug-ppc-env.txt        |    2 +
 boards.cfg                                     |    6 +-
 common/cmd_cramfs.c                            |   12 +-
 common/cmd_i2c.c                               |   12 +
 common/hush.c                                  |    3 +-
 drivers/i2c/soft_i2c.c                         |    1 +
 drivers/net/mvgbe.h                            |    2 +
 fs/cramfs/cramfs.c                             |    4 +
 include/_exports.h                             |    1 +
 include/common.h                               |    1 +
 include/configs/keymile-common.h               |  455 -----------------
 include/configs/km-powerpc.h                   |   92 ----
 include/configs/km/keymile-common.h            |  328 +++++++++++++
 include/configs/km/km-powerpc.h                |   88 ++++
 include/configs/km/km82xx-common.h             |  311 ++++++++++++
 include/configs/km/km8321-common.h             |  137 ++++++
 include/configs/km/km83xx-common.h             |  325 +++++++++++++
 include/configs/km/km_arm.h                    |  275 +++++++++++
 include/configs/km82xx-common.h                |  336 -------------
 include/configs/km8321-common.h                |  137 ------
 include/configs/km83xx-common.h                |  325 -------------
 include/configs/km_arm.h                       |  266 ----------
 include/configs/kmeter1.h                      |    2 +-
 include/configs/kmsupx5.h                      |    2 +-
 include/configs/mgcoge.h                       |   35 ++-
 include/configs/mgcoge2ne.h                    |   64 ---
 include/configs/mgcoge2un.h                    |   65 ---
 include/configs/mgcoge3ne.h                    |   97 ++++
 include/configs/mgcoge3un.h                    |   90 ++++
 include/configs/suen3.h                        |    2 +-
 include/configs/suen8.h                        |    2 +-
 include/configs/suvd3.h                        |    2 +-
 include/configs/tuda1.h                        |    2 +-
 include/configs/tuxa1.h                        |    2 +-
 include/exports.h                              |    1 +
 include/hush.h                                 |    1 +
 include/i2c.h                                  |    2 -
 lib/vsprintf.c                                 |   47 ++
 54 files changed, 3111 insertions(+), 3079 deletions(-)
 delete mode 100644 board/keymile/common/keymile_hdlc_enet.c
 create mode 100644 board/keymile/km82xx/Makefile
 create mode 100644 board/keymile/km82xx/km82xx.c
 create mode 100644 board/keymile/km_arm/kwbimage-memphis-uart.cfg
 create mode 100644 board/keymile/km_arm/kwbimage-memphis.cfg
 create mode 100644 board/keymile/km_arm/kwbimage-uart.cfg
 delete mode 100644 board/keymile/mgcoge/Makefile
 delete mode 100644 board/keymile/mgcoge/mgcoge.c
 delete mode 100644 board/keymile/mgcoge/mgcoge_hdlc_enet.c
 create mode 100644 board/keymile/scripts/README
 create mode 100644 board/keymile/scripts/debug-arm-env.txt
 create mode 100644 board/keymile/scripts/debug-common-env.txt
 create mode 100644 board/keymile/scripts/debug-ppc-env.txt
 delete mode 100644 include/configs/keymile-common.h
 delete mode 100644 include/configs/km-powerpc.h
 create mode 100644 include/configs/km/keymile-common.h
 create mode 100644 include/configs/km/km-powerpc.h
 create mode 100644 include/configs/km/km82xx-common.h
 create mode 100644 include/configs/km/km8321-common.h
 create mode 100644 include/configs/km/km83xx-common.h
 create mode 100644 include/configs/km/km_arm.h
 delete mode 100644 include/configs/km82xx-common.h
 delete mode 100644 include/configs/km8321-common.h
 delete mode 100644 include/configs/km83xx-common.h
 delete mode 100644 include/configs/km_arm.h
 delete mode 100644 include/configs/mgcoge2ne.h
 delete mode 100644 include/configs/mgcoge2un.h
 create mode 100644 include/configs/mgcoge3ne.h
 create mode 100644 include/configs/mgcoge3un.h
#1 lore raw

PATCH 1/1 lib, vsprintf: introduce strict_strtoul

From: Heiko Schocher <[email protected]>

as checkpatch proposes to use strict_strtoul instead of simple_strtoul, introduce it.

cc Wolfgang Denk <[email protected]>
cc Detlev Zundel <[email protected]>
cc Valentin Longchamp <[email protected]>
cc Holger Brunck <[email protected]>
---
 include/_exports.h |    1 +
 include/common.h   |    1 +
 include/exports.h  |    1 +
 lib/vsprintf.c     |   47 +++++++++++++++++++++++++++++++++++++++++++++++
 4 files changed, 50 insertions(+), 0 deletions(-)
include/_exports.h +1 -0
index d89b65b..349a3c5 100644
@@ -19,6 +19,7 @@ EXPORT_FUNC(do_reset)
 EXPORT_FUNC(getenv)
 EXPORT_FUNC(setenv)
 EXPORT_FUNC(simple_strtoul)
+EXPORT_FUNC(strict_strtoul)
 EXPORT_FUNC(simple_strtol)
 EXPORT_FUNC(strcmp)
 EXPORT_FUNC(i2c_write)
include/common.h +1 -0
index 49c884c..d180da2 100644
@@ -648,6 +648,7 @@ void	udelay        (unsigned long);
 
 /* lib/vsprintf.c */
 ulong	simple_strtoul(const char *cp,char **endp,unsigned int base);
+int strict_strtoul(const char *cp, unsigned int base, unsigned long *res);
 unsigned long long	simple_strtoull(const char *cp,char **endp,unsigned int base);
 long	simple_strtol(const char *cp,char **endp,unsigned int base);
 void	panic(const char *fmt, ...)
include/exports.h +1 -0
index 6382311..2f49cea 100644
@@ -20,6 +20,7 @@ void __udelay(unsigned long);
 unsigned long get_timer(unsigned long);
 int vprintf(const char *, va_list);
 unsigned long simple_strtoul(const char *cp,char **endp,unsigned int base);
+int strict_strtoul(const char *cp, unsigned int base, unsigned long *res);
 char *getenv (char *name);
 int setenv (char *varname, char *varvalue);
 long simple_strtol(const char *cp,char **endp,unsigned int base);
lib/vsprintf.c +47 -0

59 lines not on this page · raw message

Signature · 1 line
1.7.0.5
#2 lore raw

PATCH 1/1 lib, vsprintf: introduce strict_strtoul

Dear Valentin Longchamp,

Quoted 11 lines · In message <e0c1c0de6c89e3723ac3d1874ce4819a4a47c8f2.1302266367.git.valentin.lo…

From: Heiko Schocher <[email protected]>

as checkpatch proposes to use strict_strtoul instead of simple_strtoul, introduce it.

cc Wolfgang Denk <[email protected]>
cc Detlev Zundel <[email protected]>
cc Valentin Longchamp <[email protected]>
cc Holger Brunck <[email protected]>
Quoted 6 lines
---
 include/_exports.h |    1 +
 include/common.h   |    1 +
 include/exports.h  |    1 +
 lib/vsprintf.c     |   47 +++++++++++++++++++++++++++++++++++++++++++++++
 4 files changed, 50 insertions(+), 0 deletions(-)

It appears this code was copied from Linux, so please provide proper attribution and reference; please see bullet # 4 at
http://www.denx.de/wiki/view/U-Boot/Patches#Attributing_Code_Copyrights_Sign

Best regards,

Wolfgang Denk

Signature · 3 lines
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
#3 lore raw

PATCH 1/1 powerpc/km82xx: add DIP switch detection

In reply to Valentin Longchamp

From: Huber, Andreas <[email protected]>

This reads the DIP switch register in the BFTICU (0x40000089). If 'Full reset' or 'DB erase' is selected, 'actual_bank' is set to 0. This loads the Bootloader application who does the erase stuff. To access the register a struct for the bfticu I/O map was added to common.h.

---
 board/keymile/common/common.h |   79 +++++++++++++++++++++++++++++++++++++++++
 board/keymile/mgcoge/mgcoge.c |   12 ++++++
 2 files changed, 91 insertions(+), 0 deletions(-)
board/keymile/common/common.h +79 -0
index 099de98..cdc35b6 100644
@@ -39,6 +39,85 @@ struct km_bec_fpga {
 	unsigned char	pgy_eth;
 };
 
+#define BFTICU_DIPSWITCH_MASK   0x0f
+
+/*
+ * BFTICU FPGA iomap
+ * BFTICU is used on mgcoge and mgocge3ne
+ */
+struct bfticu_iomap {
+	u8	xi_ena;		/* General defect enable */
+	u8	pack1[3];
+	u8	en_csn;
+	u8	pack2;
+	u8	safe_mem;
+	u8	pack3;
+	u8	id;
+	u8	pack4;
+	u8	rev;
+	u8	build;
+	u8	p_frc;
+	u8	p_msk;
+	u8	pack5[2];
+	u8	xg_int;
+	u8	pack6[15];
+	u8	s_conf;
+	u8	pack7;
+	u8	dmx_conf12;
+	u8	pack8;
+	u8	s_clkslv;
+	u8	pack9[11];
+	u8	d_conf;
+	u8	d_mask_ca;
+	u8	d_pll_del;
+	u8	pack10[16];
+	u8	t_conf_ca;
+	u8	t_mask_ca;
+	u8	pack11[13];
+	u8	m_def0;
+	u8	m_def1;
+	u8	m_def2;
+	u8	m_def3;
+	u8	m_def4;
+	u8	m_def5;
+	u8	m_def_trap0;
+	u8	m_def_trap1;
+	u8	m_def_trap2;
+	u8	m_def_trap3;
+	u8	m_def_trap4;
+	u8	m_def_trap5;
+	u8	m_mask_def0;
+	u8	m_mask_def1;
+	u8	m_mask_def2;
+	u8	m_mask_def3;
+	u8	m_mask_def4;
+	u8	m_mask_def5;
+	u8	m_def_mask0;
+	u8	m_def_mask1;
+	u8	m_def_mask2;
+	u8	m_def_mask3;
+	u8	m_def_mask4;
+	u8	m_def_mask5;
+	u8	m_def_pri;
+	u8	pack12[11];
+	u8	hw_status;
+	u8	pack13;
+	u8	hw_control1;
+	u8	hw_control2;
+	u8	hw_control3;
+	u8	pack14[7];
+	u8	led_on;		/* Leds */
+	u8	pack15;
+	u8	sfp_control;	/* SFP modules */
+	u8	pack16;
+	u8	alarm_control;	/* Alarm output */
+	u8	pack17;
+	u8	icps;		/* ICN clock pulse shaping */
+	u8	mswitch;	/* Read mode switch */
+	u8	pack18[6];
+	u8	pb_dbug;
+};
+
 #if !defined(CONFIG_PIGGY_MAC_ADRESS_OFFSET)
 #define CONFIG_PIGGY_MAC_ADRESS_OFFSET	0
 #endif
board/keymile/mgcoge/mgcoge.c +12 -0
index 340016b..11a0f79 100644
@@ -315,6 +315,18 @@ int board_early_init_r(void)
 
 int last_stage_init(void)
 {
+	struct bfticu_iomap *base =
+		(struct bfticu_iomap *)CONFIG_SYS_FPGA_BASE;
+	u8 dip_switch;
+
+	dip_switch = in_8(&base->mswitch);
+	dip_switch &= BFTICU_DIPSWITCH_MASK;
+	/* dip switch 'full reset' or 'db erase' */
+	if (dip_switch & 0x1 || dip_switch & 0x2) {
+		/* start bootloader */
+		puts("DIP:   Enabled\n");
+		setenv("actual_bank", "0");
+	}
 	set_km_env();
 	return 0;
 }
Signature · 1 line
1.7.0.5
#4 lore raw

PATCH 1/1 km/common: remove hdlc_enet implementation

In reply to Valentin Longchamp

From: Holger Brunck <[email protected]>

The hdlc implementation for mgcoge was initially developed, but later on not used. Remove the C files, the references in mgcoge.c and the Makefile to decrease maintenance effort.

---
 board/keymile/common/common.c            |    3 -
 board/keymile/common/common.h            |    4 -
 board/keymile/common/keymile_hdlc_enet.c |  620 ------------------------------
 board/keymile/mgcoge/Makefile            |    3 +-
 board/keymile/mgcoge/mgcoge_hdlc_enet.c  |  276 -------------
 5 files changed, 1 insertions(+), 905 deletions(-)
 delete mode 100644 board/keymile/common/keymile_hdlc_enet.c
 delete mode 100644 board/keymile/mgcoge/mgcoge_hdlc_enet.c
board/keymile/common/common.c +0 -3
index 3908e63..b113c0a 100644
@@ -677,9 +677,6 @@ int ethernet_present(void)
 
 int board_eth_init(bd_t *bis)
 {
-#ifdef CONFIG_KEYMILE_HDLC_ENET
-	(void)keymile_hdlc_enet_initialize(bis);
-#endif
 	if (ethernet_present())
 		return cpu_eth_init(bis);
 
board/keymile/common/common.h +0 -4
index cdc35b6..6ce992a 100644
@@ -125,10 +125,6 @@ struct bfticu_iomap {
 int ethernet_present(void);
 int ivm_read_eeprom(void);
 
-#ifdef CONFIG_KEYMILE_HDLC_ENET
-int keymile_hdlc_enet_initialize(bd_t *bis);
-#endif
-
 int set_km_env(void);
 int fdt_set_node_and_value(void *blob,
 			char *nodename,
board/keymile/common/keymile_hdlc_enet.c deleted +0 -620

620 lines not on this page · raw message

board/keymile/mgcoge/Makefile +1 -2
index 3308621..a2b9da4 100644
@@ -28,8 +28,7 @@ endif
 
 LIB	= $(obj)lib$(BOARD).o
 
-COBJS	:= $(BOARD).o ../common/common.o ../common/keymile_hdlc_enet.o \
-		mgcoge_hdlc_enet.o
+COBJS	:= $(BOARD).o ../common/common.o
 
 SRCS	:= $(SOBJS:.o=.S) $(COBJS:.o=.c)
 OBJS	:= $(addprefix $(obj),$(COBJS))
board/keymile/mgcoge/mgcoge_hdlc_enet.c deleted +0 -276

276 lines not on this page · raw message

Signature · 1 line
1.7.0.5
#5 lore raw

PATCH 1/1 powerpc/km82xx: cleanup coding style for mgcoge.c

In reply to Valentin Longchamp

From: Holger Brunck <[email protected]>

---
 board/keymile/mgcoge/mgcoge.c |  291 +++++++++++++++++++++--------------------
 1 files changed, 146 insertions(+), 145 deletions(-)
board/keymile/mgcoge/mgcoge.c +149 -148
index 11a0f79..3db3c7b 100644
@@ -45,154 +45,154 @@
  */
 const iop_conf_t iop_conf_tab[4][32] = {
 
-    /* Port A */
-    {	/*	      conf	ppar psor pdir podr pdat */
-	/* PA31 */ { 0,		 0,   0,   0,	0,   0 }, /* PA31	     */
-	/* PA30 */ { 0,		 0,   0,   0,	0,   0 }, /* PA30	     */
-	/* PA29 */ { 0,		 0,   0,   0,	0,   0 }, /* PA29	     */
-	/* PA28 */ { 0,		 0,   0,   0,	0,   0 }, /* PA28	     */
-	/* PA27 */ { 0,		 0,   0,   0,	0,   0 }, /* PA27	     */
-	/* PA26 */ { 0,		 0,   0,   0,	0,   0 }, /* PA26	     */
-	/* PA25 */ { 0,		 0,   0,   0,	0,   0 }, /* PA25	     */
-	/* PA24 */ { 0,		 0,   0,   0,	0,   0 }, /* PA24	     */
-	/* PA23 */ { 0,		 0,   0,   0,	0,   0 }, /* PA23	     */
-	/* PA22 */ { 0,		 0,   0,   0,	0,   0 }, /* PA22	     */
-	/* PA21 */ { 0,		 0,   0,   0,	0,   0 }, /* PA21	     */
-	/* PA20 */ { 0,		 0,   0,   0,	0,   0 }, /* PA20	     */
-	/* PA19 */ { 0,		 0,   0,   0,	0,   0 }, /* PA19	     */
-	/* PA18 */ { 0,		 0,   0,   0,	0,   0 }, /* PA18	     */
-	/* PA17 */ { 0,		 0,   0,   0,	0,   0 }, /* PA17	     */
-	/* PA16 */ { 0,		 0,   0,   0,	0,   0 }, /* PA16	     */
-	/* PA15 */ { 0,		 0,   0,   0,	0,   0 }, /* PA15	     */
-	/* PA14 */ { 0,		 0,   0,   0,	0,   0 }, /* PA14	     */
-	/* PA13 */ { 0,		 0,   0,   0,	0,   0 }, /* PA13	     */
-	/* PA12 */ { 0,		 0,   0,   0,	0,   0 }, /* PA12	     */
-	/* PA11 */ { 0,		 0,   0,   0,	0,   0 }, /* PA11	     */
-	/* PA10 */ { 0,		 0,   0,   0,	0,   0 }, /* PA10	     */
-	/* PA9	*/ { 1,		 1,   0,   1,	0,   0 }, /* SMC2 TxD	     */
-	/* PA8	*/ { 1,		 1,   0,   0,	0,   0 }, /* SMC2 RxD	     */
-	/* PA7	*/ { 0,		 0,   0,   0,	0,   0 }, /* PA7	     */
-	/* PA6	*/ { 0,		 0,   0,   0,	0,   0 }, /* PA6	     */
-	/* PA5	*/ { 0,		 0,   0,   0,	0,   0 }, /* PA5	     */
-	/* PA4	*/ { 0,		 0,   0,   0,	0,   0 }, /* PA4	     */
-	/* PA3	*/ { 0,		 0,   0,   0,	0,   0 }, /* PA3	     */
-	/* PA2	*/ { 0,		 0,   0,   0,	0,   0 }, /* PA2	     */
-	/* PA1	*/ { 0,		 0,   0,   0,	0,   0 }, /* PA1	     */
-	/* PA0	*/ { 0,		 0,   0,   0,	0,   0 }  /* PA0	     */
-    },
-
-    /* Port B */
-    {	/*	      conf	ppar psor pdir podr pdat */
-	/* PB31 */ { 0,		 0,   0,   0,	0,   0 }, /* PB31	     */
-	/* PB30 */ { 0,		 0,   0,   0,	0,   0 }, /* PB30	     */
-	/* PB29 */ { 0,		 0,   0,   0,	0,   0 }, /* PB29	     */
-	/* PB28 */ { 0,		 0,   0,   0,	0,   0 }, /* PB28	     */
-	/* PB27 */ { 0,		 0,   0,   0,	0,   0 }, /* PB27	     */
-	/* PB26 */ { 0,		 0,   0,   0,	0,   0 }, /* PB26	     */
-	/* PB25 */ { 0,		 0,   0,   0,	0,   0 }, /* PB25	     */
-	/* PB24 */ { 0,		 0,   0,   0,	0,   0 }, /* PB24	     */
-	/* PB23 */ { 0,		 0,   0,   0,	0,   0 }, /* PB23	     */
-	/* PB22 */ { 0,		 0,   0,   0,	0,   0 }, /* PB22	     */
-	/* PB21 */ { 0,		 0,   0,   0,	0,   0 }, /* PB21	     */
-	/* PB20 */ { 0,		 0,   0,   0,	0,   0 }, /* PB20	     */
-	/* PB19 */ { 0,		 0,   0,   0,	0,   0 }, /* PB19	     */
-	/* PB18 */ { 0,		 0,   0,   0,	0,   0 }, /* PB18	     */
-	/* PB17 */ { 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
-	/* PB16 */ { 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
-	/* PB15 */ { 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
-	/* PB14 */ { 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
-	/* PB13 */ { 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
-	/* PB12 */ { 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
-	/* PB11 */ { 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
-	/* PB10 */ { 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
-	/* PB9	*/ { 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
-	/* PB8	*/ { 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
-	/* PB7	*/ { 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
-	/* PB6	*/ { 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
-	/* PB5	*/ { 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
-	/* PB4	*/ { 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
-	/* PB3	*/ { 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
-	/* PB2	*/ { 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
-	/* PB1	*/ { 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
-	/* PB0	*/ { 0,		 0,   0,   0,	0,   0 }  /* non-existent    */
-    },
-
-    /* Port C */
-    {	/*	      conf	ppar psor pdir podr pdat */
-	/* PC31 */ { 0,		 0,   0,   0,	0,   0 }, /* PC31	     */
-	/* PC30 */ { 0,		 0,   0,   0,	0,   0 }, /* PC30	     */
-	/* PC29 */ { 0,		 0,   0,   0,	0,   0 }, /* PC29	     */
-	/* PC28 */ { 0,		 0,   0,   0,	0,   0 }, /* PC28	     */
-	/* PC27 */ { 0,		 0,   0,   0,	0,   0 }, /* PC27	     */
-	/* PC26 */ { 0,		 0,   0,   0,	0,   0 }, /* PC26	     */
-	/* PC25 */ { 1,		 1,   0,   0,	0,   0 }, /* SCC4 RxClk      */
-	/* PC24 */ { 1,		 1,   0,   0,	0,   0 }, /* SCC4 TxClk      */
-	/* PC23 */ { 0,		 0,   0,   0,	0,   0 }, /* PC23	     */
-	/* PC22 */ { 0,		 0,   0,   0,	0,   0 }, /* PC22	     */
-	/* PC21 */ { 0,		 0,   0,   0,	0,   0 }, /* PC21	     */
-	/* PC20 */ { 0,		 0,   0,   0,	0,   0 }, /* PC20	     */
-	/* PC19 */ { 0,		 0,   0,   0,	0,   0 }, /* PC19	     */
-	/* PC18 */ { 0,		 0,   0,   0,	0,   0 }, /* PC18	     */
-	/* PC17 */ { 0,		 0,   0,   0,	0,   0 }, /* PC17	     */
-	/* PC16 */ { 0,		 0,   0,   0,	0,   0 }, /* PC16	     */
-	/* PC15 */ { 0,		 0,   0,   0,	0,   0 }, /* PC15	     */
-	/* PC14 */ { 0,		 0,   0,   0,	0,   0 }, /* PC14	     */
-	/* PC13 */ { 0,		 0,   0,   0,	0,   0 }, /* PC13	     */
-	/* PC12 */ { 0,		 0,   0,   0,	0,   0 }, /* PC12	     */
-	/* PC11 */ { 0,		 0,   0,   0,	0,   0 }, /* PC11	     */
-	/* PC10 */ { 0,		 0,   0,   0,	0,   0 }, /* PC10	     */
-	/* PC9	*/ { 1,		 1,   0,   0,	0,   0 }, /* SCC4: CTS	     */
-	/* PC8	*/ { 1,		 1,   0,   0,	0,   0 }, /* SCC4: CD	     */
-	/* PC7	*/ { 0,		 0,   0,   0,	0,   0 }, /* PC7	     */
-	/* PC6	*/ { 0,		 0,   0,   0,	0,   0 }, /* PC6	     */
-	/* PC5	*/ { 0,		 0,   0,   0,	0,   0 }, /* PC5	     */
-	/* PC4	*/ { 0,		 0,   0,   0,	0,   0 }, /* PC4	     */
-	/* PC3	*/ { 0,		 0,   0,   0,	0,   0 }, /* PC3	     */
-	/* PC2	*/ { 0,		 0,   0,   0,	0,   0 }, /* PC2	     */
-	/* PC1	*/ { 0,		 0,   0,   0,	0,   0 }, /* PC1	     */
-	/* PC0	*/ { 0,		 0,   0,   0,	0,   0 }, /* PC0	     */
-    },
-
-    /* Port D */
-    {	/*	      conf	ppar psor pdir podr pdat */
-	/* PD31 */ { 0,		 0,   0,   0,	0,   0 }, /* PD31	     */
-	/* PD30 */ { 0,		 0,   0,   0,	0,   0 }, /* PD30	     */
-	/* PD29 */ { 0,		 0,   0,   0,	0,   0 }, /* PD29	     */
-	/* PD28 */ { 0,		 0,   0,   0,	0,   0 }, /* PD28	     */
-	/* PD27 */ { 0,		 0,   0,   0,	0,   0 }, /* PD27	     */
-	/* PD26 */ { 0,		 0,   0,   0,	0,   0 }, /* PD26	     */
-	/* PD25 */ { 0,		 0,   0,   0,	0,   0 }, /* PD25	     */
-	/* PD24 */ { 0,		 0,   0,   0,	0,   0 }, /* PD24	     */
-	/* PD23 */ { 0,		 0,   0,   0,	0,   0 }, /* PD23	     */
-	/* PD22 */ { 1,		 1,   0,   0,	0,   0 }, /* SCC4: RXD	     */
-	/* PD21 */ { 1,		 1,   0,   1,	0,   0 }, /* SCC4: TXD	     */
-	/* PD20 */ { 1,		 1,   0,   1,	0,   0 }, /* SCC4: RTS	     */
-	/* PD19 */ { 0,		 0,   0,   0,	0,   0 }, /* PD19	     */
-	/* PD18 */ { 0,		 0,   0,   0,	0,   0 }, /* PD18	     */
-	/* PD17 */ { 0,		 0,   0,   0,	0,   0 }, /* PD17	     */
-	/* PD16 */ { 0,		 0,   0,   0,	0,   0 }, /* PD16	     */
+	/* Port A */
+	{	/*	      conf	ppar psor pdir podr pdat */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PA31	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PA30	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PA29	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PA28	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PA27	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PA26	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PA25	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PA24	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PA23	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PA22	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PA21	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PA20	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PA19	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PA18	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PA17	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PA16	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PA15	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PA14	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PA13	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PA12	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PA11	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PA10	     */
+		{ 1,		 1,   0,   1,	0,   0 }, /* PA9 SMC2 TxD    */
+		{ 1,		 1,   0,   0,	0,   0 }, /* PA8 SMC2 RxD    */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PA7	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PA6	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PA5	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PA4	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PA3	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PA2	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PA1	     */
+		{ 0,		 0,   0,   0,	0,   0 }  /* PA0	     */
+	},
+
+	/* Port B */
+	{	/*	      conf	ppar psor pdir podr pdat */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PB31	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PB30	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PB29	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PB28	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PB27	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PB26	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PB25	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PB24	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PB23	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PB22	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PB21	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PB20	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PB19	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PB18	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
+		{ 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
+		{ 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
+		{ 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
+		{ 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
+		{ 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
+		{ 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
+		{ 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
+		{ 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
+		{ 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
+		{ 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
+		{ 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
+		{ 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
+		{ 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
+		{ 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
+		{ 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
+		{ 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
+		{ 0,		 0,   0,   0,	0,   0 }  /* non-existent    */
+	},
+
+	/* Port C */
+	{	/*	      conf	ppar psor pdir podr pdat */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PC31	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PC30	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PC29	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PC28	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PC27	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PC26	     */
+		{ 1,		 1,   0,   0,	0,   0 }, /* PC25 RxClk      */
+		{ 1,		 1,   0,   0,	0,   0 }, /* PC24 TxClk      */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PC23	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PC22	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PC21	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PC20	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PC19	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PC18	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PC17	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PC16	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PC15	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PC14	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PC13	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PC12	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PC11	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PC10	     */
+		{ 1,		 1,   0,   0,	0,   0 }, /* PC9  SCC4: CTS  */
+		{ 1,		 1,   0,   0,	0,   0 }, /* PC8  SCC4: CD   */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PC7	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PC6	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PC5	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PC4	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PC3	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PC2	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PC1	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PC0	     */
+	},
+
+	/* Port D */
+	{	/*	      conf	ppar psor pdir podr pdat */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PD31	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PD30	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PD29	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PD28	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PD27	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PD26	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PD25	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PD24	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PD23	     */
+		{ 1,		 1,   0,   0,	0,   0 }, /* PD22 SCC4: RXD  */
+		{ 1,		 1,   0,   1,	0,   0 }, /* PD21 SCC4: TXD  */
+		{ 1,		 1,   0,   1,	0,   0 }, /* PD20 SCC4: RTS  */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PD19	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PD18	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PD17	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PD16	     */
 #if defined(CONFIG_HARD_I2C)
-	/* PD15 */ { 1,		 1,   1,   0,	1,   0 }, /* I2C SDA	     */
-	/* PD14 */ { 1,		 1,   1,   0,	1,   0 }, /* I2C SCL	     */
+		{ 1,		 1,   1,   0,	1,   0 }, /* PD15 I2C SDA    */
+		{ 1,		 1,   1,   0,	1,   0 }, /* PD14 I2C SCL    */
 #else
-	/* PD15 */ { 1,		 0,   0,   0,	1,   1 }, /* PD15	     */
-	/* PD14 */ { 1,		 0,   0,   1,	1,   1 }, /* PD14	     */
+		{ 1,		 0,   0,   0,	1,   1 }, /* PD15	     */
+		{ 1,		 0,   0,   1,	1,   1 }, /* PD14	     */
 #endif
-	/* PD13 */ { 0,		 0,   0,   0,	0,   0 }, /* PD13	     */
-	/* PD12 */ { 0,		 0,   0,   0,	0,   0 }, /* PD12	     */
-	/* PD11 */ { 0,		 0,   0,   0,	0,   0 }, /* PD11	     */
-	/* PD10 */ { 0,		 0,   0,   0,	0,   0 }, /* PD10	     */
-	/* PD9	*/ { 0,		 0,   0,   0,	0,   0 }, /* PD9	     */
-	/* PD8	*/ { 0,		 0,   0,   0,	0,   0 }, /* PD8	     */
-	/* PD7	*/ { 0,		 0,   0,   0,	0,   0 }, /* PD7	     */
-	/* PD6	*/ { 0,		 0,   0,   0,	0,   0 }, /* PD6	     */
-	/* PD5	*/ { 0,		 0,   0,   0,	0,   0 }, /* PD5	     */
-	/* PD4	*/ { 0,		 0,   0,   0,	0,   0 }, /* PD4	     */
-	/* PD3	*/ { 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
-	/* PD2	*/ { 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
-	/* PD1	*/ { 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
-	/* PD0	*/ { 0,		 0,   0,   0,	0,   0 }  /* non-existent    */
-    }
+		{ 0,		 0,   0,   0,	0,   0 }, /* PD13	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PD12	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PD11	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PD10	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PD9	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PD8	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PD7	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PD6	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PD5	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* PD4	     */
+		{ 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
+		{ 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
+		{ 0,		 0,   0,   0,	0,   0 }, /* non-existent    */
+		{ 0,		 0,   0,   0,	0,   0 }  /* non-existent    */
+	}
 };
 
 /*
@@ -237,7 +237,8 @@ static long int try_init(memctl8260_t *memctl, ulong sdmr,
 	 *  accessing the SDRAM with a single-byte transaction."
 	 *
 	 * The appropriate BRx/ORx registers have already been set when we
-	 * get here. The SDRAM can be accessed at the address CONFIG_SYS_SDRAM_BASE.
+	 * get here. The SDRAM can be accessed at the address
+	 * CONFIG_SYS_SDRAM_BASE.
 	 */
 
 	out_be32(&memctl->memc_psdmr, sdmr | PSDMR_OP_PREA);
@@ -257,7 +258,7 @@ static long int try_init(memctl8260_t *memctl, ulong sdmr,
 	size = get_ram_size((long *)base, maxsize);
 	out_be32(&memctl->memc_or1, orx | ~(size - 1));
 
-	return (size);
+	return size;
 }
 
 phys_size_t initdram(int board_type)
@@ -279,7 +280,7 @@ phys_size_t initdram(int board_type)
 
 	icache_enable();
 
-	return (psize);
+	return psize;
 }
 
 int checkboard(void)
Signature · 1 line
1.7.0.5
#6 lore raw

PATCH 1/1 powerpc/km82xx: rename mgcoge files to km82xx

In reply to Valentin Longchamp

From: Holger Brunck <[email protected]>

The directory and file mgcoge was renamed to km82xx. Because other keymile 82xx will follow and will use the same platform code.

---
 board/keymile/km82xx/Makefile |   53 +++++++
 board/keymile/km82xx/km82xx.c |  346 +++++++++++++++++++++++++++++++++++++++++
 board/keymile/mgcoge/Makefile |   53 -------
 board/keymile/mgcoge/mgcoge.c |  346 -----------------------------------------
 boards.cfg                    |    4 +-
 5 files changed, 401 insertions(+), 401 deletions(-)
 create mode 100644 board/keymile/km82xx/Makefile
 create mode 100644 board/keymile/km82xx/km82xx.c
 delete mode 100644 board/keymile/mgcoge/Makefile
 delete mode 100644 board/keymile/mgcoge/mgcoge.c
board/keymile/km82xx/Makefile new file +53 -0
new file mode 100644
index 0000000..a2b9da4
@@ -0,0 +1,53 @@
+#
+# (C) Copyright 2001-2007
+# Wolfgang Denk, DENX Software Engineering, wd at denx.de.
+#
+# See file CREDITS for list of people who contributed to this
+# project.
+#
+# This program 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.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+# MA 02111-1307 USA
+#
+
+include $(TOPDIR)/config.mk
+ifneq ($(OBJTREE),$(SRCTREE))
+$(shell mkdir -p $(obj)../common)
+endif
+
+LIB	= $(obj)lib$(BOARD).o
+
+COBJS	:= $(BOARD).o ../common/common.o
+
+SRCS	:= $(SOBJS:.o=.S) $(COBJS:.o=.c)
+OBJS	:= $(addprefix $(obj),$(COBJS))
+SOBJS	:= $(addprefix $(obj),$(SOBJS))
+
+$(LIB):	$(obj).depend $(OBJS)
+	$(call cmd_link_o_target, $(OBJS))
+
+clean:
+	rm -f $(SOBJS) $(OBJS)
+
+distclean:	clean
+	rm -f $(LIB) core *.bak $(obj).depend
+
+#########################################################################
+
+# defines $(obj).depend target
+include $(SRCTREE)/rules.mk
+
+sinclude $(obj).depend
+
+#########################################################################
board/keymile/km82xx/km82xx.c new file +346 -0

346 lines not on this page · raw message

board/keymile/mgcoge/Makefile deleted +0 -53

53 lines not on this page · raw message

board/keymile/mgcoge/mgcoge.c deleted +0 -346

346 lines not on this page · raw message

boards.cfg +2 -2
index 79266c9..4c52770 100644
@@ -422,8 +422,8 @@ PQ2FADS-ZU_66MHz             powerpc     mpc8260     mpc8260ads          freesca
 PQ2FADS-ZU_66MHz_lowboot     powerpc     mpc8260     mpc8260ads          freescale      -           MPC8260ADS:ADSTYPE=CONFIG_SYS_PQ2FADS,8260_CLKIN=66000000,SYS_TEXT_BASE=0xFF800000
 PQ2FADS-ZU_lowboot           powerpc     mpc8260     mpc8260ads          freescale      -           MPC8260ADS:ADSTYPE=CONFIG_SYS_PQ2FADS,SYS_TEXT_BASE=0xFF800000
 VoVPN-GW_66MHz               powerpc     mpc8260     vovpn-gw            funkwerk       -           VoVPN-GW:CLKIN_66MHz
-mgcoge                       powerpc     mpc8260     -                   keymile
-mgcoge2ne                    powerpc     mpc8260     mgcoge              keymile
+mgcoge                       powerpc     mpc8260     km82xx              keymile
+mgcoge2ne                    powerpc     mpc8260     km82xx              keymile
 SCM                          powerpc     mpc8260     -                   siemens
 TQM8255_AA                   powerpc     mpc8260     tqm8260             tqc            -           TQM8260:MPC8255,300MHz
 TQM8260_AA                   powerpc     mpc8260     tqm8260             tqc            -           TQM8260:MPC8260,200MHz
Signature · 1 line
1.7.0.5
#7 lore raw

PATCH 1/1 powerpc/km82xx: move SDRAM config to board config

In reply to Valentin Longchamp

From: Holger Brunck <[email protected]>

To be prepared for mgcoge3ne which has a different SDRAM on board. The config was moved from generic code to board specific header.

---
 include/configs/km82xx-common.h |   26 --------------------------
 include/configs/mgcoge.h        |   26 ++++++++++++++++++++++++++
 include/configs/mgcoge2ne.h     |   23 +++++++++++++++++++++++
 3 files changed, 49 insertions(+), 26 deletions(-)
include/configs/km82xx-common.h +0 -26
index 345212c..da551c9 100644
@@ -243,13 +243,6 @@
 			 ORxG_SCY_5_CLK			|\
 			 ORxG_TRLX)
 
-
-/*
- * Bank 1 - 60x bus SDRAM
- */
-#define SDRAM_MAX_SIZE	0x08000000	/* max. 128 MB		*/
-#define CONFIG_SYS_GLOBAL_SDRAM_LIMIT	(256 << 20)	/* less than 256 MB */
-
 #define CONFIG_SYS_MPTPR       0x1800
 
 /*
@@ -268,25 +261,6 @@
 #define CONFIG_SYS_OR1_PRELIM	CONFIG_SYS_OR1
 
 /*
- *  SDRAM initialization values
- */
-
-#define CONFIG_SYS_OR1 ((~(CONFIG_SYS_GLOBAL_SDRAM_LIMIT-1) & ORxS_SDAM_MSK) |\
-			 ORxS_BPD_8			|\
-			 ORxS_ROWST_PBI0_A7		|\
-			 ORxS_NUMR_13)
-
-#define CONFIG_SYS_PSDMR (PSDMR_SDAM_A14_IS_A5	|\
-			 PSDMR_BSMA_A14_A16	|\
-			 PSDMR_SDA10_PBI0_A9	|\
-			 PSDMR_RFRC_5_CLK	|\
-			 PSDMR_PRETOACT_2W	|\
-			 PSDMR_ACTTORW_2W	|\
-			 PSDMR_LDOTOPRE_1C	|\
-			 PSDMR_WRC_1C		|\
-			 PSDMR_CL_2)
-
-/*
  * UPIO FPGA (GPIO/PIGGY) on CS3 initialization values
  */
 #define CONFIG_SYS_KMBEC_FPGA_BASE	0x30000000
include/configs/mgcoge.h +26 -0
index 3d2ee24..aed1526 100644
@@ -58,6 +58,32 @@
 					CONFIG_SYS_FLASH_BASE_2 }
 #define MTDIDS_DEFAULT		"nor3=app"
 
+/*
+ * Bank 1 - 60x bus SDRAM
+ */
+#define SDRAM_MAX_SIZE	0x08000000			/* max. 128 MB	*/
+#define CONFIG_SYS_GLOBAL_SDRAM_LIMIT	(256 << 20)	/* less than 256 MB */
+
+/* SDRAM initialization values
+*/
+
+#define CONFIG_SYS_OR1    ((~(CONFIG_SYS_GLOBAL_SDRAM_LIMIT-1) & \
+			 ORxS_SDAM_MSK) |\
+			 ORxS_BPD_8                     |\
+			 ORxS_ROWST_PBI0_A7		|\
+			 ORxS_NUMR_13)
+
+#define CONFIG_SYS_PSDMR  (PSDMR_SDAM_A14_IS_A5 |\
+			 PSDMR_BSMA_A14_A16           |\
+			 PSDMR_SDA10_PBI0_A9		|\
+			 PSDMR_RFRC_5_CLK               |\
+			 PSDMR_PRETOACT_2W              |\
+			 PSDMR_ACTTORW_2W               |\
+			 PSDMR_LDOTOPRE_1C              |\
+			 PSDMR_WRC_1C                   |\
+			 PSDMR_CL_2)
+
+
 /* include further common stuff for all keymile 82xx boards */
 #include "km82xx-common.h"
 
include/configs/mgcoge2ne.h +23 -0
index 287b717..2b09b42 100644
@@ -58,6 +58,29 @@
 
 #define MTDIDS_DEFAULT		"nor2=app"
 
+/*
+ * Bank 1 - 60x bus SDRAM
+ * mgcoge2ne has 128M RAM
+ */
+#define SDRAM_MAX_SIZE	0x08000000			/* max. 128 MB	*/
+#define CONFIG_SYS_GLOBAL_SDRAM_LIMIT	(256 << 20)	/* less than 256 MB */
+
+#define CONFIG_SYS_OR1    ((~(CONFIG_SYS_GLOBAL_SDRAM_LIMIT-1) & \
+			 ORxS_SDAM_MSK) |\
+			 ORxS_BPD_8                     |\
+			 ORxS_ROWST_PBI0_A7		|\
+			 ORxS_NUMR_13)
+
+#define CONFIG_SYS_PSDMR  (PSDMR_SDAM_A14_IS_A5 |\
+			 PSDMR_BSMA_A14_A16           |\
+			 PSDMR_SDA10_PBI0_A9		|\
+			 PSDMR_RFRC_5_CLK               |\
+			 PSDMR_PRETOACT_2W              |\
+			 PSDMR_ACTTORW_2W               |\
+			 PSDMR_LDOTOPRE_1C              |\
+			 PSDMR_WRC_1C                   |\
+			 PSDMR_CL_2)
+
 /* include further common stuff for all keymile 82xx boards */
 #include "km82xx-common.h"
 
Signature · 1 line
1.7.0.5
#8 lore raw

PATCH 1/1 powerpc/km82xx: adapt CONFIG_SYSSYPCR to manual

In reply to Valentin Longchamp

From: Holger Brunck <[email protected]>

Reserved bit was changed according to the processors manual.

---
 include/configs/km82xx-common.h |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
include/configs/km82xx-common.h +1 -1
index da551c9..894e015 100644
@@ -182,7 +182,7 @@
 #define CONFIG_SYS_HID2		0
 
 #define CONFIG_SYS_SIUMCR		0x4020c200
-#define CONFIG_SYS_SYPCR		0xFFFFFFC3
+#define CONFIG_SYS_SYPCR		0xFFFFFF83
 #define CONFIG_SYS_BCR			0x10000000
 #define CONFIG_SYS_SCCR		(SCCR_PCI_MODE | SCCR_PCI_MODCK)
 
Signature · 1 line
1.7.0.5
#9 lore raw

PATCH 1/1 powerpc/km82xx: rename mgcoge2ne to mgcoge3ne board support

In reply to Valentin Longchamp

From: Holger Brunck <[email protected]>

This patch rename mgcoge2ne board support to mgcoge3ne. The board is similar to mgcoge. The difference is that a NUMONYX flash is used and a larger SDRAM (256MB). Also introduce CONFIG_KM_82XX to collect ppc82xx common settings.

---
 MAINTAINERS                   |    2 +-
 board/keymile/common/common.c |    6 +-
 board/keymile/common/common.h |    1 +
 board/keymile/km82xx/km82xx.c |   27 ++++++++++++
 boards.cfg                    |    2 +-
 include/configs/mgcoge.h      |    1 +
 include/configs/mgcoge2ne.h   |   87 -------------------------------------
 include/configs/mgcoge3ne.h   |   95 +++++++++++++++++++++++++++++++++++++++++
 8 files changed, 129 insertions(+), 92 deletions(-)
 delete mode 100644 include/configs/mgcoge2ne.h
 create mode 100644 include/configs/mgcoge3ne.h
MAINTAINERS +1 -1
index 9586bcb..37e03c9 100644
@@ -429,7 +429,7 @@ Heiko Schocher <[email protected]>
 	kmeter1		MPC8360
 	kmsupx5		MPC8321
 	mgcoge		MPC8247
-	mgcoge2ne	MPC8247
+	mgcoge3ne	MPC8247
 	mgcoge2un	ARM926EJS (Kirkwood SoC)
 	mucmc52		MPC5200
 	muas3001	MPC8270
board/keymile/common/common.c +3 -3
index b113c0a..3a7980d 100644
@@ -22,7 +22,7 @@
  */
 
 #include <common.h>
-#if defined(CONFIG_MGCOGE) || defined(CONFIG_MGCOGE2NE)
+#if defined(CONFIG_KM82XX)
 #include <mpc8260.h>
 #endif
 #include <ioports.h>
@@ -398,10 +398,10 @@ int ivm_read_eeprom(void)
 #define DELAY_ABORT_SEQ		62  /* @200kHz 9 clocks = 44us, 62us is ok */
 #define DELAY_HALF_PERIOD	(500 / (CONFIG_SYS_I2C_SPEED / 1000))
 
-#if defined(CONFIG_MGCOGE) || defined(CONFIG_MGCOGE2NE)
+#if defined(CONFIG_KM_82XX)
 #define SDA_MASK	0x00010000
 #define SCL_MASK	0x00020000
-static void set_pin(int state, unsigned long mask)
+void set_pin(int state, unsigned long mask)
 {
 	ioport_t *iop = ioport_addr((immap_t *)CONFIG_SYS_IMMR, 3);
 
board/keymile/common/common.h +1 -0
index 6ce992a..cee24d4 100644
@@ -124,6 +124,7 @@ struct bfticu_iomap {
 
 int ethernet_present(void);
 int ivm_read_eeprom(void);
+void set_pin(int state, unsigned long mask);
 
 int set_km_env(void);
 int fdt_set_node_and_value(void *blob,
board/keymile/km82xx/km82xx.c +27 -0
index 3db3c7b..5dc7ffa 100644
@@ -287,6 +287,8 @@ int checkboard(void)
 {
 #if defined(CONFIG_MGCOGE)
 	puts("Board: Keymile mgcoge");
+#elif defined(CONFIG_MGCOGE3NE)
+	puts("Board: Keymile mgcoge3ne");
 #else
 	puts("Board: Keymile mgcoge2ne");
 #endif
@@ -296,6 +298,28 @@ int checkboard(void)
 	return 0;
 }
 
+#ifdef CONFIG_MGCOGE3NE
+/*
+ * For mgcoge3ne boards, the mgcoge3un control is controlled from
+ * a GPIO line on the PPC CPU. If bobcatreset is set the line
+ * will toggle once what forces the mgocge3un part to restart
+ * immediately.
+ */
+void handle_mgcoge3un_reset(void)
+{
+	char *bobcatreset = getenv("bobcatreset");
+	if (bobcatreset) {
+		if (strcmp(bobcatreset, "true") == 0) {
+			puts("Forcing bobcat reset\n");
+			set_pin(0, 0x00000004);	/* clear PD29 to reset arm */
+			udelay(1000);
+			set_pin(1, 0x00000004);
+		} else
+			set_pin(1, 0x00000004);	/* set PD29 to not reset arm */
+	}
+}
+#endif
+
 /*
  * Early board initalization.
  */
@@ -311,6 +335,9 @@ int board_early_init_r(void)
 	out_8(&base->oprtl, (H_OPORTS_SCC4_ENA | H_OPORTS_SCC4_FD_ENA |
 		H_OPORTS_FCC1_PW_DWN));
 
+#ifdef CONFIG_MGCOGE3NE
+	handle_mgcoge3un_reset();
+#endif
 	return 0;
 }
 
boards.cfg +1 -1
index 4c52770..f6105be 100644
@@ -423,7 +423,7 @@ PQ2FADS-ZU_66MHz_lowboot     powerpc     mpc8260     mpc8260ads          freesca
 PQ2FADS-ZU_lowboot           powerpc     mpc8260     mpc8260ads          freescale      -           MPC8260ADS:ADSTYPE=CONFIG_SYS_PQ2FADS,SYS_TEXT_BASE=0xFF800000
 VoVPN-GW_66MHz               powerpc     mpc8260     vovpn-gw            funkwerk       -           VoVPN-GW:CLKIN_66MHz
 mgcoge                       powerpc     mpc8260     km82xx              keymile
-mgcoge2ne                    powerpc     mpc8260     km82xx              keymile
+mgcoge3ne                    powerpc     mpc8260     km82xx              keymile
 SCM                          powerpc     mpc8260     -                   siemens
 TQM8255_AA                   powerpc     mpc8260     tqm8260             tqc            -           TQM8260:MPC8255,300MHz
 TQM8260_AA                   powerpc     mpc8260     tqm8260             tqc            -           TQM8260:MPC8260,200MHz
include/configs/mgcoge.h +1 -0
index aed1526..93a6f4a 100644
@@ -32,6 +32,7 @@
 #define CONFIG_MPC8247
 #define CONFIG_MGCOGE
 #define CONFIG_HOSTNAME		mgcoge
+#define CONFIG_KM_82XX
 
 #define	CONFIG_SYS_TEXT_BASE	0xFE000000
 
include/configs/mgcoge2ne.h deleted +0 -87

87 lines not on this page · raw message

include/configs/mgcoge3ne.h new file +95 -0

95 lines not on this page · raw message

Signature · 1 line
1.7.0.5
#10 lore raw

PATCH 1/1 poweprc/km82xx: add board specific environment variable

In reply to Valentin Longchamp

From: Holger Brunck <[email protected]>

On mgcoge3ne a new environment variable bobcatreset is used. So this patch adds a possibility to add board specific environment variables in general and this specific variable for mgcoge3ne.

---
 include/configs/km82xx-common.h |    1 +
 include/configs/mgcoge.h        |    2 ++
 include/configs/mgcoge3ne.h     |    2 ++
 3 files changed, 5 insertions(+), 0 deletions(-)
include/configs/km82xx-common.h +1 -0
index 894e015..446c1d0 100644
@@ -80,6 +80,7 @@
  * Default environment settings
  */
 #define	CONFIG_EXTRA_ENV_SETTINGS					\
+	CONFIG_KM_BOARD_EXTRA_ENV					\
 	CONFIG_KM_DEF_ENV						\
 	"EEprom_ivm=pca9544a:70:4 \0"					\
 	"unlock=yes\0"							\
include/configs/mgcoge.h +2 -0
index 93a6f4a..0745855 100644
@@ -85,6 +85,8 @@
 			 PSDMR_CL_2)
 
 
+#define CONFIG_KM_BOARD_EXTRA_ENV	""
+
 /* include further common stuff for all keymile 82xx boards */
 #include "km82xx-common.h"
 
include/configs/mgcoge3ne.h +2 -0
index 3df7ef1..78ce468 100644
@@ -89,6 +89,8 @@
 			PSDMR_WRC_2C				|\
 			PSDMR_CL_2)
 
+#define CONFIG_KM_BOARD_EXTRA_ENV	"bobcatreset=true\0"
+
 /* include further common stuff for all keymile 82xx boards */
 #include "km82xx-common.h"
 
Signature · 1 line
1.7.0.5
#11 lore raw

PATCH 1/1 arm/km: add addbootcount environment variable

In reply to Valentin Longchamp

From: Holger Brunck <[email protected]>

This environment variable is used to set the bootcount address for the kernel.

---
 board/keymile/common/common.c |    7 +++++++
 include/configs/km_arm.h      |    3 +++
 2 files changed, 10 insertions(+), 0 deletions(-)
board/keymile/common/common.c +7 -0
index 3a7980d..9ec0022 100644
@@ -106,6 +106,13 @@ int set_km_env(void)
 	varaddr = gd->ram_size - CONFIG_KM_RESERVED_PRAM - CONFIG_KM_PHRAM;
 	sprintf((char *)buf, "0x%x", varaddr);
 	setenv("varaddr", (char *)buf);
+
+#ifdef BOOTCOUNT_ADDR
+	unsigned int bootcountaddr;
+	bootcountaddr = gd->ram_size - CONFIG_KM_RESERVED_PRAM;
+	sprintf((char *)buf, "0x%x", bootcountaddr);
+	setenv("bootcountaddr", (char *)buf);
+#endif
 	return 0;
 }
 
include/configs/km_arm.h +3 -0
index 70113d4..89f9d35 100644
@@ -64,6 +64,9 @@
 #define CONFIG_KM_KERNEL_ADDR	0x2000000	/* 4096KBytes */
 
 #define CONFIG_KM_DEF_ENV_CPU						\
+	"addbootcount="							\
+		"setenv bootargs ${bootargs} "				\
+		"bootcountaddr=${bootcountaddr}\0"			\
 	"addmtdparts=setenv bootargs ${bootargs} ${mtdparts}\0"		\
 	"boot=bootm ${actual_kernel_addr} - -\0"			\
 	"cramfsloadfdt=echo \\\\c\0"					\
Signature · 1 line
1.7.0.5
#12 lore raw

PATCH 1/1 cramfs: make cramfs usable without a NOR flash

In reply to Valentin Longchamp

From: Heiko Schocher <[email protected]>

cc Wolfgang Denk <[email protected]>
cc Detlev Zundel <[email protected]>
cc Valentin Longchamp <[email protected]>
cc Holger Brunck <[email protected]>
---
 common/cmd_cramfs.c |   12 +++++++++++-
 fs/cramfs/cramfs.c  |    4 ++++
 2 files changed, 15 insertions(+), 1 deletions(-)
common/cmd_cramfs.c +11 -1
index 8c86dc5..5e1487f 100644
@@ -43,7 +43,9 @@
 #endif
 
 #ifdef CONFIG_CRAMFS_CMDLINE
-flash_info_t flash_info[1];
+#if !defined(CONFIG_SYS_NO_FLASH)
+#include <flash.h>
+#endif
 
 #ifndef CONFIG_CMD_JFFS2
 #include <linux/stat.h>
@@ -119,7 +121,11 @@ int do_cramfs_load(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 	dev.id = &id;
 	part.dev = &dev;
 	/* fake the address offset */
+#if !defined(CONFIG_SYS_NO_FLASH)
 	part.offset = addr - flash_info[id.num].start[0];
+#else
+	part.offset = addr;
+#endif
 
 	/* pre-set Boot file name */
 	if ((filename = getenv("bootfile")) == NULL) {
@@ -182,7 +188,11 @@ int do_cramfs_ls(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 	dev.id = &id;
 	part.dev = &dev;
 	/* fake the address offset */
+#if !defined(CONFIG_SYS_NO_FLASH)
 	part.offset = addr - flash_info[id.num].start[0];
+#else
+	part.offset = addr;
+#endif
 
 	if (argc == 2)
 		filename = argv[1];
fs/cramfs/cramfs.c +4 -0
index 2956d39..910955d 100644
@@ -41,8 +41,12 @@ struct cramfs_super super;
 
 /* CPU address space offset calculation macro, struct part_info offset is
  * device address space offset, so we need to shift it by a device start address. */
+#if !defined(CONFIG_SYS_NO_FLASH)
 extern flash_info_t flash_info[];
 #define PART_OFFSET(x)	(x->offset + flash_info[x->dev->id->num].start[0])
+#else
+#define PART_OFFSET(x)	(x->offset)
+#endif
 
 static int cramfs_read_super (struct part_info *info)
 {
Signature · 1 line
1.7.0.5
#13 lore raw

PATCH 1/1 i2c, soft_i2c: deblock bus if switching to another i2c bus

In reply to Valentin Longchamp

From: Heiko Schocher <[email protected]>

Deblock i2c bus when switching to another i2c bus, if using i2c_set_bus_num().

cc Wolfgang Denk <[email protected]>
cc Detlev Zundel <[email protected]>
cc Valentin Longchamp <[email protected]>
cc Holger Brunck <[email protected]>
---
 drivers/i2c/soft_i2c.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
drivers/i2c/soft_i2c.c +1 -0
index 69b5f42..9b02e89 100644
@@ -286,6 +286,7 @@ int i2c_set_bus_num(unsigned int bus)
 		int	ret;
 
 		ret = i2x_mux_select_mux(bus);
+		i2c_init_board();
 		if (ret == 0)
 			i2c_bus_num = bus;
 		else
Signature · 1 line
1.7.0.5
#14 lore raw

PATCH 1/1 km/common: fix initial_boot_bank for bootpackages

In reply to Valentin Longchamp

From: Thomas Herzmann <[email protected]>

The initial_boot_bank can be set when more than one application is used in a bootpackage. But a value n <> 0 never led to booting from bank n. Instead, bank 0 was booted. This patch fixes this.

---
 include/configs/keymile-common.h |   15 ++++++++-------
 1 files changed, 8 insertions(+), 7 deletions(-)
include/configs/keymile-common.h +8 -7
index 6329a1c..5c32023 100644
@@ -249,10 +249,10 @@
 		"printbootargs boot "					\
 		"\" && "						\
 		"setenv bootcmd \'"					\
-		"run bootrunner; reset"					\
+		"run actual bootrunner; reset"				\
 		"\' && "						\
 		"setenv altbootcmd \'"					\
-		"run actual0 bootcmd; reset"				\
+		"run backup bootrunner; reset"				\
 		"\' && "						\
 		"saveenv && "						\
 		"reset\0"						\
@@ -290,7 +290,7 @@
 	"addramfs="							\
 		"setenv bootargs \""					\
 		"${bootargs} phram.phram="				\
-		"rootfs${actual_bank},${rootfsaddr},${rootfssize}\"\0"	\
+		"rootfs${boot_bank},${rootfsaddr},${rootfssize}\"\0"	\
 	"addtty="							\
 		"setenv bootargs ${bootargs}"				\
 		" console=" CONFIG_KM_CONSOLE_TTY ",${baudrate}\0"	\
@@ -305,7 +305,7 @@
 	"flashargs="							\
 		"setenv bootargs "					\
 		"ubi.mtd=" CONFIG_KM_UBI_LINUX_MTD_NAME " "		\
-		"root=mtdblock:rootfs${actual_bank} "			\
+		"root=mtdblock:rootfs${boot_bank} "			\
 		"rootfstype=squashfs ro\0"				\
 	""
 
@@ -354,7 +354,7 @@
 		"cramfsload ${kernel_addr_r} uImage && "		\
 		"setenv actual_kernel_addr ${kernel_addr_r}\0"		\
 	"ubiattach=ubi part ${ubipartition}\0"				\
-	"ubicopy=ubi read ${cramfsaddr} bootfs${actual_bank}\0"		\
+	"ubicopy=ubi read ${cramfsaddr} bootfs${boot_bank}\0"		\
 	"ubipartition=" CONFIG_KM_UBI_PARTITION_NAME "\0"		\
 	""
 
@@ -384,9 +384,10 @@
  * - 'default': setup default environment
  */
 #define CONFIG_KM_DEF_ENV_CONSTANTS					\
-	"actual=setenv actual_bank ${initial_boot_bank}\0"		\
-	"actual0=setenv actual_bank 0\0"				\
+	"actual=setenv boot_bank ${actual_bank}\0"			\
+	"backup=setenv boot_bank ${backup_bank}\0"			\
 	"actual_bank=${initial_boot_bank}\0"				\
+	"backup_bank=0\0"						\
 	"default="							\
 		"setenv default 'run newenv; reset' &&  "		\
 		"run release && saveenv; reset\0"			\
Signature · 1 line
1.7.0.5
#15 lore raw

PATCH 1/1 common/hush: make get_local_var visible for other users

In reply to Valentin Longchamp

From: Holger Brunck <[email protected]>

---
 common/hush.c  |    3 +--
 include/hush.h |    1 +
 2 files changed, 2 insertions(+), 2 deletions(-)
common/hush.c +1 -2
index 8021a68..85a6030 100644
@@ -497,7 +497,6 @@ static void remove_bg_job(struct pipe *pi);
 /*     local variable support */
 static char **make_list_in(char **inp, char *name);
 static char *insert_var_value(char *inp);
-static char *get_local_var(const char *var);
 
 #ifndef __U_BOOT__
 /* Table of built-in functions.  They can be forked or not, depending on
@@ -2169,7 +2168,7 @@ static char *get_dollar_var(char ch);
 #endif
 
 /* This is used to get/check local shell variables */
-static char *get_local_var(const char *s)
+char *get_local_var(const char *s)
 {
 	struct variables *cur;
 
include/hush.h +1 -0
index 0805ff3..5c566cc 100644
@@ -34,6 +34,7 @@ extern int parse_file_outer(void);
 
 int set_local_var(const char *s, int flg_export);
 void unset_local_var(const char *name);
+char *get_local_var(const char *s);
 
 #if defined(CONFIG_HUSH_INIT_VAR)
 extern int hush_init_var (void);
Signature · 1 line
1.7.0.5
#16 lore raw

PATCH 1/1 km/common: implement setboardid as a command

In reply to Valentin Longchamp

From: Holger Brunck <[email protected]>

Read out board id and HW key from the IVM eeprom and set these values as an environment variable was now done inside the code as a command.

---
 board/keymile/common/common.c |   25 +++++++++++++++++++++++++
 1 files changed, 25 insertions(+), 0 deletions(-)
board/keymile/common/common.c +25 -0
index 9ec0022..5704b7f 100644
@@ -25,6 +25,7 @@
 #if defined(CONFIG_KM82XX)
 #include <mpc8260.h>
 #endif
+#include <command.h>
 #include <ioports.h>
 #include <malloc.h>
 #include <hush.h>
@@ -689,3 +690,27 @@ int board_eth_init(bd_t *bis)
 
 	return -1;
 }
+
+/*
+ * do_setboardid command
+ * read out the board id and the hw key from the intventory EEPROM and set
+ * this values as environment variables.
+ */
+static int do_setboardid(cmd_tbl_t *cmdtp, int flag, int argc,
+				char *const argv[])
+{
+	unsigned char buf[32];
+	char *p;
+
+	p = get_local_var("IVM_BoardId");
+	sprintf((char *)buf, "%s", p);
+	setenv("boardid", (char *)buf);
+	p = get_local_var("IVM_HWKey");
+	sprintf((char *)buf, "%s", p);
+	setenv("hwkey", (char *)buf);
+	return 0;
+}
+
+U_BOOT_CMD(km_setboardid, 1, 0, do_setboardid, "setboardid", "read out bid and "
+				 "hwkey from IVM and set in environment");
+
Signature · 1 line
1.7.0.5
#17 lore raw

PATCH 1/1 km/common: replace env var checkboardidlist by function

In reply to Valentin Longchamp

From: Thomas Herzmann <[email protected]>

The environment variable (defining a checkboardidlist function) has been replaced by a u-boot function call. This call is much faster and the environment is a leaner.

---
 board/keymile/common/common.c    |  112 ++++++++++++++++++++++++++++++++++++++
 include/configs/keymile-common.h |   30 +----------
 2 files changed, 113 insertions(+), 29 deletions(-)
board/keymile/common/common.c +112 -0
index 5704b7f..72278a0 100644
@@ -32,6 +32,7 @@
 #include <net.h>
 #include <netdev.h>
 #include <asm/io.h>
+#include <linux/ctype.h>
 
 #if defined(CONFIG_OF_BOARD_SETUP) && defined(CONFIG_OF_LIBFDT)
 #include <libfdt.h>
@@ -714,3 +715,114 @@ static int do_setboardid(cmd_tbl_t *cmdtp, int flag, int argc,
 U_BOOT_CMD(km_setboardid, 1, 0, do_setboardid, "setboardid", "read out bid and "
 				 "hwkey from IVM and set in environment");
 
+/*
+ * command km_checkboardidlist
+ *	if "boardid" and "hwkey" are not already set in the environment, do:
+ *		if a "boardIdListHex" exists in the environment:
+ *			- read ivm data for boardid and hwkey
+ *			- compare each entry of the boardIdListHex with the
+ *				IVM data:
+ *			if match:
+ *				set environment variables boardid, boardId,
+ *				hwkey, hwKey to	the found values
+ *				both (boardid and boardId) are set because
+ *				they might be used differently in the
+ *				application and in the init scripts (?)
+ *	return 0 in case of match, 1 if not match or error
+ */
+int do_checkboardidlist(cmd_tbl_t *cmdtp, int flag, int argc,
+			char *const argv[])
+{
+	unsigned long ivmbid = 0, ivmhwkey = 0;
+	unsigned long envbid = 0, envhwkey = 0;
+	char *p;
+	int verbose = argc > 1 && *argv[1] == 'v';
+	int rc = 1;	/* default: no match */
+
+	p = get_local_var("IVM_BoardId");
+	strict_strtoul(p, 16, &ivmbid);
+	p = get_local_var("IVM_HWKey");
+	strict_strtoul(p, 16, &ivmhwkey);
+
+	if (!ivmbid || !ivmhwkey) {
+		printf("Error: IVM_BoardId and/or IVM_HWKey not set!\n");
+		return rc;
+	}
+
+	/* try to read values from environment */
+	p = getenv("boardid");
+	if (p != NULL)
+		strict_strtoul(p, 16, &envbid);
+	p = getenv("hwkey");
+	if (p != NULL)
+		strict_strtoul(p, 16, &envhwkey);
+
+	if (!envbid || !envhwkey) {
+		/* must set environment first */
+		char *bidhwklist = getenv("boardIdListHex");
+		if (bidhwklist) {
+			int found = 0;
+			char *rest = bidhwklist;
+			char *endp;
+			if (verbose) {
+				printf("IVM_BoardId: %ld, IVM_HWKey=%ld\n",
+					ivmbid, ivmhwkey);
+				printf("boardIdHwKeyList: %s\n",
+					bidhwklist);
+			}
+			while (!found) {
+				/* loop over each bid/hwkey pair in the list */
+				unsigned long bid   = 0;
+				unsigned long hwkey = 0;
+				while (*rest && !isxdigit(*rest))
+					rest++;
+				bid = simple_strtoul(rest, &endp, 16);
+				if (*endp == '_') {
+					rest  = endp + 1;
+					hwkey =	simple_strtoul(rest, &endp, 16);
+					rest  = endp;
+					while (*rest && !isxdigit(*rest))
+						rest++;
+				}
+				if ((!bid) || (!hwkey)) {
+					/* end of list */
+					break;
+				}
+				if (verbose) {
+					printf("trying bid=0x%lX, hwkey=%ld\n",
+						bid, hwkey);
+				}
+				if ((bid == ivmbid) && (hwkey == ivmhwkey)) {
+					char buf[10];
+
+					found = 1;
+					envbid   = bid;
+					envhwkey = hwkey;
+					sprintf(buf, "%lx", bid);
+					setenv("boardid", buf);
+					sprintf(buf, "%lx", hwkey);
+					setenv("hwkey", buf);
+					saveenv();
+				}
+			} /* end while( ! found ) */
+		}
+	}
+
+	/* compare now the values */
+	if ((ivmbid == envbid) && (ivmhwkey == envhwkey)) {
+		printf("boardid=0x%3lX, hwkey=%ld\n", envbid, envhwkey);
+		rc = 0;
+	} else {
+		printf("Error: env bId=0x%3lX, hwKey=%ld\n", envbid, envhwkey);
+		printf("       IVM bId=0x%3lX, hwKey=%ld\n", ivmbid, ivmhwkey);
+	}
+	return rc;
+}
+
+U_BOOT_CMD(km_checkbidhwk, 2, 0, do_checkboardidlist,
+		"check boardid and hwkey",
+		"[v]\n  - check environment parameter "\
+		"\"boardIdListHex\" against stored boardid and hwkey "\
+		"from the IVM\n    v: verbose output"
+);
+
include/configs/keymile-common.h +1 -29
index 5c32023..a6d3bcf 100644
@@ -240,7 +240,6 @@
 	"release="							\
 		"setenv actual_bank ${initial_boot_bank} && "		\
 		"setenv subbootcmds \""					\
-		"checkboardidlist "					\
 		"checkboardid "						\
 		"ubiattach ubicopy "					\
 		"cramfsloadfdt cramfsloadkernel "			\
@@ -391,36 +390,9 @@
 	"default="							\
 		"setenv default 'run newenv; reset' &&  "		\
 		"run release && saveenv; reset\0"			\
-	"checkboardidlist="						\
-		"if test \"x${boardIdListHex}\" != \"x\"; then "	\
-		"IVMbidhwk=${IVM_BoardId}_${IVM_HWKey}; "		\
-		"found=0; "						\
-		"for bidhwk in \"${boardIdListHex}\"; do "		\
-		"echo trying $bidhwk ...; "				\
-		"if test \"x$bidhwk\" = \"x$IVMbidhwk\"; then "		\
-		"found=1; "						\
-		"echo match found for $bidhwk; "			\
-		"if test \"x$bidhwk\" != \"x${boardId}_${hwKey}\";then "\
-			"setenv boardid ${IVM_BoardId}; "		\
-			"setenv boardId ${IVM_BoardId}; "		\
-			"setenv hwkey ${IVM_HWKey}; "			\
-			"setenv hwKey ${IVM_HWKey}; "			\
-			"echo \"boardId set to ${boardId}\"; "		\
-			"echo \"hwKey   set to ${hwKey}\"; "		\
-			"saveenv; "					\
-		"fi; "							\
-		"fi; "							\
-		"done; "						\
-		"else "							\
-			"echo \"boardIdListHex not set, not checked\"; "\
-			"found=1; "					\
-		"fi; "							\
-		"test \"$found\" = 1 \0"				\
-	"checkboardid="							\
-		"test \"x${boardId}\" = \"x${IVM_BoardId}\" && "	\
-		"test \"x${hwKey}\" = \"x${IVM_HWKey}\"\0"		\
 	"printbootargs=print bootargs\0"				\
 	"rootfsfile="xstr(CONFIG_HOSTNAME) "/rootfsImage\0"		\
+	"checkboardid=km_checkbidhwk\0"					\
 	""
 
 #ifndef CONFIG_KM_DEF_ENV
Signature · 1 line
1.7.0.5
#18 lore raw

PATCH 1/1 km/common: add pnvramsize to default environment

In reply to Valentin Longchamp

From: Holger Brunck <[email protected]>

The pnvram size was used later from start scripts in linux. Therefore it must be set inside u-boot.

---
 board/keymile/common/common.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)
board/keymile/common/common.c +3 -0
index 72278a0..da73f66 100644
@@ -100,6 +100,9 @@ int set_km_env(void)
 	sprintf((char *)buf, "0x%x", pnvramaddr);
 	setenv("pnvramaddr", (char *)buf);
 
+	sprintf((char *)buf, "0x%x", CONFIG_KM_PNVRAM);
+	setenv("pnvramsize", (char *)buf);
+
 	pram = (CONFIG_KM_RESERVED_PRAM + CONFIG_KM_PHRAM + CONFIG_KM_PNVRAM) /
 		0x400;
 	sprintf((char *)buf, "0x%x", pram);
Signature · 1 line
1.7.0.5
#19 lore raw

PATCH 1/1 km/common: fix coding style issues in generic header

In reply to Valentin Longchamp

From: Holger Brunck <[email protected]>

---
 include/configs/keymile-common.h |    4 ++--
 include/configs/km_arm.h         |   10 +++++-----
 2 files changed, 7 insertions(+), 7 deletions(-)
include/configs/keymile-common.h +2 -2
index a6d3bcf..b313b2e 100644
@@ -86,7 +86,7 @@
 #define CONFIG_SYS_HZ			1000	/* decr. freq: 1 ms ticks */
 
 #define CONFIG_BAUDRATE			115200
-#define CONFIG_SYS_BAUDRATE_TABLE	{ 9600, 19200, 38400, 57600, 115200, 230400 }
+#define CONFIG_SYS_BAUDRATE_TABLE { 9600, 19200, 38400, 57600, 115200, 230400 }
 
 #define CONFIG_LOADS_ECHO
 #define CONFIG_SYS_LOADS_BAUD_CHANGE
@@ -425,6 +425,6 @@
 	""
 #endif /* CONFIG_KM_DEF_ENV */
 
-#define CONFIG_VERSION_VARIABLE 	/* include version env variable */
+#define CONFIG_VERSION_VARIABLE	/* include version env variable */
 
 #endif /* __CONFIG_KEYMILE_H */
include/configs/km_arm.h +5 -5
index 06f91fe..0148b24 100644
@@ -110,7 +110,7 @@
 #define CONFIG_BOOTMAPSZ	(8 << 20)	/* Initial Memmap for Linux */
 #define CONFIG_CMDLINE_TAG		/* enable passing of ATAGs  */
 #define CONFIG_INITRD_TAG		/* enable INITRD tag */
-#define CONFIG_SETUP_MEMORY_TAGS 	/* enable memory tag */
+#define CONFIG_SETUP_MEMORY_TAGS	/* enable memory tag */
 
 /*
  * Commands configuration
@@ -185,10 +185,10 @@
 #ifndef __ASSEMBLY__
 #include <asm/arch-kirkwood/gpio.h>
 extern void __set_direction(unsigned pin, int high);
-void set_sda (int state);
-void set_scl (int state);
-int get_sda (void);
-int get_scl (void);
+void set_sda(int state);
+void set_scl(int state);
+int get_sda(void);
+int get_scl(void);
 #define KM_KIRKWOOD_SDA_PIN	8
 #define KM_KIRKWOOD_SCL_PIN	9
 #define KM_KIRKWOOD_ENV_WP	38
Signature · 1 line
1.7.0.5
#20 lore raw

PATCH 1/1 km/common: simplify default environment

In reply to Valentin Longchamp

From: Holger Brunck <[email protected]>

This is a first step to simplify the default environment. Move all the environment variables which are only needed for debugging purpose to textfiles in the scripts directory. In case of debugging these files can be loaded via tftp into RAM and set via the env import command. Other variables are identified as obsolete and were removed.

---
 board/keymile/scripts/README               |   25 ++++++
 board/keymile/scripts/debug-arm-env.txt    |    2 +
 board/keymile/scripts/debug-common-env.txt |    9 ++
 board/keymile/scripts/debug-ppc-env.txt    |    2 +
 include/configs/km/keymile-common.h        |  128 +++-------------------------
 include/configs/km/km-powerpc.h            |   12 +--
 include/configs/km/km_arm.h                |    5 +-
 7 files changed, 57 insertions(+), 126 deletions(-)
 create mode 100644 board/keymile/scripts/README
 create mode 100644 board/keymile/scripts/debug-arm-env.txt
 create mode 100644 board/keymile/scripts/debug-common-env.txt
 create mode 100644 board/keymile/scripts/debug-ppc-env.txt
board/keymile/scripts/README new file +25 -0
new file mode 100644
index 0000000..ce6d79a
@@ -0,0 +1,25 @@
+debug-common-env.txt
+============================
+This file defines environment variables which are valid for powerpc boards
+and for arm boards.
+
+addramfs: add phram device for the rootfilesysten in ram
+develop: for development, laod kernel via tftp and mount  rootfs via NFS
+nfsargs: default arguments for nfs boot
+ramfs: load rootfilesystem in RAM  kernel
+rootfsfile: loacation of the rootfs file for ramfs
+setramfspram: compute PRAM size for ramfs target
+setrootfsaddr: compute rootfilesystem address for phram
+tftpkernel: load a kernel with tftp into ram
+tftpramfs: load rootfs with tftp into ram
+
+debug-ppc-env.txt
+============================
+fdt_file: location of the dtb file on the tftp server
+tftpfdt: load dtb file and set fdt address
+
+debug-arm-env.txt
+============================
+tftpfdt: for arm only a dummy variable, because we have no fdt on arm
+
+
board/keymile/scripts/debug-arm-env.txt new file +2 -0
new file mode 100644
index 0000000..84498af
@@ -0,0 +1,2 @@
+debug_env_common=tftpboot 0x200000 scripts/debug-common-env.txt && env import -t 0x200000 ${filesize}
+tftpfdt=true
board/keymile/scripts/debug-common-env.txt new file +9 -0
new file mode 100644
index 0000000..1fd4b0c
@@ -0,0 +1,9 @@
+addramfs=setenv bootargs "${bootargs} phram.phram=rootfs${boot_bank},${rootfsaddr},${rootfssize}"
+develop=setenv subbootcmds "tftpfdt tftpkernel nfsargs ${commonargs} boot " && setenv bootcmd 'run bootrunner' && setenv altbootcmd 'run bootcmd' && km_setboardid && saveenv && reset
+nfsargs=setenv bootargs ubi.mtd=ubi0 root=/dev/nfs rw nfsroot=${serverip}:${rootpath}
+ramfs=setenv actual_bank -1 && setenv subbootcmds "tftpfdt tftpkernel setrootfsaddr tftpramfs flashargs ${commonargs} addpanic addramfs boot " && setenv bootcmd 'run bootrunner' && setenv altbootcmd 'run bootcmd' && run setboardid && run setramfspram && run setpnvramaddr && saveenv && reset
+rootfsfile=${hostname}/rootfsImage
+setramfspram=setexpr value 0 + ${reservedpram} && setexpr value 0x${value} + ${rootfssize} && setexpr value 0x${value} + ${varsize} && setexpr value 0x${value} + ${pnvramsize} && setexpr value 0x${value} / 0x400 && setenv pram 0x${value}
+tftpkernel=tftpboot ${kernel_addr_r} ${hostname}/uImage && setenv actual_kernel_addr ${kernel_addr_r}
+tftpramfs=tftpboot ${rootfsaddr} ${hostname}/rootfsImage && setenv loadaddr
+setrootfsaddr=setexpr value ${pnvramsize} - ${rootfssize} && setenv rootfsaddr 0x${value}
board/keymile/scripts/debug-ppc-env.txt new file +2 -0
new file mode 100644
index 0000000..3c06ff1
@@ -0,0 +1,2 @@
+debug_env_common=tftpboot 0x200000 scripts/debug-common-env.txt && env import -t 0x200000 ${filesize}
+tftpfdt=tftpboot ${fdt_addr_r} ${hostname}/${hostname}.dtb && setenv actual_fdt_addr ${fdt_addr_r}
include/configs/km/keymile-common.h +13 -115

221 lines not on this page · raw message

include/configs/km/km-powerpc.h +4 -8
index 3351609..d6db8d7 100644
@@ -67,20 +67,14 @@
 #define CONFIG_KM_FDT_ADDR	0x7E0000	/* 128Kbytes */
 
 #define CONFIG_KM_DEF_ENV_CPU						\
-	"addbootcount=echo \\\\c\0"					\
-	"addmtdparts=echo \\\\c\0"					\
+	"addbootcount=true\0"						\
+	"addmtdparts=true\0"						\
 	"boot=bootm ${actual_kernel_addr} - ${actual_fdt_addr}\0"	\
 	"cramfsloadfdt="						\
 		"cramfsload ${fdt_addr_r} "				\
 		"fdt_0x${IVM_BoardId}_0x${IVM_HWKey}.dtb && "		\
 		"setenv actual_fdt_addr ${fdt_addr_r}\0"		\
 	"fdt_addr_r=" xstr(CONFIG_KM_FDT_ADDR) "\0"			\
-	"fdt_file="							\
-		xstr(CONFIG_HOSTNAME) "/"				\
-		xstr(CONFIG_HOSTNAME) ".dtb\0"				\
-	"tftpfdt="							\
-		"tftpboot ${fdt_addr_r} ${fdt_file} && "		\
-		"setenv actual_fdt_addr ${fdt_addr_r} \0"		\
 	"update="							\
 		"protect off " xstr(BOOTFLASH_START) " +${filesize} && "\
 		"erase " xstr(BOOTFLASH_START) "  +${filesize} && "	\
@@ -89,4 +83,6 @@
 		"protect on " xstr(BOOTFLASH_START) "  +${filesize}\0"  \
 	""
 
+#define CONFIG_KM_ARCH_DBG_FILE		"scripts/debug-ppc-env.txt"
+
 #endif /* __CONFIG_KEYMILE_POWERPC_H */
include/configs/km/km_arm.h +2 -3
index 0148b24..33a8678 100644
@@ -69,12 +69,11 @@
 		"bootcountaddr=${bootcountaddr}\0"			\
 	"addmtdparts=setenv bootargs ${bootargs} ${mtdparts}\0"		\
 	"boot=bootm ${actual_kernel_addr} - -\0"			\
-	"cramfsloadfdt=echo \\\\c\0"					\
-	"tftpfdt=echo \\\\c\0"						\
+	"cramfsloadfdt=true\0"						\
 	CONFIG_KM_DEF_ENV_UPDATE					\
 	""
 
-
+#define CONFIG_KM_ARCH_DBG_FILE		"scripts/debug-arm-env.txt"
 
 #define CONFIG_MD5	/* get_random_hex on krikwood needs MD5 support */
 #define CONFIG_SKIP_LOWLEVEL_INIT	/* disable board lowlevel_init */
Signature · 1 line
1.7.0.5
#21 lore raw

PATCH 1/1 Keymile boards mainlining, part 2

In reply to Valentin Longchamp

Sorry, the whole series is not numbered, -N statt -n ... it will be corrected for the very likely v2 of the series posting.

Quoted 141 lines · Valentin Longchamp

This series is the second effort of merging the Keymile boards support back into mainline.

Most of the patches are only keymile relevant and should only affect our boards.

There are also patches for the i2c deblocking support and cramfs for ARM.

The whole series is based on current denx-master with the our first patch series posted by Heiko that was reviewed previous weeks and should still be merged during the current merge window:

http://lists.denx.de/pipermail/u-boot/2011-April/089530.html

Heiko Schocher (5):
lib, vsprintf: introduce strict_strtoul
arm/km: add CRAMFS support for keymile boards
cramfs: make cramfs usable without a NOR flash
i2c, soft_i2c: deblock bus if switching to another i2c bus arm, powerpc, keymile boards: move keymile specific header in subdir

Holger Brunck (18):
km/common: remove hdlc_enet implementation powerpc/km82xx: cleanup coding style for mgcoge.c powerpc/km82xx: rename mgcoge files to km82xx powerpc/km82xx: move SDRAM config to board config powerpc/km82xx: adapt CONFIG_SYSSYPCR to manual powerpc/km82xx: rename mgcoge2ne to mgcoge3ne board support poweprc/km82xx: add board specific environment variable arm/km: add addbootcount environment variable arm/km: remove last_stage_init and unneeded printouts arm/km: add second serial interface for kirkwood common/hush: make get_local_var visible for other users km/common: implement setboardid as a command km/common: add pnvramsize to default environment km/common: fix coding style issues in generic header km/common: simplify default environment
arm/km: rename mgcoge2un to mgcoge3un
arm/km: change default settings for egiga on mgcoge3un arm/km: update mgcoge3un board support

Huber, Andreas (1):
powerpc/km82xx: add DIP switch detection

Stefan Bigler (1):
i2c: add i2c deblock sequence before and after every mux config

Thomas Herzmann (2):
km/common: fix initial_boot_bank for bootpackages km/common: replace env var checkboardidlist by function

Valentin Longchamp (3):
arm/km: add mkimage config file for uart download arm/km: add BootROM config files for memphis SDRAM arm/km: disable ls (through jffs2 support)

 MAINTAINERS                                    |    4 +-
 board/keymile/common/common.c                  |  156 ++++++-
 board/keymile/common/common.h                  |   84 +++-
 board/keymile/common/keymile_hdlc_enet.c       |  620 ------------------------
 board/keymile/km82xx/Makefile                  |   53 ++
 board/keymile/km82xx/km82xx.c                  |  373 ++++++++++++++
 board/keymile/km_arm/km_arm.c                  |   93 +++-
 board/keymile/km_arm/kwbimage-memphis-uart.cfg |  197 ++++++++
 board/keymile/km_arm/kwbimage-memphis.cfg      |  197 ++++++++
 board/keymile/km_arm/kwbimage-uart.cfg         |  179 +++++++
 board/keymile/mgcoge/Makefile                  |   54 --
 board/keymile/mgcoge/mgcoge.c                  |  333 -------------
 board/keymile/mgcoge/mgcoge_hdlc_enet.c        |  276 -----------
 board/keymile/scripts/README                   |   25 +
 board/keymile/scripts/debug-arm-env.txt        |    2 +
 board/keymile/scripts/debug-common-env.txt     |    9 +
 board/keymile/scripts/debug-ppc-env.txt        |    2 +
 boards.cfg                                     |    6 +-
 common/cmd_cramfs.c                            |   12 +-
 common/cmd_i2c.c                               |   12 +
 common/hush.c                                  |    3 +-
 drivers/i2c/soft_i2c.c                         |    1 +
 drivers/net/mvgbe.h                            |    2 +
 fs/cramfs/cramfs.c                             |    4 +
 include/_exports.h                             |    1 +
 include/common.h                               |    1 +
 include/configs/keymile-common.h               |  455 -----------------
 include/configs/km-powerpc.h                   |   92 ----
 include/configs/km/keymile-common.h            |  328 +++++++++++++
 include/configs/km/km-powerpc.h                |   88 ++++
 include/configs/km/km82xx-common.h             |  311 ++++++++++++
 include/configs/km/km8321-common.h             |  137 ++++++
 include/configs/km/km83xx-common.h             |  325 +++++++++++++
 include/configs/km/km_arm.h                    |  275 +++++++++++
 include/configs/km82xx-common.h                |  336 -------------
 include/configs/km8321-common.h                |  137 ------
 include/configs/km83xx-common.h                |  325 -------------
 include/configs/km_arm.h                       |  266 ----------
 include/configs/kmeter1.h                      |    2 +-
 include/configs/kmsupx5.h                      |    2 +-
 include/configs/mgcoge.h                       |   35 ++-
 include/configs/mgcoge2ne.h                    |   64 ---
 include/configs/mgcoge2un.h                    |   65 ---
 include/configs/mgcoge3ne.h                    |   97 ++++
 include/configs/mgcoge3un.h                    |   90 ++++
 include/configs/suen3.h                        |    2 +-
 include/configs/suen8.h                        |    2 +-
 include/configs/suvd3.h                        |    2 +-
 include/configs/tuda1.h                        |    2 +-
 include/configs/tuxa1.h                        |    2 +-
 include/exports.h                              |    1 +
 include/hush.h                                 |    1 +
 include/i2c.h                                  |    2 -
 lib/vsprintf.c                                 |   47 ++
 54 files changed, 3111 insertions(+), 3079 deletions(-)
 delete mode 100644 board/keymile/common/keymile_hdlc_enet.c
 create mode 100644 board/keymile/km82xx/Makefile
 create mode 100644 board/keymile/km82xx/km82xx.c
 create mode 100644 board/keymile/km_arm/kwbimage-memphis-uart.cfg
 create mode 100644 board/keymile/km_arm/kwbimage-memphis.cfg
 create mode 100644 board/keymile/km_arm/kwbimage-uart.cfg
 delete mode 100644 board/keymile/mgcoge/Makefile
 delete mode 100644 board/keymile/mgcoge/mgcoge.c
 delete mode 100644 board/keymile/mgcoge/mgcoge_hdlc_enet.c
 create mode 100644 board/keymile/scripts/README
 create mode 100644 board/keymile/scripts/debug-arm-env.txt
 create mode 100644 board/keymile/scripts/debug-common-env.txt
 create mode 100644 board/keymile/scripts/debug-ppc-env.txt
 delete mode 100644 include/configs/keymile-common.h
 delete mode 100644 include/configs/km-powerpc.h
 create mode 100644 include/configs/km/keymile-common.h
 create mode 100644 include/configs/km/km-powerpc.h
 create mode 100644 include/configs/km/km82xx-common.h
 create mode 100644 include/configs/km/km8321-common.h
 create mode 100644 include/configs/km/km83xx-common.h
 create mode 100644 include/configs/km/km_arm.h
 delete mode 100644 include/configs/km82xx-common.h
 delete mode 100644 include/configs/km8321-common.h
 delete mode 100644 include/configs/km83xx-common.h
 delete mode 100644 include/configs/km_arm.h
 delete mode 100644 include/configs/mgcoge2ne.h
 delete mode 100644 include/configs/mgcoge2un.h
 create mode 100644 include/configs/mgcoge3ne.h
 create mode 100644 include/configs/mgcoge3un.h
Signature · 13 lines
Valentin Longchamp
Embedded Software Engineer
Hardware and Chip Integration
______________________________________
KEYMILE AG
Schwarzenburgstr. 73
CH-3097 Liebefeld
Phone +41 31 377 1318
Fax   +41 31 377 1212
valentin.longchamp at keymile.com
www.keymile.com
______________________________________
KEYMILE: A Specialist as a Partner
#22 lore raw

PATCH 1/1 Keymile boards mainlining, part 2

And my coworker made me notice that the renames are not correctly handled either, so I am going to resent this whole series directly.

Please excuse me for the spam and inconvenience.

Quoted 148 lines · Valentin Longchamp

Sorry, the whole series is not numbered, -N statt -n ... it will be corrected for the very likely v2 of the series posting.

Quoted 142 lines · Valentin Longchamp

This series is the second effort of merging the Keymile boards support back into mainline.

Most of the patches are only keymile relevant and should only affect our boards.

There are also patches for the i2c deblocking support and cramfs for ARM.

The whole series is based on current denx-master with the our first patch series posted by Heiko that was reviewed previous weeks and should still be merged during the current merge window:

http://lists.denx.de/pipermail/u-boot/2011-April/089530.html

Heiko Schocher (5):
lib, vsprintf: introduce strict_strtoul
arm/km: add CRAMFS support for keymile boards
cramfs: make cramfs usable without a NOR flash
i2c, soft_i2c: deblock bus if switching to another i2c bus arm, powerpc, keymile boards: move keymile specific header in subdir

Holger Brunck (18):
km/common: remove hdlc_enet implementation powerpc/km82xx: cleanup coding style for mgcoge.c powerpc/km82xx: rename mgcoge files to km82xx powerpc/km82xx: move SDRAM config to board config powerpc/km82xx: adapt CONFIG_SYSSYPCR to manual powerpc/km82xx: rename mgcoge2ne to mgcoge3ne board support poweprc/km82xx: add board specific environment variable arm/km: add addbootcount environment variable arm/km: remove last_stage_init and unneeded printouts arm/km: add second serial interface for kirkwood common/hush: make get_local_var visible for other users km/common: implement setboardid as a command km/common: add pnvramsize to default environment km/common: fix coding style issues in generic header km/common: simplify default environment
arm/km: rename mgcoge2un to mgcoge3un
arm/km: change default settings for egiga on mgcoge3un arm/km: update mgcoge3un board support

Huber, Andreas (1):
powerpc/km82xx: add DIP switch detection

Stefan Bigler (1):
i2c: add i2c deblock sequence before and after every mux config

Thomas Herzmann (2):
km/common: fix initial_boot_bank for bootpackages km/common: replace env var checkboardidlist by function

Valentin Longchamp (3):
arm/km: add mkimage config file for uart download arm/km: add BootROM config files for memphis SDRAM arm/km: disable ls (through jffs2 support)

 MAINTAINERS                                    |    4 +-
 board/keymile/common/common.c                  |  156 ++++++-
 board/keymile/common/common.h                  |   84 +++-
 board/keymile/common/keymile_hdlc_enet.c       |  620 
------------------------
 board/keymile/km82xx/Makefile                  |   53 ++
 board/keymile/km82xx/km82xx.c                  |  373 ++++++++++++++
 board/keymile/km_arm/km_arm.c                  |   93 +++-
 board/keymile/km_arm/kwbimage-memphis-uart.cfg |  197 ++++++++
 board/keymile/km_arm/kwbimage-memphis.cfg      |  197 ++++++++
 board/keymile/km_arm/kwbimage-uart.cfg         |  179 +++++++
 board/keymile/mgcoge/Makefile                  |   54 --
 board/keymile/mgcoge/mgcoge.c                  |  333 -------------
 board/keymile/mgcoge/mgcoge_hdlc_enet.c        |  276 -----------
 board/keymile/scripts/README                   |   25 +
 board/keymile/scripts/debug-arm-env.txt        |    2 +
 board/keymile/scripts/debug-common-env.txt     |    9 +
 board/keymile/scripts/debug-ppc-env.txt        |    2 +
 boards.cfg                                     |    6 +-
 common/cmd_cramfs.c                            |   12 +-
 common/cmd_i2c.c                               |   12 +
 common/hush.c                                  |    3 +-
 drivers/i2c/soft_i2c.c                         |    1 +
 drivers/net/mvgbe.h                            |    2 +
 fs/cramfs/cramfs.c                             |    4 +
 include/_exports.h                             |    1 +
 include/common.h                               |    1 +
 include/configs/keymile-common.h               |  455 -----------------
 include/configs/km-powerpc.h                   |   92 ----
 include/configs/km/keymile-common.h            |  328 +++++++++++++
 include/configs/km/km-powerpc.h                |   88 ++++
 include/configs/km/km82xx-common.h             |  311 ++++++++++++
 include/configs/km/km8321-common.h             |  137 ++++++
 include/configs/km/km83xx-common.h             |  325 +++++++++++++
 include/configs/km/km_arm.h                    |  275 +++++++++++
 include/configs/km82xx-common.h                |  336 -------------
 include/configs/km8321-common.h                |  137 ------
 include/configs/km83xx-common.h                |  325 -------------
 include/configs/km_arm.h                       |  266 ----------
 include/configs/kmeter1.h                      |    2 +-
 include/configs/kmsupx5.h                      |    2 +-
 include/configs/mgcoge.h                       |   35 ++-
 include/configs/mgcoge2ne.h                    |   64 ---
 include/configs/mgcoge2un.h                    |   65 ---
 include/configs/mgcoge3ne.h                    |   97 ++++
 include/configs/mgcoge3un.h                    |   90 ++++
 include/configs/suen3.h                        |    2 +-
 include/configs/suen8.h                        |    2 +-
 include/configs/suvd3.h                        |    2 +-
 include/configs/tuda1.h                        |    2 +-
 include/configs/tuxa1.h                        |    2 +-
 include/exports.h                              |    1 +
 include/hush.h                                 |    1 +
 include/i2c.h                                  |    2 -
 lib/vsprintf.c                                 |   47 ++
 54 files changed, 3111 insertions(+), 3079 deletions(-)
 delete mode 100644 board/keymile/common/keymile_hdlc_enet.c
 create mode 100644 board/keymile/km82xx/Makefile
 create mode 100644 board/keymile/km82xx/km82xx.c
 create mode 100644 board/keymile/km_arm/kwbimage-memphis-uart.cfg
 create mode 100644 board/keymile/km_arm/kwbimage-memphis.cfg
 create mode 100644 board/keymile/km_arm/kwbimage-uart.cfg
 delete mode 100644 board/keymile/mgcoge/Makefile
 delete mode 100644 board/keymile/mgcoge/mgcoge.c
 delete mode 100644 board/keymile/mgcoge/mgcoge_hdlc_enet.c
 create mode 100644 board/keymile/scripts/README
 create mode 100644 board/keymile/scripts/debug-arm-env.txt
 create mode 100644 board/keymile/scripts/debug-common-env.txt
 create mode 100644 board/keymile/scripts/debug-ppc-env.txt
 delete mode 100644 include/configs/keymile-common.h
 delete mode 100644 include/configs/km-powerpc.h
 create mode 100644 include/configs/km/keymile-common.h
 create mode 100644 include/configs/km/km-powerpc.h
 create mode 100644 include/configs/km/km82xx-common.h
 create mode 100644 include/configs/km/km8321-common.h
 create mode 100644 include/configs/km/km83xx-common.h
 create mode 100644 include/configs/km/km_arm.h
 delete mode 100644 include/configs/km82xx-common.h
 delete mode 100644 include/configs/km8321-common.h
 delete mode 100644 include/configs/km83xx-common.h
 delete mode 100644 include/configs/km_arm.h
 delete mode 100644 include/configs/mgcoge2ne.h
 delete mode 100644 include/configs/mgcoge2un.h
 create mode 100644 include/configs/mgcoge3ne.h
 create mode 100644 include/configs/mgcoge3un.h
Signature · 13 lines
Valentin Longchamp
Embedded Software Engineer
Hardware and Chip Integration
______________________________________
KEYMILE AG
Schwarzenburgstr. 73
CH-3097 Liebefeld
Phone +41 31 377 1318
Fax   +41 31 377 1212
valentin.longchamp at keymile.com
www.keymile.com
______________________________________
KEYMILE: A Specialist as a Partner
#23 lore raw

PATCH 1/1 Keymile boards mainlining, part 2

In reply to Valentin Longchamp
Quoted 10 lines

-----Original Message-----
From: u-boot-bounces at lists.denx.de [mailto:u-boot-bounces at lists.denx.de] On Behalf Of Valentin Longchamp
Sent: Friday, April 08, 2011 6:23 PM
To: u-boot at lists.denx.de
Cc: hs at denx.de; holger.brunck at keymile.com
Subject: Re: [U-Boot] [PATCH] Keymile boards mainlining, part 2

Quoted 2 lines

Sorry, the whole series is not numbered, -N statt -n ... it will be corrected for the very likely v2 of the series posting.

It would be good if you can split patch series in to small group as per functionality/SoC, so that it is easy to pull.

Regards..
Prafulla . .

#24 lore raw

PATCH 1/1 Keymile boards mainlining, part 2

Quoted 9 lines · Prafulla Wadaskar
Quoted 9 lines

-----Original Message-----
From: u-boot-bounces at lists.denx.de [mailto:u-boot-bounces at lists.denx.de] On Behalf Of Valentin Longchamp
Sent: Friday, April 08, 2011 6:23 PM
To: u-boot at lists.denx.de
Cc: hs at denx.de; holger.brunck at keymile.com
Subject: Re: [U-Boot] [PATCH] Keymile boards mainlining, part 2

Quoted 5 lines
Quoted 2 lines

Sorry, the whole series is not numbered, -N statt -n ... it will be corrected for the very likely v2 of the series posting.

It would be good if you can split patch series in to small group as per functionality/SoC, so that it is easy to pull.

I agree with you about this point. We did it this way since even if some patches affect only one SoC/functionality, there may be some dependancies between patches that are not in the same SoC/functionality group.

I'll see what I can do.

Signature · 13 lines
Valentin Longchamp
Embedded Software Engineer
Hardware and Chip Integration
______________________________________
KEYMILE AG
Schwarzenburgstr. 73
CH-3097 Liebefeld
Phone +41 31 377 1318
Fax   +41 31 377 1212
valentin.longchamp at keymile.com
www.keymile.com
______________________________________
KEYMILE: A Specialist as a Partner