Re: [U-Boot] imx6, spl and falcon boot

2013-02-15 Thread Dirk Behme

Am 15.02.2013 21:45, schrieb Chaves, Kevin:


Hi,

First off, sorry I'm not used to using mailing lists. I'm not sure if this is 
the best way to dig for information. We've recently switched to uboot/linux 
from wince and I'm trying to understand how configuring uboot works. I'm also 
trying to find out how to use the SPL framework and possibly falcon mode with a 
i.mx6 nitrogen6x board. I'd be delighted if any one could help!


I haven't used spl and falcon mode, so I can't help with these.

Regarding the general support for the i.mx6 nitrogen6x this isn't in 
U-Boot mainline, yet.


Try to git pull the most recent U-Boot mainline from 
git://git.denx.de/u-boot.git [1] and apply the patch


http://patchwork.ozlabs.org/patch/216991/

You should then be able to build one of the supported boards

nitrogen6q
nitrogen6dl
nitrogen6s
nitrogen6q2g
nitrogen6dl2g
nitrogen6s1g

by

make nitrogen6xxx_config
make

(replace the 'xxx' with the ending matching your board, e.g. 'q' if 
you have a Quad board).


Best regards

Dirk

[1] http://git.denx.de/cgi-bin/gitweb.cgi?p=u-boot.git;a=summary

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH v1] Exynos5: Pinmux: Add fdt for pinmux

2013-02-15 Thread Simon Glass
+Doug

Hi Akshay,

On Fri, Feb 15, 2013 at 11:00 AM, Akshay Saraswat  wrote:
> This patch adds fdt nodes for peripherals which require
> pin muxing and configuration. Existing pinmux code modified
> to retrieve gpio range and function related info from fdt.
>
> Signed-off-by: Akshay Saraswat 

Thanks for sending this patch which is most welcome. However, Doug
pointed me to the kernel's binding document in
Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt

The binding seems similar but perhaps not the same. Can you please
check it? We should really use the same binding unless there is a big
reason why we can't in some particular case. Also please copy that
binding document into U-Boot as part of your patch, since there is no
central place for bindings right now.

Regards,
Simon
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH V6 10/10] EXYNOS5: I2C: Added FDT and non-FDT support for I2C

2013-02-15 Thread Simon Glass
Hi Amar,

On Thu, Feb 14, 2013 at 10:34 PM, Amar  wrote:
> This patch adds FDT and non-FDT support for I2C, and initialise
> the I2C channels.
>
> Signed-off-by: Amar 

Acked-by: Simon Glass 

(please see below)

> ---
> Changes since V4:
> New patch.
>
> Changes since V5:
> 1)Removed the function call i2c_init() present inside the
> function board_i2c_init().
>
>  drivers/i2c/s3c24x0_i2c.c | 12 ++--
>  1 file changed, 10 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/i2c/s3c24x0_i2c.c b/drivers/i2c/s3c24x0_i2c.c
> index 769a2ba..5b4c3d2 100644
> --- a/drivers/i2c/s3c24x0_i2c.c
> +++ b/drivers/i2c/s3c24x0_i2c.c
> @@ -524,11 +524,12 @@ int i2c_write(uchar chip, uint addr, int alen, uchar 
> *buffer, int len)
>  len) != 0);
>  }
>
> -#ifdef CONFIG_OF_CONTROL
>  void board_i2c_init(const void *blob)
>  {
> +   int i;

Please check that you don't get an unused variable warning here.

> +#ifdef CONFIG_OF_CONTROL
> int node_list[CONFIG_MAX_I2C_NUM];
> -   int count, i;
> +   int count;
>
> count = fdtdec_find_aliases_for_id(blob, "i2c",
> COMPAT_SAMSUNG_S3C2440_I2C, node_list,
> @@ -548,8 +549,15 @@ void board_i2c_init(const void *blob)
> bus->bus_num = i2c_busses++;
> exynos_pinmux_config(bus->id, 0);
> }
> +#else
> +   for (i = 0; i < CONFIG_MAX_I2C_NUM; i++) {
> +   exynos_pinmux_config((PERIPH_ID_I2C0 + i),
> +   PINMUX_FLAG_NONE);
> +   }
> +#endif
>  }
>
> +#ifdef CONFIG_OF_CONTROL
>  static struct s3c24x0_i2c_bus *get_bus(unsigned int bus_idx)
>  {
> if (bus_idx < i2c_busses)
> --
> 1.8.0
>

Regards,
Simon
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 6/6 V4] config: Snow: Enable MAX98095 codec

2013-02-15 Thread Simon Glass
On Thu, Feb 14, 2013 at 9:46 PM, Rajeshwari Shinde
 wrote:
> This patch enables MAX98095 codec required for Snow
>
> Signed-off-by: Rajeshwari Shinde 

Acked-by: Simon Glass 


> ---
> Changes in V4
> - New patch.
>  include/configs/exynos5250-dt.h |1 +
>  1 files changed, 1 insertions(+), 0 deletions(-)
>
> diff --git a/include/configs/exynos5250-dt.h b/include/configs/exynos5250-dt.h
> index cabd2f2..89fcda5 100644
> --- a/include/configs/exynos5250-dt.h
> +++ b/include/configs/exynos5250-dt.h
> @@ -296,6 +296,7 @@
>  #ifdef CONFIG_CMD_SOUND
>  #define CONFIG_SOUND
>  #define CONFIG_I2S
> +#define CONFIG_SOUND_MAX98095
>  #define CONFIG_SOUND_WM8994
>  #endif
>
> --
> 1.7.4.4
>
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 3/6 V4] Sound: Support for MAX98095 codec in driver

2013-02-15 Thread Simon Glass
Hi Rajeshwari,

On Thu, Feb 14, 2013 at 9:46 PM, Rajeshwari Shinde
 wrote:
> This patchs adds support for MAX98095 codec in
> sound driver.
>
> Signed-off-by: Rajeshwari Shinde 

Acked-by: Simon Glass 


> ---
> Changes in V2:
> - None
> Chnages in V3:
> - Removed non DT support for MAX98095
> Changes in V4:
> - None
>  drivers/sound/sound.c |9 +++--
>  include/sound.h   |1 +
>  2 files changed, 8 insertions(+), 2 deletions(-)
>
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 2/6 V4] Sound: MAX98095: Add the driver for codec

2013-02-15 Thread Simon Glass
On Thu, Feb 14, 2013 at 9:46 PM, Rajeshwari Shinde
 wrote:
> This patch adds the driver for codec MAX98095 required by Snow
> Board
>
> Signed-off-by: Rajeshwari Shinde 

Acked-by: Simon Glass 
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH V6 07/10] MMC: APIs to support resize of EMMC boot partition

2013-02-15 Thread Simon Glass
On Thu, Feb 14, 2013 at 10:34 PM, Amar  wrote:
> This patch adds APIs to access(open / close) and to resize boot partiton of 
> EMMC.
>
> Signed-off-by: Amar 

Acked-by: Simon Glass 

> ---
> Changes since V1:
> New patch.
>
> Changes since V2:
> 1)Updation of commit message and resubmition of proper patch set.
>
> Changes since V3:
> No change.
>
> Changes since V4:
> 1)Replaced the functions mmc_boot_open() & mmc_boot_close() with a
> single function mmc_boot_part_access().
>
> Changes since V5:
> 1)Updated in response to review comments.

This really isn't a very useful comment. Better would be a short
summary of what you changed.

This version looks OK to me, but if you do another version due to some
other comments, please add spaces around your << operators.

Regards,
Simon
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH V6 01/10] FDT: Add compatible string for DWMMC

2013-02-15 Thread Simon Glass
On Thu, Feb 14, 2013 at 10:34 PM, Amar  wrote:
> Add required compatible information for DWMMC driver.
>
> Signed-off-by: Vivek Gautam 
> Signed-off-by: Amar 
> Acked-by: Jaehoon Chung 

Acked-by: Simon Glass 

> ---
> Changes since V1:
> No change.
>
> Changes since V2:
> 1)Updation of commit message and resubmition of proper patch set.
>
> Changes since V3:
> No change.
>
> Changes since V4:
> No change.
>
> Changes since V5:
> No change.
>
>  include/fdtdec.h | 1 +
>  lib/fdtdec.c | 1 +
>  2 files changed, 2 insertions(+)
>
> diff --git a/include/fdtdec.h b/include/fdtdec.h
> index 77f244f..51ff266 100644
> --- a/include/fdtdec.h
> +++ b/include/fdtdec.h
> @@ -81,6 +81,7 @@ enum fdt_compat_id {
> COMPAT_SAMSUNG_EXYNOS_EHCI, /* Exynos EHCI controller */
> COMPAT_SAMSUNG_EXYNOS_USB_PHY,  /* Exynos phy controller for usb2.0 */
> COMPAT_MAXIM_MAX77686_PMIC, /* MAX77686 PMIC */
> +   COMPAT_SAMSUNG_EXYNOS5_DWMMC,   /* Exynos5 DWMMC controller */
>
> COMPAT_COUNT,
>  };
> diff --git a/lib/fdtdec.c b/lib/fdtdec.c
> index 3ae348d..856f90c 100644
> --- a/lib/fdtdec.c
> +++ b/lib/fdtdec.c
> @@ -56,6 +56,7 @@ static const char * const compat_names[COMPAT_COUNT] = {
> COMPAT(SAMSUNG_EXYNOS_EHCI, "samsung,exynos-ehci"),
> COMPAT(SAMSUNG_EXYNOS_USB_PHY, "samsung,exynos-usb-phy"),
> COMPAT(MAXIM_MAX77686_PMIC, "maxim,max77686_pmic"),
> +   COMPAT(SAMSUNG_EXYNOS5_DWMMC, "samsung,exynos5250-dwmmc"),
>  };
>
>  const char *fdtdec_get_compatible(enum fdt_compat_id id)
> --
> 1.8.0
>
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] powerpc/p1022ds: Add support for NAND and NAND boot using SPL

2013-02-15 Thread Scott Wood

On 02/14/2013 03:35:13 PM, Matthew McClintock wrote:

+#if defined(CONFIG_SYS_BR2_PRELIM) && defined(CONFIG_SYS_OR2_PRELIM)
+   /* for FPGA */
+   set_lbc_br(2, CONFIG_SYS_BR2_PRELIM);
+   set_lbc_or(2, CONFIG_SYS_OR2_PRELIM);
+#else
+#error CONFIG_SYS_BR2_PRELIM, CONFIG_SYS_OR2_PRELIM must be defined
+#endif


As discussed internally, this if/else is pointless.  In internal  
discussion, you said it was moot, and then you post it again here?



diff --git a/drivers/video/Makefile b/drivers/video/Makefile
index 170a358..a1c7895 100644
--- a/drivers/video/Makefile
+++ b/drivers/video/Makefile
@@ -34,7 +34,9 @@ COBJS-$(CONFIG_EXYNOS_FB) += exynos_fb.o  
exynos_fimd.o
 COBJS-$(CONFIG_EXYNOS_MIPI_DSIM) += exynos_mipi_dsi.o  
exynos_mipi_dsi_common.o \

exynos_mipi_dsi_lowlevel.o
 COBJS-$(CONFIG_EXYNOS_PWM_BL) += exynos_pwm_bl.o
+ifndef CONFIG_SPL_BUILD
 COBJS-$(CONFIG_FSL_DIU_FB) += fsl_diu_fb.o videomodes.o
+endif
 COBJS-$(CONFIG_S6E8AX0) += s6e8ax0.o
 COBJS-$(CONFIG_S6E63D6) += s6e63d6.o
 COBJS-$(CONFIG_LD9040) += ld9040.o


I thought we discussed internally that you don't need this?


+/* Nand Flash */
+#if defined(CONFIG_NAND_FSL_ELBC) && !defined(CONFIG_FSL_DIU_FB)
+#define CONFIG_SYS_NAND_BASE   0xff80
+#ifdef CONFIG_PHYS_64BIT
+#define CONFIG_SYS_NAND_BASE_PHYS  0xfff80ull
+#else
+#define CONFIG_SYS_NAND_BASE_PHYS  CONFIG_SYS_NAND_BASE
+#endif


CONFIG_FSL_DIU_FB is always defined, so when would we ever set  
CONFIG_SYS_NAND_BASE?



+#define CONFIG_SYS_NAND_BASE_LIST { CONFIG_SYS_NAND_BASE, }


...and here you use it outside the ifdef.  I think the only reason that  
this builds is that CONFIG_FSL_DIU_FB is defined *after* the above  
check.


Why are you introducing a new ifdefs on CONFIG_FSL_DIU_FB here in the  
first place?



+#ifdef CONFIG_FSL_DIU_FB
+#define CONFIG_SYS_BR1_PRELIM \
+   (BR_PHYS_ADDR(0xe000) | BR_PS_16 | BR_V)
+#define CONFIG_SYS_OR1_PRELIM  (OR_AM_128MB | 0xff7)
+#endif


Here's another -- this one is dead code.  What does this have to do  
with NAND at all?



@@ -177,6 +284,8 @@
 #define PIXIS_LBMAP_SWITCH 7
 #define PIXIS_LBMAP_MASK   0xF0
 #define PIXIS_LBMAP_ALTBANK0x20
+#define PIXIS_SPD  0x07
+#define PIXIS_SPD_SYSCLK_MASK  0x07
 #define PIXIS_ELBC_SPI_MASK0xc0
 #define PIXIS_SPI  0x80


Relevance?

-Scott
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] Please pull u-boot-x86.git

2013-02-15 Thread Simon Glass
Hi Tom,

This series includes the sandbox map_sysmem() feature, and gets the
memory and hashing functions running on sandbox to allow testing/code
coverage. I have run it through buildman and it seems clean, with the
proviso that I don't have fully-working toolchains for all
architectures.


The following changes since commit 9f024f62e4604274a23213dcee30016092e32e7b:

  Merge branch 'fixes' of git://git.denx.de/u-boot-mips (2013-02-15
12:23:42 -0500)

are available in the git repository at:


  git://git.denx.de/u-boot-x86.git master

for you to fetch changes up to d76bd1c2d5e75db16b239bd2d4a642673974e250:

  sandbox: Allow hash functions to work correctly (2013-02-15 16:06:06 -0800)


Allen Martin (1):
  sandbox: fix compiler warning

Simon Glass (19):
  Tidy up error checking and fix bug in hash command
  Update print_buffer() to use const
  sandbox: Add un/map_sysmen() to deal with sandbox's ram_buf
  sandbox: Change memory commands to use map_physmem
  Split out the memory tests into separate functions
  Use common mtest iteration counting
  Fix mtest indenting
  Bring mtest putc() into common code
  Reduce casting in mtest
  Update set_working_fdt_addr() to use setenv_addr()
  common: Use new numeric setenv functions
  drivers: Use new numeric setenv functions
  net: Use new numeric setenv functions
  image: Use crc header file instead of C prototypes
  Roll crc32 into hash infrastructure
  sandbox: config: Enable hash functions and mtest
  Move CONFIG_SYS_MEMTEST_SCRATCH #ifdef to top of file
  sandbox: Update mtest to fix crashes
  sandbox: Allow hash functions to work correctly

Taylor Hutt (1):
  sandbox: Improve sandbox serial port keyboard interface

 README|   9 +
 arch/sandbox/config.mk|   1 +
 arch/sandbox/cpu/os.c |   8 +
 arch/sandbox/cpu/start.c  |   3 +
 arch/sandbox/include/asm/io.h |  10 +
 common/cmd_bootm.c|  11 +-
 common/cmd_cbfs.c |   4 +-
 common/cmd_cramfs.c   |   4 +-
 common/cmd_fdos.c |   4 +-
 common/cmd_fdt.c  |  11 +-
 common/cmd_hash.c |   4 +
 common/cmd_jffs2.c|   4 +-
 common/cmd_load.c |  12 +-
 common/cmd_mem.c  | 798 +-
 common/cmd_mtdparts.c |   4 +-
 common/cmd_nand.c |  12 +-
 common/cmd_nvedit.c   |  11 +-
 common/cmd_reiser.c   |   4 +-
 common/cmd_setexpr.c  |  39 ++-
 common/cmd_unzip.c|   4 +-
 common/cmd_ximg.c |   7 +-
 common/cmd_zfs.c  |   3 +-
 common/cmd_zip.c  |   4 +-
 common/hash.c |  31 +-
 common/image.c|   4 +-
 drivers/net/fm/fm.c   |   4 +-
 drivers/serial/sandbox.c  |  44 ++-
 fs/fs.c   |   4 +-
 fs/ubifs/ubifs.c  |   4 +-
 include/common.h  |  29 +-
 include/configs/sandbox.h |   9 +-
 include/hash.h|   2 +-
 include/os.h  |  10 +
 include/u-boot/crc.h  |  11 +
 lib/crc32.c   |   9 +
 lib/display_options.c |   3 +-
 net/net.c |   8 +-
 37 files changed, 615 insertions(+), 528 deletions(-)

Regards,
Simon
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH v3] sandbox: fix compiler warning

2013-02-15 Thread Simon Glass
On Thu, Jan 24, 2013 at 4:45 AM, Albert ARIBAUD
 wrote:
> Hi Allen,
>
> On Wed, 23 Jan 2013 13:05:27 -0800, Allen Martin 
> wrote:
>
>> > Shouldn't the function be given '__attribute__((noreturn))' rather than
>> > adding a non-executed 'return 0' to it?
>> >
>>
>> The function in question is sandbox main(), and it can return if there
>> was an error prior to calling board_init_f().  Here's the whole
>> function for context:
>>
>> int main(int argc, char *argv[]) [...]
>
> Makes sense, thanks.
>
>> -Allen
>
> Amicalement,
> --
> Albert.

Applied to x86/master.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [GIT PULL] u-boot-mpc83xx: keymile board updates

2013-02-15 Thread Kim Phillips
Hi Tom,

Please pull the latest set of keymile 83xx board updates:

The following changes since commit 9a82b10c6657c5744802971036bb564ebc660291:

  Merge branch 'master' of git://git.denx.de/u-boot (2013-02-15 17:46:50 -0600)

are available in the git repository at:


  git://git.denx.de/u-boot-mpc83xx.git master

for you to fetch changes up to 411190cb16b63e39345a608b68b3d1be5168117a:

  powerpc/83xx/km: drop uneeded dtt_bus environment var (2013-02-15 17:47:21 
-0600)


Andreas Huber (2):
  km/common: introduce $uimage variable
  km/scripts: replace hardcoded uImage

Holger Brunck (12):
  km/common: remove unneeded ifdefs for I2C
  km/common/ivm: remove obsolete code
  km/common/ivm: remove CONFIG_SYS_I2C_IVM_BUS related code
  km/common/ivm: rework piggy mac adress offset generation
  powerpc/83xx: use ppc_6xx as arch variable for kmvect1
  kmeter1_nand: allow uasge of NAND_ECC_SOFT_BCH
  powerpc/83xx: use NAND_ECC_BCH for kmcoge5ne
  km/common: add eccmode to kernel commandline
  powerpc/83xx/km: cleanup tuxx1 support
  powerpc/83xx/km: add support for kmopti2 board
  powerpc/83xx/km: remove uneeded CONFIG_MISC_INIT_R
  powerpc/83xx/km: drop uneeded dtt_bus environment var

Karlheinz Jerg (2):
  km82xx, km83xx: move ethernet_present() from common to cpu specific
  powerpc/83xx/km: add MV88E6122 switch support for kmvect1

 board/keymile/common/common.c|  13 
 board/keymile/common/ivm.c   |  48 +++---
 board/keymile/km82xx/km82xx.c|   8 +++
 board/keymile/km83xx/km83xx.c| 103 ---
 board/keymile/scripts/develop-common.txt |   5 +-
 board/keymile/scripts/ramfs-common.txt   |   5 +-
 boards.cfg   |   7 ++-
 drivers/mtd/nand/kmeter1_nand.c  |   4 ++
 include/configs/km/keymile-common.h  |  12 +++-
 include/configs/km/km8309-common.h   |   4 +-
 include/configs/km/km8321-common.h   |   2 -
 include/configs/km/km83xx-common.h   |   9 +--
 include/configs/km8360.h |   2 +
 include/configs/suvd3.h  |  37 +++
 include/configs/tuxx1.h  |  46 ++
 15 files changed, 226 insertions(+), 79 deletions(-)

Thanks,

Kim

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 20/20] sandbox: Allow hash functions to work correctly

2013-02-15 Thread Simon Glass
On Wed, Dec 26, 2012 at 10:57 AM, Simon Glass  wrote:
> Use map_sysmem() so that hashing is possible on sandbox.
>
> Signed-off-by: Simon Glass 

Applied to x86/master.

> ---
>  common/hash.c |   25 +
>  1 files changed, 17 insertions(+), 8 deletions(-)
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 19/20] sandbox: Update mtest to fix crashes

2013-02-15 Thread Simon Glass
On Wed, Dec 26, 2012 at 10:57 AM, Simon Glass  wrote:
> Use map_sysmem() in the memory tester so that it works as expected on
> sandbox.
>
> Signed-off-by: Simon Glass 

Applied to x86/master.

> ---
>  common/cmd_mem.c |   97 
> +-
>  1 files changed, 52 insertions(+), 45 deletions(-)
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 18/20] Move CONFIG_SYS_MEMTEST_SCRATCH #ifdef to top of file

2013-02-15 Thread Simon Glass
On Wed, Dec 26, 2012 at 10:57 AM, Simon Glass  wrote:
> This config effectively has a default value of 0, so add this setting
> at the top of the code to remove an #ifdef in the C function.
>
> Signed-off-by: Simon Glass 

Applied to x86/master.

> ---
>  common/cmd_mem.c |8 
>  1 files changed, 4 insertions(+), 4 deletions(-)
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 17/20] sandbox: config: Enable hash functions and mtest

