From mboxrd@z Thu Jan 1 00:00:00 1970 From: Gary Jennejohn Date: Thu, 20 Nov 2008 11:10:05 +0100 Subject: [U-Boot] [PATCH 3/4 v3] powerpc: keymile: Add a check for the PIGGY debug board In-Reply-To: <492526BF.8090302@denx.de> References: <492526BF.8090302@denx.de> Message-ID: <20081120111005.0808d243@ernst.jennejohn.org> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On Thu, 20 Nov 2008 09:58:39 +0100 Heiko Schocher wrote: > Check the presence of the PIGGY on the keymile boards mgcoge, > mgsuvd and kmeter1. If the PIGGY is not present, dont register > this Ethernet device. > > Signed-off-by: Heiko Schocher > --- > > changes since v2: > > - added comments from Ben Warren > > board/keymile/common/common.c | 20 ++++++++++++++++++-- > board/keymile/common/common.h | 16 ++++++++++++++++ > board/keymile/kmeter1/Makefile | 6 ++++-- > board/keymile/kmeter1/kmeter1.c | 7 ++++++- > board/keymile/mgcoge/mgcoge.c | 10 +++++++--- > board/keymile/mgsuvd/mgsuvd.c | 8 ++++++-- > include/configs/kmeter1.h | 9 +++++++++ > include/configs/mgcoge.h | 10 ++++++++++ > include/configs/mgsuvd.h | 9 +++++++++ > 9 files changed, 85 insertions(+), 10 deletions(-) > create mode 100644 board/keymile/common/common.h > > diff --git a/board/keymile/common/common.c b/board/keymile/common/common.c > index a4cf24c..cc30b36 100644 > --- a/board/keymile/common/common.c > +++ b/board/keymile/common/common.c > @@ -22,10 +22,14 @@ > */ > > #include > +#if defined(CONFIG_MGCOGE) > #include > +#endif > #include > #include > #include > +#include > +#include > > #if defined(CONFIG_OF_BOARD_SETUP) && defined(CONFIG_OF_LIBFDT) > #include > @@ -33,8 +37,6 @@ > > #if defined(CONFIG_HARD_I2C) || defined(CONFIG_SOFT_I2C) > #include > -#endif > -#include > > extern int i2c_soft_read_pin (void); > > @@ -495,6 +497,7 @@ void i2c_init_board(void) > #endif > } > #endif > +#endif > > #if defined(CONFIG_OF_BOARD_SETUP) && defined(CONFIG_OF_LIBFDT) > int fdt_set_node_and_value (void *blob, > @@ -521,3 +524,16 @@ int fdt_set_node_and_value (void *blob, > return ret; > } > #endif > + > +int ethernet_present (void) > +{ > + return (in_8((u8 *)CONFIG_SYS_PIGGY_BASE + CONFIG_SYS_SLOT_ID_OFF) & 0x80); > +} > + > +int board_eth_init(bd_t *bis) > +{ #ifdef CONFIG_KEYMILE_HDLC_ENET (void)keymile_hdlc_enet_initialize(bis); #endif > + if (ethernet_present ()) { > + return -1; > + } > + return 0; > +} If it looked like this it would be perfect! --- Gary Jennejohn ********************************************************************* DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: office at denx.de *********************************************************************