[U-Boot] [PATCH v2 2/3] tegra2: Add Avionic Design Plutux support.

Thierry Reding thierry.reding at avionic-design.de
Wed Nov 16 07:59:54 CET 2011


* Simon Glass wrote:
> Hi Thierry,
> 
> On Mon, Nov 14, 2011 at 11:27 PM, Thierry Reding
> <thierry.reding at avionic-design.de> wrote:
> > The Plutux is a set-top box device based on the Tamonten processor
> > module. It can be connected to a display via an HDMI output.
> >
> > Changes in v2:
> >  * No longer override the default CONFIG_SYS_TEXT_BASE setting.
> >
> > Signed-off-by: Thierry Reding <thierry.reding at avionic-design.de>
> > ---
> >  board/avionic-design/plutux/Makefile |   50 +++++++++++++++++++++++++++
> >  board/avionic-design/plutux/plutux.c |   62 ++++++++++++++++++++++++++++++++++
> >  boards.cfg                           |    1 +
> >  include/configs/plutux.h             |   62 ++++++++++++++++++++++++++++++++++
> >  4 files changed, 175 insertions(+), 0 deletions(-)
> >  create mode 100644 board/avionic-design/plutux/Makefile
> >  create mode 100644 board/avionic-design/plutux/plutux.c
> >  create mode 100644 include/configs/plutux.h
> >
> > diff --git a/board/avionic-design/plutux/Makefile b/board/avionic-design/plutux/Makefile
> > new file mode 100644
> > index 0000000..b0c318c
> > --- /dev/null
> > +++ b/board/avionic-design/plutux/Makefile
> > @@ -0,0 +1,50 @@
> > +#
> > +#  (C) Copyright 2010,2011
> > +#  NVIDIA Corporation <www.nvidia.com>
> > +#  (C) Copyright 2011
> > +#  Avionic Design GmbH <www.avionic-design.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
> > +COBJS  += ../common/tamonten.o
> > +
> > +SRCS   := $(COBJS:.o=.c)
> > +OBJS   := $(addprefix $(obj),$(COBJS))
> > +
> > +$(LIB):        $(obj).depend $(OBJS)
> > +       $(call cmd_link_o_target, $(OBJS))
> > +
> > +#########################################################################
> > +
> > +# defines $(obj).depend target
> > +include $(SRCTREE)/rules.mk
> > +
> > +sinclude $(obj).depend
> > +
> > +#########################################################################
> > diff --git a/board/avionic-design/plutux/plutux.c b/board/avionic-design/plutux/plutux.c
> > new file mode 100644
> > index 0000000..95fd97b
> > --- /dev/null
> > +++ b/board/avionic-design/plutux/plutux.c
> > @@ -0,0 +1,62 @@
> > +/*
> > + *  (C) Copyright 2010,2011
> > + *  NVIDIA Corporation <www.nvidia.com>
> > + *  (C) Copyright 2011
> > + *  Avionic Design GmbH <www.avionic-design.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 <common.h>
> > +#include <asm/io.h>
> > +#include <asm/arch/tegra2.h>
> > +#ifdef CONFIG_TEGRA2_MMC
> > +#include <mmc.h>
> 
> If you are not implementing MMC, just remove it and all the MMC code below.
> 

I don't understand. What makes you think I don't want MMC? Both the Plutux
and the Medcom boot from MMC. If you are referring to the CD being
hard-coded, then that is just because I copied from Harmony. You are right
though that I should probably fill the implementation. I'm not really sure
about the best way to do this, though. The struct mmc passed into
board_mmc_getcd() doesn't contain enough information to decide which GPIO to
check. I could assume it is always SD4 since that is the only controller that
is initialized, but would that be acceptable?

> > +#endif
> > +
> > +/*
> > + * Routine: gpio_config_uart
> > + * Description: Does nothing on Plutux - no conflict w/SPI.
> > + */
> > +void gpio_config_uart(void)
> > +{
> > +}
> > +
> > +#ifdef CONFIG_TEGRA2_MMC
> > +/*
> > + * Routine: gpio_config_mmc
> > + * Description: Set GPIOs for SD card
> > + */
> > +void gpio_config_mmc(void)
> > +{
> > +       /* Not implemented for now */
> > +}
> > +
> > +/* this is a weak define that we are overriding */
> > +int board_mmc_getcd(u8 *cd, struct mmc *mmc)
> > +{
> > +       debug("board_mmc_getcd called\n");
> > +       /*
> > +        * Hard-code CD presence for now. Need to add GPIO inputs
> > +        * for Plutux
> > +        */
> > +       *cd = 1;
> > +       return 0;
> > +}
> > +#endif
> > diff --git a/boards.cfg b/boards.cfg
> > index 8b7a03b..4fed42a 100644
> > --- a/boards.cfg
> > +++ b/boards.cfg
> > @@ -229,6 +229,7 @@ xaeniax                      arm         pxa
> >  xm250                        arm         pxa
> >  zipitz2                      arm         pxa
> >  jornada                      arm         sa1100
> > +plutux                       arm         armv7       plutux              avionic-design tegra2
> >  atngw100                     avr32       at32ap      -                   atmel          at32ap700x
> >  atstk1002                    avr32       at32ap      atstk1000           atmel          at32ap700x
> >  atstk1003                    avr32       at32ap      atstk1000           atmel          at32ap700x
> > diff --git a/include/configs/plutux.h b/include/configs/plutux.h
> > new file mode 100644
> > index 0000000..033eda0
> > --- /dev/null
> > +++ b/include/configs/plutux.h
> > @@ -0,0 +1,62 @@
> > +/*
> > + *  (C) Copyright 2010,2011
> > + *  NVIDIA Corporation <www.nvidia.com>
> > + *  (C) Copyright 2011
> > + *  Avionic Design GmbH <www.avionic-design.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
> > + */
> > +
> > +#ifndef __CONFIG_H
> > +#define __CONFIG_H
> > +
> > +#include "tegra2-common.h"
> > +
> > +/* High-level configuration options */
> > +#define TEGRA2_SYSMEM                  "mem=384M at 0M nvmem=128M at 384M"
> > +#define V_PROMPT                       "Tegra2 (Plutux) # "
> > +#define CONFIG_TEGRA2_BOARD_STRING     "Avionic Design Plutux"
> > +#define CONFIG_SYS_BOARD_ODMDATA       0x2b2d8011
> > +
> > +/* Board-specific serial config */
> > +#define CONFIG_SERIAL_MULTI
> > +#define CONFIG_TEGRA2_ENABLE_UARTD     /* UARTD: debug UART */
> > +#define CONFIG_SYS_NS16550_COM1                NV_PA_APB_UARTD_BASE
> > +
> > +#define CONFIG_BOARD_EARLY_INIT_F
> > +
> > +/* SD/MMC */
> > +#define CONFIG_MMC
> > +#define CONFIG_GENERIC_MMC
> > +#define CONFIG_TEGRA2_MMC
> > +#define CONFIG_CMD_MMC
> 
> and this also
> 
> > +
> > +#define CONFIG_DOS_PARTITION
> > +#define CONFIG_EFI_PARTITION
> > +#define CONFIG_CMD_EXT2
> > +#define CONFIG_CMD_FAT
> 
> and this if you like, since you can't have an FS without MMC.
> 
> > +
> > +#define CONFIG_FIT
> > +
> > +#define CONFIG_BOOTCOMMAND                             \
> > +       "mmc rescan;"                                   \
>             ^^^^^^^^
> and you probably don't want this
> 
> 
> > +       "ext2load mmc 0 0x17000000 /boot/uImage;"       \
> > +       "bootm"
> > +
> > +#endif /* __CONFIG_H */
> > --
> > 1.7.7.3
> >
> >
> 
> Regards,
> Simon

Thanks,
Thierry
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: not available
Url : http://lists.denx.de/pipermail/u-boot/attachments/20111116/35863f49/attachment.pgp 


More information about the U-Boot mailing list