2013-02-15 Thread Simon Glass
On Wed, Dec 26, 2012 at 10:57 AM, Simon Glass  wrote:
> Enable the hash command and sha1/256 hashing for sandbox. Also use a
> better address for memory testing (since the existing one is set up
> for linux host memory space).
>
> Signed-off-by: Simon Glass 

Applied to x86/master.

> ---
>  include/configs/sandbox.h |9 +++--
>  1 files changed, 7 insertions(+), 2 deletions(-)
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 16/20] Roll crc32 into hash infrastructure

2013-02-15 Thread Simon Glass
On Wed, Dec 26, 2012 at 10:57 AM, Simon Glass  wrote:
> Add the CRC32 algorithm to the list of available hashes, and make
> the crc32 command use hash_command(). Add a new crc32_wd_buf() to
> make this possible, which puts its result in a buffer rather than
> returning it as a 32-bit value.
>
> Signed-off-by: Simon Glass 

Applied to x86/master.

> ---
>  common/cmd_mem.c |   73 -
>  common/hash.c|6 
>  include/hash.h   |2 +-
>  include/u-boot/crc.h |   11 +++
>  lib/crc32.c  |9 ++
>  5 files changed, 33 insertions(+), 68 deletions(-)
>
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 15/20] image: Use crc header file instead of C prototypes

2013-02-15 Thread Simon Glass
On Wed, Dec 26, 2012 at 2:02 PM, Marek Vasut  wrote:
> Dear Simon Glass,
>
>> We have an existing header which the crc32 definitions, so use it.
>>
>> Signed-off-by: Simon Glass 
>
> Looks ok.
>
> Acked-by: Marek Vasut 

Applied to x86/master.

>
> Best regards,
> Marek Vasut
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 14/20] net: Use new numeric setenv functions

2013-02-15 Thread Simon Glass
On Wed, Dec 26, 2012 at 10:57 AM, Simon Glass  wrote:
> Use setenv_hex() and setenv_addr() in net/
>
> Signed-off-by: Simon Glass 

Applied to x86/master.

> ---
>  drivers/net/fm/fm.c |4 +---
>  net/net.c   |8 ++--
>  2 files changed, 3 insertions(+), 9 deletions(-)
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH v2 01/16] km/common: remove unneeded ifdefs for I2C

2013-02-15 Thread Kim Phillips
On Mon, 21 Jan 2013 14:55:13 +0100
Holger Brunck  wrote:

> All boards from this serie use i2c. There is no need to #ifdef the
> header.
> 
> Signed-off-by: Holger Brunck 
> ---

applied 16 out of 16 patches.

Thanks,

Kim

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 13/20] drivers: Use new numeric setenv functions

2013-02-15 Thread Simon Glass
On Wed, Dec 26, 2012 at 10:57 AM, Simon Glass  wrote:
> Use setenv_ulong(), setenv_hex() and setenv_addr() in drivers/
>
> Signed-off-by: Simon Glass 

Applied to x86/master.

> ---
>  fs/fs.c  |4 +---
>  fs/ubifs/ubifs.c |4 +---
>  2 files changed, 2 insertions(+), 6 deletions(-)
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 12/20] common: Use new numeric setenv functions

2013-02-15 Thread Simon Glass
On Wed, Dec 26, 2012 at 10:57 AM, Simon Glass  wrote:
> Use setenv_ulong(), setenv_hex() and setenv_addr() in common/
>
> Signed-off-by: Simon Glass 

Applied to x86/master.

> ---
>  common/cmd_bootm.c|   11 +++
>  common/cmd_cbfs.c |4 +---
>  common/cmd_cramfs.c   |4 +---
>  common/cmd_fdos.c |4 +---
>  common/cmd_jffs2.c|4 +---
>  common/cmd_load.c |   12 +++-
>  common/cmd_mtdparts.c |4 +---
>  common/cmd_nand.c |   12 +++-
>  common/cmd_nvedit.c   |3 +--
>  common/cmd_reiser.c   |4 +---
>  common/cmd_setexpr.c  |   39 +++
>  common/cmd_unzip.c|4 +---
>  common/cmd_ximg.c |7 ++-
>  common/cmd_zfs.c  |3 +--
>  common/cmd_zip.c  |4 +---
>  15 files changed, 48 insertions(+), 71 deletions(-)
>
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 11/20] Update set_working_fdt_addr() to use setenv_addr()

2013-02-15 Thread Simon Glass
On Wed, Dec 26, 2012 at 10:57 AM, Simon Glass  wrote:
> We might as well use this common function instead of repeating the same
> code.
>
> Signed-off-by: Simon Glass 

Applied to x86/master.

> ---
>  common/cmd_fdt.c|   11 ++-
>  common/cmd_nvedit.c |8 
>  include/common.h|   14 +-
>  3 files changed, 19 insertions(+), 14 deletions(-)
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 10/20] Reduce casting in mtest

2013-02-15 Thread Simon Glass
On Wed, Dec 26, 2012 at 10:57 AM, Simon Glass  wrote:
> Use a ulong for the command arguments, and only cast to an address when
> needed. This fixes warnings in sandbox where pointers are typically 64 bits
> long.
>
> Signed-off-by: Simon Glass 

Applied to x86/master.

> ---
>  common/cmd_mem.c |   30 ++
>  1 files changed, 18 insertions(+), 12 deletions(-)
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 09/20] Bring mtest putc() into common code

2013-02-15 Thread Simon Glass
On Wed, Dec 26, 2012 at 10:57 AM, Simon Glass  wrote:
> If we get a Ctrl-C abort, we always print a newline. Move this repeated
> code out of the functions and into a single place in the caller.
>
> Signed-off-by: Simon Glass 

Applied to x86/master.

> ---
>  common/cmd_mem.c |   32 +---
>  1 files changed, 9 insertions(+), 23 deletions(-)
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 08/20] Fix mtest indenting

2013-02-15 Thread Simon Glass
On Wed, Dec 26, 2012 at 10:57 AM, Simon Glass  wrote:
> Some of the inner loops are not indented correctly. Fix this.
>
> Signed-off-by: Simon Glass 

Applied to x86/master.

> ---
>  common/cmd_mem.c |  324 
> +++---
>  1 files changed, 162 insertions(+), 162 deletions(-)
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 07/20] Use common mtest iteration counting

2013-02-15 Thread Simon Glass
On Wed, Dec 26, 2012 at 10:57 AM, Simon Glass  wrote:
> The iteration code is the same for each version of the memory test, so
> pull it out into the common function.
>
> Signed-off-by: Simon Glass 

Applied to x86/master.

> ---
>  common/cmd_mem.c |  123 
> ++
>  1 files changed, 59 insertions(+), 64 deletions(-)
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 06/20] Split out the memory tests into separate functions

2013-02-15 Thread Simon Glass
On Wed, Dec 26, 2012 at 10:56 AM, Simon Glass  wrote:
> Half of the code is currently hidden behind an #ifdef. Move the two
> memory tests into their own functions and use the compiler to eliminate
> the unused code.
>
> Signed-off-by: Simon Glass 

Applied to x86/master.

> ---
>  common/cmd_mem.c |  217 
> +-
>  1 files changed, 116 insertions(+), 101 deletions(-)
>
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 05/20] sandbox: Change memory commands to use map_physmem

2013-02-15 Thread Simon Glass
On Wed, Dec 26, 2012 at 10:56 AM, Simon Glass  wrote:
> Sandbox wants to support commands which use memory. The map_sysmen()
> call provides this feature, so use this in the memory commands.
>
> Signed-off-by: Simon Glass 

Applied to x86/master.

> ---
>  common/cmd_mem.c |  122 
> +++---
>  1 files changed, 79 insertions(+), 43 deletions(-)
>
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 04/20] sandbox: Add un/map_sysmen() to deal with sandbox's ram_buf

2013-02-15 Thread Simon Glass
On Wed, Dec 26, 2012 at 10:56 AM, Simon Glass  wrote:
> Sandbox doesn't actually provide U-Boot access to the machine's physical
> memory. Instead it provides a RAM buffer of configurable size, and all
> memory accesses are within that buffer. Sandbox memory starts at 0 and
> is CONFIG_DRAM_SIZE bytes in size. Allowing access outside this buffer
> might produce unpredictable results in the event of an error, and would
> expose the host machine's memory architecture to the sandbox U-Boot.
>
> Most U-Boot functions assume that they can just access memory at given
> address. For sandbox this is not true.
>
> Add a map_sysmem() call which converts a U-Boot address to a system
> address. In most cases this is a NOP, but for sandbox it returns a
> pointer to that memory inside the RAM buffer.
>
> To get a U-Boot feature to work correctly within sandbox, you should call
> map_sysmem() to get a pointer to the address, and then use that address for
> any U-Boot memory accesses.
>
> Signed-off-by: Simon Glass 

I haven't seen any comments on this one, either because no one noticed
or because it is OK. I am collecting up this series and will send a
pull request, for Tom to review.

Applied to x86/master.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 03/20] sandbox: Improve sandbox serial port keyboard interface

2013-02-15 Thread Simon Glass
On Wed, Dec 26, 2012 at 10:56 AM, Simon Glass  wrote:
> From: Taylor Hutt 
>
> Implements the tstc() interface for the serial driver.  Multiplexing
> the console between the serial port and a keyboard uses a polling
> method of checking if characters are available; this means that the
> serial console must be non-blocking when attempting to read
> characters.
>
> Signed-off-by: Taylor Hutt 
> Signed-off-by: Simon Glass 

Applied to x86/master.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 02/20] Update print_buffer() to use const

2013-02-15 Thread Simon Glass
On Wed, Dec 26, 2012 at 10:56 AM, Simon Glass  wrote:
> The buffer cannot be changed by this function, so change the buffer
> pointer to a const. This allows callers with const pointer to use the
> function without a cast.
>
> Signed-off-by: Simon Glass 

Applied to x86/master.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 01/20] Tidy up error checking and fix bug in hash command

2013-02-15 Thread Simon Glass
On Wed, Dec 26, 2012 at 10:56 AM, Simon Glass  wrote:
> There are two problems:
>
> 1. The argument count needs to be checked before argv is used
> 2. When verify is not enabled, we need to define a constant zero value
>
> Signed-off-by: Simon Glass 

Applied to x86/master.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] imx6, spl and falcon boot

2013-02-15 Thread Chaves, Kevin

Hi,

First off, sorry I'm not used to using mailing lists. I'm not sure if this is 
the best way to dig for information. We've recently switched to uboot/linux 
from wince and I'm trying to understand how configuring uboot works. I'm also 
trying to find out how to use the SPL framework and possibly falcon mode with a 
i.mx6 nitrogen6x board. I'd be delighted if any one could help!

Thanks,
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 0/7] omap mmc: implement card detect and write protection

2013-02-15 Thread Tom Rini
On Mon, Dec 03, 2012 at 02:19:40PM +0200, Nikita Kiryanov wrote:

> This patchset implements card detection and write protection check for
> omap mmc.  The write protect implementation also adds generic code
> that is usable by other mmc drivers.
> 
> The first 3 patches are preparation patches that contain general maintenance
> for omap mmc driver.
> 
> This patchset depends on http://patchwork.ozlabs.org/patch/202384/
> 
> Nikita Kiryanov (7):
>   omap: consolidate common mmc definitions
>   omap_hsmmc: fix out of bounds array access
>   omap_hsmmc: introduce omap_hsmmc_data struct
>   omap_hsmmc: implement driver check for card detection
>   cm-t35: implement board specific card detect check
>   mmc: add support for write protection
>   omap_hsmmc: add driver check for write protection
> 
>  arch/arm/cpu/armv7/am33xx/board.c   |4 +-
>  arch/arm/cpu/armv7/omap-common/boot-common.c|4 +-
>  arch/arm/cpu/armv7/omap3/board.c|4 +-
>  arch/arm/include/asm/arch-am33xx/mmc_host_def.h |  140 +--
>  arch/arm/include/asm/arch-omap3/mmc_host_def.h  |  139 +--
>  arch/arm/include/asm/arch-omap4/mmc_host_def.h  |  140 +--
>  arch/arm/include/asm/arch-omap5/mmc_host_def.h  |  140 +--
>  arch/arm/include/asm/omap_mmc.h |  168 
> +++
>  board/cm_t35/cm_t35.c   |   13 +-
>  board/comelit/dig297/dig297.c   |3 +-
>  board/corscience/tricorder/tricorder.c  |2 +-
>  board/htkw/mcx/mcx.c|2 +-
>  board/isee/igep0020/igep0020.c  |3 +-
>  board/isee/igep0030/igep0030.c  |3 +-
>  board/logicpd/am3517evm/am3517evm.c |3 +-
>  board/logicpd/omap3som/omap3logic.c |2 +-
>  board/logicpd/zoom1/zoom1.c |3 +-
>  board/logicpd/zoom2/zoom2.c |3 +-
>  board/matrix_vision/mvblx/mvblx.c   |4 +-
>  board/nokia/rx51/rx51.c |4 +-
>  board/overo/overo.c |3 +-
>  board/pandora/pandora.c |3 +-
>  board/technexion/twister/twister.c  |2 +-
>  board/teejet/mt_ventoux/mt_ventoux.c|2 +-
>  board/ti/am3517crane/am3517crane.c  |3 +-
>  board/ti/beagle/beagle.c|3 +-
>  board/ti/evm/evm.c  |3 +-
>  board/ti/omap5_evm/evm.c|4 +-
>  board/ti/panda/panda.c  |3 +-
>  board/ti/sdp3430/sdp.c  |3 +-
>  board/ti/sdp4430/sdp.c  |4 +-
>  board/timll/devkit8000/devkit8000.c |3 +-
>  common/cmd_mmc.c|7 +
>  drivers/mmc/arm_pl180_mmci.c|1 +
>  drivers/mmc/bfin_sdh.c  |1 +
>  drivers/mmc/davinci_mmc.c   |1 +
>  drivers/mmc/fsl_esdhc.c |1 +
>  drivers/mmc/ftsdc010_esdhc.c|1 +
>  drivers/mmc/gen_atmel_mci.c |1 +
>  drivers/mmc/mmc.c   |   17 +++
>  drivers/mmc/mmc_spi.c   |1 +
>  drivers/mmc/mxcmmc.c|1 +
>  drivers/mmc/mxsmmc.c|1 +
>  drivers/mmc/omap_hsmmc.c|   78 +--
>  drivers/mmc/sdhci.c |1 +
>  drivers/mmc/sh_mmcif.c  |1 +
>  drivers/mmc/tegra_mmc.c |1 +
>  include/mmc.h   |2 +
>  48 files changed, 324 insertions(+), 612 deletions(-)
>  create mode 100644 arch/arm/include/asm/omap_mmc.h

For the series:

Reviewed-by: Tom Rini 

Andy, since this touches generic code to add the write-protect stuff,
which looks fine to me, I'd really like a chime-in before I take this to
u-boot-ti, or you pick it all up for u-boot-mmc.  Thanks!

-- 
Tom


signature.asc
Description: Digital signature
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 7/7] omap_hsmmc: add driver check for write protection

2013-02-15 Thread Tom Rini
On Mon, Dec 03, 2012 at 02:19:47PM +0200, Nikita Kiryanov wrote:

> Add check for write protection in omap mmc driver.
> 
> Signed-off-by: Nikita Kiryanov 
> Signed-off-by: Igor Grinberg 
[snip]
> -int omap_mmc_init(int dev_index, uint host_caps_mask, uint f_max, int 
> cd_gpio)
> +int omap_mmc_init(int dev_index, uint host_caps_mask, uint f_max, int 
> cd_gpio,
> + int wp_gpio)

OK, next person to modify this function has to make it take a struct
params instead.  Or if you're up for it, a follow-up patch.

Reviewed-by: Tom Rini 

-- 
Tom


signature.asc
Description: Digital signature
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 10/10] MAINTAINERS: add ti814x_evm maintainer

2013-02-15 Thread Matt Porter
On Fri, Feb 15, 2013 at 11:39:13AM -0500, Tom Rini wrote:
> On Wed, Feb 13, 2013 at 09:44:04AM -0500, Matt Porter wrote:
> 
> > Add a maintainer entry for the TI814x EVM.
> > 
> > Signed-off-by: Matt Porter 
> 
> Please squash this into the patch which adds the EVM, thanks.

Will do, thanks for the review.

-Matt
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 09/10] ti814x_evm: enable ti814x evm build

2013-02-15 Thread Matt Porter
On Fri, Feb 15, 2013 at 11:39:01AM -0500, Tom Rini wrote:
> On Wed, Feb 13, 2013 at 09:44:03AM -0500, Matt Porter wrote:
> 
> > Enable TI814X EVM build via ti814x_evm target.
> > 
> > Signed-off-by: Matt Porter 
> 
> This should just get squashed into the patch that adds the board code.
> Otherwise,
> 
> Reviewed-by: Tom Rini 

Sounds good. I'll squash it in there.

-Matt
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 07/10] ti814x_evm: add ti814x evm board support

2013-02-15 Thread Matt Porter
On Fri, Feb 15, 2013 at 04:38:22PM +, Tom Rini wrote:
> On Wed, Feb 13, 2013 at 09:44:01AM -0500, Matt Porter wrote:
> 
> > Add TI814X EVM board directory and config file.
> > 
> > Signed-off-by: Matt Porter 
> [snip]
> > +++ b/board/ti/ti814x/evm.h
> > @@ -0,0 +1,7 @@
> > +#ifndef _EVM_H
> [snip]
> > +++ b/include/configs/ti814x_evm.h
> > @@ -0,0 +1,213 @@
> > +#define __CONFIG_TI814X_EVM_H
> 
> Needs GPLv2 or later boilerplate.

Ok.

> 
> [snip]
> > +#define CONFIG_CMDLINE_TAG 1   /* enable passing of ATAGs  */
> > +#define CONFIG_SETUP_MEMORY_TAGS   1
> > +#define CONFIG_INITRD_TAG  1   /* for ramdisk support */
> 
> Just #define CONFIG_FOO in these cases (and some others that follow)

Ok.
> 
> [snip]
> > +   "findfdt="\
> > +   "if test $board_name = A335BONE; then " \
> > +   "setenv fdtfile am335x-bone.dtb; fi; " \
> > +   "if test $board_name = A33515BB; then " \
> > +   "setenv fdtfile am335x-evm.dtb; fi; " \
> > +   "if test $board_name = A335X_SK; then " \
> > +   "setenv fdtfile am335x-evmsk.dtb; fi\0" \
> 
> That's not right :)

LOL, indeed..forgot about that am335x specific stuff. Will fix.

> [snip]
> > +/* memtest works on 8 MB in DRAM offset 32MB from start of ram disk*/
> > +#define CONFIG_SYS_MEMTEST_START   (PHYS_DRAM_1 + (64 * 1024 * 1024))
> > +#define CONFIG_SYS_MEMTEST_END (CONFIG_SYS_MEMTEST_START \
> > +   + (8 * 1024 * 1024))
> 
> This isn't your mistake initially, but this should just be start of
> memory to smallest possible config the evm can come with - 4MB.

Ok.

> 
> [snip]
> > +#undef CONFIG_NAND_OMAP_GPMC
> 
> Just leave it out.

Ok.

> > +#define CONFIG_SYS_BAUDRATE_TABLE  { 110, 300, 600, 1200, 2400, \
> > +4800, 9600, 14400, 19200, 28800, 38400, 56000, 57600, 115200 }
> 
> Leave that out and get the generic table.  am335x needs to be updated
> for that.

Ok, will do. I even saw something about this and forgot to update this
config.

> [snip]
> > +/* Since SPL did pll and ddr initialization for us,
> > + * we don't need to do it twice.
> > + */
> 
> /*
>  * Must be like
>  * this.
>  */

Ok.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 03/10] am33xx: refactor am33xx clocks and add ti814x support

2013-02-15 Thread Matt Porter
On Fri, Feb 15, 2013 at 04:37:33PM +, Tom Rini wrote:
> On Wed, Feb 13, 2013 at 09:43:57AM -0500, Matt Porter wrote:
> 
> > Split clock.c for am335x and ti814x and add the ti814x include file.
> > 
> > Signed-off-by: Matt Porter 
> 
> [snip]
> > +++ b/arch/arm/cpu/armv7/am33xx/clock-am335x.c
> [snip]
> > +#define PRCM_MOD_EN0x2
> > +#define PRCM_FORCE_WAKEUP  0x2
> > +#define PRCM_FUNCTL0x0
> > +
> > +#define PRCM_EMIF_CLK_ACTIVITY BIT(2)
> > +#define PRCM_L3_GCLK_ACTIVITY  BIT(4)
> > +
> > +#define PLL_BYPASS_MODE0x4
> > +#define ST_MN_BYPASS   0x0100
> > +#define ST_DPLL_CLK0x0001
> > +#define CLK_SEL_MASK   0x7
> > +#define CLK_DIV_MASK   0x1f
> > +#define CLK_DIV2_MASK  0x7f
> > +#define CLK_SEL_SHIFT  0x8
> > +#define CLK_MODE_SEL   0x7
> > +#define CLK_MODE_MASK  0xfff8
> > +#define CLK_DIV_SEL0xFFE0
> > +#define CPGMAC0_IDLE   0x3
> > +#define DPLL_CLKDCOLDO_GATE_CTRL0x300
> [snip]
> > +++ b/arch/arm/cpu/armv7/am33xx/clock-ti814x.c
> [snip]
> > +   /* Selects OSC0 (20MHz) for DMTIMER1 */
> > +   temp = readl(DMTIMER_CLKSRC);
> > +   temp &= ~(0x7 << 3);
> > +   temp |= (0x4 << 3);
> > +   writel(temp, DMTIMER_CLKSRC);
> > +
> > +   writel(0x2, DM_TIMER1_BASE + 0x54);
> 
> Magic values are defined for clock-am335x.c but not in clock-ti814x.c,
> please fix clock-ti814x.c to define out the magic values ala am335x.c.
> Thanks!

Ok, will clean this up.

-Matt
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] AM335x : failure to boot SPL from NAND

2013-02-15 Thread Tom Rini
On Thu, Feb 14, 2013 at 03:54:23PM +, Mark Jackson wrote:

> I'm trying to diagnose why our AM335x based CPU board (based on the
> AM335x Starter Kit) can boot SPL and U-Boot from an MMC card, but is
> unable to boot from NAND (connected to CS0).
> 
> Following the TI wiki
> (http://processors.wiki.ti.com/index.php/AM335x_U-Boot_User%27s_Guide#Flashing_images_to_NAND_in_SD_boot)
> I:-
> 
> (1) boot from MMC
> (2) erase the nand
> (3) copy MLO from MMC into NAND
> (4) verified it copied correctly (using crc32)
> 
> When I reboot the board in NAND mode, I get nothing on UART0.
> 
> If I reboot in MMC mode, SPL and U-Boot load correctly.
> 
> Can anyone give me some pointers on the boot sequence, and where I
> might look to help debug the problem ?

Assuming you're using mainline U-Boot and can rule out "vendor
problems", if you can access the SYSBOOT pins, set it up for a mode that
does NAND and UART.  If you never see the 'CCC' on console (or only see
it the first time if you do UART then NAND), then you are starting SPL
and dying in there.  If you just see a stream of C then your file is not
written to NAND correctly.

-- 
Tom


signature.asc
Description: Digital signature
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH v7 15/19] nand: mxc: Switch NAND SPL to generic SPL

2013-02-15 Thread Benoît Thébaudeau
This also fixes support for mx31pdk and tx25, which had been broken by commit
e05e5de7fae5bec79617e113916dac6631251156.

Signed-off-by: Benoît Thébaudeau 
---
Changes in v7: None
Changes in v6:
 - Automate 'u-boot.imx' and 'SPL' make targets for all imx processors.
 - Move board_init_f() to .c.
 - Get rid of board SPL linker scripts.
 - Define CONFIG_SYS_NAND_U_BOOT_OFFS as CONFIG_SPL_MAX_SIZE rather than
   duplicating the constant value.
 - Define CONFIG_SYS_NAND_U_BOOT_DST as CONFIG_SYS_TEXT_BASE rather than
   duplicating the constant value.
 - Pass 0 as the 1st argument to relocate_code() since it's unused.
 - Fix stack pointers.
 - Rebase on latest u-boot-imx/master.
 - Move unrelated changes to separate patches.

Changes in v5:
 - Remove spaces between function name and open parenthesis.
 - Fix mx31pdk and tx25 Makefile-s and SPL linker scripts.
 - Remove the useless definition of CONFIG_SPL_LDSCRIPT.
 - Fix the call to nand_boot().

Changes in v4:
 - New patch.

Changes in v3: None
Changes in v2: None

 arch/arm/cpu/arm926ejs/start.S |3 +-
 board/freescale/mx31pdk/Makefile   |3 +
 board/freescale/mx31pdk/config.mk  |5 --
 board/freescale/mx31pdk/mx31pdk.c  |8 ++
 board/karo/tx25/Makefile   |4 +-
 board/karo/tx25/config.mk  |5 --
 board/karo/tx25/tx25.c |8 ++
 boards.cfg |2 +-
 drivers/mtd/nand/Makefile  |1 +
 drivers/mtd/nand/mxc_nand.c|   10 +--
 include/fsl_nfc.h => drivers/mtd/nand/mxc_nand.h   |   10 +--
 .../mtd/nand/mxc_nand_spl.c|   26 ++
 include/configs/mx31pdk.h  |   17 +++-
 include/configs/tx25.h |   22 +++--
 nand_spl/board/freescale/mx31pdk/Makefile  |   68 ---
 nand_spl/board/freescale/mx31pdk/u-boot.lds|   87 ---
 nand_spl/board/karo/tx25/Makefile  |   89 
 nand_spl/board/karo/tx25/config.mk |1 -
 nand_spl/board/karo/tx25/u-boot.lds|   87 ---
 19 files changed, 72 insertions(+), 384 deletions(-)
 delete mode 100644 board/freescale/mx31pdk/config.mk
 delete mode 100644 board/karo/tx25/config.mk
 rename include/fsl_nfc.h => drivers/mtd/nand/mxc_nand.h (98%)
 rename nand_spl/nand_boot_fsl_nfc.c => drivers/mtd/nand/mxc_nand_spl.c (92%)
 delete mode 100644 nand_spl/board/freescale/mx31pdk/Makefile
 delete mode 100644 nand_spl/board/freescale/mx31pdk/u-boot.lds
 delete mode 100644 nand_spl/board/karo/tx25/Makefile
 delete mode 100644 nand_spl/board/karo/tx25/config.mk
 delete mode 100644 nand_spl/board/karo/tx25/u-boot.lds

diff --git a/arch/arm/cpu/arm926ejs/start.S b/arch/arm/cpu/arm926ejs/start.S
index 70551ec..1db1152 100644
--- a/arch/arm/cpu/arm926ejs/start.S
+++ b/arch/arm/cpu/arm926ejs/start.S
@@ -200,7 +200,6 @@ reset:
 
 
/*--*/
 
-#if !defined(CONFIG_SPL_BUILD) || defined(CONFIG_NAND_SPL)
 /*
  * void relocate_code (addr_sp, gd, addr_moni)
  *
@@ -272,6 +271,8 @@ relocate_done:
 
bx  lr
 
+#ifndef CONFIG_SPL_BUILD
+
 _rel_dyn_start_ofs:
.word __rel_dyn_start - _start
 _rel_dyn_end_ofs:
diff --git a/board/freescale/mx31pdk/Makefile b/board/freescale/mx31pdk/Makefile
index 5b7cafd..b910722 100644
--- a/board/freescale/mx31pdk/Makefile
+++ b/board/freescale/mx31pdk/Makefile
@@ -27,6 +27,9 @@ include $(TOPDIR)/config.mk
 
 LIB= $(obj)lib$(BOARD).o
 
+ifdef CONFIG_SPL_BUILD
+SOBJS  := lowlevel_init.o
+endif
 COBJS  := mx31pdk.o
 
 SRCS   := $(SOBJS:.o=.S) $(COBJS:.o=.c)
diff --git a/board/freescale/mx31pdk/config.mk 
b/board/freescale/mx31pdk/config.mk
deleted file mode 100644
index de2c642..000
--- a/board/freescale/mx31pdk/config.mk
+++ /dev/null
@@ -1,5 +0,0 @@
-ifdef CONFIG_NAND_SPL
-CONFIG_SYS_TEXT_BASE = 0x87ec
-else
-CONFIG_SYS_TEXT_BASE = 0x87f0
-endif
diff --git a/board/freescale/mx31pdk/mx31pdk.c 
b/board/freescale/mx31pdk/mx31pdk.c
index 895396c..df5d407 100644
--- a/board/freescale/mx31pdk/mx31pdk.c
+++ b/board/freescale/mx31pdk/mx31pdk.c
@@ -36,6 +36,14 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
+#ifdef CONFIG_SPL_BUILD
+void board_init_f(ulong bootflag)
+{
+   relocate_code(0, NULL, CONFIG_SPL_TEXT_BASE);
+   asm volatile("ldr pc, =nand_boot\n");
+}
+#endif
+
 int dram_init(void)
 {
/* dram_init must store complete ramsize in gd->ram_size */
diff --git a/board/karo/tx25/Makefile b/board/karo/tx25/Makefile
index 9617fa5..c26bf36 100644
--- a/board/karo/tx25/Makefile
+++ b/board/karo/tx25/Makefile
@@ -25,8 +25,10 @@ include $(TOPDIR)/config.mk
 
 LIB= $(obj)lib$(BOARD).o
 
-COBJS  := tx25.o
+ifdef CONFIG_SPL_BUILD
 SOBJS  := lowlevel_init.o
+endif
+COBJS  := tx25.o
 
 SRCS   := $(

[U-Boot] [PATCH v7 17/19] arm: Remove unused relocate_code() parameters

2013-02-15 Thread Benoît Thébaudeau
Commit e05e5de7fae5bec79617e113916dac6631251156 made the 2 1st parameters of
ARM's relocate_code() useless since it moved the code handling them to crt0.S.
So, drop these parameters.

Signed-off-by: Benoît Thébaudeau 
---
Changes in v7: None
Changes in v6:
 - New patch.

Changes in v5: None
Changes in v4: None
Changes in v3: None
Changes in v2: None

 arch/arm/cpu/arm1136/start.S   |4 +---
 arch/arm/cpu/arm1176/start.S   |4 +---
 arch/arm/cpu/arm720t/start.S   |4 +---
 arch/arm/cpu/arm920t/start.S   |4 +---
 arch/arm/cpu/arm925t/start.S   |4 +---
 arch/arm/cpu/arm926ejs/start.S |4 +---
 arch/arm/cpu/arm946es/start.S  |4 +---
 arch/arm/cpu/arm_intcm/start.S |4 +---
 arch/arm/cpu/armv7/start.S |4 +---
 arch/arm/cpu/ixp/start.S   |4 +---
 arch/arm/cpu/pxa/start.S   |4 +---
 arch/arm/cpu/s3c44b0/start.S   |4 +---
 arch/arm/cpu/sa1100/start.S|4 +---
 arch/arm/lib/crt0.S|8 +++-
 board/freescale/mx31pdk/mx31pdk.c  |2 +-
 board/karo/tx25/tx25.c |2 +-
 board/samsung/smdk6400/smdk6400_nand_spl.c |3 +--
 include/common.h   |8 
 18 files changed, 23 insertions(+), 52 deletions(-)

diff --git a/arch/arm/cpu/arm1136/start.S b/arch/arm/cpu/arm1136/start.S
index 9554807..b2d8184 100644
--- a/arch/arm/cpu/arm1136/start.S
+++ b/arch/arm/cpu/arm1136/start.S
@@ -182,9 +182,7 @@ next:
  */
.globl  relocate_code
 relocate_code:
-   mov r4, r0  /* save addr_sp */
-   mov r5, r1  /* save addr of gd */
-   mov r6, r2  /* save addr of destination */
+   mov r6, r0  /* save addr of destination */
 
adr r0, _start
cmp r0, r6
diff --git a/arch/arm/cpu/arm1176/start.S b/arch/arm/cpu/arm1176/start.S
index e7d2737..bb96ef8 100644
--- a/arch/arm/cpu/arm1176/start.S
+++ b/arch/arm/cpu/arm1176/start.S
@@ -249,9 +249,7 @@ skip_tcmdisable:
  */
.globl  relocate_code
 relocate_code:
-   mov r4, r0  /* save addr_sp */
-   mov r5, r1  /* save addr of gd */
-   mov r6, r2  /* save addr of destination */
+   mov r6, r0  /* save addr of destination */
 
adr r0, _start
cmp r0, r6
diff --git a/arch/arm/cpu/arm720t/start.S b/arch/arm/cpu/arm720t/start.S
index 440aff5..8555082 100644
--- a/arch/arm/cpu/arm720t/start.S
+++ b/arch/arm/cpu/arm720t/start.S
@@ -164,9 +164,7 @@ reset:
  */
.globl  relocate_code
 relocate_code:
-   mov r4, r0  /* save addr_sp */
-   mov r5, r1  /* save addr of gd */
-   mov r6, r2  /* save addr of destination */
+   mov r6, r0  /* save addr of destination */
 
adr r0, _start
cmp r0, r6
diff --git a/arch/arm/cpu/arm920t/start.S b/arch/arm/cpu/arm920t/start.S
index 60b6a80..c8d6907 100644
--- a/arch/arm/cpu/arm920t/start.S
+++ b/arch/arm/cpu/arm920t/start.S
@@ -203,9 +203,7 @@ copyex:
  */
.globl  relocate_code
 relocate_code:
-   mov r4, r0  /* save addr_sp */
-   mov r5, r1  /* save addr of gd */
-   mov r6, r2  /* save addr of destination */
+   mov r6, r0  /* save addr of destination */
 
adr r0, _start
cmp r0, r6
diff --git a/arch/arm/cpu/arm925t/start.S b/arch/arm/cpu/arm925t/start.S
index 6d5c9de..310c89e 100644
--- a/arch/arm/cpu/arm925t/start.S
+++ b/arch/arm/cpu/arm925t/start.S
@@ -193,9 +193,7 @@ poll1:
  */
.globl  relocate_code
 relocate_code:
-   mov r4, r0  /* save addr_sp */
-   mov r5, r1  /* save addr of gd */
-   mov r6, r2  /* save addr of destination */
+   mov r6, r0  /* save addr of destination */
 
adr r0, _start
cmp r0, r6
diff --git a/arch/arm/cpu/arm926ejs/start.S b/arch/arm/cpu/arm926ejs/start.S
index 60b0a67..ff82eeb 100644
--- a/arch/arm/cpu/arm926ejs/start.S
+++ b/arch/arm/cpu/arm926ejs/start.S
@@ -199,9 +199,7 @@ reset:
  */
.globl  relocate_code
 relocate_code:
-   mov r4, r0  /* save addr_sp */
-   mov r5, r1  /* save addr of gd */
-   mov r6, r2  /* save addr of destination */
+   mov r6, r0  /* save addr of destination */
 
adr r0, _start
cmp r0, r6
diff --git a/arch/arm/cpu/arm946es/start.S b/arch/arm/cpu/arm946es/start.S
index 8a245e0..78ecdff 100644
--- a/arch/arm/cpu/arm946es/start.S
+++ b/arch/arm/cpu/arm946es/start.S
@@ -168,9 +168,7 @@ reset:
  */
.globl  relocate_code
 relocate_code:
-   mov r4, r0  /* save addr_sp */
-   mov r5, r1  /* save addr of gd */
-   mov r6, r2  /* save addr of destination */
+   mov r6, r0  /* save addr of destination */
 
adr r0, _start
cmp r0, r6
diff --git a/arch/arm/cpu/arm_intcm/start.S b

[U-Boot] [PATCH v7 19/19] imx: Add u-boot-with-nand-spl.imx make target

2013-02-15 Thread Benoît Thébaudeau
This image adds a dummy 1024-byte header to u-boot-with-spl.imx in order to get
an image that can be programmed on a NAND Flash page boundary.

This supports only i.MX25/35/51 so far, not i.MX53/6. For the latter, the dummy
header will have to be replaced with a generated FCB header depending at least
on the NAND Flash page size.

Signed-off-by: Benoît Thébaudeau 
---
Changes in v7:
 - New patch.

Changes in v6: None
Changes in v5: None
Changes in v4: None
Changes in v3: None
Changes in v2: None

 Makefile |5 +
 arch/arm/imx-common/Makefile |3 +++
 2 files changed, 8 insertions(+)

diff --git a/Makefile b/Makefile
index 896266f..8bda59d 100644
--- a/Makefile
+++ b/Makefile
@@ -495,6 +495,10 @@ $(obj)u-boot-with-spl.imx: $(obj)spl/u-boot-spl.bin 
$(obj)u-boot.bin
$(MAKE) -C $(SRCTREE)/arch/arm/imx-common \
$(OBJTREE)/u-boot-with-spl.imx
 
+$(obj)u-boot-with-nand-spl.imx: $(obj)u-boot-with-spl.imx
+   $(MAKE) -C $(SRCTREE)/arch/arm/imx-common \
+   $(OBJTREE)/u-boot-with-nand-spl.imx
+
 $(obj)u-boot.ubl:   $(obj)u-boot-with-spl.bin
$(obj)tools/mkimage -n $(UBL_CONFIG) -T ublimage \
-e $(CONFIG_SYS_TEXT_BASE) -d $< $(obj)u-boot.ubl
@@ -867,6 +871,7 @@ clobber:tidy
@rm -f $(obj)u-boot.pbl
@rm -f $(obj)u-boot.imx
@rm -f $(obj)u-boot-with-spl.imx
+   @rm -f $(obj)u-boot-with-nand-spl.imx
@rm -f $(obj)u-boot.ubl
@rm -f $(obj)u-boot.ais
@rm -f $(obj)u-boot.dtb
diff --git a/arch/arm/imx-common/Makefile b/arch/arm/imx-common/Makefile
index 24bf822..835040f 100644
--- a/arch/arm/imx-common/Makefile
+++ b/arch/arm/imx-common/Makefile
@@ -65,6 +65,9 @@ $(OBJTREE)/u-boot-with-spl.imx: $(OBJTREE)/spl/u-boot-spl.bin 
$(OBJTREE)/u-boot.
cat $(OBJTREE)/spl/u-boot-spl-pad.imx $(OBJTREE)/u-boot.bin > $@
rm $(OBJTREE)/spl/u-boot-spl-pad.imx
 
+$(OBJTREE)/u-boot-with-nand-spl.imx: $(OBJTREE)/u-boot-with-spl.imx
+   dd bs=1024 count=1 if=/dev/zero 2>/dev/null | cat - $< > $@
+
 
 #
 
-- 
1.7.10.4

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH v7 18/19] imx: Add u-boot-with-spl.imx make target

2013-02-15 Thread Benoît Thébaudeau
This image combines the SPL with the i.MX header and U-Boot. This is a
convenient way of having a single image to program on some boot devices.

The i.MX header has to be added to the SPL before appending U-Boot, so that the
boot ROM loads only the SPL.

Signed-off-by: Benoît Thébaudeau 
---
Changes in v7:
 - New patch.

Changes in v6: None
Changes in v5: None
Changes in v4: None
Changes in v3: None
Changes in v2: None

 Makefile |5 +
 arch/arm/imx-common/Makefile |   11 +++
 2 files changed, 16 insertions(+)

diff --git a/Makefile b/Makefile
index 317dffc..896266f 100644
--- a/Makefile
+++ b/Makefile
@@ -491,6 +491,10 @@ $(obj)u-boot-with-spl.bin: $(obj)spl/u-boot-spl.bin 
$(obj)u-boot.bin
cat $(obj)spl/u-boot-spl-pad.bin $(obj)u-boot.bin > $@
rm $(obj)spl/u-boot-spl-pad.bin
 
+$(obj)u-boot-with-spl.imx: $(obj)spl/u-boot-spl.bin $(obj)u-boot.bin
+   $(MAKE) -C $(SRCTREE)/arch/arm/imx-common \
+   $(OBJTREE)/u-boot-with-spl.imx
+
 $(obj)u-boot.ubl:   $(obj)u-boot-with-spl.bin
$(obj)tools/mkimage -n $(UBL_CONFIG) -T ublimage \
-e $(CONFIG_SYS_TEXT_BASE) -d $< $(obj)u-boot.ubl
@@ -862,6 +866,7 @@ clobber:tidy
@rm -f $(obj)u-boot.kwb
@rm -f $(obj)u-boot.pbl
@rm -f $(obj)u-boot.imx
+   @rm -f $(obj)u-boot-with-spl.imx
@rm -f $(obj)u-boot.ubl
@rm -f $(obj)u-boot.ais
@rm -f $(obj)u-boot.dtb
diff --git a/arch/arm/imx-common/Makefile b/arch/arm/imx-common/Makefile
index 6309fcd..24bf822 100644
--- a/arch/arm/imx-common/Makefile
+++ b/arch/arm/imx-common/Makefile
@@ -54,6 +54,17 @@ $(OBJTREE)/SPL: $(OBJTREE)/spl/u-boot-spl.bin 
$(OBJTREE)/$(patsubst "%",%,$(CONF
$(OBJTREE)/tools/mkimage -n $(filter-out %.bin,$^) -T imximage \
-e $(CONFIG_SPL_TEXT_BASE) -d $< $@
 
+$(OBJTREE)/u-boot-with-spl.imx: $(OBJTREE)/spl/u-boot-spl.bin 
$(OBJTREE)/u-boot.bin \
+   $(OBJTREE)/$(patsubst 
"%",%,$(CONFIG_IMX_CONFIG)).cfgtmp
+   $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(CONFIG_SPL_MAX_SIZE) -I binary \
+   -O binary $< $(OBJTREE)/spl/u-boot-spl-pad.bin
+   $(OBJTREE)/tools/mkimage -n $(filter-out %.bin,$^) -T imximage \
+   -e $(CONFIG_SPL_TEXT_BASE) -d $(OBJTREE)/spl/u-boot-spl-pad.bin 
\
+   $(OBJTREE)/spl/u-boot-spl-pad.imx
+   rm $(OBJTREE)/spl/u-boot-spl-pad.bin
+   cat $(OBJTREE)/spl/u-boot-spl-pad.imx $(OBJTREE)/u-boot.bin > $@
+   rm $(OBJTREE)/spl/u-boot-spl-pad.imx
+
 
 #
 
-- 
1.7.10.4

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH v7 11/19] arm: relocate_code(): Use __image_copy_end for end of relocation

2013-02-15 Thread Benoît Thébaudeau
Use __image_copy_end instead of __bss_start for the end of the image to
relocate. This is the same as commit 033ca72, but applied to all ARM start.S.

Signed-off-by: Benoît Thébaudeau 
---
Changes in v7: None
Changes in v6:
 - New patch.

Changes in v5: None
Changes in v4: None
Changes in v3: None
Changes in v2: None

 arch/arm/cpu/arm1176/start.S   |6 +-
 arch/arm/cpu/arm720t/start.S   |6 +-
 arch/arm/cpu/arm920t/ep93xx/u-boot.lds |3 +++
 arch/arm/cpu/arm920t/start.S   |6 +-
 arch/arm/cpu/arm925t/start.S   |6 +-
 arch/arm/cpu/arm926ejs/start.S |6 +-
 arch/arm/cpu/arm946es/start.S  |6 +-
 arch/arm/cpu/arm_intcm/start.S |6 +-
 arch/arm/cpu/ixp/start.S   |6 +-
 arch/arm/cpu/ixp/u-boot.lds|2 ++
 arch/arm/cpu/pxa/start.S   |6 +-
 arch/arm/cpu/s3c44b0/start.S   |6 +-
 arch/arm/cpu/sa1100/start.S|6 +-
 board/actux1/u-boot.lds|3 +++
 board/actux2/u-boot.lds|3 +++
 board/actux3/u-boot.lds|3 +++
 board/davinci/da8xxevm/u-boot-spl-hawk.lds |1 +
 board/dvlhost/u-boot.lds   |3 +++
 board/samsung/smdk6400/u-boot-nand.lds |4 
 board/vpac270/u-boot-spl.lds   |2 ++
 nand_spl/board/karo/tx25/u-boot.lds|2 ++
 nand_spl/board/samsung/smdk6400/u-boot.lds |2 ++
 22 files changed, 83 insertions(+), 11 deletions(-)

diff --git a/arch/arm/cpu/arm1176/start.S b/arch/arm/cpu/arm1176/start.S
index 9617249..e7d2737 100644
--- a/arch/arm/cpu/arm1176/start.S
+++ b/arch/arm/cpu/arm1176/start.S
@@ -127,6 +127,10 @@ _TEXT_PHY_BASE:
 _bss_start_ofs:
.word __bss_start - _start
 
+.global_image_copy_end_ofs
+_image_copy_end_ofs:
+   .word   __image_copy_end - _start
+
 .globl _bss_end_ofs
 _bss_end_ofs:
.word __bss_end__ - _start
@@ -253,7 +257,7 @@ relocate_code:
cmp r0, r6
beq relocate_done   /* skip relocation */
mov r1, r6  /* r1 <- scratch for copy_loop */
-   ldr r3, _bss_start_ofs
+   ldr r3, _image_copy_end_ofs
add r2, r0, r3  /* r2 <- source end address */
 
 copy_loop:
diff --git a/arch/arm/cpu/arm720t/start.S b/arch/arm/cpu/arm720t/start.S
index d2d8b53..440aff5 100644
--- a/arch/arm/cpu/arm720t/start.S
+++ b/arch/arm/cpu/arm720t/start.S
@@ -101,6 +101,10 @@ _TEXT_BASE:
 _bss_start_ofs:
.word __bss_start - _start
 
+.global_image_copy_end_ofs
+_image_copy_end_ofs:
+   .word   __image_copy_end - _start
+
 .globl _bss_end_ofs
 _bss_end_ofs:
.word __bss_end__ - _start
@@ -168,7 +172,7 @@ relocate_code:
cmp r0, r6
beq relocate_done   /* skip relocation */
mov r1, r6  /* r1 <- scratch for copy_loop */
-   ldr r3, _bss_start_ofs
+   ldr r3, _image_copy_end_ofs
add r2, r0, r3  /* r2 <- source end address */
 
 copy_loop:
diff --git a/arch/arm/cpu/arm920t/ep93xx/u-boot.lds 
b/arch/arm/cpu/arm920t/ep93xx/u-boot.lds
index 008ae89..62315de 100644
--- a/arch/arm/cpu/arm920t/ep93xx/u-boot.lds
+++ b/arch/arm/cpu/arm920t/ep93xx/u-boot.lds
@@ -55,6 +55,9 @@ SECTIONS
}
 
. = ALIGN(4);
+
+   __image_copy_end = .;
+
__bss_start = .;
.bss : { *(.bss) }
__bss_end__ = .;
diff --git a/arch/arm/cpu/arm920t/start.S b/arch/arm/cpu/arm920t/start.S
index 683cf55..60b6a80 100644
--- a/arch/arm/cpu/arm920t/start.S
+++ b/arch/arm/cpu/arm920t/start.S
@@ -89,6 +89,10 @@ _TEXT_BASE:
 _bss_start_ofs:
.word __bss_start - _start
 
+.global_image_copy_end_ofs
+_image_copy_end_ofs:
+   .word   __image_copy_end - _start
+
 .globl _bss_end_ofs
 _bss_end_ofs:
.word __bss_end__ - _start
@@ -207,7 +211,7 @@ relocate_code:
cmp r0, r6
beq relocate_done   /* skip relocation */
mov r1, r6  /* r1 <- scratch for copy_loop */
-   ldr r3, _bss_start_ofs
+   ldr r3, _image_copy_end_ofs
add r2, r0, r3  /* r2 <- source end address */
 
 copy_loop:
diff --git a/arch/arm/cpu/arm925t/start.S b/arch/arm/cpu/arm925t/start.S
index 5e81bdf..6d5c9de 100644
--- a/arch/arm/cpu/arm925t/start.S
+++ b/arch/arm/cpu/arm925t/start.S
@@ -95,6 +95,10 @@ _TEXT_BASE:
 _bss_start_ofs:
.word __bss_start - _start
 
+.global_image_copy_end_ofs
+_image_copy_end_ofs:
+   .word   __image_copy_end - _start
+
 .globl _bss_end_ofs
 _bss_end_ofs:
.word __bss_end__ - _start
@@ -197,7 +201,7 @@ relocate_code:
cmp r0, r6
beq relocate_done   /* skip relocation */
mov r1, r6  /* r1 <- scratch for co

[U-Boot] [PATCH v7 14/19] imx: Fix automatic make targets for imx images

2013-02-15 Thread Benoît Thébaudeau
Automatically build the 'u-boot.imx' (i.e. imx header + u-boot.bin) and 'SPL'
(i.e. imx header + u-boot-spl.bin) make targets for all imx processors
supporting this header, so for arm926ejs, arm1136 and armv7. Some combinations
were missing.

At the same time, fix the build of SPL targets not supporting the imx header on
arm1136. For arm1136, the 'SPL' make target was forced to build in all cases if
CONFIG_SPL_BUILD was defined, even for non-imx platforms or imx setups without
an imx header.

Signed-off-by: Benoît Thébaudeau 
---
Changes in v7: None
Changes in v6:
 - New patch, extracted from "nand: mxc: Switch NAND SPL to generic SPL".

Changes in v5: None
Changes in v4: None
Changes in v3: None
Changes in v2: None

 arch/arm/cpu/arm1136/config.mk   |7 +++
 arch/arm/cpu/arm926ejs/config.mk |8 ++--
 arch/arm/cpu/armv7/config.mk |6 ++
 3 files changed, 19 insertions(+), 2 deletions(-)

diff --git a/arch/arm/cpu/arm1136/config.mk b/arch/arm/cpu/arm1136/config.mk
index 9092d91..797d122 100644
--- a/arch/arm/cpu/arm1136/config.mk
+++ b/arch/arm/cpu/arm1136/config.mk
@@ -31,6 +31,13 @@ PLATFORM_CPPFLAGS += -march=armv5
 # =
 PF_RELFLAGS_SLB_AT := $(call cc-option,-mshort-load-bytes,$(call 
cc-option,-malignment-traps,))
 PLATFORM_RELFLAGS += $(PF_RELFLAGS_SLB_AT)
+
+ifneq ($(CONFIG_IMX_CONFIG),)
+ifdef CONFIG_SPL
 ifdef CONFIG_SPL_BUILD
 ALL-y  += $(OBJTREE)/SPL
 endif
+else
+ALL-y  += $(obj)u-boot.imx
+endif
+endif
diff --git a/arch/arm/cpu/arm926ejs/config.mk b/arch/arm/cpu/arm926ejs/config.mk
index 6a3a1bb..f0e31d1 100644
--- a/arch/arm/cpu/arm926ejs/config.mk
+++ b/arch/arm/cpu/arm926ejs/config.mk
@@ -33,7 +33,11 @@ PF_RELFLAGS_SLB_AT := $(call 
cc-option,-mshort-load-bytes,$(call cc-option,-mali
 PLATFORM_RELFLAGS += $(PF_RELFLAGS_SLB_AT)
 
 ifneq ($(CONFIG_IMX_CONFIG),)
-
+ifdef CONFIG_SPL
+ifdef CONFIG_SPL_BUILD
+ALL-y  += $(OBJTREE)/SPL
+endif
+else
 ALL-y  += $(obj)u-boot.imx
-
+endif
 endif
diff --git a/arch/arm/cpu/armv7/config.mk b/arch/arm/cpu/armv7/config.mk
index 9c3e2f3..56b8053 100644
--- a/arch/arm/cpu/armv7/config.mk
+++ b/arch/arm/cpu/armv7/config.mk
@@ -40,5 +40,11 @@ PF_NO_UNALIGNED := $(call cc-option, -mno-unaligned-access,)
 PLATFORM_NO_UNALIGNED := $(PF_NO_UNALIGNED)
 
 ifneq ($(CONFIG_IMX_CONFIG),)
+ifdef CONFIG_SPL
+ifdef CONFIG_SPL_BUILD
+ALL-y  += $(OBJTREE)/SPL
+endif
+else
 ALL-y  += $(obj)u-boot.imx
 endif
+endif
-- 
1.7.10.4

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH v7 16/19] arm926ejs: Remove deprecated and now unused NAND SPL

2013-02-15 Thread Benoît Thébaudeau
Signed-off-by: Benoît Thébaudeau 
---
Changes in v7: None
Changes in v6:
 - New patch.

Changes in v5: None
Changes in v4: None
Changes in v3: None
Changes in v2: None

 arch/arm/cpu/arm926ejs/start.S |   10 --
 1 file changed, 10 deletions(-)

diff --git a/arch/arm/cpu/arm926ejs/start.S b/arch/arm/cpu/arm926ejs/start.S
index 1db1152..60b0a67 100644
--- a/arch/arm/cpu/arm926ejs/start.S
+++ b/arch/arm/cpu/arm926ejs/start.S
@@ -120,15 +120,11 @@ _fiq:
 
 .globl _TEXT_BASE
 _TEXT_BASE:
-#ifdef CONFIG_NAND_SPL /* deprecated, use instead CONFIG_SPL_BUILD */
-   .word   CONFIG_SYS_TEXT_BASE
-#else
 #if defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_TEXT_BASE)
.word   CONFIG_SPL_TEXT_BASE
 #else
.word   CONFIG_SYS_TEXT_BASE
 #endif
-#endif
 
 /*
  * These are defined in the board-specific linker script.
@@ -152,12 +148,6 @@ _bss_end_ofs:
 _end_ofs:
.word _end - _start
 
-#ifdef CONFIG_NAND_U_BOOT
-.globl _end
-_end:
-   .word __bss_end__
-#endif
-
 #ifdef CONFIG_USE_IRQ
 /* IRQ stack memory (calculated at run-time) */
 .globl IRQ_STACK_START
-- 
1.7.10.4

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH v7 10/19] arm: relocate_code(): Remove useless relocation offset computation

2013-02-15 Thread Benoît Thébaudeau
Signed-off-by: Benoît Thébaudeau 
---
Changes in v7: None
Changes in v6:
 - New patch.

Changes in v5: None
Changes in v4: None
Changes in v3: None
Changes in v2: None

 arch/arm/cpu/arm1136/start.S   |1 -
 arch/arm/cpu/arm1176/start.S   |1 -
 arch/arm/cpu/arm720t/start.S   |1 -
 arch/arm/cpu/arm920t/start.S   |1 -
 arch/arm/cpu/arm925t/start.S   |1 -
 arch/arm/cpu/arm926ejs/start.S |2 --
 arch/arm/cpu/arm946es/start.S  |1 -
 arch/arm/cpu/arm_intcm/start.S |1 -
 arch/arm/cpu/armv7/start.S |1 -
 arch/arm/cpu/ixp/start.S   |1 -
 arch/arm/cpu/pxa/start.S   |1 -
 arch/arm/cpu/s3c44b0/start.S   |1 -
 arch/arm/cpu/sa1100/start.S|1 -
 13 files changed, 14 deletions(-)

diff --git a/arch/arm/cpu/arm1136/start.S b/arch/arm/cpu/arm1136/start.S
index b5931f8..9554807 100644
--- a/arch/arm/cpu/arm1136/start.S
+++ b/arch/arm/cpu/arm1136/start.S
@@ -188,7 +188,6 @@ relocate_code:
 
adr r0, _start
cmp r0, r6
-   moveq   r9, #0  /* no relocation. relocation offset(r9) = 0 */
beq relocate_done   /* skip relocation */
mov r1, r6  /* r1 <- scratch for copy_loop */
ldr r3, _image_copy_end_ofs
diff --git a/arch/arm/cpu/arm1176/start.S b/arch/arm/cpu/arm1176/start.S
index d11386a..9617249 100644
--- a/arch/arm/cpu/arm1176/start.S
+++ b/arch/arm/cpu/arm1176/start.S
@@ -251,7 +251,6 @@ relocate_code:
 
adr r0, _start
cmp r0, r6
-   moveq   r9, #0  /* no relocation. relocation offset(r9) = 0 */
beq relocate_done   /* skip relocation */
mov r1, r6  /* r1 <- scratch for copy_loop */
ldr r3, _bss_start_ofs
diff --git a/arch/arm/cpu/arm720t/start.S b/arch/arm/cpu/arm720t/start.S
index 83722aa..d2d8b53 100644
--- a/arch/arm/cpu/arm720t/start.S
+++ b/arch/arm/cpu/arm720t/start.S
@@ -166,7 +166,6 @@ relocate_code:
 
adr r0, _start
cmp r0, r6
-   moveq   r9, #0  /* no relocation. relocation offset(r9) = 0 */
beq relocate_done   /* skip relocation */
mov r1, r6  /* r1 <- scratch for copy_loop */
ldr r3, _bss_start_ofs
diff --git a/arch/arm/cpu/arm920t/start.S b/arch/arm/cpu/arm920t/start.S
index f4f14e1..683cf55 100644
--- a/arch/arm/cpu/arm920t/start.S
+++ b/arch/arm/cpu/arm920t/start.S
@@ -205,7 +205,6 @@ relocate_code:
 
adr r0, _start
cmp r0, r6
-   moveq   r9, #0  /* no relocation. relocation offset(r9) = 0 */
beq relocate_done   /* skip relocation */
mov r1, r6  /* r1 <- scratch for copy_loop */
ldr r3, _bss_start_ofs
diff --git a/arch/arm/cpu/arm925t/start.S b/arch/arm/cpu/arm925t/start.S
index 95a0de7..5e81bdf 100644
--- a/arch/arm/cpu/arm925t/start.S
+++ b/arch/arm/cpu/arm925t/start.S
@@ -195,7 +195,6 @@ relocate_code:
 
adr r0, _start
cmp r0, r6
-   moveq   r9, #0  /* no relocation. relocation offset(r9) = 0 */
beq relocate_done   /* skip relocation */
mov r1, r6  /* r1 <- scratch for copy_loop */
ldr r3, _bss_start_ofs
diff --git a/arch/arm/cpu/arm926ejs/start.S b/arch/arm/cpu/arm926ejs/start.S
index 39f9a2e..93916af 100644
--- a/arch/arm/cpu/arm926ejs/start.S
+++ b/arch/arm/cpu/arm926ejs/start.S
@@ -211,9 +211,7 @@ relocate_code:
mov r6, r2  /* save addr of destination */
 
adr r0, _start
-   sub r9, r6, r0  /* r9 <- relocation offset */
cmp r0, r6
-   moveq   r9, #0  /* no relocation. offset(r9) = 0 */
beq relocate_done   /* skip relocation */
mov r1, r6  /* r1 <- scratch for copy loop */
ldr r3, _bss_start_ofs
diff --git a/arch/arm/cpu/arm946es/start.S b/arch/arm/cpu/arm946es/start.S
index 0d57294..6ecf7ec 100644
--- a/arch/arm/cpu/arm946es/start.S
+++ b/arch/arm/cpu/arm946es/start.S
@@ -170,7 +170,6 @@ relocate_code:
 
adr r0, _start
cmp r0, r6
-   moveq   r9, #0  /* no relocation. relocation offset(r9) = 0 */
beq relocate_done   /* skip relocation */
mov r1, r6  /* r1 <- scratch for copy_loop */
ldr r3, _bss_start_ofs
diff --git a/arch/arm/cpu/arm_intcm/start.S b/arch/arm/cpu/arm_intcm/start.S
index f5e5381..fcfd367 100644
--- a/arch/arm/cpu/arm_intcm/start.S
+++ b/arch/arm/cpu/arm_intcm/start.S
@@ -166,7 +166,6 @@ relocate_code:
 
adr r0, _start
cmp r0, r6
-   moveq   r9, #0  /* no relocation. relocation offset(r9) = 0 */
beq relocate_done   /* skip relocation */
mov r1, r6  /* r1 <- scratch for copy_loop */
ldr r3, _bss_start_ofs
diff --git a/arch/arm/cpu/armv7/s

[U-Boot] [PATCH v7 13/19] Makefile: u-boot-with-spl.bin: Fix SPL padding

2013-02-15 Thread Benoît Thébaudeau
PAD_TO is not a generic SPL configuration option, so use CONFIG_SPL_MAX_SIZE
instead.

We want to use --pad-to with a size, but this option expects an address, so use
u-boot-spl.bin instead of u-boot-spl as the input file in order to get addresses
starting at 0.

Signed-off-by: Benoît Thébaudeau 
---
Changes in v7:
 - Use u-boot-spl.bin instead of u-boot-spl in order to avoid having to use
   --change-addresses.

Changes in v6:
 - Fix size passed to --pad-to thanks to --change-addresses.

Changes in v5: None
Changes in v4:
 - New patch.

Changes in v3: None
Changes in v2: None

 Makefile |3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/Makefile b/Makefile
index a8c7b7b..317dffc 100644
--- a/Makefile
+++ b/Makefile
@@ -486,7 +486,8 @@ $(obj)u-boot.dis:   $(obj)u-boot
$(OBJDUMP) -d $< > $@
 
 $(obj)u-boot-with-spl.bin: $(obj)spl/u-boot-spl.bin $(obj)u-boot.bin
-   $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(PAD_TO) -O binary 
$(obj)spl/u-boot-spl $(obj)spl/u-boot-spl-pad.bin
+   $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(CONFIG_SPL_MAX_SIZE) \
+   -I binary -O binary $< $(obj)spl/u-boot-spl-pad.bin
cat $(obj)spl/u-boot-spl-pad.bin $(obj)u-boot.bin > $@
rm $(obj)spl/u-boot-spl-pad.bin
 
-- 
1.7.10.4

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH v7 07/19] arm: start.S: Fix _TEXT_BASE for SPL

2013-02-15 Thread Benoît Thébaudeau
_TEXT_BASE must be set to CONFIG_SPL_TEXT_BASE for generic SPL, and to
CONFIG_SYS_TEXT_BASE for non-SPL builds.

Signed-off-by: Benoît Thébaudeau 
---
Changes in v7: None
Changes in v6:
 - New patch.

Changes in v5: None
Changes in v4: None
Changes in v3: None
Changes in v2: None

 arch/arm/cpu/arm1136/start.S   |4 
 arch/arm/cpu/arm1176/start.S   |8 
 arch/arm/cpu/arm720t/start.S   |2 +-
 arch/arm/cpu/arm920t/start.S   |4 
 arch/arm/cpu/arm925t/start.S   |4 
 arch/arm/cpu/arm926ejs/start.S |2 +-
 arch/arm/cpu/arm946es/start.S  |4 
 arch/arm/cpu/arm_intcm/start.S |6 +-
 arch/arm/cpu/armv7/start.S |4 
 arch/arm/cpu/ixp/start.S   |4 
 arch/arm/cpu/pxa/start.S   |2 +-
 arch/arm/cpu/s3c44b0/start.S   |4 
 arch/arm/cpu/sa1100/start.S|4 
 13 files changed, 48 insertions(+), 4 deletions(-)

diff --git a/arch/arm/cpu/arm1136/start.S b/arch/arm/cpu/arm1136/start.S
index a067b8a..4053e86 100644
--- a/arch/arm/cpu/arm1136/start.S
+++ b/arch/arm/cpu/arm1136/start.S
@@ -88,7 +88,11 @@ _end_vect:
 
 .globl _TEXT_BASE
 _TEXT_BASE:
+#if defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_TEXT_BASE)
+   .word   CONFIG_SPL_TEXT_BASE
+#else
.word   CONFIG_SYS_TEXT_BASE
+#endif
 
 /*
  * These are defined in the board-specific linker script.
diff --git a/arch/arm/cpu/arm1176/start.S b/arch/arm/cpu/arm1176/start.S
index 40df4b1..d11386a 100644
--- a/arch/arm/cpu/arm1176/start.S
+++ b/arch/arm/cpu/arm1176/start.S
@@ -98,7 +98,15 @@ _end_vect:
 
 .globl _TEXT_BASE
 _TEXT_BASE:
+#ifdef CONFIG_NAND_SPL /* deprecated, use instead CONFIG_SPL_BUILD */
.word   CONFIG_SYS_TEXT_BASE
+#else
+#if defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_TEXT_BASE)
+   .word   CONFIG_SPL_TEXT_BASE
+#else
+   .word   CONFIG_SYS_TEXT_BASE
+#endif
+#endif
 
 /*
  * Below variable is very important because we use MMU in U-Boot.
diff --git a/arch/arm/cpu/arm720t/start.S b/arch/arm/cpu/arm720t/start.S
index 771d386..83722aa 100644
--- a/arch/arm/cpu/arm720t/start.S
+++ b/arch/arm/cpu/arm720t/start.S
@@ -85,7 +85,7 @@ _pad: .word 0x12345678 /* now 16*4=64 */
 
 .globl _TEXT_BASE
 _TEXT_BASE:
-#ifdef CONFIG_SPL_BUILD
+#if defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_TEXT_BASE)
.word   CONFIG_SPL_TEXT_BASE
 #else
.word   CONFIG_SYS_TEXT_BASE
diff --git a/arch/arm/cpu/arm920t/start.S b/arch/arm/cpu/arm920t/start.S
index 511d21d..f4f14e1 100644
--- a/arch/arm/cpu/arm920t/start.S
+++ b/arch/arm/cpu/arm920t/start.S
@@ -73,7 +73,11 @@ _fiq:.word fiq
 
 .globl _TEXT_BASE
 _TEXT_BASE:
+#if defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_TEXT_BASE)
+   .word   CONFIG_SPL_TEXT_BASE
+#else
.word   CONFIG_SYS_TEXT_BASE
+#endif
 
 /*
  * These are defined in the board-specific linker script.
diff --git a/arch/arm/cpu/arm925t/start.S b/arch/arm/cpu/arm925t/start.S
index e8d6d71..95a0de7 100644
--- a/arch/arm/cpu/arm925t/start.S
+++ b/arch/arm/cpu/arm925t/start.S
@@ -79,7 +79,11 @@ _fiq:.word fiq
 
 .globl _TEXT_BASE
 _TEXT_BASE:
+#if defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_TEXT_BASE)
+   .word   CONFIG_SPL_TEXT_BASE
+#else
.word   CONFIG_SYS_TEXT_BASE
+#endif
 
 /*
  * These are defined in the board-specific linker script.
diff --git a/arch/arm/cpu/arm926ejs/start.S b/arch/arm/cpu/arm926ejs/start.S
index 66a8b65..39f9a2e 100644
--- a/arch/arm/cpu/arm926ejs/start.S
+++ b/arch/arm/cpu/arm926ejs/start.S
@@ -123,7 +123,7 @@ _TEXT_BASE:
 #ifdef CONFIG_NAND_SPL /* deprecated, use instead CONFIG_SPL_BUILD */
.word   CONFIG_SYS_TEXT_BASE
 #else
-#ifdef CONFIG_SPL_BUILD
+#if defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_TEXT_BASE)
.word   CONFIG_SPL_TEXT_BASE
 #else
.word   CONFIG_SYS_TEXT_BASE
diff --git a/arch/arm/cpu/arm946es/start.S b/arch/arm/cpu/arm946es/start.S
index a7a98a4..0d57294 100644
--- a/arch/arm/cpu/arm946es/start.S
+++ b/arch/arm/cpu/arm946es/start.S
@@ -89,7 +89,11 @@ _vectors_end:
 
 .globl _TEXT_BASE
 _TEXT_BASE:
+#if defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_TEXT_BASE)
+   .word   CONFIG_SPL_TEXT_BASE
+#else
.word   CONFIG_SYS_TEXT_BASE
+#endif
 
 /*
  * These are defined in the board-specific linker script.
diff --git a/arch/arm/cpu/arm_intcm/start.S b/arch/arm/cpu/arm_intcm/start.S
index c189849..f5e5381 100644
--- a/arch/arm/cpu/arm_intcm/start.S
+++ b/arch/arm/cpu/arm_intcm/start.S
@@ -85,7 +85,11 @@ _fiq:
 
 .globl _TEXT_BASE
 _TEXT_BASE:
-   .word   CONFIG_SYS_TEXT_BASE /* address of _start in the linked image */
+#if defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_TEXT_BASE)
+   .word   CONFIG_SPL_TEXT_BASE
+#else
+   .word   CONFIG_SYS_TEXT_BASE
+#endif
 
 /*
  * These are defined in the board-specific linker script.
diff --git a/arch/arm/cpu/armv7/start.S b/arch/arm/cpu/armv7/start.S
index dcc1f83..5490cee 100644
--- a/arch/arm/cpu/armv7/start.S
++

[U-Boot] [PATCH v7 12/19] arm: crt0.S: Remove bogus .globl

2013-02-15 Thread Benoît Thébaudeau
The purpose of .globl is to export symbols for ld, not to declare external
symbols.

Signed-off-by: Benoît Thébaudeau 
---
Changes in v7: None
Changes in v6:
 - New patch.

Changes in v5: None
Changes in v4: None
Changes in v3: None
Changes in v2: None

 arch/arm/lib/crt0.S |   21 -
 1 file changed, 21 deletions(-)

diff --git a/arch/arm/lib/crt0.S b/arch/arm/lib/crt0.S
index 4f60958..6946cbc 100644
--- a/arch/arm/lib/crt0.S
+++ b/arch/arm/lib/crt0.S
@@ -67,27 +67,6 @@
  */
 
 /*
- * declare nand_boot() or board_init_r() to jump to at end of crt0
- */
-
-#if defined(CONFIG_NAND_SPL)
-
-.globl nand_boot
-
-#elif ! defined(CONFIG_SPL_BUILD)
-
-.globl board_init_r
-
-#endif
-
-/*
- * start and end of BSS
- */
-
-.globl __bss_start
-.globl __bss_end__
-
-/*
  * entry point of crt0 sequence
  */
 
-- 
1.7.10.4

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH v7 02/19] nand: mxc: Add support for i.MX5

2013-02-15 Thread Benoît Thébaudeau
Signed-off-by: Benoît Thébaudeau 
---
Changes in v7: None
Changes in v6: None
Changes in v5: None
Changes in v4: None
Changes in v3:
 - Separate code reformatting from behavioral changes.

Changes in v2: None

 arch/arm/include/asm/arch-mx5/imx-regs.h |9 +++
 drivers/mtd/nand/mxc_nand.c  |  129 +++---
 include/fsl_nfc.h|   79 +-
 nand_spl/nand_boot_fsl_nfc.c |   67 +++-
 4 files changed, 269 insertions(+), 15 deletions(-)

diff --git a/arch/arm/include/asm/arch-mx5/imx-regs.h 
b/arch/arm/include/asm/arch-mx5/imx-regs.h
index 249d15a..9aa0c6a 100644
--- a/arch/arm/include/asm/arch-mx5/imx-regs.h
+++ b/arch/arm/include/asm/arch-mx5/imx-regs.h
@@ -224,6 +224,15 @@
 #define CS0_32M_CS1_32M_CS2_32M_CS3_32M3
 
 /*
+ * SRC register definitions
+ */
+#if defined(CONFIG_MX51)
+#define SRC_SBMR_NF16B (1 << 2)
+#elif defined(CONFIG_MX53)
+#define SRC_SBMR_NF16B (1 << 13)
+#endif
+
+/*
  * CSPI register definitions
  */
 #define MXC_ECSPI
diff --git a/drivers/mtd/nand/mxc_nand.c b/drivers/mtd/nand/mxc_nand.c
index 045df49..cead757 100644
--- a/drivers/mtd/nand/mxc_nand.c
+++ b/drivers/mtd/nand/mxc_nand.c
@@ -22,7 +22,8 @@
 #include 
 #include 
 #include 
-#if defined(CONFIG_MX25) || defined(CONFIG_MX27) || defined(CONFIG_MX35)
+#if defined(CONFIG_MX25) || defined(CONFIG_MX27) || defined(CONFIG_MX35) || \
+   defined(CONFIG_MX51) || defined(CONFIG_MX53)
 #include 
 #endif
 #include 
@@ -36,6 +37,9 @@ struct mxc_nand_host {
struct nand_chip*nand;
 
struct fsl_nfc_regs __iomem *regs;
+#ifdef MXC_NFC_V3_2
+   struct fsl_nfc_ip_regs __iomem  *ip_regs;
+#endif
int spare_only;
int status_request;
int pagesize_2k;
@@ -77,7 +81,7 @@ static struct nand_ecclayout nand_hw_eccoob2k = {
.oobfree = { {2, 4}, {11, 11}, {27, 11}, {43, 11}, {59, 5} },
 };
 #endif
-#elif defined(MXC_NFC_V2_1)
+#elif defined(MXC_NFC_V2_1) || defined(MXC_NFC_V3_2)
 #ifndef CONFIG_SYS_NAND_LARGEPAGE
 static struct nand_ecclayout nand_hw_eccoob = {
.eccbytes = 9,
@@ -130,6 +134,16 @@ static int is_16bit_nand(void)
else
return 0;
 }
+#elif defined(CONFIG_MX51) || defined(CONFIG_MX53)
+static int is_16bit_nand(void)
+{
+   struct src *src = (struct src *)SRC_BASE_ADDR;
+
+   if (readl(&src->sbmr) & SRC_SBMR_NF16B)
+   return 1;
+   else
+   return 0;
+}
 #else
 #warning "8/16 bit NAND autodetection not supported"
 static int is_16bit_nand(void)
@@ -158,10 +172,17 @@ static void wait_op_done(struct mxc_nand_host *host, int 
max_retries,
uint32_t tmp;
 
while (max_retries-- > 0) {
+#if defined(MXC_NFC_V1) || defined(MXC_NFC_V2_1)
tmp = readnfc(&host->regs->config2);
if (tmp & NFC_V1_V2_CONFIG2_INT) {
tmp &= ~NFC_V1_V2_CONFIG2_INT;
writenfc(tmp, &host->regs->config2);
+#elif defined(MXC_NFC_V3_2)
+   tmp = readnfc(&host->ip_regs->ipc);
+   if (tmp & NFC_V3_IPC_INT) {
+   tmp &= ~NFC_V3_IPC_INT;
+   writenfc(tmp, &host->ip_regs->ipc);
+#endif
break;
}
udelay(1);
@@ -213,7 +234,7 @@ static void send_prog_page(struct mxc_nand_host *host, 
uint8_t buf_id,
if (spare_only)
MTDDEBUG(MTD_DEBUG_LEVEL1, "send_prog_page (%d)\n", spare_only);
 
-   if (is_mxc_nfc_21()) {
+   if (is_mxc_nfc_21() || is_mxc_nfc_32()) {
int i;
/*
 *  The controller copies the 64 bytes of spare data from
@@ -229,11 +250,18 @@ static void send_prog_page(struct mxc_nand_host *host, 
uint8_t buf_id,
}
}
 
+#if defined(MXC_NFC_V1) || defined(MXC_NFC_V2_1)
writenfc(buf_id, &host->regs->buf_addr);
+#elif defined(MXC_NFC_V3_2)
+   uint32_t tmp = readnfc(&host->regs->config1);
+   tmp &= ~NFC_V3_CONFIG1_RBA_MASK;
+   tmp |= NFC_V3_CONFIG1_RBA(buf_id);
+   writenfc(tmp, &host->regs->config1);
+#endif
 
/* Configure spare or page+spare access */
if (!host->pagesize_2k) {
-   uint16_t config1 = readnfc(&host->regs->config1);
+   uint32_t config1 = readnfc(&host->regs->config1);
if (spare_only)
config1 |= NFC_CONFIG1_SP_EN;
else
@@ -256,7 +284,14 @@ static void send_read_page(struct mxc_nand_host *host, 
uint8_t buf_id,
 {
MTDDEBUG(MTD_DEBUG_LEVEL3, "send_read_page (%d)\n", spare_only);
 
+#if defined(MXC_NFC_V1) || defined(MXC_NFC_V2_1)
writenfc(buf_id, &host->regs->buf_addr);
+#elif defined(MXC_NFC_V3_2)
+   uint32_t tmp = readnfc(&host->regs->config1);
+   tmp &= ~NFC_V3_CONFIG1_RBA_MASK;
+  

[U-Boot] [PATCH v7 06/19] nand: mxc: Use appropriate page number in syndrome functions

2013-02-15 Thread Benoît Thébaudeau
The syndrome functions should use the page number passed as argument instead of
the page number saved upon NAND_CMD_READ0.

This does not make any difference if the NAND_NO_AUTOINCR option is set, but
otherwise this fixes accesses to the wrong pages.

Signed-off-by: Benoît Thébaudeau 
---
Changes in v7: None
Changes in v6: None
Changes in v5: None
Changes in v4:
 - New patch.

Changes in v3: None
Changes in v2: None

 drivers/mtd/nand/mxc_nand.c |6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/mtd/nand/mxc_nand.c b/drivers/mtd/nand/mxc_nand.c
index 249328e..001c2c0 100644
--- a/drivers/mtd/nand/mxc_nand.c
+++ b/drivers/mtd/nand/mxc_nand.c
@@ -504,7 +504,7 @@ static int mxc_nand_read_page_raw_syndrome(struct mtd_info 
*mtd,
int n;
 
_mxc_nand_enable_hwecc(mtd, 0);
-   chip->cmdfunc(mtd, NAND_CMD_READ0, 0x00, host->page_addr);
+   chip->cmdfunc(mtd, NAND_CMD_READ0, 0x00, page);
 
for (n = 0, steps = chip->ecc.steps; steps > 0; n++, steps--) {
host->col_addr = n * eccsize;
@@ -548,7 +548,7 @@ static int mxc_nand_read_page_syndrome(struct mtd_info *mtd,
uint8_t *oob = chip->oob_poi;
 
MTDDEBUG(MTD_DEBUG_LEVEL1, "Reading page %u to buf %p oob %p\n",
- host->page_addr, buf, oob);
+ page, buf, oob);
 
/* first read the data area and the available portion of OOB */
for (n = 0; eccsteps; n++, eccsteps--, p += eccsize) {
@@ -586,7 +586,7 @@ static int mxc_nand_read_page_syndrome(struct mtd_info *mtd,
 
/* Then switch ECC off and read the OOB area to get the ECC code */
_mxc_nand_enable_hwecc(mtd, 0);
-   chip->cmdfunc(mtd, NAND_CMD_READOOB, mtd->writesize, host->page_addr);
+   chip->cmdfunc(mtd, NAND_CMD_READOOB, mtd->writesize, page);
eccsteps = chip->ecc.steps;
oob = chip->oob_poi + chip->ecc.prepad;
for (n = 0; eccsteps; n++, eccsteps--, p += eccsize) {
-- 
1.7.10.4

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH v7 09/19] arm1136: Remove redundant relocate_code() return

2013-02-15 Thread Benoît Thébaudeau
Signed-off-by: Benoît Thébaudeau 
---
Changes in v7: None
Changes in v6:
 - New patch, extracted from "nand: mxc: Switch NAND SPL to generic SPL".

Changes in v5: None
Changes in v4: None
Changes in v3: None
Changes in v2: None

 arch/arm/cpu/arm1136/start.S |2 --
 1 file changed, 2 deletions(-)

diff --git a/arch/arm/cpu/arm1136/start.S b/arch/arm/cpu/arm1136/start.S
index 4053e86..b5931f8 100644
--- a/arch/arm/cpu/arm1136/start.S
+++ b/arch/arm/cpu/arm1136/start.S
@@ -239,8 +239,6 @@ fixnext:
add r2, r2, #8  /* each rel.dyn entry is 8 bytes */
cmp r2, r3
blo fixloop
-   bx  lr
-
 #endif
 
 relocate_done:
-- 
1.7.10.4

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH v7 08/19] arm: relocate_code() is no longer noreturn

2013-02-15 Thread Benoît Thébaudeau
Commit e05e5de7fae5bec79617e113916dac6631251156 made ARM's relocate_code()
return to its caller, but it did not update its declaration accordingly.

Fixing this function declaration fixes dropped C code following calls to
relocate_code().

Signed-off-by: Benoît Thébaudeau 
---
Changes in v7: None
Changes in v6:
 - New patch, extracted from "nand: mxc: Switch NAND SPL to generic SPL".

Changes in v5: None
Changes in v4: None
Changes in v3: None
Changes in v2: None

 include/common.h |6 +-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/include/common.h b/include/common.h
index 4ad17ea..691e279 100644
--- a/include/common.h
+++ b/include/common.h
@@ -515,7 +515,11 @@ intdcache_status (void);
 void   dcache_enable (void);
 void   dcache_disable(void);
 void   mmu_disable(void);
-void   relocate_code (ulong, gd_t *, ulong) __attribute__ ((noreturn));
+void   relocate_code(ulong, gd_t *, ulong)
+#if !defined(CONFIG_ARM)
+__attribute__ ((noreturn))
+#endif
+;
 ulong  get_endaddr   (void);
 void   trap_init (ulong);
 #if defined (CONFIG_4xx)   || \
-- 
1.7.10.4

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH v7 05/19] nand: mxc: Fix debug trace in mxc_nand_read_oob_syndrome()

2013-02-15 Thread Benoît Thébaudeau
The page number indicated in the debug trace of mxc_nand_read_oob_syndrome() did
not match the page being worked on.

By the way, replace the GCC-specific __FUNCTION__ with __func__.

Signed-off-by: Benoît Thébaudeau 
---
Changes in v7: None
Changes in v6: None
Changes in v5:
 - Replace __FUNCTION__ with __func__.

Changes in v4:
 - New patch.

Changes in v3: None
Changes in v2: None

 drivers/mtd/nand/mxc_nand.c |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/mtd/nand/mxc_nand.c b/drivers/mtd/nand/mxc_nand.c
index cead757..249328e 100644
--- a/drivers/mtd/nand/mxc_nand.c
+++ b/drivers/mtd/nand/mxc_nand.c
@@ -450,7 +450,7 @@ static int mxc_nand_read_oob_syndrome(struct mtd_info *mtd,
 
MTDDEBUG(MTD_DEBUG_LEVEL0,
"%s: Reading OOB area of page %u to oob %p\n",
-__FUNCTION__, host->page_addr, buf);
+__func__, page, buf);
 
chip->cmdfunc(mtd, NAND_CMD_READOOB, mtd->writesize, page);
for (i = 0; i < chip->ecc.steps; i++) {
-- 
1.7.10.4

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH v7 04/19] imx: mx53ard: Add support for NAND Flash

2013-02-15 Thread Benoît Thébaudeau
Add support for the Samsung K9LAG08U0M NAND Flash (2-GiB MLC NAND Flash, 2-kiB
pages, 256-kiB blocks, 30-ns R/W cycles, 1 CS) on mx53ard.

eNFC_CLK_ROOT is set up with a cycle time of 37.5 ns (400 MHz / 3 / 5) for this
board, which satisfies the 30-ns NF R/W cycle requirement.

Signed-off-by: Benoît Thébaudeau 
---
Changes in v7: None
Changes in v6: None
Changes in v5: None
Changes in v4: None
Changes in v3:
 - New patch.

Changes in v2: None

 board/freescale/mx53ard/mx53ard.c |   18 ++
 include/configs/mx53ard.h |   10 ++
 2 files changed, 28 insertions(+)

diff --git a/board/freescale/mx53ard/mx53ard.c 
b/board/freescale/mx53ard/mx53ard.c
index 2fc8570..8907388 100644
--- a/board/freescale/mx53ard/mx53ard.c
+++ b/board/freescale/mx53ard/mx53ard.c
@@ -58,6 +58,23 @@ void dram_init_banksize(void)
gd->bd->bi_dram[1].size = PHYS_SDRAM_2_SIZE;
 }
 
+#ifdef CONFIG_NAND_MXC
+static void setup_iomux_nand(void)
+{
+   mxc_request_iomux(MX53_PIN_NANDF_CLE, IOMUX_CONFIG_ALT0);
+   mxc_request_iomux(MX53_PIN_NANDF_ALE, IOMUX_CONFIG_ALT0);
+   mxc_request_iomux(MX53_PIN_NANDF_CS0, IOMUX_CONFIG_ALT0);
+   mxc_request_iomux(MX53_PIN_NANDF_RE_B, IOMUX_CONFIG_ALT0);
+   mxc_request_iomux(MX53_PIN_NANDF_WE_B, IOMUX_CONFIG_ALT0);
+   mxc_request_iomux(MX53_PIN_NANDF_WP_B, IOMUX_CONFIG_ALT0);
+   mxc_request_iomux(MX53_PIN_NANDF_RB0, IOMUX_CONFIG_ALT0);
+}
+#else
+static void setup_iomux_nand(void)
+{
+}
+#endif
+
 static void setup_iomux_uart(void)
 {
/* UART1 RXD */
@@ -277,6 +294,7 @@ static void weim_cs1_settings(void)
 
 int board_early_init_f(void)
 {
+   setup_iomux_nand();
setup_iomux_uart();
return 0;
 }
diff --git a/include/configs/mx53ard.h b/include/configs/mx53ard.h
index 62cb42b..148f7a2 100644
--- a/include/configs/mx53ard.h
+++ b/include/configs/mx53ard.h
@@ -41,6 +41,16 @@
 #define CONFIG_BOARD_EARLY_INIT_F
 #define CONFIG_MXC_GPIO
 
+#define CONFIG_SYS_MAX_NAND_DEVICE 1
+#define CONFIG_SYS_NAND_BASE   NFC_BASE_ADDR_AXI
+#define CONFIG_NAND_MXC
+#define CONFIG_MXC_NAND_REGS_BASE  NFC_BASE_ADDR_AXI
+#define CONFIG_MXC_NAND_IP_REGS_BASE   NFC_BASE_ADDR
+#define CONFIG_SYS_NAND_LARGEPAGE
+#define CONFIG_MXC_NAND_HWECC
+#define CONFIG_SYS_NAND_USE_FLASH_BBT
+#define CONFIG_CMD_NAND
+
 #define CONFIG_MXC_UART
 #define CONFIG_MXC_UART_BASE   UART1_BASE
 
-- 
1.7.10.4

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH v7 01/19] nand: mxc: Prepare to add support for i.MX5

2013-02-15 Thread Benoît Thébaudeau
Add some abstraction to NFC definitions so that some parts of the current code
can also be used for future i.MX5 code.

Clean up a few things by the way.

Signed-off-by: Benoît Thébaudeau 
---
Changes in v7:
 - Fix typo in patch description.

Changes in v6: None
Changes in v5: None
Changes in v4: None
Changes in v3:
 - Separate code reformatting from behavioral changes.

Changes in v2:
 - Fix warning for unused tmp variable in board_nand_init() for NFC V1.

 drivers/mtd/nand/mxc_nand.c  |   92 +-
 include/fsl_nfc.h|   72 -
 nand_spl/nand_boot_fsl_nfc.c |   47 +++--
 3 files changed, 97 insertions(+), 114 deletions(-)

diff --git a/drivers/mtd/nand/mxc_nand.c b/drivers/mtd/nand/mxc_nand.c
index d0ded48..045df49 100644
--- a/drivers/mtd/nand/mxc_nand.c
+++ b/drivers/mtd/nand/mxc_nand.c
@@ -150,7 +150,7 @@ static uint32_t *mxc_nand_memcpy32(uint32_t *dest, uint32_t 
*source, size_t size
 
 /*
  * This function polls the NANDFC to wait for the basic operation to
- * complete by checking the INT bit of config2 register.
+ * complete by checking the INT bit.
  */
 static void wait_op_done(struct mxc_nand_host *host, int max_retries,
uint16_t param)
@@ -158,10 +158,10 @@ static void wait_op_done(struct mxc_nand_host *host, int 
max_retries,
uint32_t tmp;
 
while (max_retries-- > 0) {
-   if (readw(&host->regs->config2) & NFC_INT) {
-   tmp = readw(&host->regs->config2);
-   tmp  &= ~NFC_INT;
-   writew(tmp, &host->regs->config2);
+   tmp = readnfc(&host->regs->config2);
+   if (tmp & NFC_V1_V2_CONFIG2_INT) {
+   tmp &= ~NFC_V1_V2_CONFIG2_INT;
+   writenfc(tmp, &host->regs->config2);
break;
}
udelay(1);
@@ -180,8 +180,8 @@ static void send_cmd(struct mxc_nand_host *host, uint16_t 
cmd)
 {
MTDDEBUG(MTD_DEBUG_LEVEL3, "send_cmd(host, 0x%x)\n", cmd);
 
-   writew(cmd, &host->regs->flash_cmd);
-   writew(NFC_CMD, &host->regs->config2);
+   writenfc(cmd, &host->regs->flash_cmd);
+   writenfc(NFC_CMD, &host->regs->operation);
 
/* Wait for operation to complete */
wait_op_done(host, TROP_US_DELAY, cmd);
@@ -196,8 +196,8 @@ static void send_addr(struct mxc_nand_host *host, uint16_t 
addr)
 {
MTDDEBUG(MTD_DEBUG_LEVEL3, "send_addr(host, 0x%x)\n", addr);
 
-   writew(addr, &host->regs->flash_addr);
-   writew(NFC_ADDR, &host->regs->config2);
+   writenfc(addr, &host->regs->flash_addr);
+   writenfc(NFC_ADDR, &host->regs->operation);
 
/* Wait for operation to complete */
wait_op_done(host, TROP_US_DELAY, addr);
@@ -229,19 +229,19 @@ static void send_prog_page(struct mxc_nand_host *host, 
uint8_t buf_id,
}
}
 
-   writew(buf_id, &host->regs->buf_addr);
+   writenfc(buf_id, &host->regs->buf_addr);
 
/* Configure spare or page+spare access */
if (!host->pagesize_2k) {
-   uint16_t config1 = readw(&host->regs->config1);
+   uint16_t config1 = readnfc(&host->regs->config1);
if (spare_only)
-   config1 |= NFC_SP_EN;
+   config1 |= NFC_CONFIG1_SP_EN;
else
-   config1 &= ~NFC_SP_EN;
-   writew(config1, &host->regs->config1);
+   config1 &= ~NFC_CONFIG1_SP_EN;
+   writenfc(config1, &host->regs->config1);
}
 
-   writew(NFC_INPUT, &host->regs->config2);
+   writenfc(NFC_INPUT, &host->regs->operation);
 
/* Wait for operation to complete */
wait_op_done(host, TROP_US_DELAY, spare_only);
@@ -256,19 +256,19 @@ static void send_read_page(struct mxc_nand_host *host, 
uint8_t buf_id,
 {
MTDDEBUG(MTD_DEBUG_LEVEL3, "send_read_page (%d)\n", spare_only);
 
-   writew(buf_id, &host->regs->buf_addr);
+   writenfc(buf_id, &host->regs->buf_addr);
 
/* Configure spare or page+spare access */
if (!host->pagesize_2k) {
-   uint32_t config1 = readw(&host->regs->config1);
+   uint32_t config1 = readnfc(&host->regs->config1);
if (spare_only)
-   config1 |= NFC_SP_EN;
+   config1 |= NFC_CONFIG1_SP_EN;
else
-   config1 &= ~NFC_SP_EN;
-   writew(config1, &host->regs->config1);
+   config1 &= ~NFC_CONFIG1_SP_EN;
+   writenfc(config1, &host->regs->config1);
}
 
-   writew(NFC_OUTPUT, &host->regs->config2);
+   writenfc(NFC_OUTPUT, &host->regs->operation);
 
/* Wait for operation to complete */
wait_op_done(host, TROP_US_DELAY, spare_only);
@@ -296,14 +296,14 @@ static void send_read_id(struct

[U-Boot] [PATCH v7 03/19] imx: mx5: lowlevel_init: Simplify code

2013-02-15 Thread Benoît Thébaudeau
Don't use several instructions to build constant values.

Signed-off-by: Benoît Thébaudeau 
Acked-by: Stefano Babic 
---
Changes in v7: None
Changes in v6: None
Changes in v5: None
Changes in v4: None
Changes in v3:
 - New patch.

Changes in v2: None

 arch/arm/cpu/armv7/mx5/lowlevel_init.S |8 ++--
 1 file changed, 2 insertions(+), 6 deletions(-)

diff --git a/arch/arm/cpu/armv7/mx5/lowlevel_init.S 
b/arch/arm/cpu/armv7/mx5/lowlevel_init.S
index 6d9396a..dfce0ca 100644
--- a/arch/arm/cpu/armv7/mx5/lowlevel_init.S
+++ b/arch/arm/cpu/armv7/mx5/lowlevel_init.S
@@ -309,8 +309,7 @@ setup_pll_func:
 ldr r0, =CCM_BASE_ADDR
 ldr r1, =0x00015154
 str r1, [r0, #CLKCTL_CBCMR]
-ldr r1, =0x02888945
-orr r1, r1, #(1 << 16)
+ldr r1, =0x02898945
 str r1, [r0, #CLKCTL_CBCDR]
 /* make sure change is effective */
 1:  ldr r1, [r0, #CLKCTL_CDHIPR]
@@ -321,10 +320,7 @@ setup_pll_func:
 
/* Switch peripheral to PLL2 */
ldr r0, =CCM_BASE_ADDR
-   ldr r1, =0x00808145
-   orr r1, r1, #(2 << 10)
-   orr r1, r1, #(0 << 16)
-   orr r1, r1, #(1 << 19)
+   ldr r1, =0x00888945
str r1, [r0, #CLKCTL_CBCDR]
 
ldr r1, =0x00016154
-- 
1.7.10.4

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] break command.

2013-02-15 Thread Ira W. Snyder
On Fri, Feb 15, 2013 at 02:00:10PM -0500, Harvey Chapman wrote:
> On Feb 15, 2013, at 7:38 AM, Albert ARIBAUD  wrote:
> > On Thu, 14 Feb 2013 12:19:11 -0800
> > (PST), Sean Omalley  wrote:
> > 
> >> Is there anyway to break back into u-boot after trying to boot from linux 
> >> (arm)? Similar to Open Firmwares stop-a, ctrl-break? I didn't see anything 
> >> in the documentation nor poking around online. I am really hoping I missed 
> >> something, or there is support that just needs to be compiled in. :)
> >> 
> > As soon as U-Boot gives control to the payload (Linux or whatever)
> > there is no possible assumption that U-Boot remains intact in RAM, so
> > your only chance is indeed some hardware reset... But then the question
> > is not related to U-Boot any more.
> 
> On that note, does anyone know of a device that would do this? Perhaps a 
> combination device like this:
> 
> - USB interface to a pc
> - serial port for device
> - relay controllable A/C power plug (U.S.)
> - controllable gpio (for wiring to a power button, reset switch, etc)
> 

I have a BayTech network-attached powerstrip that does something
similar. It has switchable AC outlets and network-accessible serial
ports, but it doesn't have controllable GPIOs or a USB interface.

Ira
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] break command.

2013-02-15 Thread Peter Barada
On 02/15/2013 02:00 PM, Harvey Chapman wrote:
> On Feb 15, 2013, at 7:38 AM, Albert ARIBAUD  wrote:
>> On Thu, 14 Feb 2013 12:19:11 -0800
>> (PST), Sean Omalley  wrote:
>>
>>> Is there anyway to break back into u-boot after trying to boot from linux 
>>> (arm)? Similar to Open Firmwares stop-a, ctrl-break? I didn't see anything 
>>> in the documentation nor poking around online. I am really hoping I missed 
>>> something, or there is support that just needs to be compiled in. :)
>>>
>> As soon as U-Boot gives control to the payload (Linux or whatever)
>> there is no possible assumption that U-Boot remains intact in RAM, so
>> your only chance is indeed some hardware reset... But then the question
>> is not related to U-Boot any more.
> On that note, does anyone know of a device that would do this? Perhaps a 
> combination device like this:
>
> - USB interface to a pc
> - serial port for device
> - relay controllable A/C power plug (U.S.)
> - controllable gpio (for wiring to a power button, reset switch, etc)
>
>
If your board/processor has it, a watchdog can be used to force a reset
if it expires...

-- 
Peter Barada
peter.bar...@logicpd.com

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH v3 00/10] Add Marvell Dove and SolidRun CuBox

2013-02-15 Thread Prafulla Wadaskar


> -Original Message-
> From: Jason Cooper [mailto:ja...@lakedaemon.net]
> Sent: 14 February 2013 13:44
> To: Daniel Stodden
> Cc: Prafulla Wadaskar; Luka Perkov; Sebastian Hesselbarth; Rabeeh
> Khoury; u-boot@lists.denx.de; a...@theia.denx.de; Fleming
> Subject: Re: [U-Boot] [PATCH v3 00/10] Add Marvell Dove and SolidRun
> CuBox
> 
> On Thu, Feb 14, 2013 at 01:35:47PM -0800, Daniel Stodden wrote:
> > On Thu, 2013-02-14 at 13:38 -0500, Jason Cooper wrote:
> > > On Mon, Feb 11, 2013 at 02:46:57PM -0800, Prafulla Wadaskar wrote:
> > > >
> > > >
> > > > > -Original Message-
> > > > > From: Luka Perkov [mailto:l...@openwrt.org]
> > > > > Sent: 11 February 2013 02:08
> > > > > To: Sebastian Hesselbarth
> > > > > Cc: Prafulla Wadaskar; u-boot@lists.denx.de; Rabeeh Khoury;
> Albert
> > > > > Aribaud; Andy Fleming; Joe Hershberger; Daniel Stodden
> > > > > Subject: Re: [PATCH v3 00/10] Add Marvell Dove and SolidRun
> CuBox
> > > > >
> > > > > On Mon, Feb 11, 2013 at 10:43:00AM +0100, Sebastian
> Hesselbarth wrote:
> > > > > > u-boot has kwboot for kirkwood since ages, but the general
> > > > > functionality
> > > > > > to boot through UART boot mode also applies to above SoCs. I
> took
> > > > > > kwbimage to reflect that kwboot should be used for booting
> this
> > > > > image.
> > > > > > IMHO introducing new abbreviated image names like dvbimage
> will just
> > > > > > distract people from using the correct tool to boot it.
> kwboot will
> > > > > not
> > > > > > be renamed, will it?
> > > > >
> > > > > I don't mind if we rename kwboot to lets say mvebu-boot. That
> name
> > > > > would
> > > > > fit for kirkwood, dove and armada SoCs in the future...
> > > >
> > > > That's good idea.
> > > > I vote for renaming kwboot as "mvboot", that will inline with
> predefined file naming strategy.
> > >
> > > Is kwboot practically extensible to mmp and pxa?
> >
> > If those have a similar mechanism, and it happens to be based on
> Xmodem,
> > then there's probably sharable ground.
> >
> > The boot message protocol on Marvell chips is a fairly ad-hoc
> construct.
> 
> right, I was more concerned with the naming convention.  At least in
> the
> kernel, mvebu includes all Marvell SoCs _except_ mmp and pxa.  I would
> presume mv would be an all-inclusive name.
> 
> I didn't really have a strong opinion on it, so I'm fine either way.
> In
> hindsight, I'd prefer not to type 'mvebu-boot'...

If the code or tool is being shared between more that one Marvell SoCs, it 
makes sense to use mv_** naming convention. This is to inline with the 
Marvell's naming strategy implemented so far in u-boot code.

Whereas, we can always have _ type of naming conventions 
for specific implementation.

At present, kwboot is specific to Kirkwood, the support is being extended for 
Dove and latter few more.. so it makes sense to rename it as mvboot.

I need to check whether kwboot is practically extensible to mmp and pxa, but it 
makes sense to rename it as mvboot since it supports more than Kirkwood.

Regards..
Prafulla . . .
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] break command.

2013-02-15 Thread Harvey Chapman
On Feb 15, 2013, at 7:38 AM, Albert ARIBAUD  wrote:
> On Thu, 14 Feb 2013 12:19:11 -0800
> (PST), Sean Omalley  wrote:
> 
>> Is there anyway to break back into u-boot after trying to boot from linux 
>> (arm)? Similar to Open Firmwares stop-a, ctrl-break? I didn't see anything 
>> in the documentation nor poking around online. I am really hoping I missed 
>> something, or there is support that just needs to be compiled in. :)
>> 
> As soon as U-Boot gives control to the payload (Linux or whatever)
> there is no possible assumption that U-Boot remains intact in RAM, so
> your only chance is indeed some hardware reset... But then the question
> is not related to U-Boot any more.

On that note, does anyone know of a device that would do this? Perhaps a 
combination device like this:

- USB interface to a pc
- serial port for device
- relay controllable A/C power plug (U.S.)
- controllable gpio (for wiring to a power button, reset switch, etc)

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH v1] Exynos5: Pinmux: Add fdt for pinmux

2013-02-15 Thread Akshay Saraswat
This patch adds fdt nodes for peripherals which require
pin muxing and configuration. Existing pinmux code modified
to retrieve gpio range and function related info from fdt.

Signed-off-by: Akshay Saraswat 
---
 arch/arm/cpu/armv7/exynos/pinmux.c|  287 -
 arch/arm/dts/exynos5250.dtsi  |  197 
 arch/arm/include/asm/arch-exynos/pinmux.h |9 +
 include/fdtdec.h  |1 +
 lib/fdtdec.c  |1 +
 5 files changed, 405 insertions(+), 90 deletions(-)

diff --git a/arch/arm/cpu/armv7/exynos/pinmux.c 
b/arch/arm/cpu/armv7/exynos/pinmux.c
index c79d58e..801fa44 100644
--- a/arch/arm/cpu/armv7/exynos/pinmux.c
+++ b/arch/arm/cpu/armv7/exynos/pinmux.c
@@ -27,87 +27,136 @@
 #include 
 #include 
 
-static void exynos5_uart_config(int peripheral)
+DECLARE_GLOBAL_DATA_PTR;
+
+static int get_fdt_values(struct pinmux_dev *pdev)
+{
+   int node, subnode;
+   int depthp = 0;
+
+   /* Get the node from FDT for pinmux */
+   node = fdtdec_next_compatible(gd->fdt_blob, 0,
+ COMPAT_SAMSUNG_PINMUX);
+   if (node < 0) {
+   printf("PINMUX: No node for pinmux in device tree\n");
+   return -1;
+   }
+
+   /* Trace subnodes for the given peripheral's node */
+   for (subnode = fdtdec_next_compatible_subnode(gd->fdt_blob, node,
+   COMPAT_SAMSUNG_PINMUX, &depthp); subnode > 0;
+   subnode = fdtdec_next_compatible_subnode(gd->fdt_blob, subnode,
+   COMPAT_SAMSUNG_PINMUX, &depthp)) {
+
+   int len;
+   char *periph_name = (char *)fdt_get_name(gd->fdt_blob,
+   subnode, &len);
+
+   /* If peripheral name matches to the node name */
+   if (!(strcmp(periph_name, pdev->dev_name))) {
+   pdev->start = fdtdec_get_int(gd->fdt_blob,
+   subnode, "samsung,pin-base", -1);
+   pdev->count = fdtdec_get_int(gd->fdt_blob,
+   subnode, "samsung,pin-count", -1);
+   pdev->start_ext = fdtdec_get_int(gd->fdt_blob,
+   subnode, "samsung,pin-ext", -1);
+   pdev->function = fdtdec_get_int(gd->fdt_blob,
+   subnode, "samsung,pin-function", -1);
+   break;
+   }
+   }
+
+   return 0;
+}
+
+static int exynos5_uart_config(int peripheral)
 {
-   int i, start, count;
+   int i;
+   struct pinmux_dev pdev;
 
switch (peripheral) {
case PERIPH_ID_UART0:
-   start = GPIO_A00;
-   count = 4;
+   pdev.dev_name = "pingrp-uart0";
break;
case PERIPH_ID_UART1:
-   start = GPIO_D00;
-   count = 4;
+   pdev.dev_name = "pingrp-uart1";
break;
case PERIPH_ID_UART2:
-   start = GPIO_A10;
-   count = 4;
+   pdev.dev_name = "pingrp-uart2";
break;
case PERIPH_ID_UART3:
-   start = GPIO_A14;
-   count = 2;
+   pdev.dev_name = "pingrp-uart3";
break;
}
-   for (i = start; i < start + count; i++) {
-   gpio_set_pull(i, GPIO_PULL_NONE);
-   gpio_cfg_pin(i, GPIO_FUNC(0x2));
+
+   /* Retrieve gpio range and base for this UART */
+   if (get_fdt_values(&pdev))
+   return -1;
+
+   /* Apply pin configurations */
+   for (i = 0; i < pdev.count; i++) {
+   gpio_set_pull(pdev.start + i, GPIO_PULL_NONE);
+   gpio_cfg_pin(pdev.start + i, GPIO_FUNC(pdev.function));
}
+
+   return 0;
 }
 
 static int exynos5_mmc_config(int peripheral, int flags)
 {
-   int i, start, start_ext, gpio_func = 0;
+   int i;
+   struct pinmux_dev pdev;
 
switch (peripheral) {
case PERIPH_ID_SDMMC0:
-   start = GPIO_C00;
-   start_ext = GPIO_C10;
-   gpio_func = GPIO_FUNC(0x2);
+   pdev.dev_name = "pingrp-sdmmc0";
break;
case PERIPH_ID_SDMMC1:
-   start = GPIO_C20;
-   start_ext = 0;
+   pdev.dev_name = "pingrp-sdmmc1";
break;
case PERIPH_ID_SDMMC2:
-   start = GPIO_C30;
-   start_ext = GPIO_C43;
-   gpio_func = GPIO_FUNC(0x3);
+   pdev.dev_name = "pingrp-sdmmc2";
break;
case PERIPH_ID_SDMMC3:
-   start = GPIO_C40;
-   start_ext = 0;
+   pdev.dev_name = "pingrp-sdmmc3";
break;
}
-   if ((flags & PINMUX_FLAG_8BIT_MODE) && !start_ext) {
+
+   /* Retrieve gpio rang

Re: [U-Boot] Please pull u-boot-x86.git

2013-02-15 Thread Tom Rini
On Thu, Feb 14, 2013 at 08:39:53PM -0800, Simon Glass wrote:

> Hi Tom,
> 
> The following changes since commit 9c748e02d99476e6a08d55eadfd8776edffe1e2e:
> 
>   Merge branch 'next' of git://git.denx.de/u-boot-mips (2013-02-12
> 19:03:59 -0500)
> 
> are available in the git repository at:
> 
> 
>   git://git.denx.de/u-boot-x86.git master
> 
> for you to fetch changes up to 96dfc0633aabb4f8fb720d39d9deb29dde08749b:
> 
>   x86: Remove unused real mode code (2013-02-14 20:19:03 -0800)
> 
> 
> Simon Glass (5):
>   x86: Remove eNET boards
>   x86: Remove sc520 cpu
>   x86: Remove unneeded cruft from main Makefile
>   x86: Rename CONFIG_NO_X86_RESET_VECTOR to CONFIG_X86_RESET_VECTOR
>   x86: Remove unused real mode code
> 
>  Makefile|   6 +-
>  README  |  11 +-
>  arch/x86/cpu/Makefile   |   4 +-
>  arch/x86/cpu/sc520/Makefile |  58 
>  arch/x86/cpu/sc520/asm-offsets.c|  45 --
>  arch/x86/cpu/sc520/sc520.c  |  66 -
>  arch/x86/cpu/sc520/sc520_car.S  |  94 
>  arch/x86/cpu/sc520/sc520_pci.c  | 142 --
>  arch/x86/cpu/sc520/sc520_reset.c|  40 -
>  arch/x86/cpu/sc520/sc520_sdram.c| 479
> 
>  arch/x86/cpu/sc520/sc520_ssi.c  |  93 
>  arch/x86/cpu/sc520/sc520_timer.c|  89 
>  arch/x86/cpu/u-boot.lds |   2 +-
>  arch/x86/include/asm/arch-sc520/pci.h   |  79 --
>  arch/x86/include/asm/arch-sc520/sc520.h | 372
> ---
>  arch/x86/include/asm/arch-sc520/ssi.h   |  34 -
>  arch/x86/include/asm/realmode.h |  36 -
>  arch/x86/lib/Makefile   |  10 --
>  arch/x86/lib/bios.S | 569
> ---
>  arch/x86/lib/bios.h |   3 -
>  arch/x86/lib/bios_pci.S | 447
> 
>  arch/x86/lib/bios_setup.c   | 179 ---
>  arch/x86/lib/realmode.c |  93 
>  arch/x86/lib/realmode_switch.S  | 232 -
>  arch/x86/lib/video.c|   6 -
>  arch/x86/lib/video_bios.c   | 196 -
>  arch/x86/lib/zimage.c   |  23 ---
>  board/eNET/Makefile |  52 ---
>  board/eNET/eNET.c   | 284
> 
>  board/eNET/eNET_pci.c   | 128 
>  board/eNET/eNET_start.S |  30 
>  board/eNET/eNET_start16.S   |  87 ---
>  board/eNET/hardware.h   |  36 -
>  boards.cfg  |   2 -
>  include/configs/coreboot.h  |   1 -
>  include/configs/eNET.h  | 619
> --
>  36 files changed, 7 insertions(+), 4640 deletions(-)
>  delete mode 100644 arch/x86/cpu/sc520/Makefile
>  delete mode 100644 arch/x86/cpu/sc520/asm-offsets.c
>  delete mode 100644 arch/x86/cpu/sc520/sc520.c
>  delete mode 100644 arch/x86/cpu/sc520/sc520_car.S
>  delete mode 100644 arch/x86/cpu/sc520/sc520_pci.c
>  delete mode 100644 arch/x86/cpu/sc520/sc520_reset.c
>  delete mode 100644 arch/x86/cpu/sc520/sc520_sdram.c
>  delete mode 100644 arch/x86/cpu/sc520/sc520_ssi.c
>  delete mode 100644 arch/x86/cpu/sc520/sc520_timer.c
>  delete mode 100644 arch/x86/include/asm/arch-sc520/pci.h
>  delete mode 100644 arch/x86/include/asm/arch-sc520/sc520.h
>  delete mode 100644 arch/x86/include/asm/arch-sc520/ssi.h
>  delete mode 100644 arch/x86/include/asm/realmode.h
>  delete mode 100644 arch/x86/lib/bios.S
>  delete mode 100644 arch/x86/lib/bios_pci.S
>  delete mode 100644 arch/x86/lib/bios_setup.c
>  delete mode 100644 arch/x86/lib/realmode.c
>  delete mode 100644 arch/x86/lib/realmode_switch.S
>  delete mode 100644 arch/x86/lib/video_bios.c
>  delete mode 100644 board/eNET/Makefile
>  delete mode 100644 board/eNET/eNET.c
>  delete mode 100644 board/eNET/eNET_pci.c
>  delete mode 100644 board/eNET/eNET_start.S
>  delete mode 100644 board/eNET/eNET_start16.S
>  delete mode 100644 board/eNET/hardware.h
>  delete mode 100644 include/configs/eNET.h

Applied to u-boot/master, thanks!

-- 
Tom


signature.asc
Description: Digital signature
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [GIT PULL] u-boot-mips/fixes for master

2013-02-15 Thread Tom Rini
On Fri, Feb 15, 2013 at 06:21:59PM +0100, Daniel Schwierzeck wrote:

> Hi Tom,
> 
> please pull a bugfix for the dynamic relocation patches from last pull 
> request.
> Without the patch, saveenv command is broken on MIPS.
> 
> Thanks,
> Daniel
> 
> The following changes since commit 9c748e02d99476e6a08d55eadfd8776edffe1e2e:
> 
>   Merge branch 'next' of git://git.denx.de/u-boot-mips (2013-02-12
> 19:03:59 -0500)
> 
> are available in the git repository at:
> 
> 
>   git://git.denx.de/u-boot-mips.git fixes
> 
> for you to fetch changes up to 455fbfb668fc8760f45ea099eb182096f3632b15:
> 
>   MIPS: board.c: remove manual relocation of env_name_spec (2013-02-15
> 18:00:04 +0100)
> 
> 
> Daniel Schwierzeck (1):
>   MIPS: board.c: remove manual relocation of env_name_spec
> 
>  arch/mips/lib/board.c | 8 
>  1 file changed, 8 deletions(-)

Applied to u-boot/master, thanks!

-- 
Tom


signature.asc
Description: Digital signature
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [GIT PULL] u-boot-mips/fixes for master

2013-02-15 Thread Daniel Schwierzeck
Hi Tom,

please pull a bugfix for the dynamic relocation patches from last pull request.
Without the patch, saveenv command is broken on MIPS.

Thanks,
Daniel

The following changes since commit 9c748e02d99476e6a08d55eadfd8776edffe1e2e:

  Merge branch 'next' of git://git.denx.de/u-boot-mips (2013-02-12
19:03:59 -0500)

are available in the git repository at:


  git://git.denx.de/u-boot-mips.git fixes

for you to fetch changes up to 455fbfb668fc8760f45ea099eb182096f3632b15:

  MIPS: board.c: remove manual relocation of env_name_spec (2013-02-15
18:00:04 +0100)


Daniel Schwierzeck (1):
  MIPS: board.c: remove manual relocation of env_name_spec

 arch/mips/lib/board.c | 8 
 1 file changed, 8 deletions(-)
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH] MIPS: board.c: remove manual relocation of env_name_spec

2013-02-15 Thread Daniel Schwierzeck
Remove the manual relocation of env_name_spec. This has been missed
in the previous patch series for introducing dynamic relocation
on MIPS.

Signed-off-by: Daniel Schwierzeck 
---
 arch/mips/lib/board.c | 8 
 1 file changed, 8 deletions(-)

diff --git a/arch/mips/lib/board.c b/arch/mips/lib/board.c
index 7a656f6..6c65d97 100644
--- a/arch/mips/lib/board.c
+++ b/arch/mips/lib/board.c
@@ -267,9 +267,6 @@ void board_init_r(gd_t *id, ulong dest_addr)
 #ifndef CONFIG_SYS_NO_FLASH
ulong size;
 #endif
-#ifndef CONFIG_ENV_IS_NOWHERE
-   extern char *env_name_spec;
-#endif
bd_t *bd;
 
gd = id;
@@ -283,11 +280,6 @@ void board_init_r(gd_t *id, ulong dest_addr)
 
serial_initialize();
 
-   /* there are some other pointer constants we must deal with */
-#ifndef CONFIG_ENV_IS_NOWHERE
-   env_name_spec += gd->reloc_off;
-#endif
-
bd = gd->bd;
 
/* The Malloc area is immediately below the monitor copy in DRAM */
-- 
1.8.1.1

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] timing issue - uboot freeze after pringing header

2013-02-15 Thread John Stile
I am trying to move from uboot-1.3.6 to uboot 2013.01, where the old
works, the new prints this before freezing:

U-Boot 2013.01 (Feb 14 2013 - 16:24:13)

CPU: AT91SAM9G20
Crystal frequency:   18.432 MHz
CPU clock:  396.288 MHz
Master clock :  132.096 MHz

My board is the at91sam9g20ek_2mmc.
at91bootstrap-1.1.6 loads uboot.

I am trying both nandflash and dataflash versions, using
include/configs/at91sam9260ek.h 

Messing with settings I have got it back to a state of not printing
anything.

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH v4 4/4] Tegra: MMC: Add DT support to MMCdriver for all T20 boards

2013-02-15 Thread Marc Dietrich
Stephen,

On Thursday 14 February 2013 16:12:42 Stephen Warren wrote:
> On 02/14/2013 02:04 PM, Tom Warren wrote:
> > tegra_mmc_init() now parses the DT info for bus width, WP/CD GPIOs, etc.
> > Tested on Seaboard, fully functional.
> > 
> > Tamonten boards (medcom-wide, plutux, and tec) use a different/new
> > dtsi file w/common settings.
> > 
> > diff --git a/drivers/mmc/tegra_mmc.c b/drivers/mmc/tegra_mmc.c
> > 
> > @@ -515,44 +483,47 @@ static int mmc_core_init(struct mmc *mmc)
> > 
> >  int tegra_mmc_getcd(struct mmc *mmc)
> >  {
> >  
> > struct mmc_host *host = (struct mmc_host *)mmc->priv;
> > 
> > +   debug("%s called, host->cd_gpio = 0x%08X\n", __func__,
> > +   (unsigned)&host->cd_gpio);
> 
> That last line should be:
> 
> host->cd_gpio.gpio;
> 
> The case is because it's a struct address, not the GPIO you want to print.
> 
> > +static int do_mmc_init(int dev_index)
> > 
> > -   if (host->pwr_gpio >= 0) {
> > +   if (fdt_gpio_isvalid(&host->pwr_gpio)) {
> > 
> > sprintf(gpusage, "SD/MMC%d PWR", dev_index);
> > 
> > -   gpio_request(host->pwr_gpio, gpusage);
> > -   gpio_direction_output(host->pwr_gpio, 1);
> > +   gpio_request(host->pwr_gpio.gpio, gpusage);
> > +   fdtdec_set_gpio(&host->pwr_gpio, 1);
> 
> That change completely removes the call to gpio_direction_output;
> fdtdec_set_gpio() doesn't do that. This is the cause of the problem on
> PAZ00, and Harmony.
> 
> > -   if (host->cd_gpio >= 0) {
> > +   if (fdt_gpio_isvalid(&host->cd_gpio)) {
> > 
> > sprintf(gpusage, "SD/MMC%d CD", dev_index);
> > 
> > -   gpio_request(host->cd_gpio, gpusage);
> > -   gpio_direction_input(host->cd_gpio);
> > +   gpio_request(host->cd_gpio.gpio, gpusage);
> > +   card_det = fdtdec_get_gpio(&host->cd_gpio);
> 
> Similarly, this change removes the call to gpio_direction_input();
> fdtdec_get_gpio() just reads the GPIO's value and is pointless here.
> 
> I'll go retest all the boards after fixing that...

yup - with these changes, everything is fine again on PAZ00.

Marc



___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 10/10] MAINTAINERS: add ti814x_evm maintainer

2013-02-15 Thread Tom Rini
On Wed, Feb 13, 2013 at 09:44:04AM -0500, Matt Porter wrote:

> Add a maintainer entry for the TI814x EVM.
> 
> Signed-off-by: Matt Porter 

Please squash this into the patch which adds the EVM, thanks.

-- 
Tom


signature.asc
Description: Digital signature
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 09/10] ti814x_evm: enable ti814x evm build

2013-02-15 Thread Tom Rini
On Wed, Feb 13, 2013 at 09:44:03AM -0500, Matt Porter wrote:

> Enable TI814X EVM build via ti814x_evm target.
> 
> Signed-off-by: Matt Porter 

This should just get squashed into the patch that adds the board code.
Otherwise,

Reviewed-by: Tom Rini 

-- 
Tom


signature.asc
Description: Digital signature
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 08/10] ns16550: enable quirks for ti814x

2013-02-15 Thread Tom Rini
On Wed, Feb 13, 2013 at 09:44:02AM -0500, Matt Porter wrote:

> TI814X requires the same quirks as AM33XX to be enabled.
> 
> Signed-off-by: Matt Porter 

Reviewed-by: Tom Rini 

-- 
Tom


signature.asc
Description: Digital signature
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 07/10] ti814x_evm: add ti814x evm board support

2013-02-15 Thread Tom Rini
On Wed, Feb 13, 2013 at 09:44:01AM -0500, Matt Porter wrote:

> Add TI814X EVM board directory and config file.
> 
> Signed-off-by: Matt Porter 
[snip]
> +++ b/board/ti/ti814x/evm.h
> @@ -0,0 +1,7 @@
> +#ifndef _EVM_H
[snip]
> +++ b/include/configs/ti814x_evm.h
> @@ -0,0 +1,213 @@
> +#define __CONFIG_TI814X_EVM_H

Needs GPLv2 or later boilerplate.

[snip]
> +#define CONFIG_CMDLINE_TAG   1   /* enable passing of ATAGs  */
> +#define CONFIG_SETUP_MEMORY_TAGS 1
> +#define CONFIG_INITRD_TAG1   /* for ramdisk support */

Just #define CONFIG_FOO in these cases (and some others that follow)

[snip]
> + "findfdt="\
> + "if test $board_name = A335BONE; then " \
> + "setenv fdtfile am335x-bone.dtb; fi; " \
> + "if test $board_name = A33515BB; then " \
> + "setenv fdtfile am335x-evm.dtb; fi; " \
> + "if test $board_name = A335X_SK; then " \
> + "setenv fdtfile am335x-evmsk.dtb; fi\0" \

That's not right :)

[snip]
> +/* memtest works on 8 MB in DRAM offset 32MB from start of ram disk*/
> +#define CONFIG_SYS_MEMTEST_START (PHYS_DRAM_1 + (64 * 1024 * 1024))
> +#define CONFIG_SYS_MEMTEST_END   (CONFIG_SYS_MEMTEST_START \
> + + (8 * 1024 * 1024))

This isn't your mistake initially, but this should just be start of
memory to smallest possible config the evm can come with - 4MB.

[snip]
> +#undef CONFIG_NAND_OMAP_GPMC

Just leave it out.

> +#define CONFIG_SYS_BAUDRATE_TABLE{ 110, 300, 600, 1200, 2400, \
> +4800, 9600, 14400, 19200, 28800, 38400, 56000, 57600, 115200 }

Leave that out and get the generic table.  am335x needs to be updated
for that.

[snip]
> +/* Since SPL did pll and ddr initialization for us,
> + * we don't need to do it twice.
> + */

/*
 * Must be like
 * this.
 */

-- 
Tom


signature.asc
Description: Digital signature
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 06/10] am33xx: add dmm support to emif4 library

2013-02-15 Thread Tom Rini
On Wed, Feb 13, 2013 at 09:44:00AM -0500, Matt Porter wrote:

> Adds a config_dmm() routine to support TI814X DMM configuration.
> 
> Signed-off-by: Matt Porter 

Reviewed-by: Tom Rini 

-- 
Tom


signature.asc
Description: Digital signature
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 05/10] am33xx: add ti814x specific register definitions

2013-02-15 Thread Tom Rini
On Wed, Feb 13, 2013 at 09:43:59AM -0500, Matt Porter wrote:

> Support the ti814x specific register definitions within
> arch-am33xx.
> 
> Signed-off-by: Matt Porter 

Reviewed-by: Tom Rini 

-- 
Tom


signature.asc
Description: Digital signature
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 04/10] am33xx: refactor am33xx mux support and add ti814x support

2013-02-15 Thread Tom Rini
On Wed, Feb 13, 2013 at 09:43:58AM -0500, Matt Porter wrote:

> AM33XX and TI814X have a similar mux though the pinmux register
> layout and address space differ. Add a separate ti814x mux include
> to support the TI814X-specific differences.
> 
> Signed-off-by: Matt Porter 

Reviewed-by: Tom Rini 

-- 
Tom


signature.asc
Description: Digital signature
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 03/10] am33xx: refactor am33xx clocks and add ti814x support

2013-02-15 Thread Tom Rini
On Wed, Feb 13, 2013 at 09:43:57AM -0500, Matt Porter wrote:

> Split clock.c for am335x and ti814x and add the ti814x include file.
> 
> Signed-off-by: Matt Porter 

[snip]
> +++ b/arch/arm/cpu/armv7/am33xx/clock-am335x.c
[snip]
> +#define PRCM_MOD_EN  0x2
> +#define PRCM_FORCE_WAKEUP0x2
> +#define PRCM_FUNCTL  0x0
> +
> +#define PRCM_EMIF_CLK_ACTIVITY   BIT(2)
> +#define PRCM_L3_GCLK_ACTIVITYBIT(4)
> +
> +#define PLL_BYPASS_MODE  0x4
> +#define ST_MN_BYPASS 0x0100
> +#define ST_DPLL_CLK  0x0001
> +#define CLK_SEL_MASK 0x7
> +#define CLK_DIV_MASK 0x1f
> +#define CLK_DIV2_MASK0x7f
> +#define CLK_SEL_SHIFT0x8
> +#define CLK_MODE_SEL 0x7
> +#define CLK_MODE_MASK0xfff8
> +#define CLK_DIV_SEL  0xFFE0
> +#define CPGMAC0_IDLE 0x3
> +#define DPLL_CLKDCOLDO_GATE_CTRL0x300
[snip]
> +++ b/arch/arm/cpu/armv7/am33xx/clock-ti814x.c
[snip]
> + /* Selects OSC0 (20MHz) for DMTIMER1 */
> + temp = readl(DMTIMER_CLKSRC);
> + temp &= ~(0x7 << 3);
> + temp |= (0x4 << 3);
> + writel(temp, DMTIMER_CLKSRC);
> +
> + writel(0x2, DM_TIMER1_BASE + 0x54);

Magic values are defined for clock-am335x.c but not in clock-ti814x.c,
please fix clock-ti814x.c to define out the magic values ala am335x.c.
Thanks!

-- 
Tom


signature.asc
Description: Digital signature
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 02/10] am33xx: refactor emif4/ddr to support multiple EMIF instances

2013-02-15 Thread Tom Rini
On Wed, Feb 13, 2013 at 09:43:56AM -0500, Matt Porter wrote:

> The AM33xx emif4/ddr support closely matches what is need to support
> TI814x except that TI814x has two EMIF instances. Refactor all the
> emif4 helper calls and the config_ddr() init function to use an
> additional instance number argument.
> 
> Signed-off-by: Matt Porter 

Reviewed-by: Tom Rini 

-- 
Tom


signature.asc
Description: Digital signature
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 01/10] am33xx: convert defines from am33xx-specific to generic names

2013-02-15 Thread Tom Rini
On Wed, Feb 13, 2013 at 09:43:55AM -0500, Matt Porter wrote:

> Eliminate AM33xx specific names to prepare for TI814x support
> within AM33xx-land.
> 
> Signed-off-by: Matt Porter 

Reviewed-by: Tom Rini 

-- 
Tom


signature.asc
Description: Digital signature
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 7/7] arm: dra7xx: Add dra7xx_evm build support

2013-02-15 Thread Tom Rini
On Wed, Feb 13, 2013 at 12:59:09PM +0530, Lokesh Vutla wrote:

> Adding the build support for dra7xx_evm.
> Reusing omap5_evm.h config by moving it to omap5_common.h
> 
> Signed-off-by: Lokesh Vutla 
> Signed-off-by: R Sricharan 
[snip]
> +#define CONFIG_DRA752_EVM
[snip]
>  #define CONFIG_OMAP5430  /* which is in a 5430 */
>  #define CONFIG_5430EVM   /* working with EVM */

Are these three ever used?  I don't see the two current OMAP5 ones
anywhere and I suspect the new DRA one isn't either.

I know we'll need separate config files at some point down the line, so
I'm fine with creating a small dra7xx_evm config file.

-- 
Tom


signature.asc
Description: Digital signature
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 6/7] arm: dra7xx: Add board files for DRA7XX socs

2013-02-15 Thread Tom Rini
On Wed, Feb 13, 2013 at 12:59:08PM +0530, Lokesh Vutla wrote:

> Adding new board files for DRA7XX socs.
> The pad registers layout is changed completely from OMAP5
> So introducing the new structure here and also adding the
> minimal data.
> 
> Signed-off-by: Lokesh Vutla 
> Signed-off-by: Nishant Kamat 
> Signed-off-by: R Sricharan 

Reviewed-by: Tom Rini 

-- 
Tom


signature.asc
Description: Digital signature
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 5/7] arm: dra7xx: Add DDR related data for DRA752 ES1.0

2013-02-15 Thread Tom Rini
On Wed, Feb 13, 2013 at 12:59:07PM +0530, Lokesh Vutla wrote:

> DRA752 uses DDR3. Populating the corresponding structures
> with DDR3 data.
> Writing into MA registers if only MA is present in that soc.
> 
> Signed-off-by: Lokesh Vutla 
> Signed-off-by: R Sricharan 

Reviewed-by: Tom Rini 

-- 
Tom


signature.asc
Description: Digital signature
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 4/7] arm: dra7xx: Add control module changes

2013-02-15 Thread Tom Rini
On Wed, Feb 13, 2013 at 12:59:06PM +0530, Lokesh Vutla wrote:

> Control module register addresses are changed from OMAP5
> to DRA7XX socs.
> So adding the necessary changes for the same.
> 
> Signed-off-by: Lokesh Vutla 
> Signed-off-by: R Sricharan 

Reviewed-by: Tom Rini 

-- 
Tom


signature.asc
Description: Digital signature
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 3/7] arm: dra7xx: clock: Add the dplls data

2013-02-15 Thread Tom Rini
On Wed, Feb 13, 2013 at 12:59:05PM +0530, Lokesh Vutla wrote:
> A new DPLL DDR is added in DRA7XX socs. Now clocks to
> EMIF CD is from DPLL DDR. So DPLL DDR should be locked
> before initializing RAM.
> Also adding other dpll data which are different from OMAP5 ES2.0.
> SYS_CLK running at 20MHz is introduced in DRA7xx socs.
> 
> Signed-off-by: Lokesh Vutla 
> Signed-off-by: R Sricharan 

Reviewed-by: Tom Rini 

-- 
Tom


signature.asc
Description: Digital signature
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 2/7] arm: dra7xx: clock: Add the prcm changes

2013-02-15 Thread Tom Rini
On Wed, Feb 13, 2013 at 12:59:04PM +0530, Lokesh Vutla wrote:

> PRCM register addresses are changed from OMAP5 ES2.0 to DRA7XX.
> So adding the necessary register changes for DRA7XX socs.
> 
> Signed-off-by: Lokesh Vutla 
> Signed-off-by: R Sricharan 

Reviewed-by: Tom Rini 

-- 
Tom


signature.asc
Description: Digital signature
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 1/7] arm: dra7xx: Add silicon id support for DRA752 soc

2013-02-15 Thread Tom Rini
On Wed, Feb 13, 2013 at 12:59:03PM +0530, Lokesh Vutla wrote:

> Adding CPU detection support for the DRA752 ES1.0 soc.
> 
> Signed-off-by: Lokesh Vutla 
> Signed-off-by: R Sricharan 

Reviewed-by: Tom Rini 

-- 
Tom


signature.asc
Description: Digital signature
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] Pull request: u-boot-arm/master

2013-02-15 Thread Tom Rini
On Tue, Feb 12, 2013 at 03:25:49PM +0100, Albert ARIBAUD wrote:

> Hello Tom,
> 
> The following changes since commit
> 3a9d879f6f64585b819af728b53be0a05037fe0d:
> 
>   Prepare v2013.01 (2013-01-15 14:47:42 -0700)
> 
> are available in the git repository at:
> 
>   git://git.denx.de/u-boot-arm master
> 
> for you to fetch changes up to fd8e1c3866578d87ed14a04a59faae341fd415df:
> 
>   arm: fix CONFIG_DELAY_ENVIRONMENT to act like it claims in the README
>   (2013-02-11 10:35:26 -0700)
> 
> 
> Albert ARIBAUD (1):
>   Merge branch 'u-boot-imx/master' into 'u-boot-arm/master'
> 
> Allen Martin (13):
>   tegra: remove IRDA pinmux synonym
>   tegra: fdt: remove clocks nodes
>   tegra: fdt: sort dts files
>   tegra: fdt: add apbdma node
>   fdt: fix dts preprocessor options
>   tegra: fdt: add back missing host1x node
>   tegra20: fdt: add SPI SFLASH node
>   tegra: spi: add fdt support to tegra SPI SFLASH driver
>   tegra30: add SBC1 to periph id mapping table
>   tegra30: fdt: add SPI SLINK nodes
>   tegra: add addresses of SPI SLINK controllers
>   tegra: add SPI SLINK driver
>   tegra: cardhu: config: enable SPI
> 
> Fabio Estevam (4):
>   woodburn: Set Write Protection GPIO as input
>   mx6qsabre_common: Let mmc partition be board specific
>   tools: imximage: Let .name field be more generic
>   mxs: Use __weak annotation to simplify code
> 
> Javier Martinez Canillas (4):
>   OMAP3: use a single board file for IGEP devices
>   OMAP3: igep00x0: add boot status GPIO LED
>   omap4: allow the use of a plain text env file instead boot scripts
>   OMAP3: igep00x0: fix a build warning on IGEP boards
> 
> Jeff Lance (1):
>   Add DDR3 support for AM335x-EVM (Version 1.5A)
> 
> Knut Wohlrab (1):
>   mx6qsabreauto: enable USB host interface
> 
> Lars Poeschel (3):
>   am33xx: add a pulldown macro to pinmux config
>   pcm051: Add support for Phytec phyCORE-AM335x
>   am335x: display msg when reading MAC from efuse
> 
> Lucas Stach (1):
>   arm: fix CONFIG_DELAY_ENVIRONMENT to act like it claims in the
> README
> 
> Marc Dietrich (3):
>   tegra: display: add board pinmux
>   tegra: enable LCD on PAZ00
>   tegra: remove custom TEGRA_DEVICE_SETTINGS for board files
> 
> Marek Vasut (14):
>   mxs: mmc: Drop unused members from struct mxsmmc_priv
>   mxs: ssp: Pull out the SSP bus to regs conversion
>   mx23: Add POWER and CLKCTRL register definitions
>   mx23: ssp: Fix ssp-regs.h for MX23
>   mmc: Limit the number of used SSP ports on MX23
>   mxs: Add function to ungate the power block on MX23
>   mxs: Linux uses ttyAMA0 as DUART
>   mxs: Add MX23 olinuxino board support
>   mxs: Boost the memory power supply
>   mxs: dma: Fix APBH DMA driver for MX23
>   mxs: ssp: Add SSP registers map for MX23
>   mxs: mmc: Allow overriding default card detect implementation
>   mxs: mmc: Fix the MMC driver for MX23
>   mxs: mmc: mx23_olinuxino: Add MMC support
> 
> Otavio Salvador (14):
>   mxs: clock: Use 'mxs' prefix for methods
>   mx23: Add register base addresses
>   mx23: Add iomux-mx23.h
>   mx23: Add support on print_cpuinfo()
>   mx23: Add boot mode description
>   mx23: SPL: Add boot mode support
>   mx23: SPL: Initialize DDR at 133MHz
>   mx23: config: Enable building of u-boot.sb binary
>   mx23: config: Enable mxsboot tool for i.MX23 based boards
>   mxs: Fix the memory init for MX23
>   mxs: Add MX23 quirks into the clock code
>   mxs: mmc: Fix MMC reset on iMX23
>   mx23_olinuxino: Add default environment
>   mx23evk: Add initial board support
> 
> Rob Herring (2):
>   ARM: add wfi assembly macro
>   ARM: highbank: use wfi macro instead of inline asm
> 
> Stephen Warren (2):
>   tegra: rename FUNCMUX_UART2_UARTB
>   tegra: don't hard-code LCD into default TEGRA_DEVICE_SETTINGS
> 
> Tetsuyuki Kobayashi (2):
>   arm: rmobile: kzm9g: Adjust SDRAM setting
>   arm: rmobile: kzm9g: Adjust ETM trace clock
> 
> Thierry Reding (3):
>   video: tegra: Update line length to match resolution
>   tegra: Enable LCD on Medcom-Wide
>   tegra: Enable LCD on TEC
> 
> Tom Rini (1):
>   am33xx: Drop gpio0_7_pin_mux from phytec pcm051
> 
> Tom Warren (19):
>   Tegra30: Add arch-tegra30 include files
>   Tegra30: Add AVP (arm720t) files
>   Tegra30: Add CPU (armv7) files
>   Tegra30: Add common CPU (shared) files
>   Tegra30: Cardhu: Add DT files
>   Tegra30: Add generic Tegra30 build support
>   Tegra30: Add/enable Cardhu build (T30 reference board)
>   Tegra30: clocks: Fix clock tables for I2C and other periphs
>   Tegra30: fdt: Update DT files with I2C info for T30/Cardhu
>   Tegra30: I2C: Enable I2C driver on Cardhu
>   Tegra: T20: Remove unused 'SLOW' SoC ID and

[U-Boot] [PATCH] video: Fix splash screen alignment

2013-02-15 Thread Matthias Weisser
commit d484b52 "video: Skip bitmaps which do not fit into the screen in
cfb_console" breaks splash screen alignment which is passed in as magic
(BMP_ALIGN_CENTER) x/y coordinates. Moving the check after the alignment block
fixes this.

Signed-off-by: Matthias Weisser 
---
 drivers/video/cfb_console.c |   14 +++---
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/drivers/video/cfb_console.c b/drivers/video/cfb_console.c
index 26f673a..61e1058 100644
--- a/drivers/video/cfb_console.c
+++ b/drivers/video/cfb_console.c
@@ -1515,13 +1515,6 @@ int video_display_bitmap(ulong bmp_image, int x, int y)
 
padded_line = (((width * bpp + 7) / 8) + 3) & ~0x3;
 
-   /*
-* Just ignore elements which are completely beyond screen
-* dimensions.
-*/
-   if ((x >= VIDEO_VISIBLE_COLS) || (y >= VIDEO_VISIBLE_ROWS))
-   return 0;
-
 #ifdef CONFIG_SPLASH_SCREEN_ALIGN
if (x == BMP_ALIGN_CENTER)
x = max(0, (VIDEO_VISIBLE_COLS - width) / 2);
@@ -1534,6 +1527,13 @@ int video_display_bitmap(ulong bmp_image, int x, int y)
y = max(0, VIDEO_VISIBLE_ROWS - height + y + 1);
 #endif /* CONFIG_SPLASH_SCREEN_ALIGN */
 
+   /*
+* Just ignore elements which are completely beyond screen
+* dimensions.
+*/
+   if ((x >= VIDEO_VISIBLE_COLS) || (y >= VIDEO_VISIBLE_ROWS))
+   return 0;
+
if ((x + width) > VIDEO_VISIBLE_COLS)
width = VIDEO_VISIBLE_COLS - x;
if ((y + height) > VIDEO_VISIBLE_ROWS)
-- 
1.7.9.5

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] break command.

2013-02-15 Thread Albert ARIBAUD
Hi Sean,

(can you please set your mailer to wrap lines at about 70è75
characters? Thanks in advance!)

On Thu, 14 Feb 2013 12:19:11 -0800
(PST), Sean Omalley  wrote:

> Is there anyway to break back into u-boot after trying to boot from linux 
> (arm)? Similar to Open Firmwares stop-a, ctrl-break? I didn't see anything in 
> the documentation nor poking around online. I am really hoping I missed 
> something, or there is support that just needs to be compiled in. :)
> 
> Even if it resets the cpu, or sends a signal to the jtag_reset would be fine. 
> When the machine locks up, I don't want to have to push a button or unplug it 
> since most of the time, I am not in the same vicinity as the machine. Leaving 
> a serial console attached and remoting into another machine is easier and 
> cheaper, then other alternatives. I could send a signal from a gpio to the 
> jtag_reset (or short it), but the machine I would -want- to use doesn't have 
> a gpio, and I don't want to spend money for multiple jtags when it seems more 
> logical to do it through the serial console. 

As soon as U-Boot gives control to the payload (Linux or whatever)
there is no possible assumption that U-Boot remains intact in RAM, so
your only chance is indeed some hardware reset... But then the question
is not related to U-Boot any more.

> Thanks! 

No problem.

Amicalement,
-- 
Albert.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH v3] Introduced btrfs file-system with btrload command

2013-02-15 Thread Adnan Ali
Introduces btrfs file-system to read file
from volume/sub-volumes with btrload command. This
implementation has read-only support.
This btrfs implementation is based on syslinux btrfs
code, commit 269ebc845ebc8b46ef4b0be7fa0005c7fdb95b8d.

Signed-off-by: Adnan Ali 
---
 Makefile   |1 +
 common/Makefile|1 +
 common/cmd_btr.c   |   53 +++
 fs/btrfs/Makefile  |   51 ++
 fs/btrfs/btrfs.c   | 1131 
 fs/fs.c|   86 +++-
 include/btrfs.h|  398 
 include/config_fallbacks.h |4 +
 include/crc32c.h   |   48 ++
 include/fs.h   |1 +
 10 files changed, 1769 insertions(+), 5 deletions(-)
 create mode 100644 common/cmd_btr.c
 create mode 100644 fs/btrfs/Makefile
 create mode 100644 fs/btrfs/btrfs.c
 create mode 100644 include/btrfs.h
 create mode 100644 include/crc32c.h

diff --git a/Makefile b/Makefile
index 3305e8c..cc35e7b 100644
--- a/Makefile
+++ b/Makefile
@@ -261,6 +261,7 @@ endif
 LIBS-$(CONFIG_OF_EMBED) += dts/libdts.o
 LIBS-y += arch/$(ARCH)/lib/lib$(ARCH).o
 LIBS-y += fs/libfs.o \
+fs/btrfs/libbtrfs.o \
fs/cbfs/libcbfs.o \
fs/cramfs/libcramfs.o \
fs/ext4/libext4fs.o \
diff --git a/common/Makefile b/common/Makefile
index 54fcc81..093dd35 100644
--- a/common/Makefile
+++ b/common/Makefile
@@ -73,6 +73,7 @@ COBJS-$(CONFIG_CMD_BEDBUG) += bedbug.o cmd_bedbug.o
 COBJS-$(CONFIG_CMD_BMP) += cmd_bmp.o
 COBJS-$(CONFIG_CMD_BOOTLDR) += cmd_bootldr.o
 COBJS-$(CONFIG_CMD_BOOTSTAGE) += cmd_bootstage.o
+COBJS-$(CONFIG_CMD_BTR) += cmd_btr.o
 COBJS-$(CONFIG_CMD_CACHE) += cmd_cache.o
 COBJS-$(CONFIG_CMD_CBFS) += cmd_cbfs.o
 COBJS-$(CONFIG_CMD_CONSOLE) += cmd_console.o
diff --git a/common/cmd_btr.c b/common/cmd_btr.c
new file mode 100644
index 000..faea625
--- /dev/null
+++ b/common/cmd_btr.c
@@ -0,0 +1,53 @@
+/*
+ * (C) Copyright 2013 Codethink Limited
+ * Btrfs port to Uboot by
+ * Adnan Ali 
+ * 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
+ */
+
+/*
+ * Boot support
+ */
+#include 
+#include 
+
+char subvolname[MAX_SUBVOL_NAME];
+
+int do_btr_fsload(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
+{
+   if (argc > 5)
+   strcpy(subvolname, argv[5]);
+   else
+   strcpy(subvolname, "");
+
+   return do_load(cmdtp, flag, argc, argv, FS_TYPE_BTR, 16);
+}
+
+
+U_BOOT_CMD(
+   btrload,7,  0,  do_btr_fsload,
+   "load binary file from a btr filesystem",
+   " [][subvol_name]\n"
+   "- Load binary file 'filename' from 'dev' on 'interface'\n"
+   "  to address 'addr' from better filesystem.\n"
+   "  the load stops on end of file.\n"
+   "  subvol_name is used read that file from this subvolume.\n"
+   "  All numeric parameters are assumed to be hex."
+);
+
diff --git a/fs/btrfs/Makefile b/fs/btrfs/Makefile
new file mode 100644
index 000..a9e2021
--- /dev/null
+++ b/fs/btrfs/Makefile
@@ -0,0 +1,51 @@
+#
+# (C) Copyright 2006
+# Wolfgang Denk, DENX Software Engineering, w...@denx.de.
+#
+# (C) Copyright 2003
+# Pavel Bartusek, Sysgo Real-Time Solutions AG, p...@sysgo.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
+
+LIB= $(obj)libbtrfs.o
+
+AOBJS  =
+COBJS-$(CONFIG_FS_BTR) := btrfs.o
+
+SRCS   := $(AOBJS:.o=.S) $(COBJS-y:.o=.c)
+OBJS   := $(addprefix $(obj),$(AOBJS) $(COBJS-y))
+
+

[U-Boot] [PATCH v3] btrfs addition to uboot

2013-02-15 Thread Adnan Ali

Adnan Ali (1):
  Introduced btrfs file-system with btrload command

 Makefile   |1 +
 common/Makefile|1 +
 common/cmd_btr.c   |   53 +++
 fs/btrfs/Makefile  |   51 ++
 fs/btrfs/btrfs.c   | 1131 
 fs/fs.c|   86 +++-
 include/btrfs.h|  398 
 include/config_fallbacks.h |4 +
 include/crc32c.h   |   48 ++
 include/fs.h   |1 +
 10 files changed, 1769 insertions(+), 5 deletions(-)
 create mode 100644 common/cmd_btr.c
 create mode 100644 fs/btrfs/Makefile
 create mode 100644 fs/btrfs/btrfs.c
 create mode 100644 include/btrfs.h
 create mode 100644 include/crc32c.h

-- 
1.7.9.5

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH v3 1/3] Tegra: fdt: Add/enhance sdhci (mmc) nodes for all T20 DT files

2013-02-15 Thread Lucas Stach
Am Donnerstag, den 14.02.2013, 13:24 -0700 schrieb Stephen Warren:
[...]
> >>
> >> The one issue with this is that only newer versions of dtc support the
> >> -i option. The version packaged with most distros won't support it.
> >> That'll mean something like "MAKEALL -a arm" is going to fail for a lot
> >> of people without some kind of explicit action (i.e. manually installing
> >> a newer version of dtc).
> >>
> >> That's why I suggested switching from /include/ to #include, and adding
> >> the include path to the cpp command rather than dtc.
> >
> > I tried using '#include, and added the 2 dts paths to the DTS_CPPFLAGS
> > so gcc could find the files, but I got a 'couldn't open
> > 'skeleton.dtsi' error. I didn't want to change tegra20.dtsi to
> > #include "skeleton.dtsi', and all the other board dts files to
> > #include ARCH_CPU_DTS, just so we can support the common tamonten
> > dtsi, so I went back to the DTC include path changes.
> 
> I think that's exactly where we should end up though. It's certainly the
> way the kernel is also heading.
> 
> Right now, the Avionic Design boards might be the only place this
> problem crops up, but as we support more features on Cardhu, we'll hit
> exactly the same issue, so have to solve it there too.
> 
Right now the AD boards might be the only ones with this problem, but it
will certainly hit the Toradex Tegra designs also.

I'm planning on doing support for the Colibri Evaluation Carrier for the
next release cycle. So I need to split up the DTS between Colibri and
Carrier board, same as is done in the Linux Kernel dts.
> > There was talk at one time of putting an up-to-date DTC binary in the
> > U-Boot tools area so everyone would have a consistent level of DT
> > support.
> 
> I think Wolfgang nak'd that.
> 
>  With the small number of boards using DT at this time, I
> > think we can live with letting people know where to find the latest
> > DTC release until then.
> 
> But he also nak'd the idea of relying on a newer dtc:-(
> 
> I think we had better raise the question again.

Yes, this has to be resolved one way or the other.


___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH] mpc85xx: Fix a compiler warning when CONFIG_WATCHDOG is turned on

2013-02-15 Thread Horst Kronstorfer
cpu.c:288:2:
warning: implicit declaration of function 'reset_85xx_watchdog'
[-Wimplicit-function-declaration]

Signed-off-by: Horst Kronstorfer 
---
 arch/powerpc/cpu/mpc85xx/cpu.c | 16 
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/arch/powerpc/cpu/mpc85xx/cpu.c b/arch/powerpc/cpu/mpc85xx/cpu.c
index df2ab6d..0f2d867 100644
--- a/arch/powerpc/cpu/mpc85xx/cpu.c
+++ b/arch/powerpc/cpu/mpc85xx/cpu.c
@@ -282,14 +282,6 @@ unsigned long get_tbclk (void)
 
 #if defined(CONFIG_WATCHDOG)
 void
-watchdog_reset(void)
-{
-   int re_enable = disable_interrupts();
-   reset_85xx_watchdog();
-   if (re_enable) enable_interrupts();
-}
-
-void
 reset_85xx_watchdog(void)
 {
/*
@@ -297,6 +289,14 @@ reset_85xx_watchdog(void)
 */
mtspr(SPRN_TSR, TSR_WIS);
 }
+
+void
+watchdog_reset(void)
+{
+   int re_enable = disable_interrupts();
+   reset_85xx_watchdog();
+   if (re_enable) enable_interrupts();
+}
 #endif /* CONFIG_WATCHDOG */
 
 /*
-- 
1.8.1.3

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH v2 1/5] x86: Remove eNET boards

2013-02-15 Thread Gabe Black
Acked-by: Gabe Black 


On Thu, Feb 14, 2013 at 6:18 AM, Simon Glass  wrote:

> These are no longer used and should be removed.
>
>
> Signed-off-by: Simon Glass 
> Acked-by: Graeme Russ 
> ---
> Changes in v2: None
>
>  board/eNET/Makefile   |  52 
>  board/eNET/eNET.c | 284 -
>  board/eNET/eNET_pci.c | 128 --
>  board/eNET/eNET_start.S   |  30 ---
>  board/eNET/eNET_start16.S |  87 ---
>  board/eNET/hardware.h |  36 ---
>  boards.cfg|   2 -
>  include/configs/eNET.h| 619
> --
>  8 files changed, 1238 deletions(-)
>  delete mode 100644 board/eNET/Makefile
>  delete mode 100644 board/eNET/eNET.c
>  delete mode 100644 board/eNET/eNET_pci.c
>  delete mode 100644 board/eNET/eNET_start.S
>  delete mode 100644 board/eNET/eNET_start16.S
>  delete mode 100644 board/eNET/hardware.h
>  delete mode 100644 include/configs/eNET.h
>
> diff --git a/board/eNET/Makefile b/board/eNET/Makefile
> deleted file mode 100644
> index ad1c5b1..000
> --- a/board/eNET/Makefile
> +++ /dev/null
> @@ -1,52 +0,0 @@
> -#
> -# (C) Copyright 2008
> -# Graeme Russ, graeme.r...@gmail.com.
> -#
> -# (C) Copyright 2006
> -# Wolfgang Denk, DENX Software Engineering, w...@denx.de.
> -#
> -# (C) Copyright 2002
> -# Daniel Engström, Omicron Ceti AB, dan...@omicron.se.
> -#
> -# 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
> -
> -LIB= $(obj)lib$(BOARD).o
> -
> -COBJS-y+= eNET.o
> -COBJS-$(CONFIG_PCI) += eNET_pci.o
> -SOBJS-y+= eNET_start16.o
> -SOBJS-y+= eNET_start.o
> -
> -SRCS   := $(SOBJS-y:.o=.S) $(COBJS-y:.o=.c)
> -OBJS   := $(addprefix $(obj),$(SOBJS-y) $(COBJS-y))
> -
> -$(LIB):$(obj).depend $(OBJS) $(SOBJS)
> -   $(call cmd_link_o_target, $(OBJS) $(SOBJS))
> -
> -#
> -
> -# defines $(obj).depend target
> -include $(SRCTREE)/rules.mk
> -
> -sinclude $(obj).depend
> -
> -#
> diff --git a/board/eNET/eNET.c b/board/eNET/eNET.c
> deleted file mode 100644
> index 2f26470..000
> --- a/board/eNET/eNET.c
> +++ /dev/null
> @@ -1,284 +0,0 @@
> -/*
> - * (C) Copyright 2008
> - * Graeme Russ, graeme.r...@gmail.com.
> - *
> - * 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 
> -#include 
> -#include 
> -#include 
> -#include 
> -
> -#ifdef CONFIG_HW_WATCHDOG
> -#include 
> -#endif
> -
> -#include "hardware.h"
> -
> -DECLARE_GLOBAL_DATA_PTR;
> -
> -unsigned long monitor_flash_len = CONFIG_SYS_MONITOR_LEN;
> -
> -static void enet_timer_isr(void);
> -static void enet_toggle_run_led(void);
> -static void enet_setup_pars(void);
> -
> -/*
> - * Miscellaneous platform dependent initializations
> - */
> -int board_early_init_f(void)
> -{
> -   u16 pio_out_cfg = 0x;
> -
> -   /* Configure General Purpose Bus timing */
> -   writeb(CONFIG_SYS_SC520_GPCSRT, &sc520_mmcr->gpcsrt);
> -   writeb(CONFIG_SYS_SC520_GPCSPW, &sc520_mmcr->gpcspw);
> -   writeb(CONFIG_SYS_SC520_GPCSOFF, &sc520_mmcr->gpcsoff);
> -   writeb(CONFIG_SYS_SC520_GPRDW, &sc520_mmcr->gprdw);
> -   writeb(CONFIG_SYS_SC520_GPRDOFF, &sc520_mmcr->gprdoff);
> -   writeb(CONFIG_SYS_SC520_GPWRW, &sc520_mmcr->gpwrw);
> -   writeb(CONFIG_SYS_SC520_GPWROFF, &sc52