Re: [U-Boot] [PATCH] powerpc/p2041: skip waiting for SERDES bank 3 reset done

2013-01-25 Thread Anatolij Gustschin
Hello,

On Thu, 24 Jan 2013 09:03:11 +0100
Anatolij Gustschin ag...@denx.de wrote:

 Hello,
 
 On Thu, 24 Jan 2013 02:33:31 +
 Xie Shaohui-B21989 b21...@freescale.com wrote:
 ...
   currently I do not have access to the p2041rdb board, but here is the
   previously captured boot log where I've seen this:
   
   
   U-Boot 2011.09-0-g2c02d1d (Oct 22 2011 - 18:31:36)
   
  [S.H] Did you try the latest U-boot? This u-boot is old. I don't see the
  time out dump with the latest U-boot.
 
 I'm not sure which exact version I've tried, IIRC it was v2013-rcX
 and the problem was there also. I'll have access to the p2041rdb
 board tomorrow and will tell which exact version it was.

It was the version 2013.01-rc1-00258-gce12a8c. Now I updated to
v2013.01 and do not see the issue any more. This patch is not needed
then. Sorry for the noise.

Thanks,

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


Re: [U-Boot] [RFC] powerpc/lib: unsafe register handling in wait_ticks

2013-01-25 Thread Joakim Tjernlund
Wolfgang Denk w...@denx.de wrote on 2013/01/24 20:27:26:
 
 Dear Joakim Tjernlund,
 
 In message OF52C94A3D.C3BD2E6F-ONC1257AFD.005BAFE0-C1257AFD.
 00673...@transmode.se you wrote:
  
  This adds some extra churn to the code that my patch didn't do.
  On the other hand your patch makes the function look more
  like how gcc would have done so I am fine with that.
  However, I am not sure r14 is a good fit, I cannot remember if there 
is
  some
  special purpose for r14. Hopefully somebody on the list knows.
 
 This is documented in the README:
 
 | For PowerPC, the following registers have specific use:
 |R1:   stack pointer
 |R2:   reserved for system use
 |R3-R4:   parameter passing and return values
 |R5-R10: parameter passing
 |R13:   small data area pointer
 |R30:   GOT pointer
 |R31:   frame pointer
 | 
 |(U-Boot also uses R12 as internal GOT pointer. r12
 |is a volatile register so r12 needs to be reset when
 |going back and forth between asm and C)
 | 
 | == U-Boot will use R2 to hold a pointer to the global data
 | 

Right, then I think the patch is good:

Acked-by: Joakim Tjernlund joakim.tjernl...@transmode.se
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 1/1] console: Improve TFTP booting performance

2013-01-25 Thread Wolfgang Denk
Dear Jim Lin,

In message 1359097425-20517-1-git-send-email-ji...@nvidia.com you wrote:
 TFTP booting is observed a little bit slow, especially when a USB
 keyboard is installed.
 The fix is to check whether Ctrl-C key is pressed every
 CONFIG_CTRLC_POLL_MS ms.
 If CONFIG_CTRLC_POLL_MS is not defined in configuration file, we
 define it as 1000.

CONFIG_* variables MUST be documented in the README.

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH, MD: Wolfgang Denk  Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de
f u cn rd ths, itn tyg h myxbl cd.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 1/1] console: Improve TFTP booting performance

2013-01-25 Thread Wolfgang Denk
Dear Jim Lin,

In message 1359097425-20517-1-git-send-email-ji...@nvidia.com you wrote:
 TFTP booting is observed a little bit slow, especially when a USB
 keyboard is installed.
 The fix is to check whether Ctrl-C key is pressed every
 CONFIG_CTRLC_POLL_MS ms.
 If CONFIG_CTRLC_POLL_MS is not defined in configuration file, we
 define it as 1000.

...also:

 +#ifndef CONFIG_CTRLC_POLL_MS
 +/*
 + * Process Ctrl-C every 1000 ms by default to improve performance
 + * (like TFTP boot) when interlaced with other tasks.
 + */
 +#define CONFIG_CTRLC_POLL_MS 1000
 +#endif
 +static unsigned long ctrlc_ts = CONFIG_CTRLC_POLL_MS;

Don't set such a default.  If this is good for you, OK.  But for all
others, the behaviour should not change at all.


Also, are you positively sure that your callto get_timer() does not
mess up with other timers in the network subsystem?

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH, MD: Wolfgang Denk  Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de
You're too beautiful to ignore.  Too much woman.
-- Kirk to Yeoman Rand, The Enemy Within, stardate unknown
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] access u-boot environment variables from kernel space

2013-01-25 Thread Wolfgang Denk
Dear Manukumar,

In message 1359096605.2559.15.camel@Manukumar you wrote:
 
 I have to implement the jtag and execute XSVF file through diagnostic
 command from u-boot.
 the layout of our board as below:

What exactly has this to do with above thread and with the access
u-boot environment variables from kernel space subject?

And why exactly did you put all these people on Cc: ???

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH, MD: Wolfgang Denk  Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de
The White Rabbit put on his spectacles. Where shall I begin,  please
your Majesty ? he asked.
Begin at the beginning,, the King said, very gravely,  and  go  on
till you come to the end: then stop.-- Lewis Carroll
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 2/4] usb:composite: USB Mass Storage - f_mass_storage.c from Linux kernel

2013-01-25 Thread Piotr Wilczek
Dear Marek Vasut,

 -Original Message-
 From: Marek Vasut [mailto:ma...@denx.de]
 Sent: Thursday, January 24, 2013 1:34 PM
 To: Piotr Wilczek
 Cc: u-boot@lists.denx.de; Minkyu Kang; Kyungmin Park; Lukasz Majewski;
 Tom Rini
 Subject: Re: [PATCH 2/4] usb:composite: USB Mass Storage -
 f_mass_storage.c from Linux kernel
 
 Dear Piotr Wilczek,
 
  The f_mass_storage.c source file from v2.6.36 Linux kernel.
 
  commit 8876f5e7d3b2a320777dd4f6f5301d474c97a06c
  Author: Michal Nazarewicz m.nazarew...@samsung.com
  Date:   Mon Jun 21 13:57:09 2010 +0200
 
  USB: gadget: f_mass_storage: added eject callback
 
  Signed-off-by: Lukasz Majewski l.majew...@samsung.com
  Signed-off-by: Piotr Wilczek p.wilc...@samsung.com
  Signed-off-by: Kyungmin Park kyungmin.p...@samsung.com
 
 Why is there so much code that's crudely commented out, like in the
 synchronize_cache function?
 
I remove it in v2

 Best regards,
 Marek Vasut

Best regards,
Piotr Wilczek

---
Samsung RD Poland (SRPOL) | Linux Platform Group


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


Re: [U-Boot] [PATCH 3/4] usb:gadget: USB Mass Storage Gadget support

2013-01-25 Thread Piotr Wilczek
Dear Marek Vasut,


 -Original Message-
 From: Marek Vasut [mailto:ma...@denx.de]
 Sent: Thursday, January 24, 2013 1:35 PM
 To: Piotr Wilczek
 Cc: u-boot@lists.denx.de; Minkyu Kang; Kyungmin Park; Lukasz Majewski;
 Tom Rini
 Subject: Re: [PATCH 3/4] usb:gadget: USB Mass Storage Gadget support
 
 Dear Piotr Wilczek,
 
  From: Lukasz Majewski l.majew...@samsung.com
 
  This patch adds the USB Mass Storage Gadget to u-boot New command
  called ums is implemented to provide access to on-device embedded
  persistent memory.
 
  USB Mass Storage is supposed to work on top of the USB Gadget
  framework
 
  Signed-off-by: Lukasz Majewski l.majew...@samsung.com
  Signed-off-by: Piotr Wilczek p.wilc...@samsung.com
  Signed-off-by: Kyungmin Park kyungmin.p...@samsung.com
  CC: Marek Vasut marek.va...@gmail.com
  ---
   common/Makefile   |1 +
   common/cmd_usb_mass_storage.c |   85
  + drivers/usb/gadget/g_dnl.c
 |
6 +++
   include/usb_mass_storage.h|   59 
   4 files changed, 151 insertions(+)
   create mode 100644 common/cmd_usb_mass_storage.c  create mode 100644
  include/usb_mass_storage.h
 
  diff --git a/common/Makefile b/common/Makefile index 54fcc81..8ec95d2
  100644
  --- a/common/Makefile
  +++ b/common/Makefile
  @@ -174,6 +174,7 @@ COBJS-y += cmd_usb.o  COBJS-y += usb.o usb_hub.o
   COBJS-$(CONFIG_USB_STORAGE) += usb_storage.o  endif
  +COBJS-$(CONFIG_CMD_USB_MASS_STORAGE) += cmd_usb_mass_storage.o
   COBJS-$(CONFIG_CMD_XIMG) += cmd_ximg.o
   COBJS-$(CONFIG_YAFFS2) += cmd_yaffs2.o
   COBJS-$(CONFIG_CMD_SPL) += cmd_spl.o
  diff --git a/common/cmd_usb_mass_storage.c
  b/common/cmd_usb_mass_storage.c new file mode 100644 index
  000..bc5b239
  --- /dev/null
  +++ b/common/cmd_usb_mass_storage.c
  @@ -0,0 +1,85 @@
  +/*
  + * Copyright (C) 2011 Samsung Electronics
  + * Lukasz Majewski l.majew...@samsung.com
  + *
  + * 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 errno.h
  +#include common.h
  +#include command.h
  +#include g_dnl.h
  +#include usb_mass_storage.h
  +
  +int do_usb_mass_storage(cmd_tbl_t *cmdtp, int flag,
  +  int argc, char * const argv[]) {
  +   char *ep;
  +   unsigned int dev_num = 0, offset = 0, part_size = 0;
  +   int rc;
  +
  +   struct ums_board_info *ums_info;
  +   static char *s = ums;
  +
  +   if (argc  2) {
  +   printf(usage: ums dev - e.g. ums 0\n);
  +   return 0;
  +   }
  +
  +   dev_num = (int)simple_strtoul(argv[1], ep, 16);
  +
  +   if (dev_num) {
  +   puts(\nSet eMMC device to 0! - e.g. ums 0\n);
  +   goto fail;
  +   }
  +
  +   board_usb_init();
  +   ums_info = board_ums_init(dev_num, offset, part_size);
  +
  +   if (!ums_info) {
  +   printf(MMC: %d - NOT available\n, dev_num);
  +   goto fail;
  +   }
  +   rc = fsg_init(ums_info);
  +   if (rc) {
  +   printf(cmd ums: fsg_init failed\n);
  +   goto fail;
  +   }
  +
  +   g_dnl_register(s);
  +
  +   while (1) {
  +   /* Handle control-c and timeouts */
  +   if (ctrlc()) {
  +   printf(The remote end did not respond in time.\n);
  +   goto exit;
  +   }
  +   usb_gadget_handle_interrupts();
  +   /* Check if USB cable has been detached */
  +   if (fsg_main_thread(NULL) == EIO)
  +   goto exit;
  +   }
  +exit:
  +   g_dnl_unregister();
  +
  +fail:
  +   return -1;
  +}
  +
  +U_BOOT_CMD(ums, CONFIG_SYS_MAXARGS, 1, do_usb_mass_storage,
  +   Use the UMS [User Mass Storage],
  +   ums - User Mass Storage Gadget
  +);
  diff --git a/drivers/usb/gadget/g_dnl.c b/drivers/usb/gadget/g_dnl.c
  index a5a4c1f..cc3f344 100644
  --- a/drivers/usb/gadget/g_dnl.c
  +++ b/drivers/usb/gadget/g_dnl.c
  @@ -31,6 +31,7 @@
 
   #include gadget_chips.h
   #include composite.c
  +#include f_mass_storage.c
 
   /*
* One needs to define the following:
  @@ -104,6 +105,8 @@ static int g_dnl_do_config(struct
 usb_configuration *c)
  printf(GADGET DRIVER: %s\n, s);
  if (!strcmp(s, usb_dnl_dfu))
  ret = dfu_add(c);
  +   else if (!strcmp(s, usb_dnl_ums))
  +   ret = fsg_add(c);
 
  return ret;
   

Re: [U-Boot] [PATCH 1/4] usb:composite: USB Mass Storage - storage_common.c from Linux kernel

2013-01-25 Thread Piotr Wilczek
Dear Marek Vasut,

 -Original Message-
 From: Marek Vasut [mailto:ma...@denx.de]
 Sent: Thursday, January 24, 2013 1:33 PM
 To: Piotr Wilczek
 Cc: u-boot@lists.denx.de; Minkyu Kang; Kyungmin Park; Lukasz Majewski;
 Tom Rini; Andrzej Pietrasiewicz
 Subject: Re: [PATCH 1/4] usb:composite: USB Mass Storage -
 storage_common.c from Linux kernel
 
 Dear Piotr Wilczek,
 
  From: Lukasz Majewski l.majew...@samsung.com
 
  The storage_common.c source file from v2.6.36 Linux kernel.
 
 Is it not possibly to port anything more recent? If not, so be it.
 
The reason was to use the simplest and tested version.

 Best regards,
 Marek Vasut

Best regards,
Piotr Wilczek

---
Samsung RD Poland (SRPOL) | Linux Platform Group



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


[U-Boot] [PATCH v5 2/2] board: add support for amcore board

2013-01-25 Thread Angelo Dureghello
Add support for Sysam AMCORE mcf5307 (coldfire) based board.

Signed-off-by: Angelo Dureghello sysa...@gmail.com
Cc: Jason Jin jason@freescale.com
---
Changes for v2:
- None
Changes for v3:
- Fix code format issues
Changes for v4:
- Add MAINTAINERS file entry
- Remove all unnecessary blank lines 
- Add get_ram_size in sdram init 
- Reuse already existing sdram test routine
- Remove custom flash.c, used std mtd/CFI driver
Changes for v5:
- Fix MAINTAINERS bad sorted entry
- Fix incorrect indentation
- Remove #undef where not needed
- Fix CONFIG_SYS_SDRAM_SIZE to be in bytes
---
 MAINTAINERS|4 +
 board/sysam/amcore/Makefile|   43 ++
 board/sysam/amcore/amcore.c|  159 +
 board/sysam/amcore/config.mk   |   23 +++
 board/sysam/amcore/u-boot.lds  |  101 ++
 boards.cfg |1 +
 include/configs/amcore.h   |  209 +++
 7 files changed, 540 insertions(+), 0 deletions(-)

diff --git a/MAINTAINERS b/MAINTAINERS
index 28c052d..f3a6d39 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -149,6 +149,10 @@ Wolfgang Denk w...@denx.de
PCIPPC2 MPC750
PCIPPC6 MPC750
 
+Angelo Dureghello sysa...@gmail.com
+
+amcore  mcf5307
+
 Phil Edworthy phil.edwor...@renesas.com
 
rsk7264 SH7264
diff --git a/board/sysam/amcore/Makefile b/board/sysam/amcore/Makefile
new file mode 100644
index 000..1fd25a8
--- /dev/null
+++ b/board/sysam/amcore/Makefile
@@ -0,0 +1,43 @@
+#
+# Copyright (c) 2011 Angelo Dureghello sysa...@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 $(TOPDIR)/config.mk
+
+LIB= $(obj)lib$(BOARD).o
+
+COBJS  = $(BOARD).o
+
+SRCS   := $(SOBJS:.o=.S) $(COBJS:.o=.c)
+OBJS   := $(addprefix $(obj),$(COBJS))
+SOBJS  := $(addprefix $(obj),$(SOBJS))
+
+$(LIB):$(obj).depend $(OBJS)
+   $(call cmd_link_o_target, $(OBJS))
+
+#
+
+# defines $(obj).depend target
+include $(SRCTREE)/rules.mk
+
+sinclude $(obj).depend
+
+#
diff --git a/board/sysam/amcore/amcore.c b/board/sysam/amcore/amcore.c
new file mode 100644
index 000..53ef1f5
--- /dev/null
+++ b/board/sysam/amcore/amcore.c
@@ -0,0 +1,159 @@
+/*
+ * Copyright (c) 2012 Angelo Dureghello sysa...@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
+ *
+ * Copy memory testdram() from sandburst/common/sb_common.c
+ */
+
+#include common.h
+#include asm/immap.h
+#include asm/io.h
+
+void init_lcd(void)
+{
+   /*
+* board can have a K0108 lcd connected on the parallel port,
+* wired as below:
+*
+* fc cpu   P0  P1  P2  P3  P4  P5  P6  P7  P10 P11 P12 P13 P14
+* lcd  D0  D1  D2  D3  D4  D5  D6  D7  CS1 CS2 RW  DI  E
+*
+* Starting up setting lines in high impedance
+*/
+   sim_t *sim = (sim_t *)(MMAP_SIM);
+
+   out_be16(sim-par, 0x300);
+
+   gpio_t *gpio = (gpio_t *)(MMAP_GPIO);
+
+   out_be16(gpio-paddr, 0xfcff);
+   out_be16(gpio-padat, 0x0c00);
+}
+
+int checkboard(void)
+{
+   puts(Board: );
+   puts(AMCORE v.001(alpha)\n);
+
+   init_lcd();
+
+   return 0;
+}
+
+/*
+ * in initdram we are here executing from flash
+ * case 1:
+ * is with no ACR/flash cache enabled
+ * nop = 40ns (scope measured)
+ */

Re: [U-Boot] [PATCH v2] integrator: pass a Device Tree by default

2013-01-25 Thread Marek Vasut
Dear Linus Walleij,

 This, enabled the FDT library for the Integrators, updates
 the Integrator/CP default command to load and pass a Device
 Tree when booting the kernel from the on-board ethernet,
 define same environment for the Integrator/AP and move the
 load address around to something even.
 
 Signed-off-by: Linus Walleij linus.wall...@linaro.org
 ---
 ChangeLog v1-v2:
 - Skip definition of $loadaddr, rely on CONFIG_LOAD_ADDR instead.
 ---
  include/configs/integrator-common.h | 3 ++-
  include/configs/integratorap.h  | 7 +--
  include/configs/integratorcp.h  | 9 ++---
  3 files changed, 13 insertions(+), 6 deletions(-)
 
 diff --git a/include/configs/integrator-common.h
 b/include/configs/integrator-common.h index 564b418..f4a182c 100644
 --- a/include/configs/integrator-common.h
 +++ b/include/configs/integrator-common.h
 @@ -30,7 +30,7 @@
  #define CONFIG_SYS_MEMTEST_END   0x1000
  #define CONFIG_SYS_HZ1000
  #define CONFIG_SYS_TIMERBASE 0x13000100  /* Timer1 */
 -#define CONFIG_SYS_LOAD_ADDR 0x7fc0  /* default load address */
 +#define CONFIG_SYS_LOAD_ADDR 0x800   /* default load address */
  #define CONFIG_SYS_LONGHELP
  #define CONFIG_SYS_HUSH_PARSER
  #define CONFIG_SYS_CBSIZE256 /* Console I/O Buffer Size*/
 @@ -41,6 +41,7 @@
 
  #define CONFIG_CMDLINE_TAG   /* enable passing of ATAGs  */
  #define CONFIG_SETUP_MEMORY_TAGS
 +#define CONFIG_OF_LIBFDT /* enable passing a Device Tree */
  #define CONFIG_MISC_INIT_R   /* call misc_init_r during start up */
 
  /*
 diff --git a/include/configs/integratorap.h
 b/include/configs/integratorap.h index c6907b5..f409f2a 100644
 --- a/include/configs/integratorap.h
 +++ b/include/configs/integratorap.h
 @@ -62,9 +62,12 @@
   */
  #include config_cmd_default.h
 
 -#define CONFIG_BOOTDELAY 2
 +#define CONFIG_BOOTDELAY 0
  #define CONFIG_BOOTARGS  root=/dev/mtdblock0 console=ttyAM0 
console=tty
 -#define CONFIG_BOOTCOMMAND   
 +#define CONFIG_BOOTCOMMAND   setenv servip 192.168.1.100 ;  \
 +  setenv fdtaddr 0x0080 ;  \
 +  echo \$loadaddr = $loadaddr, $fdtaddr=$fdtaddr\ ;  \
 +  echo \load binaries then: bootm $loadaddr - $fdtaddr\
 
  /*
   * Miscellaneous configurable options
 diff --git a/include/configs/integratorcp.h
 b/include/configs/integratorcp.h index ca02a6f..9446edb 100644
 --- a/include/configs/integratorcp.h
 +++ b/include/configs/integratorcp.h
 @@ -60,11 +60,14 @@
  #include config_cmd_default.h
 
  #define CONFIG_BOOTDELAY 2
 -#define CONFIG_BOOTARGS  root=/dev/mtdblock0 console=ttyAMA0 console=tty
 ip=dhcp netdev=27,0,0xfc80,0xfc800010,eth0 video=clcdfb:0 -#define
 CONFIG_BOOTCOMMAND tftpboot ; bootm
  #define CONFIG_SERVERIP 192.168.1.100
  #define CONFIG_IPADDR 192.168.1.104
 -#define CONFIG_BOOTFILE uImage
 +#define CONFIG_BOOTARGS  root=/dev/mtdblock0 console=ttyAMA0 console=tty
 ip=dhcp netdev=27,0,0xfc80,0xfc800010,eth0 video=clcdfb:0 +#define
 CONFIG_BOOTCOMMAND setenv servip 192.168.1.100 ;  \
 +  setenv fdtaddr 0x0080 ;  \
 +  bootp $loadaddr $servip:uImage ;  \
 +  bootp $fdtaddr $servip:integratorcp.dtb ;  \
 +  bootm $loadaddr - $fdtaddr

Do you mean to use serverip here? Since serverip is the IP of the TFTP 
server and it's used across uboot.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 1/4] usb:composite: USB Mass Storage - storage_common.c from Linux kernel

2013-01-25 Thread Marek Vasut
Dear Piotr Wilczek,

 Dear Marek Vasut,
 
  -Original Message-
  From: Marek Vasut [mailto:ma...@denx.de]
  Sent: Thursday, January 24, 2013 1:33 PM
  To: Piotr Wilczek
  Cc: u-boot@lists.denx.de; Minkyu Kang; Kyungmin Park; Lukasz Majewski;
  Tom Rini; Andrzej Pietrasiewicz
  Subject: Re: [PATCH 1/4] usb:composite: USB Mass Storage -
  storage_common.c from Linux kernel
  
  Dear Piotr Wilczek,
  
   From: Lukasz Majewski l.majew...@samsung.com
   
   The storage_common.c source file from v2.6.36 Linux kernel.
  
  Is it not possibly to port anything more recent? If not, so be it.
 
 The reason was to use the simplest and tested version.

Nevermind my dumb comment, I took a peek and figured as much as that we're 
stuck 
with .36-ish gadget framework.

Now, completely unrelated question, but since you're the expert at these 
things, 
I'll just fire it at you -- do you think porting serial gadget would be too 
hard? Apparently the CONFIG_USB_TTY is a junk and with the new gadget drivers, 
this won't work, thus we need new usb-serial-gadget driver.

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


Re: [U-Boot] Want to study U-Boot code

2013-01-25 Thread Marek Vasut
Dear Woody Wu,

 On Fri, Jan 25, 2013 at 12:30:43AM +0100, Marek Vasut wrote:
  Dear Woody Wu,
  
   Hi, List
   
   Is there a book or web document to help start to understand how U-Boot
   works?
  
  There's a doc/ directory in the u-boot sourcecode.
 
 Is there a guide/suggestion to the reading order of these docs? You
 know, there is not a index file. Thanks.

The question is -- what do you want to do? If Study u-boot code is the 
answer, 
just dive in ;-)

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


Re: [U-Boot] [RFC] mmc:fix: Increase the timeout value for SDHCI_send_command()

2013-01-25 Thread Jagan Teki
Hi,

On Fri, Jan 11, 2013 at 8:49 PM, Lukasz Majewski l.majew...@samsung.com wrote:
 Hi Wolfgang,

 Dear Lukasz Majewski,

 In message 1357665792-8141-1-git-send-email-l.majew...@samsung.com
 you wrote:
  I'd like to ask for your opinion about the following problem:

 I cannot comment on the problem - only a bit about the proposed patch
 ;-)

  From a brief checking I can say that it happens when we are doing
  consecutive MMC operations (i.e. many reads), and the 10ms timeout
  might be too short when eMMC firmware is forced to do some internal
  time consuming operations (e.g. flash blocks management, wear
  leveling).
  In this situation, the SDHCI_CMD_INHIBIT bit is set, which means
  that SDHCI controller didn't received response from eMMC.
 
  One proposition would be to define the per device/per memory chip
  specific timeouts, to replace those defined at ./drivers/mmc/sdhci.c
  file.

 Is there no way to ask the device and/or controller when it is done,
 so we can poll for ready state instead of adding delays, which will
 always have to be tailored for the so far known worst case, i. e. they
 will be always too long on all almost all systems.

 We are doing this already - the SDHCI_PRESENT_STATE register's bit 0
 (SDHCI_CMD_INHIBIT) and bit 1 (DATA_INHIBIT) are for this purpose.
 Those indicate when host controller can send further command/data to
 the card.

 Moreover, there are also timeouts in the case when someone pull out SD
 card inserted to the slot (or any other use case which I'm not aware).



  --- a/drivers/mmc/sdhci.c
  +++ b/drivers/mmc/sdhci.c
  @@ -137,8 +137,8 @@ int sdhci_send_command(struct mmc *mmc, struct
  mmc_cmd *cmd, unsigned int timeout, start_addr = 0;
  unsigned int retry = 1;
 
  -   /* Wait max 10 ms */
  -   timeout = 10;
  +   /* Wait max 100 ms */
  +   timeout = 100;

 We have cases where we struggle for sub-second boot times.  Adding
 100 ms delay here is clearly prohbitive.  [Even the 10 ms are way too
 long IMHO.]  There must be a better way to handle this.

 That's why I'm asking.

 It is strange that, when I'm increasing delay it works.

 Maybe we will find some areas of optimization?

BTW: I am also finding the similar issue.

But when I enabled CONFIG_MMC_TRACE for log traces, i never see the
issue..it's pretty much working fine.
As per my latest debug, the issue is fire for CMD6 (SWITCH_FUNC).

May be we need to update the logic on this while loop...

Thanks,
Jagan.



 Best regards,

 Wolfgang Denk




 --
 Best regards,

 Lukasz Majewski

 Samsung RD Poland (SRPOL) | Linux Platform Group
 ___
 U-Boot mailing list
 U-Boot@lists.denx.de
 http://lists.denx.de/mailman/listinfo/u-boot
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH v5 2/2] board: add support for amcore board

2013-01-25 Thread Wolfgang Denk
Dear Angelo Dureghello,

In message 20130125104307.GA3223@sion.sysam you wrote:
 Add support for Sysam AMCORE mcf5307 (coldfire) based board.

Sorry for the late catch - this escaped me so far...

 Changes for v5:
 - Fix MAINTAINERS bad sorted entry
 - Fix incorrect indentation
 - Remove #undef where not needed

Did you? I still see some...

 +#if defined(CONFIG_SYS_DRAM_TEST)
 +/* memory test */
 +int testdram(void)
...
 +#endif

This is:

1) dead code, as you don't define CONFIG_SYS_DRAM_TEST
2) an obsolete approach that you should not use.  We have a several
   different (and much more reliable) memory tests already - if yuou
   really need one, then please use the existing code.  On the other
   hand, you are using get_ram_size, which already includes a simple
   memory test - so re you sure you really need an extra test?


 +#undef   CONFIG_SYS_DRAM_TEST/* default undef */

== remove.

 +/* bypass PLL for test purpose */
 +#undef   CONFIG_SYS_PLL_BYPASS

???


Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH, MD: Wolfgang Denk  Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de
The light at the end of the tunnel is usually a No Exit sign.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] mxs: mxsboot: Add support for SD card generation for i.MX23

2013-01-25 Thread Otavio Salvador
On Thu, Jan 24, 2013 at 4:31 PM, Otavio Salvador
ota...@ossystems.com.br wrote:
 I prefer to have this as is and share documentation with mx28. The
 NAND ought to be done providing same interface so one doc for it all.
 I think change it in next version is wrong and confuse users.

Ping?

We won't be able to get rid of mxsboot for NAND use-case so I'd prefer
to have it for SD as well. For me it does not matter much as I use OE
and it automates it all; but for ordinary user it is important to it
to be consistent so all 'mxs' SoC would work same way from user point
of view.

If we find a better way of doing things in future we can base on this
and improve it later but please let's get it in and move forward...

--
Otavio Salvador O.S. Systems
E-mail: ota...@ossystems.com.br  http://www.ossystems.com.br
Mobile: +55 53 9981-7854  http://projetos.ossystems.com.br
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] mxs: mxsboot: Add support for SD card generation for i.MX23

2013-01-25 Thread Marek Vasut
Dear Otavio Salvador,

 On Thu, Jan 24, 2013 at 4:31 PM, Otavio Salvador
 
 ota...@ossystems.com.br wrote:
  I prefer to have this as is and share documentation with mx28. The
  NAND ought to be done providing same interface so one doc for it all.
  I think change it in next version is wrong and confuse users.
 
 Ping?
 
 We won't be able to get rid of mxsboot for NAND use-case so I'd prefer
 to have it for SD as well. For me it does not matter much as I use OE
 and it automates it all; but for ordinary user it is important to it
 to be consistent so all 'mxs' SoC would work same way from user point
 of view.
 
 If we find a better way of doing things in future we can base on this
 and improve it later but please let's get it in and move forward...

Does my proposed patch not work for you? (the one which shifts the bootstream 
payload to block 4 in partition 1)

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 v5 2/2] board: add support for amcore board

2013-01-25 Thread Angelo Dureghello
Dear Wolfgang,

thanks for the review, 

On Fri, Jan 25, 2013 at 01:30:54PM +0100, Wolfgang Denk wrote:
 Dear Angelo Dureghello,
 
 In message 20130125104307.GA3223@sion.sysam you wrote:
  Add support for Sysam AMCORE mcf5307 (coldfire) based board.
 
 Sorry for the late catch - this escaped me so far...
 
  Changes for v5:
  - Fix MAINTAINERS bad sorted entry
  - Fix incorrect indentation
  - Remove #undef where not needed
 
 Did you? I still see some...
 
  +#if defined(CONFIG_SYS_DRAM_TEST)
  +/* memory test */
  +int testdram(void)
 ...
  +#endif
 
 This is:
 
 1) dead code, as you don't define CONFIG_SYS_DRAM_TEST
 2) an obsolete approach that you should not use.  We have a several
different (and much more reliable) memory tests already - if yuou
really need one, then please use the existing code.  On the other
hand, you are using get_ram_size, which already includes a simple
memory test - so re you sure you really need an extra test?
 
 
  +#undef CONFIG_SYS_DRAM_TEST/* default undef */
 

I used the sdram test for some help when soldering here the prototypes. 
Then i disabled the test. As you already asked me, i removed my own
sdram test function and used one already used from other boards, and
added this in the amcore.c top coments.

 * Copy memory testdram() from sandburst/common/sb_common.c

Anyway, as you said, get_ram_size is enough for me. I will remove
CONFIG_SYS_DRAM_TEST and so int testdram(void) content.


 == remove.
 
  +/* bypass PLL for test purpose */
  +#undef CONFIG_SYS_PLL_BYPASS
 
 ???
 

I apologize, forget out, fixed.

If you haven't seen anything else, i'll post next V6 shortly.

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


[U-Boot] [PATCH v2 1/7] tegra: usb: set USB_PORTS_MAX to correct value

2013-01-25 Thread Lucas Stach
Both Tegra20 and Tegra30 have a max of 3 USB controllers.

Signed-off-by: Lucas Stach d...@lynxeye.de
---
 arch/arm/cpu/armv7/tegra20/usb.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm/cpu/armv7/tegra20/usb.c b/arch/arm/cpu/armv7/tegra20/usb.c
index 1bccf2b..f151fb2 100644
--- a/arch/arm/cpu/armv7/tegra20/usb.c
+++ b/arch/arm/cpu/armv7/tegra20/usb.c
@@ -44,7 +44,7 @@
 #endif
 
 enum {
-   USB_PORTS_MAX   = 4,/* Maximum ports we allow */
+   USB_PORTS_MAX   = 3,/* Maximum ports we allow */
 };
 
 /* Parameters we need for USB */
-- 
1.8.0.2

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


[U-Boot] [PATCH v2 0/7] Move Tegra EHCI drive to correct place

2013-01-25 Thread Lucas Stach
This moves out the Tegra EHCI driver from a platform specific directory
to the standard driver/usb/host dir.

This is a preparation needed to share this driver between Tegra20 and
Tegra30. No functional change in here, so Tegra30 is still not working.

Patch 6 could be a lot smaller if it were generated with -B, as GIT would
detect that most of it is moving stuff over, but last time I did this it
prevented git apply to work. So sorry for the big diff.

I think I incorporated all changes needed to reflect the review feedback
I got on this last time.

I expect this series to go in through the Tegra tree.

Lucas Stach (7):
  tegra: usb: set USB_PORTS_MAX to correct value
  tegra: usb: make controller init functions more self contained
  tegra: usb: remove unneeded function parameter
  tegra: usb: move controller init into start_port
  tegra: usb: various small cleanups
  tegra: usb: move implementation into right directory
  tegra: usb: move [start|stop]_port into ehci_hcd_[init|stop]

 arch/arm/cpu/armv7/tegra20/Makefile|   1 -
 arch/arm/cpu/armv7/tegra20/usb.c   | 567 -
 .../include/asm/{arch-tegra20 = arch-tegra}/usb.h |  22 -
 arch/arm/include/asm/arch-tegra20/tegra.h  |   1 -
 arch/arm/include/asm/arch-tegra30/tegra.h  |   2 +
 board/nvidia/common/board.c|   2 +-
 drivers/usb/host/ehci-tegra.c  | 546 +++-
 7 files changed, 533 insertions(+), 608 deletions(-)
 delete mode 100644 arch/arm/cpu/armv7/tegra20/usb.c
 rename arch/arm/include/asm/{arch-tegra20 = arch-tegra}/usb.h (89%)

-- 
1.8.0.2

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


[U-Boot] [PATCH v2 2/7] tegra: usb: make controller init functions more self contained

2013-01-25 Thread Lucas Stach
There is no need to pass around all those parameters. The init functions
are able to easily extract all the needed setup info on their own.

Signed-off-by: Lucas Stach d...@lynxeye.de
---
To clarify why this is a good thing an excerpt from the first round of
review:
The intent of this patch is not really to save up on parameters passed,
but to make it possible to later move out the controller initialization
into the ehci_hcd_init function without having to save away this global
state for later use[,thus avoid bloating the file global state].
---
 arch/arm/cpu/armv7/tegra20/usb.c | 24 
 1 file changed, 12 insertions(+), 12 deletions(-)

diff --git a/arch/arm/cpu/armv7/tegra20/usb.c b/arch/arm/cpu/armv7/tegra20/usb.c
index f151fb2..07c1ade 100644
--- a/arch/arm/cpu/armv7/tegra20/usb.c
+++ b/arch/arm/cpu/armv7/tegra20/usb.c
@@ -198,11 +198,12 @@ void usbf_reset_controller(struct fdt_usb *config, struct 
usb_ctlr *usbctlr)
 }
 
 /* set up the UTMI USB controller with the parameters provided */
-static int init_utmi_usb_controller(struct fdt_usb *config,
-   struct usb_ctlr *usbctlr, const u32 timing[])
+static int init_utmi_usb_controller(struct fdt_usb *config)
 {
u32 val;
int loop_count;
+   const unsigned *timing;
+   struct usb_ctlr *usbctlr = config-reg;
 
clock_enable(config-periph_id);
 
@@ -229,6 +230,8 @@ static int init_utmi_usb_controller(struct fdt_usb *config,
 * PLL Delay CONFIGURATION settings. The following parameters control
 * the bring up of the plls.
 */
+   timing = usb_pll[clock_get_osc_freq()];
+
val = readl(usbctlr-utmip_misc_cfg1);
clrsetbits_le32(val, UTMIP_PLLU_STABLE_COUNT_MASK,
timing[PARAM_STABLE_COUNT]  UTMIP_PLLU_STABLE_COUNT_SHIFT);
@@ -331,12 +334,12 @@ static int init_utmi_usb_controller(struct fdt_usb 
*config,
 #endif
 
 /* set up the ULPI USB controller with the parameters provided */
-static int init_ulpi_usb_controller(struct fdt_usb *config,
-   struct usb_ctlr *usbctlr)
+static int init_ulpi_usb_controller(struct fdt_usb *config)
 {
u32 val;
int loop_count;
struct ulpi_viewport ulpi_vp;
+   struct usb_ctlr *usbctlr = config-reg;
 
/* set up ULPI reference clock on pllp_out4 */
clock_enable(PERIPH_ID_DEV2_OUT);
@@ -408,8 +411,7 @@ static int init_ulpi_usb_controller(struct fdt_usb *config,
return 0;
 }
 #else
-static int init_ulpi_usb_controller(struct fdt_usb *config,
-   struct usb_ctlr *usbctlr)
+static int init_ulpi_usb_controller(struct fdt_usb *config)
 {
printf(No code to set up ULPI controller, please enable
CONFIG_USB_ULPI and CONFIG_USB_ULPI_VIEWPORT);
@@ -430,22 +432,20 @@ static void config_clock(const u32 timing[])
  * @param config   USB port configuration
  * @return 0 if ok, -1 if error (too many ports)
  */
-static int add_port(struct fdt_usb *config, const u32 timing[])
+static int add_port(struct fdt_usb *config)
 {
-   struct usb_ctlr *usbctlr = config-reg;
-
if (port_count == USB_PORTS_MAX) {
printf(tegrausb: Cannot register more than %d ports\n,
  USB_PORTS_MAX);
return -1;
}
 
-   if (config-utmi  init_utmi_usb_controller(config, usbctlr, timing)) {
+   if (config-utmi  init_utmi_usb_controller(config)) {
printf(tegrausb: Cannot init port\n);
return -1;
}
 
-   if (config-ulpi  init_ulpi_usb_controller(config, usbctlr)) {
+   if (config-ulpi  init_ulpi_usb_controller(config)) {
printf(tegrausb: Cannot init port\n);
return -1;
}
@@ -558,7 +558,7 @@ int board_usb_init(const void *blob)
return -1;
}
 
-   if (add_port(config, usb_pll[freq]))
+   if (add_port(config))
return -1;
set_host_mode(config);
}
-- 
1.8.0.2

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


[U-Boot] [PATCH v2 4/7] tegra: usb: move controller init into start_port

2013-01-25 Thread Lucas Stach
There is no need to init a USB controller before the upper layers indicate
that they are actually going to use it.

board_usb_init now only parses the device tree and sets up the common pll.

Signed-off-by: Lucas Stach d...@lynxeye.de
---
v2:
- remember if port is already initialized and skip init in that case
---
 arch/arm/cpu/armv7/tegra20/usb.c | 57 
 1 file changed, 29 insertions(+), 28 deletions(-)

diff --git a/arch/arm/cpu/armv7/tegra20/usb.c b/arch/arm/cpu/armv7/tegra20/usb.c
index 2007483..e4165e0 100644
--- a/arch/arm/cpu/armv7/tegra20/usb.c
+++ b/arch/arm/cpu/armv7/tegra20/usb.c
@@ -79,6 +79,7 @@ struct fdt_usb {
unsigned ulpi:1;/* 1 if port has external ULPI transceiver */
unsigned enabled:1; /* 1 to enable, 0 to disable */
unsigned has_legacy_mode:1; /* 1 if this port has legacy mode */
+   unsigned initialized:1; /* has this port already been initialized? */
enum dr_mode dr_mode;   /* dual role mode */
enum periph_id periph_id;/* peripheral id */
struct fdt_gpio_state vbus_gpio;/* GPIO for vbus enable */
@@ -426,44 +427,36 @@ static void config_clock(const u32 timing[])
timing[PARAM_CPCON], timing[PARAM_LFCON]);
 }
 
-/**
- * Add a new USB port to the list of available ports.
- *
- * @param config   USB port configuration
- * @return 0 if ok, -1 if error (too many ports)
- */
-static int add_port(struct fdt_usb *config)
+int tegrausb_start_port(int portnum, u32 *hccr, u32 *hcor)
 {
-   if (port_count == USB_PORTS_MAX) {
-   printf(tegrausb: Cannot register more than %d ports\n,
- USB_PORTS_MAX);
+   struct fdt_usb *config;
+   struct usb_ctlr *usbctlr;
+
+   if (portnum = port_count)
return -1;
-   }
+
+   config = port[portnum];
+
+   /* skip init, if the port is already initialized */
+   if (config-initialized)
+   goto success;
 
if (config-utmi  init_utmi_usb_controller(config)) {
-   printf(tegrausb: Cannot init port\n);
+   printf(tegrausb: Cannot init port %d\n, portnum);
return -1;
}
 
if (config-ulpi  init_ulpi_usb_controller(config)) {
-   printf(tegrausb: Cannot init port\n);
+   printf(tegrausb: Cannot init port %d\n, portnum);
return -1;
}
 
-   port[port_count++] = *config;
-
-   return 0;
-}
-
-int tegrausb_start_port(int portnum, u32 *hccr, u32 *hcor)
-{
-   struct usb_ctlr *usbctlr;
+   set_host_mode(config);
 
-   if (portnum = port_count)
-   return -1;
-   set_host_mode(port[portnum]);
+   config-initialized = 1;
 
-   usbctlr = port[portnum].reg;
+success:
+   usbctlr = config-reg;
*hccr = (u32)usbctlr-cap_length;
*hcor = (u32)usbctlr-usb_cmd;
return 0;
@@ -483,6 +476,8 @@ int tegrausb_stop_port(int portnum)
writel(2, usbctlr-usb_cmd);
udelay(1000);
 
+   port[portnum].initialized = 0;
+
return 0;
 }
 
@@ -546,6 +541,12 @@ int board_usb_init(const void *blob)
count = fdtdec_find_aliases_for_id(blob, usb,
COMPAT_NVIDIA_TEGRA20_USB, node_list, USB_PORTS_MAX);
for (i = 0; i  count; i++) {
+   if (port_count == USB_PORTS_MAX) {
+   printf(tegrausb: Cannot register more than %d ports\n,
+   USB_PORTS_MAX);
+   return -1;
+   }
+
debug(USB %d: , i);
node = node_list[i];
if (!node)
@@ -555,10 +556,10 @@ int board_usb_init(const void *blob)
  fdt_get_name(blob, node, NULL));
return -1;
}
+   config.initialized = 0;
 
-   if (add_port(config))
-   return -1;
-   set_host_mode(config);
+   /* add new USB port to the list of available ports */
+   port[port_count++] = config;
}
 
return 0;
-- 
1.8.0.2

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


[U-Boot] [PATCH v2 6/7] tegra: usb: move implementation into right directory

2013-01-25 Thread Lucas Stach
This moves the Tegra USB implementation into the drivers/usb/host
directory. Note that this merges the old
/arch/arm/cpu/armv7/tegra20/usb.c file into ehci-tegra.c. No code
changes, just moving stuff around.

v2: While at it also move some defines and the usb.h header file to make
usb driver usable for Tegra30.
NOTE: A lot more work is required to properly init the PHYs and PLL_U on
Tegra30, this is just to make porting easier and it does no harm here.

Signed-off-by: Lucas Stach d...@lynxeye.de
---
 arch/arm/cpu/armv7/tegra20/Makefile|   1 -
 arch/arm/cpu/armv7/tegra20/usb.c   | 555 -
 .../include/asm/{arch-tegra20 = arch-tegra}/usb.h |   0
 arch/arm/include/asm/arch-tegra20/tegra.h  |   1 -
 arch/arm/include/asm/arch-tegra30/tegra.h  |   2 +
 board/nvidia/common/board.c|   2 +-
 drivers/usb/host/ehci-tegra.c  | 535 +++-
 7 files changed, 536 insertions(+), 560 deletions(-)
 delete mode 100644 arch/arm/cpu/armv7/tegra20/usb.c
 rename arch/arm/include/asm/{arch-tegra20 = arch-tegra}/usb.h (100%)

diff --git a/arch/arm/cpu/armv7/tegra20/Makefile 
b/arch/arm/cpu/armv7/tegra20/Makefile
index 54ed8c4..c8a8504 100644
--- a/arch/arm/cpu/armv7/tegra20/Makefile
+++ b/arch/arm/cpu/armv7/tegra20/Makefile
@@ -27,7 +27,6 @@ include $(TOPDIR)/config.mk
 
 LIB=  $(obj)lib$(SOC).o
 
-COBJS-$(CONFIG_USB_EHCI_TEGRA) += usb.o
 COBJS-$(CONFIG_PWM_TEGRA) += pwm.o
 COBJS-$(CONFIG_VIDEO_TEGRA) += display.o
 
diff --git a/arch/arm/cpu/armv7/tegra20/usb.c b/arch/arm/cpu/armv7/tegra20/usb.c
deleted file mode 100644
index 3fdd5df..000
--- a/arch/arm/cpu/armv7/tegra20/usb.c
+++ /dev/null
@@ -1,555 +0,0 @@
-/*
- * Copyright (c) 2011 The Chromium OS Authors.
- * (C) Copyright 2010,2011 NVIDIA Corporation www.nvidia.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 common.h
-#include asm/io.h
-#include asm-generic/gpio.h
-#include asm/arch/clock.h
-#include asm/arch/usb.h
-#include usb/ulpi.h
-#include libfdt.h
-#include fdtdec.h
-
-#ifdef CONFIG_USB_ULPI
-   #ifndef CONFIG_USB_ULPI_VIEWPORT
-   #error  To use CONFIG_USB_ULPI on Tegra Boards you have to also \
-   define CONFIG_USB_ULPI_VIEWPORT
-   #endif
-#endif
-
-enum {
-   USB_PORTS_MAX   = 3,/* Maximum ports we allow */
-};
-
-/* Parameters we need for USB */
-enum {
-   PARAM_DIVN, /* PLL FEEDBACK DIVIDer */
-   PARAM_DIVM, /* PLL INPUT DIVIDER */
-   PARAM_DIVP, /* POST DIVIDER (2^N) */
-   PARAM_CPCON,/* BASE PLLC CHARGE Pump setup ctrl */
-   PARAM_LFCON,/* BASE PLLC LOOP FILter setup ctrl */
-   PARAM_ENABLE_DELAY_COUNT,   /* PLL-U Enable Delay Count */
-   PARAM_STABLE_COUNT, /* PLL-U STABLE count */
-   PARAM_ACTIVE_DELAY_COUNT,   /* PLL-U Active delay count */
-   PARAM_XTAL_FREQ_COUNT,  /* PLL-U XTAL frequency count */
-   PARAM_DEBOUNCE_A_TIME,  /* 10MS DELAY for BIAS_DEBOUNCE_A */
-   PARAM_BIAS_TIME,/* 20US DELAY AFter bias cell op */
-
-   PARAM_COUNT
-};
-
-/* Possible port types (dual role mode) */
-enum dr_mode {
-   DR_MODE_NONE = 0,
-   DR_MODE_HOST,   /* supports host operation */
-   DR_MODE_DEVICE, /* supports device operation */
-   DR_MODE_OTG,/* supports both */
-};
-
-/* Information about a USB port */
-struct fdt_usb {
-   struct usb_ctlr *reg;   /* address of registers in physical memory */
-   unsigned utmi:1;/* 1 if port has external tranceiver, else 0 */
-   unsigned ulpi:1;/* 1 if port has external ULPI transceiver */
-   unsigned enabled:1; /* 1 to enable, 0 to disable */
-   unsigned has_legacy_mode:1; /* 1 if this port has legacy mode */
-   unsigned initialized:1; /* has this port already been initialized? */
-   enum dr_mode dr_mode;   /* dual role mode */
-   enum periph_id periph_id;/* peripheral id */
-   struct fdt_gpio_state vbus_gpio;/* GPIO for vbus enable */
-   struct fdt_gpio_state 

[U-Boot] [PATCH v2 3/7] tegra: usb: remove unneeded function parameter

2013-01-25 Thread Lucas Stach
Just a dead parameter, never actually used.

Signed-off-by: Lucas Stach d...@lynxeye.de
Acked-by: Simon Glass s...@chromium.org
---
 arch/arm/cpu/armv7/tegra20/usb.c | 6 ++
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/arch/arm/cpu/armv7/tegra20/usb.c b/arch/arm/cpu/armv7/tegra20/usb.c
index 07c1ade..2007483 100644
--- a/arch/arm/cpu/armv7/tegra20/usb.c
+++ b/arch/arm/cpu/armv7/tegra20/usb.c
@@ -486,8 +486,7 @@ int tegrausb_stop_port(int portnum)
return 0;
 }
 
-int fdt_decode_usb(const void *blob, int node, unsigned osc_frequency_mhz,
-  struct fdt_usb *config)
+int fdt_decode_usb(const void *blob, int node, struct fdt_usb *config)
 {
const char *phy, *mode;
 
@@ -535,7 +534,6 @@ int fdt_decode_usb(const void *blob, int node, unsigned 
osc_frequency_mhz,
 int board_usb_init(const void *blob)
 {
struct fdt_usb config;
-   unsigned osc_freq = clock_get_rate(CLOCK_ID_OSC);
enum clock_osc_freq freq;
int node_list[USB_PORTS_MAX];
int node, count, i;
@@ -552,7 +550,7 @@ int board_usb_init(const void *blob)
node = node_list[i];
if (!node)
continue;
-   if (fdt_decode_usb(blob, node, osc_freq, config)) {
+   if (fdt_decode_usb(blob, node, config)) {
debug(Cannot decode USB node %s\n,
  fdt_get_name(blob, node, NULL));
return -1;
-- 
1.8.0.2

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


[U-Boot] [PATCH v2 5/7] tegra: usb: various small cleanups

2013-01-25 Thread Lucas Stach
Remove unneeded headers, function prototype and stale comment, that
doesn't match the actual codebase anymore.

Signed-off-by: Lucas Stach d...@lynxeye.de
---
 arch/arm/cpu/armv7/tegra20/usb.c| 13 +
 arch/arm/include/asm/arch-tegra20/usb.h |  3 ---
 2 files changed, 1 insertion(+), 15 deletions(-)

diff --git a/arch/arm/cpu/armv7/tegra20/usb.c b/arch/arm/cpu/armv7/tegra20/usb.c
index e4165e0..3fdd5df 100644
--- a/arch/arm/cpu/armv7/tegra20/usb.c
+++ b/arch/arm/cpu/armv7/tegra20/usb.c
@@ -25,21 +25,15 @@
 #include asm/io.h
 #include asm-generic/gpio.h
 #include asm/arch/clock.h
-#include asm/arch/gpio.h
-#include asm/arch/pinmux.h
-#include asm/arch/tegra.h
 #include asm/arch/usb.h
 #include usb/ulpi.h
-#include asm/arch-tegra/clk_rst.h
-#include asm/arch-tegra/sys_proto.h
-#include asm/arch-tegra/uart.h
 #include libfdt.h
 #include fdtdec.h
 
 #ifdef CONFIG_USB_ULPI
#ifndef CONFIG_USB_ULPI_VIEWPORT
#error  To use CONFIG_USB_ULPI on Tegra Boards you have to also \
-   define CONFIG_USB_ULPI_VIEWPORT
+   define CONFIG_USB_ULPI_VIEWPORT
#endif
 #endif
 
@@ -191,11 +185,6 @@ void usbf_reset_controller(struct fdt_usb *config, struct 
usb_ctlr *usbctlr)
/* Enable the UTMIP PHY */
if (config-utmi)
setbits_le32(usbctlr-susp_ctrl, UTMIP_PHY_ENB);
-
-   /*
-* TODO: where do we take the USB1 out of reset? The old code would
-* take USB3 out of reset, but not USB1. This code doesn't do either.
-*/
 }
 
 /* set up the UTMI USB controller with the parameters provided */
diff --git a/arch/arm/include/asm/arch-tegra20/usb.h 
b/arch/arm/include/asm/arch-tegra20/usb.h
index fdbd127..b18c850 100644
--- a/arch/arm/include/asm/arch-tegra20/usb.h
+++ b/arch/arm/include/asm/arch-tegra20/usb.h
@@ -243,9 +243,6 @@ struct usb_ctlr {
 #define VBUS_VLD_STS   (1  26)
 
 
-/* Change the USB host port into host mode */
-void usb_set_host_mode(void);
-
 /* Setup USB on the board */
 int board_usb_init(const void *blob);
 
-- 
1.8.0.2

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


[U-Boot] [PATCH v2 7/7] tegra: usb: move [start|stop]_port into ehci_hcd_[init|stop]

2013-01-25 Thread Lucas Stach
The ehci_hcd entry points were just calling into the Tegra USB
functions. Now that they are in the same file we can just move over the
implementation.

Signed-off-by: Lucas Stach d...@lynxeye.de
---
 arch/arm/include/asm/arch-tegra/usb.h |  19 --
 drivers/usb/host/ehci-tegra.c | 119 +++---
 2 files changed, 51 insertions(+), 87 deletions(-)

diff --git a/arch/arm/include/asm/arch-tegra/usb.h 
b/arch/arm/include/asm/arch-tegra/usb.h
index b18c850..ef6c089 100644
--- a/arch/arm/include/asm/arch-tegra/usb.h
+++ b/arch/arm/include/asm/arch-tegra/usb.h
@@ -246,23 +246,4 @@ struct usb_ctlr {
 /* Setup USB on the board */
 int board_usb_init(const void *blob);
 
-/**
- * Start up the given port number (ports are numbered from 0 on each board).
- * This returns values for the appropriate hccr and hcor addresses to use for
- * USB EHCI operations.
- *
- * @param portnum  port number to start
- * @param hccr returns start address of EHCI HCCR registers
- * @param hcor returns start address of EHCI HCOR registers
- * @return 0 if ok, -1 on error (generally invalid port number)
- */
-int tegrausb_start_port(int portnum, u32 *hccr, u32 *hcor);
-
-/**
- * Stop the current port
- *
- * @return 0 if ok, -1 if no port was active
- */
-int tegrausb_stop_port(int portnum);
-
 #endif /* _TEGRA_USB_H_ */
diff --git a/drivers/usb/host/ehci-tegra.c b/drivers/usb/host/ehci-tegra.c
index b77806f..13bd6cc 100644
--- a/drivers/usb/host/ehci-tegra.c
+++ b/drivers/usb/host/ehci-tegra.c
@@ -438,60 +438,6 @@ static void config_clock(const u32 timing[])
timing[PARAM_CPCON], timing[PARAM_LFCON]);
 }
 
-int tegrausb_start_port(int portnum, u32 *hccr, u32 *hcor)
-{
-   struct fdt_usb *config;
-   struct usb_ctlr *usbctlr;
-
-   if (portnum = port_count)
-   return -1;
-
-   config = port[portnum];
-
-   /* skip init, if the port is already initialized */
-   if (config-initialized)
-   goto success;
-
-   if (config-utmi  init_utmi_usb_controller(config)) {
-   printf(tegrausb: Cannot init port %d\n, portnum);
-   return -1;
-   }
-
-   if (config-ulpi  init_ulpi_usb_controller(config)) {
-   printf(tegrausb: Cannot init port %d\n, portnum);
-   return -1;
-   }
-
-   set_host_mode(config);
-
-   config-initialized = 1;
-
-success:
-   usbctlr = config-reg;
-   *hccr = (u32)usbctlr-cap_length;
-   *hcor = (u32)usbctlr-usb_cmd;
-   return 0;
-}
-
-int tegrausb_stop_port(int portnum)
-{
-   struct usb_ctlr *usbctlr;
-
-   usbctlr = port[portnum].reg;
-
-   /* Stop controller */
-   writel(0, usbctlr-usb_cmd);
-   udelay(1000);
-
-   /* Initiate controller reset */
-   writel(2, usbctlr-usb_cmd);
-   udelay(1000);
-
-   port[portnum].initialized = 0;
-
-   return 0;
-}
-
 int fdt_decode_usb(const void *blob, int node, struct fdt_usb *config)
 {
const char *phy, *mode;
@@ -576,32 +522,69 @@ int board_usb_init(const void *blob)
return 0;
 }
 
-/*
- * Create the appropriate control structures to manage
- * a new EHCI host controller.
+/**
+ * Start up the given port number (ports are numbered from 0 on each board).
+ * This returns values for the appropriate hccr and hcor addresses to use for
+ * USB EHCI operations.
+ *
+ * @param indexport number to start
+ * @param hccr returns start address of EHCI HCCR registers
+ * @param hcor returns start address of EHCI HCOR registers
+ * @return 0 if ok, -1 on error (generally invalid port number)
  */
 int ehci_hcd_init(int index, struct ehci_hccr **hccr, struct ehci_hcor **hcor)
 {
-   u32 our_hccr, our_hcor;
+   struct fdt_usb *config;
+   struct usb_ctlr *usbctlr;
 
-   /*
-* Select the first port, as we don't have a way of selecting others
-* yet
-*/
-   if (tegrausb_start_port(index, our_hccr, our_hcor))
+   if (index = port_count)
+   return -1;
+
+   config = port[index];
+
+   /* skip init, if the port is already initialized */
+   if (config-initialized)
+   goto success;
+
+   if (config-utmi  init_utmi_usb_controller(config)) {
+   printf(tegrausb: Cannot init port %d\n, index);
+   return -1;
+   }
+
+   if (config-ulpi  init_ulpi_usb_controller(config)) {
+   printf(tegrausb: Cannot init port %d\n, index);
return -1;
+   }
+
+   set_host_mode(config);
 
-   *hccr = (struct ehci_hccr *)our_hccr;
-   *hcor = (struct ehci_hcor *)our_hcor;
+   config-initialized = 1;
 
+success:
+   usbctlr = config-reg;
+   *hccr = (u32)usbctlr-cap_length;
+   *hcor = (u32)usbctlr-usb_cmd;
return 0;
 }
 
 /*
- * Destroy the appropriate control structures corresponding
- * the the EHCI host controller.
+ * Bring down the specified USB 

Re: [U-Boot] [U-BOOT] help on mmc driver

2013-01-25 Thread Jagannadha Sutradharudu Teki
Hi Lukasz Majewski,

Thanks for your information.

Thanks,
Jagan.

 -Original Message-
 From: Lukasz Majewski [mailto:l.majew...@samsung.com]
 Sent: 25 January 2013 00:20
 To: Jagannadha Sutradharudu Teki
 Cc: u-boot@lists.denx.de
 Subject: Re: [U-Boot] [U-BOOT] help on mmc driver

 Hi Jagannadha,

  Hi,
 
  I need some help on mmc driver development on u-boot.
 
  Few questions:
  1. is mmc framework in u-boot supports all type of card interfaces
  like SD, MMC, and eMMC

 Yes there is a generic framework for MMC. - ./drivers/mmc/ {mmc.c}

  2. If I write a driver do I need to develop the common driver for all
  or a separate drivers for individual cards.

 This is a generic framework. Normally you only need to write MMC controller
 specific code to use it.

  3. Is there any drivers in current u-boot drivers/mmc have individual
  card interfaces support (SD  MMC  eMMC)

 AS fair as I know there aren't any special drivers for any particular 
 vendor.

  4. is there any drivers in
  current u-boot driver/mmc  for common card intefaces (SD | MMC |
 eMMC)

 Yes, you can refer to mmc.c
 One good example is the sdhci.c code which serves for SD cards and eMMC
 (at least for Samsung).

 
  Request for help.
 
  Thanks,
  Jagan.
 
 
  This email and any attachments are intended for the sole use of the
  named recipient(s) and contain(s) confidential information that may be
  proprietary, privileged or copyrighted under applicable law. If you
  are not the intended recipient, do not read, copy, or forward this
  email message or any attachments. Delete this email message and any
  attachments immediately.
 
 
  ___
  U-Boot mailing list
  U-Boot@lists.denx.de
  http://lists.denx.de/mailman/listinfo/u-boot



 --
 Best regards,

 Lukasz Majewski

 Samsung RD Poland (SRPOL) | Linux Platform Group



This email and any attachments are intended for the sole use of the named 
recipient(s) and contain(s) confidential information that may be proprietary, 
privileged or copyrighted under applicable law. If you are not the intended 
recipient, do not read, copy, or forward this email message or any attachments. 
Delete this email message and any attachments immediately.


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


Re: [U-Boot] [PATCH v2 0/7] Move Tegra EHCI drive to correct place

2013-01-25 Thread Tom Warren
Lucas,

-Original Message-
From: Lucas Stach [mailto:d...@lynxeye.de] 
Sent: Friday, January 25, 2013 7:41 AM
To: u-boot@lists.denx.de
Cc: Tom Warren; Marek Vasut; Simon Glass; Stephen Warren
Subject: [PATCH v2 0/7] Move Tegra EHCI drive to correct place

This moves out the Tegra EHCI driver from a platform specific directory to the 
standard driver/usb/host dir.

This is a preparation needed to share this driver between Tegra20 and Tegra30. 
No functional change in here, so Tegra30 is still not working.

Patch 6 could be a lot smaller if it were generated with -B, as GIT would 
detect that most of it is moving stuff over, but last time I did this it 
prevented git apply to work. So sorry for the big diff.

I think I incorporated all changes needed to reflect the review feedback I got 
on this last time.

I expect this series to go in through the Tegra tree.

I tried to apply this to u-boot-tegra/next and it needed some massaging to get 
it to apply cleanly. Minor stuff, but you'll need to rebase it on top of 
current u-boot-tegra/next (I just pushed a new version with my 'Move common 
clock code' patch and Allen's fix for the DTS sort patch. Sorry, but the Tegra 
repo is going to be fairly dynamic for the next few weeks.

Also, when I did get it applied and tried to ./MAKEALL -s tegra20 -s tegra30, I 
got the following warning on all T20 builds:

ehci-tegra.c: In function 'ehci_hcd_init':
ehci-tegra.c:565: warning: assignment makes pointer from integer without a cast
ehci-tegra.c:566: warning: assignment makes pointer from integer without a cast

Also, it appears that arch-tegra20/usb.h is still hanging around (in my edited 
patch series, at any rate). Shouldn't the moved arch-tegra/usb.h be used 
exclusively? Removing arch-tegra20/usb.h causes fatal errors in 
nvidia/common/board.c. If it does need to exist, then it needs to live in 
arch-tegra30, also, so it'll be available when T30 gets USB turned on.

Tom


Lucas Stach (7):
  tegra: usb: set USB_PORTS_MAX to correct value
  tegra: usb: make controller init functions more self contained
  tegra: usb: remove unneeded function parameter
  tegra: usb: move controller init into start_port
  tegra: usb: various small cleanups
  tegra: usb: move implementation into right directory
  tegra: usb: move [start|stop]_port into ehci_hcd_[init|stop]

 arch/arm/cpu/armv7/tegra20/Makefile|   1 -
 arch/arm/cpu/armv7/tegra20/usb.c   | 567 -
 .../include/asm/{arch-tegra20 = arch-tegra}/usb.h |  22 -
 arch/arm/include/asm/arch-tegra20/tegra.h  |   1 -
 arch/arm/include/asm/arch-tegra30/tegra.h  |   2 +
 board/nvidia/common/board.c|   2 +-
 drivers/usb/host/ehci-tegra.c  | 546 +++-
 7 files changed, 533 insertions(+), 608 deletions(-)  delete mode 100644 
arch/arm/cpu/armv7/tegra20/usb.c  rename arch/arm/include/asm/{arch-tegra20 = 
arch-tegra}/usb.h (89%)

--
1.8.0.2
--
nvpublic


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


Re: [U-Boot] [PATCH v2 0/7] Move Tegra EHCI drive to correct place

2013-01-25 Thread Lucas Stach
Hello Tom,

Am Freitag, den 25.01.2013, 08:07 -0800 schrieb Tom Warren:
 I tried to apply this to u-boot-tegra/next and it needed some massaging to 
 get it to apply cleanly. Minor stuff, but you'll need to rebase it on top of 
 current u-boot-tegra/next (I just pushed a new version with my 'Move common 
 clock code' patch and Allen's fix for the DTS sort patch. Sorry, but the 
 Tegra repo is going to be fairly dynamic for the next few weeks.
 
Ok, I'll wait for some comments on the actual code, then repost a
rebased version.

 Also, when I did get it applied and tried to ./MAKEALL -s tegra20 -s tegra30, 
 I got the following warning on all T20 builds:
 
 ehci-tegra.c: In function 'ehci_hcd_init':
 ehci-tegra.c:565: warning: assignment makes pointer from integer without a 
 cast
 ehci-tegra.c:566: warning: assignment makes pointer from integer without a 
 cast
 
Ah damn, forgot to squash the fix in the last patch.

 Also, it appears that arch-tegra20/usb.h is still hanging around (in my 
 edited patch series, at any rate). Shouldn't the moved arch-tegra/usb.h be 
 used exclusively? Removing arch-tegra20/usb.h causes fatal errors in 
 nvidia/common/board.c. If it does need to exist, then it needs to live in 
 arch-tegra30, also, so it'll be available when T30 gets USB turned on.

I don't see why this is happening. The shortlog points at git picking up
the rename at the in the wrong dir, I'll look into this when reposting.
But the change to nvidia/common/board.c to use the new include dir is
definitely included in patch 6.

Regards,
Lucas



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


Re: [U-Boot] B4860/B4420 patches and some updates for qixis and T4240QDS

2013-01-25 Thread Andy Fleming
I have found the problem:

-B4860QDS_SPIFLASHpowerpc mpc85xx b4860qds
 freescale -
B4860QDS:RAMBOOT_PBL,SPIFLASH,SYS_TEXT_BASE=0xFFF8
+B4860QDS_SPIFLASHpowerpc mpc85xx b4860qds
 freescale -
B4860QDS:PPC_B4860,RAMBOOT_PBL,SPIFLASH,SYS_TEXT_BASE=0xFFF8

-B4420QDS_SPIFLASHpowerpc mpc85xx b4860qds
 freescale -
B4860QDS:RAMBOOT_PBL,SPIFLASH,SYS_TEXT_BASE=0xFFF8
+B4420QDS_SPIFLASHpowerpc mpc85xx b4860qds
 freescale -
B4860QDS:PPC_B4420,RAMBOOT_PBL,SPIFLASH,SYS_TEXT_BASE=0xFFF8

For some reason, the SPIFLASH versions of these boards didn't have the
processor specified. I will add that change to the patches, and push them
upstream.



On Thu, Jan 24, 2013 at 2:08 AM, Andy Fleming aflem...@gmail.com wrote:

 I'm seeing these errors, when these patches are enabled:

 /local/afleming/u-boot/build/B4420QDS_SPIFLASH/include2/asm/config_mpc85xx.h:575:2:
 error: #error Processor type not defined for this platform
 /local/afleming/u-boot/build/B4420QDS_SPIFLASH/include2/asm/config_mpc85xx.h:579:2:
 error: #error CONFIG_SYS_CCSRBAR_DEFAULT is not defined for this platform.
 /local/afleming/u-boot/build/B4420QDS_SPIFLASH/include2/asm/config_mpc85xx.h:575:2:
 error: #error Processor type not defined for this platform
 /local/afleming/u-boot/build/B4420QDS_SPIFLASH/include2/asm/config_mpc85xx.h:579:2:
 error: #error CONFIG_SYS_CCSRBAR_DEFAULT is not defined for this platform.
 In file included from
 /local/afleming/u-boot/build/B4420QDS_SPIFLASH/include2/asm/config.h:25:0,
  from
 /local/afleming/u-boot/build/B4420QDS_SPIFLASH/include/config.h:13,
  from /local/afleming/u-boot/include/common.h:37,
  from /local/afleming/u-boot/lib/asm-offsets.c:18:
 /local/afleming/u-boot/build/B4420QDS_SPIFLASH/include2/asm/config_mpc85xx.h:575:2:
 error: #error Processor type not defined for this platform
 /local/afleming/u-boot/build/B4420QDS_SPIFLASH/include2/asm/config_mpc85xx.h:579:2:
 error: #error CONFIG_SYS_CCSRBAR_DEFAULT is not defined for this platform.
 In file included from /local/afleming/u-boot/include/mpc85xx.h:14:0,
  from /local/afleming/u-boot/include/common.h:93,
  from /local/afleming/u-boot/lib/asm-offsets.c:18:
 /local/afleming/u-boot/include/e500.h:19:26: error: 'CONFIG_SYS_NUM_FMAN'
 undeclared here (not in a function)
 In file included from /local/afleming/u-boot/include/common.h:94:0,
  from /local/afleming/u-boot/lib/asm-offsets.c:18:
 /local/afleming/u-boot/build/B4420QDS_SPIFLASH/include2/asm/immap_85xx.h:1400:33:
 error: 'CONFIG_SYS_FSL_SRIO_MAX_PORTS' undeclared here (not in a function)
 /local/afleming/u-boot/build/B4420QDS_SPIFLASH/include2/asm/immap_85xx.h:1498:28:
 error: 'CONFIG_SYS_FSL_SRIO_OB_WIN_NUM' undeclared here (not in a function)
 /local/afleming/u-boot/build/B4420QDS_SPIFLASH/include2/asm/immap_85xx.h:1500:27:
 error: 'CONFIG_SYS_FSL_SRIO_IB_WIN_NUM' undeclared here (not in a function)
 make: ***
 [/local/afleming/u-boot/build/B4420QDS_SPIFLASH/lib/asm-offsets.s] Error 1
 make: *** Waiting for unfinished jobs

 This was also seen on B4860QDS_SPIFLASH


 On Thu, Jan 17, 2013 at 11:18 PM, Aggrwal Poonam-B10812 
 b10...@freescale.com wrote:

 Hello Andy

 Any update on this patch set?

 Regards
 Poonam

 From: Aggrwal Poonam-B10812
 Sent: Friday, December 21, 2012 6:16 PM
 To: U-Boot-Denx
 Subject: B4860/B4420 patches and some updates for qixis and T4240QDS

 The patchset contains the following patches:

 Mainly related to B4860/B4420QDS.
 Some are qixis updates and related additions for B4860/B4420QDS  and
 T4240QDS.

 [PATCH 01/09] powerpc/mpc85xx: Few updates for B4860 cpu changes
 [PATCH 02/09] powerpc/mpc85xx:Add support of B4420 SoC
 [PATCH 03/09] board/freescale/common:Add support of QTAG register
 [PATCH 04/09] powerpc/mpc85xx:Fix Core cluster configuration loop
 [PATCH 05/09] powerpc/b4860qds: Added Support for B4860QDS
 [PATCH 06/09] powerpc/qixis: enable qixis dump command and add switch
 dumping command
 [PATCH 07/09] powerpc/b4860qds: Add support to dump switch settings on
 b4860qds board
 [PATCH 08/09] powerpc/t4240qds: Add support to dump switch settings on
 t4240qds board
 [PATCH 09/09] powerpc/t4240qds: Print FPGA detail version


 Regards
 Poonam


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



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


[U-Boot] [PATCH] corenet: Disable video on P2020DS

2013-01-25 Thread Andy Fleming
The P2020DS build had grown too large, and video support isn't enabled
in almost any other Freescale board. Disabling it allows us to keep
building, and provides options for reenabling it later.

Signed-off-by: Andy Fleming aflem...@freescale.com
---
 include/configs/P2020DS.h |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/configs/P2020DS.h b/include/configs/P2020DS.h
index 0cc5781..a975ee1 100644
--- a/include/configs/P2020DS.h
+++ b/include/configs/P2020DS.h
@@ -490,7 +490,7 @@
 #define VIDEO_IO_OFFSETCONFIG_SYS_PCIE1_IO_VIRT
 
 /* video */
-#define CONFIG_VIDEO
+#undef CONFIG_VIDEO
 
 #if defined(CONFIG_VIDEO)
 #define CONFIG_BIOSEMU
-- 
1.7.9.7


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


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

2013-01-25 Thread Andy Fleming
  README.mips: update known issues and TODOs (2013-01-16 10:52:08 +0100)

are available in the git repository at:

  git://www.denx.de/git/u-boot-mpc85xx.git master

for you to fetch changes up to 1342f7dd2c864889ce3ef6a78fe74155fd1f9a8f:

  corenet: Disable video on P2020DS (2013-01-25 10:32:22 -0600)


Anatolij Gustschin (1):
  mpc8xxx: fix DDR init value to use CONFIG_MEM_INIT_VALUE

Andy Fleming (1):
  corenet: Disable video on P2020DS

Hongtao Jia (2):
  powerpc/mpc8572ds: Enable bank interleaving to cs0+cs1 for dual-rank DIMMs
  powerpc/mpc8544ds: Add USB controller support for MPC8544DS

James Yang (5):
  Move DDR command parsing to separate function
  Fix data stage name matching issue
  Add copy command to FSL DDR interactive
  README.fsl-ddr typos and update to reflect hotkey
  powerpc/mpc8: FSL DDR debugger auto run of stored commands

Poonam Aggrwal (2):
  powerpc/mpc85xx: Few updates for B4860 cpu changes
  powerpc/mpc85xx:Add support of B4420 SoC

Prabhakar Kushwaha (8):
  board/T4240qds:Fix TLB and LAW size of NAND flash
  boards/T4240qds:Fix IFC AMASK init as per FPGA register space
  board/freescale/common:Add support of QTAG register
  powerpc/mpc85xx:Fix Core cluster configuration loop
  powerpc/t4240qds: Print FPGA detail version
  powerpc/mpc85xx: Add BSC9132/BSC9232 processor support
  powerpc/85xx: Add BSC9132QDS support
  board/common: Add support for QIXIS read/write using i2c

Scott Wood (1):
  powerpc/mpc85xx: add support for MMUv2 page sizes

Shaohui Xie (1):
  powerpc/p2041: move Lanes mux to board early init

Shaveta Leekha (3):
  powerpc/qixis: enable qixis dump command and add switch dumping command
  powerpc/b4860qds: Add support to dump switch settings on b4860qds board
  powerpc/t4240qds: Add support to dump switch settings on t4240qds board

Shengzhou Liu (1):
  powerpc/t4240: Adding workaround errata A-005871

Timur Tabi (1):
  powerpc/t4qds: move VSC3316 config data from t4qds.h to t4qds.c

Vakul Garg (1):
  powerpc/mpc85xx: Add property 'fsl, sec-era' in device tree node 'crypto'

Valentin Longchamp (2):
  powerpc/p2041: add RCW file for P2041RDB
  powerpc/p2041: set RCW and PBI files for .pbl build or P2041RDB

York Sun (4):
  powerpc/mpc85xx: Reserve default boot page
  powerpc/t4240qds: Update IFC timing for NOR flash
  powerpc/b4860qds: Added Support for B4860QDS
  powerpc/mpc8xxx: Enable entering DDR debugging by key press

 MAINTAINERS  |4 +
 arch/powerpc/cpu/mpc85xx/Makefile|5 +
 arch/powerpc/cpu/mpc85xx/b4860_ids.c |6 +
 arch/powerpc/cpu/mpc85xx/b4860_serdes.c  |   60 ++
 arch/powerpc/cpu/mpc85xx/bsc9132_serdes.c|   96 +++
 arch/powerpc/cpu/mpc85xx/cmd_errata.c|4 +
 arch/powerpc/cpu/mpc85xx/cpu_init.c  |   44 +-
 arch/powerpc/cpu/mpc85xx/fdt.c   |   24 +
 arch/powerpc/cpu/mpc85xx/start.S |2 +-
 arch/powerpc/cpu/mpc85xx/tlb.c   |   19 +-
 arch/powerpc/cpu/mpc8xxx/cpu.c   |2 +
 arch/powerpc/cpu/mpc8xxx/ddr/ctrl_regs.c |4 +
 arch/powerpc/cpu/mpc8xxx/ddr/ddr.h   |3 +-
 arch/powerpc/cpu/mpc8xxx/ddr/interactive.c   |  324 ++---
 arch/powerpc/cpu/mpc8xxx/ddr/main.c  |8 +-
 arch/powerpc/cpu/mpc8xxx/fdt.c   |   78 +-
 arch/powerpc/include/asm/config_mpc85xx.h|   39 +-
 arch/powerpc/include/asm/immap_85xx.h|   34 +-
 arch/powerpc/include/asm/mmu.h   |   52 +-
 arch/powerpc/include/asm/processor.h |2 +
 board/freescale/b4860qds/Makefile|   54 ++
 board/freescale/b4860qds/b4860qds.c  |  505 +
 board/freescale/b4860qds/b4860qds.h  |   26 +
 board/freescale/b4860qds/b4860qds_crossbar_con.h |   67 ++
 board/freescale/b4860qds/b4860qds_qixis.h|   37 +
 board/freescale/b4860qds/ddr.c   |  190 +
 board/freescale/b4860qds/eth_b4860qds.c  |  338 +
 board/freescale/b4860qds/law.c   |   44 ++
 board/freescale/b4860qds/pci.c   |   39 +
 board/freescale/b4860qds/tlb.c   |  127 
 board/freescale/bsc9132qds/Makefile  |   52 ++
 board/freescale/bsc9132qds/README|  150 
 board/freescale/bsc9132qds/bsc9132qds.c  |  406 +++
 board/freescale/bsc9132qds/ddr.c |  209 ++
 board/freescale/bsc9132qds/law.c |   35 +
 board/freescale/bsc9132qds/tlb.c |   92 +++
 board/freescale/common/qixis.c   |  107 ++-
 board/freescale/common/qixis.h   |   13 +
 board/freescale/corenet_ds/rcw_p2041rdb.cfg  |   11 +
 

Re: [U-Boot] Want to study U-Boot code

2013-01-25 Thread Woody Wu
在 2013-1-25 PM7:35,Marek Vasut ma...@denx.de写道:

 Dear Woody Wu,

  On Fri, Jan 25, 2013 at 12:30:43AM +0100, Marek Vasut wrote:
   Dear Woody Wu,
  
Hi, List
   
Is there a book or web document to help start to understand how
U-Boot
works?
  
   There's a doc/ directory in the u-boot sourcecode.
 
  Is there a guide/suggestion to the reading order of these docs? You
  know, there is not a index file. Thanks.

 The question is -- what do you want to do? If Study u-boot code is the
answer,
 just dive in ;-)

 Best regards,
 Marek Vasut

I want to firstly get a picture to basically understand how u-boot work,
especially on an ARM9 based board. I think not everyone who want to
understand u-boot has to read the full code.  Thank.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH] tegra: fdt: add back missing host1x node

2013-01-25 Thread Allen Martin
Add back host1x node to seaboard dts file.  This got dropped during
the tegra fdt sort.

Signed-off-by: Allen Martin amar...@nvidia.com
---
 board/nvidia/dts/tegra20-seaboard.dts |   11 +++
 1 file changed, 11 insertions(+)

diff --git a/board/nvidia/dts/tegra20-seaboard.dts 
b/board/nvidia/dts/tegra20-seaboard.dts
index 9cb9b5b..527a296 100644
--- a/board/nvidia/dts/tegra20-seaboard.dts
+++ b/board/nvidia/dts/tegra20-seaboard.dts
@@ -27,6 +27,17 @@
reg =  0x 0x4000 ;
};
 
+   host1x {
+   status = okay;
+   dc@5420 {
+   status = okay;
+   rgb {
+   status = okay;
+   nvidia,panel = lcd_panel;
+   };
+   };
+   };
+
/* This is not used in U-Boot, but is expected to be in kernel .dts */
i2c@7000d000 {
clock-frequency = 10;
-- 
1.7.10.4

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


Re: [U-Boot] [PATCH] corenet: Disable video on P2020DS

2013-01-25 Thread Tom Rini
On Fri, Jan 25, 2013 at 10:38:01AM -0600, Andy Fleming wrote:

 The P2020DS build had grown too large, and video support isn't enabled
 in almost any other Freescale board. Disabling it allows us to keep
 building, and provides options for reenabling it later.
 
 Signed-off-by: Andy Fleming aflem...@freescale.com

Now we may start having dead code around, yes?  Can you perhaps get away
with making this be disable video or something else and add a
P2020DS_video boards.cfg entry or similar?  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] corenet: Disable video on P2020DS

2013-01-25 Thread Scott Wood

On 01/25/2013 12:50:59 PM, Tom Rini wrote:

On Fri, Jan 25, 2013 at 10:38:01AM -0600, Andy Fleming wrote:

 The P2020DS build had grown too large, and video support isn't  
enabled

 in almost any other Freescale board. Disabling it allows us to keep
 building, and provides options for reenabling it later.

 Signed-off-by: Andy Fleming aflem...@freescale.com

Now we may start having dead code around, yes?  Can you perhaps get  
away

with making this be disable video or something else and add a
P2020DS_video boards.cfg entry or similar?  Thanks!


There are already 5 P2020DS targets, and there *should* be 8 (why is  
there no 36BIT version of DDR2, SDCARD, or SPIFLASH?).  This would  
expand it to 16.  Ideally we would have something like kconfig, but  
until then I don't see a reasonable alternative to saying that certain  
config symbols are user-settable by tweaking the board config file.


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


Re: [U-Boot] [PATCH] corenet: Disable video on P2020DS

2013-01-25 Thread Tom Rini
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On 01/25/2013 02:25 PM, Scott Wood wrote:
 On 01/25/2013 12:50:59 PM, Tom Rini wrote:
 On Fri, Jan 25, 2013 at 10:38:01AM -0600, Andy Fleming wrote:
 
 The P2020DS build had grown too large, and video support isn't
  enabled in almost any other Freescale board. Disabling it 
 allows us to keep building, and provides options for reenabling
 it later.
 
 Signed-off-by: Andy Fleming aflem...@freescale.com
 
 Now we may start having dead code around, yes?  Can you perhaps 
 get away with making this be disable video or something else and
  add a P2020DS_video boards.cfg entry or similar?  Thanks!
 
 There are already 5 P2020DS targets, and there *should* be 8 (why 
 is there no 36BIT version of DDR2, SDCARD, or SPIFLASH?).  This 
 would expand it to 16.  Ideally we would have something like 
 kconfig, but until then I don't see a reasonable alternative to 
 saying that certain config symbols are user-settable by tweaking 
 the board config file.

That's fine, in general.  But does this patch now leave us with
non-build testing video code?  That way lies bitrot, so yes, please
add a 6th target so that when someone needs to hand tweak their
P2020DS setup for this, not that, yes this and not that, oh and video,
they can have some confidence the code still builds.  Or say that
P1020/1022 having video on still too means the code in question is
still used.  That would also be fine.  Thanks.

- -- 
Tom
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQIcBAEBAgAGBQJRAt5xAAoJENk4IS6UOR1W/cYP/2r3hx6uihLc8BRYfOrHDCov
drjzyOEN9bL/y9vDTVsbYC5HpTWv7ZdsC3JpJ9fWY/ljRAzWuQIYJ6Exvcw7PDEw
6lNdyQXL+NURZ1SreeK0YxdQrTSRtpMn69R+GIEX5Msk6JmZ8Z+qrHYXv8zJm80d
Or6CreG2wk5mm3IWZW+qf9mLIc8SK6uHil8XrXuGPYUSYKFaLpV/9hgUxh3138Dz
OMdUSZZEv+4kfab9nqFgHdfbNmFqrKZsyUZ0Ig+nqDU4/HimasPmud1PmRkGywua
NJP/BYcsMbnjhVzyhLSL3Oj8sPZHTX4668W42ufr4hTpvUoRlMOILE43nqYn3atr
mWCECUPKChR2qXyg7Qnfkj8jiuIEzSJ5FBsBn8T7JldcZhZbOA/uI3xMsXfw57SI
/OrkoOZ3Hcx8LIdCiNhCEoWN6WS/CeSBw1wE2Re1qTKGwMQwtMhi/YrwthB3O6NS
q64gM3Fl5PgzQ7GK+mGIEO/GVgR8Okg7mZG7pF8RjIPQbL9bKBsMJyU7O8Z8DD+2
/OM4Y5Jw8qraN6HK4aOvLYjV2kkkfUQgU9Bo6/SBVndF5FMynMwUdt4P2sC5D4iw
SL6r43XjEQEKbJu/NB3SikI3qAdd8sdzjWvuF3JYAS2iUJ3RBu9wpwGw1kO0QZI5
OE3bYgwhqtt6WeW8Nl89
=ZCH1
-END PGP SIGNATURE-
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] corenet: Disable video on P2020DS

2013-01-25 Thread Scott Wood

On 01/25/2013 01:25:33 PM, Scott Wood wrote:

On 01/25/2013 12:50:59 PM, Tom Rini wrote:

On Fri, Jan 25, 2013 at 10:38:01AM -0600, Andy Fleming wrote:

 The P2020DS build had grown too large, and video support isn't  
enabled

 in almost any other Freescale board. Disabling it allows us to keep
 building, and provides options for reenabling it later.

 Signed-off-by: Andy Fleming aflem...@freescale.com

Now we may start having dead code around, yes?  Can you perhaps get  
away

with making this be disable video or something else and add a
P2020DS_video boards.cfg entry or similar?  Thanks!


There are already 5 P2020DS targets, and there *should* be 8 (why is  
there no 36BIT version of DDR2, SDCARD, or SPIFLASH?).


I take that back -- there should be 16, as DDR2 seems to be orthogonal  
as well.  So adding VIDEO on/off for all configs would bring it up to  
32 if we fixed the rest.


I suppose you could just have one video config for compilation  
coverage, but it seems awkward, and what is it really testing?  It's  
not the only board to enable BIOSEMU, ATI framebuffer, etc.  You'd just  
be testing that it works with p2020ds, but for integration testing one  
config working might not say anything about another.


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


Re: [U-Boot] Want to study U-Boot code

2013-01-25 Thread Wolfgang Denk
Dear Woody Wu,

In message CAAsE_ue4VffAioQWzHPpyOZmzoFk9E5S7jj2+2BZuiK=c5y...@mail.gmail.com 
you wrote:

 I want to firstly get a picture to basically understand how u-boot work,
 especially on an ARM9 based board. I think not everyone who want to
 understand u-boot has to read the full code.  Thank.

This depends on your definition of understanding.  On a highlevel,
you might start with reaing and digesting the manual, eventually
trying out how U-Boot works on some (real or emulated) board.

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH, MD: Wolfgang Denk  Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de
Fascinating is a word I use for the unexpected.
-- Spock, The Squire of Gothos, stardate 2124.5
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 02/10] lcd, tegra: remove unused cursor functions

2013-01-25 Thread Simon Glass
+Tom

On Sun, Jan 13, 2013 at 11:07 AM, Jeroen Hofstee jer...@myspectrum.nl wrote:
 cc: Anatolij Gustschin ag...@denx.de
 cc: Simon Glass sjg.chromium.org
 Signed-off-by: Jeroen Hofstee jer...@myspectrum.nl

Acked-by: Simon Glass s...@chromium.org

 ---
  drivers/video/tegra.c |   52 
 -
  1 file changed, 52 deletions(-)

 diff --git a/drivers/video/tegra.c b/drivers/video/tegra.c
 index 3709d0b..26a96a5 100644
 --- a/drivers/video/tegra.c
 +++ b/drivers/video/tegra.c
 @@ -73,62 +73,10 @@ vidinfo_t panel_info = {
 .vl_col = -1,
  };

 -char lcd_cursor_enabled;
 -
 -ushort lcd_cursor_width;
 -ushort lcd_cursor_height;
 -
  #ifndef CONFIG_OF_CONTROL
  #error You must enable CONFIG_OF_CONTROL to get Tegra LCD support
  #endif

 -void lcd_cursor_size(ushort width, ushort height)
 -{
 -   lcd_cursor_width = width;
 -   lcd_cursor_height = height;
 -}
 -
 -void lcd_toggle_cursor(void)
 -{
 -   ushort x, y;
 -   uchar *dest;
 -   ushort row;
 -
 -   x = console_col * lcd_cursor_width;
 -   y = console_row * lcd_cursor_height;
 -   dest = (uchar *)(lcd_base + y * lcd_line_length + x * (1  LCD_BPP) /
 -   8);
 -
 -   for (row = 0; row  lcd_cursor_height; ++row, dest += 
 lcd_line_length) {
 -   ushort *d = (ushort *)dest;
 -   ushort color;
 -   int i;
 -
 -   for (i = 0; i  lcd_cursor_width; ++i) {
 -   color = *d;
 -   color ^= lcd_getfgcolor();
 -   *d = color;
 -   ++d;
 -   }
 -   }
 -}
 -
 -void lcd_cursor_on(void)
 -{
 -   lcd_cursor_enabled = 1;
 -   lcd_toggle_cursor();
 -}
 -void lcd_cursor_off(void)
 -{
 -   lcd_cursor_enabled = 0;
 -   lcd_toggle_cursor();
 -}
 -
 -char lcd_is_cursor_enabled(void)
 -{
 -   return lcd_cursor_enabled;
 -}
 -
  static void update_panel_size(struct fdt_disp_config *config)
  {
 panel_info.vl_col = config-width;
 --
 1.7.9.5

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


Re: [U-Boot] [PATCH 4/7] EXYNOS5: GPIO to enable MAX98095

2013-01-25 Thread Simon Glass
Hi Rajeshwari,

On Wed, Jan 23, 2013 at 11:05 PM, Rajeshwari Birje
rajeshwari.bi...@gmail.com wrote:
 Hi Simon,

 Thank you for comments.

 On Tue, Jan 22, 2013 at 8:25 PM, Simon Glass s...@chromium.org wrote:
 Hi Rajeshwari,

 On Mon, Jan 21, 2013 at 2:52 AM, Rajeshwari Shinde
 rajeshwar...@samsung.com wrote:
 This patch sets high a GPIO to enable the codec MAX98095

 Signed-off-by: Rajeshwari Shinde rajeshwar...@samsung.com
 ---
  board/samsung/smdk5250/smdk5250.c |   15 +++
  1 files changed, 15 insertions(+), 0 deletions(-)

 diff --git a/board/samsung/smdk5250/smdk5250.c 
 b/board/samsung/smdk5250/smdk5250.c
 index 12cc03e..6f2e067 100644
 --- a/board/samsung/smdk5250/smdk5250.c
 +++ b/board/samsung/smdk5250/smdk5250.c
 @@ -56,6 +56,18 @@ int board_usb_vbus_init(void)
  }
  #endif

 +#ifdef CONFIG_SOUND_MAX98095
 +static void  board_enable_audio_codec(void)
 +{
 +   struct exynos5_gpio_part1 *gpio1 = (struct exynos5_gpio_part1 *)
 +   
 samsung_get_base_gpio_part1();
 +
 +   /* Enable MAX98095 Codec */
 +   s5p_gpio_direction_output(gpio1-x1, 7, 1);
 +   s5p_gpio_set_pull(gpio1-x1, 7, GPIO_PULL_NONE);

 This GPIO is hard-coded - does the FDT version of this file do this 
 differently?
 For FDT support of same we need gpio numbering feature which is still
 not merged in the mainline code.
 Hence currently the same has been hard coded for MAX98095 on Snow.


Yes I see, thank you.

Acked-by: Simon Glass s...@chromium.org

 +}
 +#endif
 +
  int board_init(void)
  {
 gd-bd-bi_boot_params = (PHYS_SDRAM_1 + 0x100UL);
 @@ -65,6 +77,9 @@ int board_init(void)
  #ifdef CONFIG_USB_EHCI_EXYNOS
 board_usb_vbus_init();
  #endif
 +#ifdef CONFIG_SOUND_MAX98095
 +   board_enable_audio_codec();
 +#endif
 return 0;
  }

 --
 1.7.4.4


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

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


Re: [U-Boot] [PATCH 6/7] EXYNOS5: Add initial DTS file for Snow.

2013-01-25 Thread Simon Glass
On Mon, Jan 21, 2013 at 11:52 PM, Rajeshwari Shinde
rajeshwar...@samsung.com wrote:
 This patch adds the DTS file for Snow Board.

 Signed-off-by: Rajeshwari Shinde rajeshwar...@samsung.com

One question below, but:

Acked-by: Simon Glass s...@chromium.org

 ---
  board/samsung/dts/exynos5250-snow.dts |   69 
 +
  1 files changed, 69 insertions(+), 0 deletions(-)
  create mode 100644 board/samsung/dts/exynos5250-snow.dts

 diff --git a/board/samsung/dts/exynos5250-snow.dts 
 b/board/samsung/dts/exynos5250-snow.dts
 new file mode 100644
 index 000..af788a6
 --- /dev/null
 +++ b/board/samsung/dts/exynos5250-snow.dts
 @@ -0,0 +1,69 @@
 +/*
 + * SAMSUNG SMDK5250 board device tree source
 + *
 + * Copyright (c) 2012 Samsung Electronics Co., Ltd.
 + * http://www.samsung.com
 + *
 + * This program is free software; you can redistribute it and/or modify
 + * it under the terms of the GNU General Public License version 2 as
 + * published by the Free Software Foundation.
 +*/
 +
 +/dts-v1/;
 +/include/ ARCH_CPU_DTS
 +
 +/ {
 +   model = Google Snow;
 +   compatible = google,snow, samsung,exynos5250;
 +
 +   aliases {
 +   i2c0 = /i2c@12c6;
 +   i2c1 = /i2c@12c7;
 +   i2c2 = /i2c@12c8;
 +   i2c3 = /i2c@12c9;
 +   i2c4 = /i2c@12ca;
 +   i2c5 = /i2c@12cb;
 +   i2c6 = /i2c@12cc;
 +   i2c7 = /i2c@12cd;
 +   spi0 = /spi@12d2;
 +   spi1 = /spi@12d3;
 +   spi2 = /spi@12d4;
 +   spi3 = /spi@131a;
 +   spi4 = /spi@131b;
 +   };
 +
 +   sromc@1225 {
 +   bank = 1;
 +   srom-timing = 1 9 12 1 6 1 1;
 +   width = 2;
 +   lan@500 {
 +   compatible = smsc,lan9215, smsc,lan;
 +   reg = 0x500 0x100;
 +   phy-mode = mii;
 +   };
 +   };
 +
 +   sound@12d6 {
 +   samsung,i2s-epll-clock-frequency = 19200;
 +   samsung,i2s-sampling-rate = 48000;
 +   samsung,i2s-bits-per-sample = 16;
 +   samsung,i2s-channels = 2;
 +   samsung,i2s-lr-clk-framesize = 256;
 +   samsung,i2s-bit-clk-framesize = 32;
 +   samsung,codec-type = max98095;
 +   };
 +
 +   i2c@12cd {
 +   soundcodec@22 {
 +   reg = 0x22;
 +   compatible = maxim,max98095-codec;
 +   };
 +   };
 +
 +   i2c@12c6 {
 +   pmic@9 {
 +   reg = 0x9;
 +   compatible = maxim,max77686_pmic;

Should this be - instead of _ ?

 +   };
 +   };
 +};
 --
 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] corenet: Disable video on P2020DS

2013-01-25 Thread Tom Rini
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On 01/25/2013 03:43 PM, Fleming Andy-AFLEMING wrote:
 
 On Jan 25, 2013, at 12:50 PM, Tom Rini wrote:
 
 On Fri, Jan 25, 2013 at 10:38:01AM -0600, Andy Fleming wrote:
 
 The P2020DS build had grown too large, and video support isn't
  enabled in almost any other Freescale board. Disabling it 
 allows us to keep building, and provides options for reenabling
 it later.
 
 Signed-off-by: Andy Fleming aflem...@freescale.com
 
 Now we may start having dead code around, yes?  Can you perhaps 
 get away with making this be disable video or something else and
  add a P2020DS_video boards.cfg entry or similar?  Thanks!
 
 There doesn't appear to be any 2020-specific code in 
 drivers/video/. The truth is, I doubt the code gets more than 
 compile-tested by the setting being there. Also, as noted, P1022 
 defines it, in addition to MPC8536, MPC8544, MPC8572, MPC8610, and
  MPC8641. I'd rather not hack up a video config just for P2020, 
 if possible.

That's all I was looking for, that yes, we don't now have very dead
code there.  Thanks! (and I kicked off my loop of testing on the PR
that includes this change a while ago, still spinning over everything).

- -- 
Tom
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQIcBAEBAgAGBQJRAu+yAAoJENk4IS6UOR1WxmMP/3n2qAoSndB5DpCjiaMj0zTz
33ShG55Zv14aU40WCD1I4yMkY/hi/mEr3sOIo/D7pZ+FzciYhliBNPejCUuTfmtD
T4YkE1rvtmF+TMKxLdqeUXiQPJyI81tzwGfA2y+NZXnpTMEqpo+ke6DM2xXHxjHP
Vxjp+IGBT0gKG/gjp6c/WdR1kdbqGQRQBnM3l9Ifdt64c7GksMCEg2MyVIBkPQpY
K/WvB03wQz/CohAPy/ySIrzdxKoXjrurUBNZOiKQ4rwBs7O7i6xhr02ZE8Mjco2n
13SY+jRYSlH24F5BbKS2TKtD5b3DGXa9SLihg+nl6gdzyZ/kZJo2zdGm5K+scFS5
1jLWUOOI06xxLUoGCmaCPzOvbxMTSQKSHpLhFSR/EryOq2NlY4D+wHtAPQmbI8GU
eP5lnV/a44kCG5CMgoBKOy8vRxIRjUZaTDFix5fC+rxbgZUTh1MGO4Mp4ieuxHz5
B/48CbN1Ka9fpMQOlo1u01ZbCAya5aUeL6TduvGr4SXaw878hS8S9+89nRMoSma1
Rc9tH2B5F4LKsky8C4lcGsE2YsPd7z2kkRApyMzoKd+O2ZCcDXdnZ9RQO3+is0y7
pWqzfWZhfg4UDWn8jD3Sv3uLxwM890FsmhiAoDhTjdhB4K7sL5AU8dcD2u6G35cg
uq6A/XJ6nVxAW+a4p1Uv
=C7Yu
-END PGP SIGNATURE-
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 6/7 v5] TMU: Add TMU support in dtt command

2013-01-25 Thread Simon Glass
Hi Akshay,

On Thu, Jan 24, 2013 at 4:02 AM, Akshay Saraswat aksha...@samsung.comwrote:

  Hi Simon,



 If we create two versions of dtt_get_temp(), we have to declare
 unnecessarily few configs and their values like CONFIG_DTT_SENSORS and
 CONFIG_SYS_DTT_BUS_NUM when we can easily ignore them. That's why I thought
 of including TMU to dtt this way. I dont think we need both TMU and I2C bus
 sensors together anywhere. Please suggest which way is better.


(Sorry I am on holiday for a week so not very responsive. I get back next
Thurs)

The thing is that these two implementations share no code at all. I think
the way you have done it is good, I was just wondering whether it would be
better to have do_dtt_i2c() and do_dtt_tmu() as separate function. But I
suppose that is really not any better. The alternative would be to share
the same  do_dtt() function, with it avoiding the i2c code if
CONFIG_SYS_DTT_BUS_NUM is defined, and using a single sensor number 0 if
CONFIG_DTT_SENSORS is not defined. That could use much of the same code
(perhaps with a weak function for dtt_init_one(). But that is probably
trying too hard - if support for multiple TMU sensors is required in the
future we can worry about it then.

Sorry for the trouble.

Regards,
Simon



 Regards,

 Akshay



 --- *Original Message* ---

 *Sender* : Simon Glasss...@chromium.org

 *Date* : Jan 23, 2013 05:51 (GMT+09:00)

 *Title* : Re: [PATCH 6/7 v5] TMU: Add TMU support in dtt command


 Hi Akshay,


 On Mon, Jan 21, 2013 at 3:11 AM, Akshay Saraswat **wrote:
  Add generic TMU support alongwith i2c sensors in dtt command
  to enable temperature reading in cases where TMU is present
  instead of i2c sensors.
 
  Signed-off-by: Akshay Saraswat **
  ---
  Changes since v4:
  - Removed tmu command and added to dtt.
 
   common/cmd_dtt.c |   19 +++
   1 file changed, 19 insertions(+)
 
  diff --git a/common/cmd_dtt.c b/common/cmd_dtt.c
  index cd94423..715f4ba 100644
  --- a/common/cmd_dtt.c
  +++ b/common/cmd_dtt.c
  @@ -28,6 +28,20 @@
   #include **
   #include **
 
  +#if defined CONFIG_TMU_CMD_DTT
  +#include **
  +
  +void dtt_get_temp(void)
  +{
  +   int cur_temp;
  +
  +   if (tmu_monitor(cur_temp) == TMU_STATUS_INIT)
  +   printf(TMU is in unknown state, temperature is invalid
 \n);

 puts()

 Should return an error result here so that do_dtt() returns 1.

  +   else
  +   printf(Current temperature: %u degrees Celsius \n,
 cur_temp);
  +}
  +
  +#else
   static unsigned long sensor_initialized;
 
   static void _initialize_dtt(void)
  @@ -59,9 +73,13 @@ void dtt_init(void)
  /* switch back to original I2C bus */
  I2C_SET_BUS(old_bus);
   }
  +#endif
 
   int do_dtt (cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
   {
  +#if defined CONFIG_TMU_CMD_DTT
  +   dtt_get_temp();
  +#else

 How about creating two versions of the dtt_get_temp() function: one
 with your code and one with the old code? Then you don't have an
 #ifdef here.



  int i;
  unsigned char sensors[] = CONFIG_DTT_SENSORS;
  int old_bus;
  @@ -83,6 +101,7 @@ int do_dtt (cmd_tbl_t * cmdtp, int flag, int argc,
 char * const argv[])
 
  /* switch back to original I2C bus */
  I2C_SET_BUS(old_bus);
  +#endif
 
  return 0;
   }  /* do_dtt() */
  --
  1.7.9.5
 

 Regards,
 Simon




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


Re: [U-Boot] [PATCH 6/9 v6] TMU: Add TMU support in dtt command

2013-01-25 Thread Simon Glass
On Thu, Jan 24, 2013 at 4:24 AM, Akshay Saraswat aksha...@samsung.com wrote:
 Add generic TMU support alongwith i2c sensors in dtt command
 to enable temperature reading in cases where TMU is present
 instead of i2c sensors.

 Signed-off-by: Akshay Saraswat aksha...@samsung.com
 ---
 Changes since v5:
 - Changed 'pirntf' to 'puts'.
 - Added 'return -1' in case of erroneous tmu_state.

Acked-by: Simon Glass s...@chromium.org


  common/cmd_dtt.c |   22 ++
  1 file changed, 22 insertions(+)

 diff --git a/common/cmd_dtt.c b/common/cmd_dtt.c
 index cd94423..493f643 100644
 --- a/common/cmd_dtt.c
 +++ b/common/cmd_dtt.c
 @@ -28,6 +28,23 @@
  #include dtt.h
  #include i2c.h

 +#if defined CONFIG_TMU_CMD_DTT
 +#include tmu.h
 +
 +int dtt_get_temp(void)
 +{
 +   int cur_temp;
 +
 +   if (tmu_monitor(cur_temp) == TMU_STATUS_INIT) {
 +   puts(TMU is in unknown state, temperature is invalid\n);
 +   return -1;
 +   } else {
 +   printf(Current temperature: %u degrees Celsius\n, cur_temp);
 +   return 0;
 +   }
 +}
 +
 +#else
  static unsigned long sensor_initialized;

  static void _initialize_dtt(void)
 @@ -59,9 +76,13 @@ void dtt_init(void)
 /* switch back to original I2C bus */
 I2C_SET_BUS(old_bus);
  }
 +#endif

  int do_dtt (cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
  {
 +#if defined CONFIG_TMU_CMD_DTT
 +   return dtt_get_temp();
 +#else
 int i;
 unsigned char sensors[] = CONFIG_DTT_SENSORS;
 int old_bus;
 @@ -85,6 +106,7 @@ int do_dtt (cmd_tbl_t * cmdtp, int flag, int argc, char * 
 const argv[])
 I2C_SET_BUS(old_bus);

 return 0;
 +#endif
  }  /* do_dtt() */

  /***/
 --
 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] corenet: Disable video on P2020DS

2013-01-25 Thread Fleming Andy-AFLEMING

On Jan 25, 2013, at 12:50 PM, Tom Rini wrote:

 On Fri, Jan 25, 2013 at 10:38:01AM -0600, Andy Fleming wrote:
 
 The P2020DS build had grown too large, and video support isn't enabled
 in almost any other Freescale board. Disabling it allows us to keep
 building, and provides options for reenabling it later.
 
 Signed-off-by: Andy Fleming aflem...@freescale.com
 
 Now we may start having dead code around, yes?  Can you perhaps get away
 with making this be disable video or something else and add a
 P2020DS_video boards.cfg entry or similar?  Thanks!

There doesn't appear to be any 2020-specific code in drivers/video/. The truth 
is, I doubt the code gets more than compile-tested by the setting being there. 
Also, as noted, P1022 defines it, in addition to MPC8536, MPC8544, MPC8572, 
MPC8610, and MPC8641. I'd rather not hack up a video config just for P2020, 
if possible.

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


Re: [U-Boot] [PATCH 7/7] EXYNOS5: Snow: Add a configuration file

2013-01-25 Thread Simon Glass
Hi Rajeshwari,

On Wed, Jan 23, 2013 at 11:13 PM, Rajeshwari Birje
rajeshwari.bi...@gmail.com wrote:
 Hi Simon,

 Thank you for comments.

 On Tue, Jan 22, 2013 at 8:28 PM, Simon Glass s...@chromium.org wrote:
 Hi Rajeshwari,

 On Mon, Jan 21, 2013 at 2:52 AM, Rajeshwari Shinde
 rajeshwar...@samsung.com wrote:
 This patch adds the configuration file for Snow Board and
 defines the same in boards.cfg.
 The Audio codec required for SMDK5250 and Snow are different
 hence they are defined in the corresponding configuration files.

 Signed-off-by: Rajeshwari Shinde rajeshwar...@samsung.com
 ---
  boards.cfg  |1 +
  include/configs/exynos5250-dt.h |1 -
  include/configs/smdk5250.h  |1 +
  include/configs/snow.h  |   34 ++
  4 files changed, 36 insertions(+), 1 deletions(-)
  create mode 100644 include/configs/snow.h

 diff --git a/boards.cfg b/boards.cfg
 index e4b0d44..f247b03 100644
 --- a/boards.cfg
 +++ b/boards.cfg
 @@ -283,6 +283,7 @@ s5p_goni arm armv7   
 gonisamsung
  smdkc100 arm armv7   smdkc100
 samsungs5pc1xx
  origen  arm armv7   origen  
 samsungexynos
  s5pc210_universalarm armv7   universal_c210  
 samsungexynos
 +snowarm armv7   smdk5250
 samsungexynos
  smdk5250arm armv7   smdk5250
 samsungexynos
  smdkv310arm armv7   smdkv310
 samsungexynos
  tratsarm armv7   trats   
 samsungexynos
 diff --git a/include/configs/exynos5250-dt.h 
 b/include/configs/exynos5250-dt.h
 index a01fb96..7b9c393 100644
 --- a/include/configs/exynos5250-dt.h
 +++ b/include/configs/exynos5250-dt.h
 @@ -297,7 +297,6 @@
  #ifdef CONFIG_CMD_SOUND
  #define CONFIG_SOUND
  #define CONFIG_I2S
 -#define CONFIG_SOUND_WM8994
  #endif

  /* Enable devicetree support */
 diff --git a/include/configs/smdk5250.h b/include/configs/smdk5250.h
 index 81f83a8..b23b5bc 100644
 --- a/include/configs/smdk5250.h
 +++ b/include/configs/smdk5250.h
 @@ -30,4 +30,5 @@
  #undef CONFIG_DEFAULT_DEVICE_TREE
  #define CONFIG_DEFAULT_DEVICE_TREE exynos5250-smdk5250

 +#define CONFIG_SOUND_WM8994
  #endif /* __CONFIG_SMDK_H */
 diff --git a/include/configs/snow.h b/include/configs/snow.h
 new file mode 100644
 index 000..be38635
 --- /dev/null
 +++ b/include/configs/snow.h
 @@ -0,0 +1,34 @@
 +/*
 + * Copyright (C) 2012 Samsung Electronics
 + *
 + * Configuration settings for the SAMSUNG SMDK5250 board.
 + *
 + * See file CREDITS for list of people who contributed to this
 + * project.
 + *
 + * This program is free software; you can redistribute it and/or
 + * modify it under the terms of the GNU General Public License as
 + * published by the Free Software Foundation; either version 2 of
 + * the License, or (at your option) any later version.
 + *
 + * This program is distributed in the hope that it will be useful,
 + * but WITHOUT ANY WARRANTY; without even the implied warranty of
 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 + * GNU General Public License for more details.
 + *
 + * You should have received a copy of the GNU General Public License
 + * along with this program; if not, write to the Free Software
 + * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
 + * MA 02111-1307 USA
 + */
 +
 +#ifndef __CONFIG_SMDK_H
 +#define __CONFIG_SMDK_H
 +
 +#include configs/exynos5250-dt.h
 +
 +#undef CONFIG_DEFAULT_DEVICE_TREE
 +#define CONFIG_DEFAULT_DEVICE_TREE exynos5250-snow
 +
 +#define CONFIG_SOUND_MAX98095

 Really it would be better if they could share the same config, with
 just the CONFIG_DEFAULT_DEVICE_TREE difference. Isn't there code to
 select the right codec based on the FDT nodes?

 Maybe I have this wrong, not sure.
 Actually we do decode the codec from DTS file.
 But we need to define this to compile the corresponding codec file.
 And I felt since the codec is different for both the boards we can add
 them in the respective config file.
 Also in case of Non FDT we define the values based on this codec define.

Well keep in mind that if we want the same U-Boot to boot on all
exynos5250 boards then we will need to define both CONFIGs in the
config file and rely on the FDT to make it work. What happens if you
define both codecs in smdk5250.h? Also note that at built time we
don't know whether we are booting on snow or smdk5250 (just as with
the kernel), and we only find out when we start.

Wasn't there a plan to have a exynos5250_dt.h config file? If so, then
perhaps that file can define both codec CONFIGs, and your new snow
file can include that instead?

Regards,
Simon


 +#endif /* __CONFIG_SMDK_H */
 --
 1.7.4.4


 Regards,

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

2013-01-25 Thread Simon Glass
On Thu, Jan 24, 2013 at 10:43 PM, Rajeshwari Shinde
rajeshwar...@samsung.com wrote:
 This patch adds the driver for codec MAX98095 required by Snow
 Board

 Signed-off-by: Rajeshwari Shinde rajeshwar...@samsung.com

Acked-by: Simon Glass s...@chromium.org

 ---
 Changes in V2:
 - None
  drivers/sound/Makefile   |1 +
  drivers/sound/max98095.c |  550 
 ++
  drivers/sound/max98095.h |  311 ++
  3 files changed, 862 insertions(+), 0 deletions(-)
  create mode 100644 drivers/sound/max98095.c
  create mode 100644 drivers/sound/max98095.h

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


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

2013-01-25 Thread Simon Glass
Hi Rajeshwari,

On Thu, Jan 24, 2013 at 10:43 PM, Rajeshwari Shinde
rajeshwar...@samsung.com wrote:
 This patchs adds support for MAX98095 codec in
 sound driver.

 Signed-off-by: Rajeshwari Shinde rajeshwar...@samsung.com
 ---
 Changes in V2:
 - None
  arch/arm/include/asm/arch-exynos/sound.h |   10 +-
  drivers/sound/sound.c|   13 +++--
  include/sound.h  |1 +
  3 files changed, 21 insertions(+), 3 deletions(-)

 diff --git a/arch/arm/include/asm/arch-exynos/sound.h 
 b/arch/arm/include/asm/arch-exynos/sound.h
 index d1bd2f6..a216b00 100644
 --- a/arch/arm/include/asm/arch-exynos/sound.h
 +++ b/arch/arm/include/asm/arch-exynos/sound.h
 @@ -33,6 +33,7 @@
  #define I2S_RFS256
  #define I2S_BFS32

 +#ifdef CONFIG_SOUND_WM8994
  /* I2C values */
  #define AUDIO_I2C_BUS  1
  #define AUDIO_I2C_REG  0x1a
 @@ -40,5 +41,12 @@
  /* Audio Codec */
  #define AUDIO_CODECwm8994

 -#define AUDIO_COMPAT   1
 +#else /* CONFIG_SOUND_MAX98095 */
 +/* I2C values */
 +#define AUDIO_I2C_BUS  7
 +#define AUDIO_I2C_REG  0x22
 +
 +/* Audio Codec */
 +#define AUDIO_CODECmax98095
 +#endif
  #endif

I don't think these should go in the arch exynos file, since they are
board settings. Do you really need audio to work when you are not
using CONFIG_OF_CONTROL? Perhaps that can be an exynos_dt-only
feature?

If you do need it, then the normal procedure is to define new CONFIGs
for the bus, address, codec name, etc. Then these need to be set in
the board config header file, like smdk5250.h. For the FDT case we
really need to avoid this though, and just use the FDT for this
information.

Regards,
Simon

 diff --git a/drivers/sound/sound.c b/drivers/sound/sound.c
 index fa8432d..a74590b 100644
 --- a/drivers/sound/sound.c
 +++ b/drivers/sound/sound.c
 @@ -31,6 +31,7 @@
  #include sound.h
  #include asm/arch/sound.h
  #include wm8994.h
 +#include max98095.h

  /* defines */
  #define SOUND_400_HZ 400
 @@ -143,17 +144,25 @@ static int codec_init(const void *blob, struct 
 i2stx_info *pi2s_tx)
  #else
 codectype =  AUDIO_CODEC;
  #endif
 +#ifdef CONFIG_SOUND_WM8994
 if (!strcmp(codectype, wm8994)) {
 /* Check the codec type and initialise the same */
 ret = wm8994_init(blob, WM8994_AIF2,
 pi2s_tx-samplingrate,
 (pi2s_tx-samplingrate * (pi2s_tx-rfs)),
 pi2s_tx-bitspersample, pi2s_tx-channels);
 +#endif
 +#ifdef CONFIG_SOUND_MAX98095
 +   if (!strcmp(codectype, max98095)) {
 +   ret = max98095_init(blob, pi2s_tx-samplingrate,
 +   (pi2s_tx-samplingrate * (pi2s_tx-rfs)),
 +   pi2s_tx-bitspersample);
 +#endif
 } else {
 -   debug(%s: Unknown code type %s\n, __func__,
 - codectype);
 +   debug(%s: Unknown codec type %s\n, __func__, codectype);
 return -1;
 }
 +
 if (ret) {
 debug(%s: Codec init failed\n, __func__);
 return -1;
 diff --git a/include/sound.h b/include/sound.h
 index d73839d..94922f6 100644
 --- a/include/sound.h
 +++ b/include/sound.h
 @@ -28,6 +28,7 @@
  enum en_sound_codec {
 CODEC_WM_8994,
 CODEC_WM_8995,
 +   CODEC_MAX_98095,
 CODEC_MAX
  };

 --
 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 4/7 V2] EXYNOS5: GPIO to enable MAX98095

2013-01-25 Thread Simon Glass
On Thu, Jan 24, 2013 at 10:43 PM, Rajeshwari Shinde
rajeshwar...@samsung.com wrote:
 This patch sets high a GPIO to enable the codec MAX98095

 Signed-off-by: Rajeshwari Shinde rajeshwar...@samsung.com

Acked-by: Simon Glass s...@chromium.org

 ---
 Changes in V2:
 - None
  board/samsung/smdk5250/smdk5250.c |   15 +++
  1 files changed, 15 insertions(+), 0 deletions(-)

 diff --git a/board/samsung/smdk5250/smdk5250.c 
 b/board/samsung/smdk5250/smdk5250.c
 index 12cc03e..6f2e067 100644
 --- a/board/samsung/smdk5250/smdk5250.c
 +++ b/board/samsung/smdk5250/smdk5250.c
 @@ -56,6 +56,18 @@ int board_usb_vbus_init(void)
  }
  #endif

 +#ifdef CONFIG_SOUND_MAX98095
 +static void  board_enable_audio_codec(void)
 +{
 +   struct exynos5_gpio_part1 *gpio1 = (struct exynos5_gpio_part1 *)
 +   samsung_get_base_gpio_part1();
 +
 +   /* Enable MAX98095 Codec */
 +   s5p_gpio_direction_output(gpio1-x1, 7, 1);
 +   s5p_gpio_set_pull(gpio1-x1, 7, GPIO_PULL_NONE);
 +}
 +#endif
 +
  int board_init(void)
  {
 gd-bd-bi_boot_params = (PHYS_SDRAM_1 + 0x100UL);
 @@ -65,6 +77,9 @@ int board_init(void)
  #ifdef CONFIG_USB_EHCI_EXYNOS
 board_usb_vbus_init();
  #endif
 +#ifdef CONFIG_SOUND_MAX98095
 +   board_enable_audio_codec();
 +#endif
 return 0;
  }

 --
 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 5/7 V2] EXYNOS5: FDT: Add compatible strings for MAX98095

2013-01-25 Thread Simon Glass
On Thu, Jan 24, 2013 at 10:43 PM, Rajeshwari Shinde
rajeshwar...@samsung.com wrote:
 Add required compatible information for MAX98095 codec

 Signed-off-by: Rajeshwari Shinde rajeshwar...@samsung.com

Acked-by: Simon Glass s...@chromium.org

 ---
 Changes in V2:
 - None
  include/fdtdec.h |1 +
  lib/fdtdec.c |1 +
  2 files changed, 2 insertions(+), 0 deletions(-)

 diff --git a/include/fdtdec.h b/include/fdtdec.h
 index f77d195..e76cdc1 100644
 --- a/include/fdtdec.h
 +++ b/include/fdtdec.h
 @@ -79,6 +79,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_MAXIM_98095_CODEC,   /* MAX98095 Codec */

 COMPAT_COUNT,
  };
 diff --git a/lib/fdtdec.c b/lib/fdtdec.c
 index 16921e1..a5f770f 100644
 --- a/lib/fdtdec.c
 +++ b/lib/fdtdec.c
 @@ -54,6 +54,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(MAXIM_98095_CODEC, maxim,max98095-codec),
  };

  const char *fdtdec_get_compatible(enum fdt_compat_id id)
 --
 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 06/11] tegra20: switch over seaboard and ventana to use tablebased pinmux

2013-01-25 Thread Simon Glass
Hi Lucas,

On Fri, Jan 25, 2013 at 7:22 AM, Lucas Stach d...@lynxeye.de wrote:
 Am Freitag, den 25.01.2013, 06:54 +1300 schrieb Simon Glass:
 Hi Lucas,

 On Fri, Jan 25, 2013 at 5:48 AM, Lucas Stach d...@lynxeye.de wrote:
  Init pinmux in one shot, in order to avoid any conflicts.
 
  Signed-off-by: Lucas Stach d...@lynxeye.de
  ---
   board/nvidia/seaboard/seaboard.c | 133 
  +--
   include/configs/seaboard.h   |   3 +
   include/configs/ventana.h|   3 +
   3 files changed, 121 insertions(+), 18 deletions(-)

 This seems like a lot of code and presumably quite a bit of
 duplication between boards. What sort of conflicts does this avoid,
 and is it the only way of avoiding them?

 I don't see it as duplication, but as explicitly spelling out how the
 pinmux configuration should be set up on a certain board.

I mean that the table is very similar for different boards, so looks
like duplicated coded (133 very similar lines for each board).

Also, this seems to break FDT use. At present it is possible (I think)
to boot the same U-Boot on any board, with the device tree specifying
the config. With your change that is no longer possible, I think?

Looking ahead to T114 I see a similar problem. The funcmux approach
was a compromise in that we could just select appropriate values for
each function - there was no agreement on how to put this in the FDT
though (my intention was that it would depend on the kernel binding,
but that is now defined, so what excuse do we have for not
implementing it in U-Boot?).


 Before this change we would leave some pads uninitialised in their
 (random) reset configuration. For example on the Colibri this leads to
 NAND not working as it's wired up to the KBC pads. If we only configure
 those, ATC will remain in it's reset state and would be also configured
 to the NAND function, which leads to fail. Having an explicit, known to
 be conflict free configuration for all pads avoids all those unpleasant
 surprises.

Well yes, but we seem to be right back to where we started, with the
FDT unable to describe a key feature of the boards (pinmux).


 Also, how does this deal with drivers that want to support different
 configurations, such as 4/8 bit MMC, UART flow control, etc.? How does
 this fit with what the device tree pinmux specifies in the kernel, and
 why would we not move to using that?

 This is just the pinmux. You have to make sure to match the pinmux with
 your driver configuration. This tablebased approach is the same thing as
 what is done with Tegra30 in U-Boot.

 It's not as runtime flexible as the pinmux used in the Linux kernel, but
 also quite a fair bit simpler. I don't see any platform that would need
 anything other than the default configuration in U-Boot, so we don't
 need the muxing stuff provided by the pinmux framework in the kernel.

Fair enough, simple is good, but I'm not sure it will do the job. If
we create different variants of a board, how exactly will we describe
the differences other than by creating a new config, separate U-Boot
build, etc.?


 While running U-Boot we want to keep most of the pads in tristate and
 just enable the ones used by U-Boot itself (boot devices, GPIOs, LCD
 pins, etc.), so using the plain kernel pinmux config isn't going to
 work. So I think the table based approach is a good compromise between
 the need of having an comprehensively defined pinmux, simplicity and
 effort needed to define the pinmux.

OK. Can you think of a way to implement this so that we have:

board/nvidia/common/tegra20_dt.c

and the resulting image can run on all T20 boards (given an appropriate DT)?

Regards,
Simon


 Regards,
 Lucas


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


Re: [U-Boot] [PATCH] MAKEALL: add support for per architecture toolchains

2013-01-25 Thread Simon Glass
On Fri, Jan 25, 2013 at 7:48 AM, Allen Martin amar...@nvidia.com wrote:
 Add support for per architecture CROSS_COMPILE toolchain definitions
 via CROSS_COMPILE_ARCH where ARCH is any of the supported u-boot
 architectures.  This allows building every supported u-boot board in a
 single pass of MAKEALL.

 Signed-off-by: Allen Martin amar...@nvidia.com

Acked-by: Simon Glass s...@chromium.org

See below for a small suggestion.

 ---
  MAKEALL |   32 +---
  1 file changed, 25 insertions(+), 7 deletions(-)

 diff --git a/MAKEALL b/MAKEALL
 index 5b06c54..18b4e4d 100755
 --- a/MAKEALL
 +++ b/MAKEALL
 @@ -35,6 +35,9 @@ usage()
 Environment variables:
   BUILD_NCPUS  number of parallel make jobs (default: auto)
   CROSS_COMPILEcross-compiler toolchain prefix (default: )
 + CROSS_COMPILE_ARM cross-compiler toolchain prefix for
 +  architecture ARM.  Substitute ARM for any
 +  supported architecture (default: )

Perhaps better expressed as CROSS_COMPILE_ARCH?

   MAKEALL_LOGDIR   output all logs to here (default: ./LOG/)
   BUILD_DIRoutput build directory (default: ./)
   BUILD_NBUILDSnumber of parallel targets (default: 1)
 @@ -180,13 +183,6 @@ else
 JOBS=
  fi

 -
 -if [ ${CROSS_COMPILE} ] ; then
 -   MAKE=make CROSS_COMPILE=${CROSS_COMPILE}
 -else
 -   MAKE=make
 -fi
 -
  if [ ${MAKEALL_LOGDIR} ] ; then
 LOG_DIR=${MAKEALL_LOGDIR}
  else
 @@ -585,6 +581,18 @@ get_target_maintainers() {
 echo $mail
  }

 +get_target_arch() {
 +   local target=$1
 +
 +   # Automatic mode
 +   local line=`egrep -i ^[[:space:]]*${target}[[:space:]] boards.cfg`
 +
 +   if [ -z ${line} ] ; then echo  ; return ; fi
 +
 +   set ${line}
 +   echo $2
 +}
 +
  list_target() {
 if [ $PRINT_MAINTS != 'y' ] ; then
 echo $1
 @@ -655,6 +663,16 @@ build_target() {

 export BUILD_DIR=${output_dir}

 +   target_arch=$(get_target_arch ${target})
 +   eval cross_toolchain=\$CROSS_COMPILE_${target_arch^^}
 +   if [ ${cross_toolchain} ] ; then
 +   MAKE=make CROSS_COMPILE=${cross_toolchain}
 +   elif [ ${CROSS_COMPILE} ] ; then
 +   MAKE=make CROSS_COMPILE=${CROSS_COMPILE}
 +   else
 +   MAKE=make
 +   fi
 +
 ${MAKE} distclean /dev/null
 ${MAKE} -s ${target}_config

 --
 1.7.10.4

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


Re: [U-Boot] [PATCH v2 1/7] tegra: usb: set USB_PORTS_MAX to correct value

2013-01-25 Thread Simon Glass
On Sat, Jan 26, 2013 at 3:41 AM, Lucas Stach d...@lynxeye.de wrote:
 Both Tegra20 and Tegra30 have a max of 3 USB controllers.

 Signed-off-by: Lucas Stach d...@lynxeye.de

Acked-by: Simon Glass s...@chromium.org

 ---
  arch/arm/cpu/armv7/tegra20/usb.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

 diff --git a/arch/arm/cpu/armv7/tegra20/usb.c 
 b/arch/arm/cpu/armv7/tegra20/usb.c
 index 1bccf2b..f151fb2 100644
 --- a/arch/arm/cpu/armv7/tegra20/usb.c
 +++ b/arch/arm/cpu/armv7/tegra20/usb.c
 @@ -44,7 +44,7 @@
  #endif

  enum {
 -   USB_PORTS_MAX   = 4,/* Maximum ports we allow */
 +   USB_PORTS_MAX   = 3,/* Maximum ports we allow */
  };

  /* Parameters we need for USB */
 --
 1.8.0.2

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


Re: [U-Boot] [PATCH 02/10] lcd, tegra: remove unused cursor functions

2013-01-25 Thread Tom Warren
Jeroen,

How will this all go in? Do you expect Anatolij to take it in via the main repo 
(u-boot.git/master)?

LGTM, BTW

Tom

 -Original Message-
 From: s...@google.com [mailto:s...@google.com] On Behalf Of Simon Glass
 Sent: Friday, January 25, 2013 1:38 PM
 To: Jeroen Hofstee
 Cc: u-boot@lists.denx.de; Tom Warren
 Subject: Re: [U-Boot] [PATCH 02/10] lcd, tegra: remove unused cursor
 functions
 
 +Tom
 
 On Sun, Jan 13, 2013 at 11:07 AM, Jeroen Hofstee jer...@myspectrum.nl
 wrote:
  cc: Anatolij Gustschin ag...@denx.de
  cc: Simon Glass sjg.chromium.org
  Signed-off-by: Jeroen Hofstee jer...@myspectrum.nl
 
 Acked-by: Simon Glass s...@chromium.org
 
  ---
   drivers/video/tegra.c |   52 
  -
   1 file changed, 52 deletions(-)
 
  diff --git a/drivers/video/tegra.c b/drivers/video/tegra.c index
  3709d0b..26a96a5 100644
  --- a/drivers/video/tegra.c
  +++ b/drivers/video/tegra.c
  @@ -73,62 +73,10 @@ vidinfo_t panel_info = {
  .vl_col = -1,
   };
 
  -char lcd_cursor_enabled;
  -
  -ushort lcd_cursor_width;
  -ushort lcd_cursor_height;
  -
   #ifndef CONFIG_OF_CONTROL
   #error You must enable CONFIG_OF_CONTROL to get Tegra LCD support
   #endif
 
  -void lcd_cursor_size(ushort width, ushort height) -{
  -   lcd_cursor_width = width;
  -   lcd_cursor_height = height;
  -}
  -
  -void lcd_toggle_cursor(void)
  -{
  -   ushort x, y;
  -   uchar *dest;
  -   ushort row;
  -
  -   x = console_col * lcd_cursor_width;
  -   y = console_row * lcd_cursor_height;
  -   dest = (uchar *)(lcd_base + y * lcd_line_length + x * (1  
  LCD_BPP) /
  -   8);
  -
  -   for (row = 0; row  lcd_cursor_height; ++row, dest += 
  lcd_line_length)
 {
  -   ushort *d = (ushort *)dest;
  -   ushort color;
  -   int i;
  -
  -   for (i = 0; i  lcd_cursor_width; ++i) {
  -   color = *d;
  -   color ^= lcd_getfgcolor();
  -   *d = color;
  -   ++d;
  -   }
  -   }
  -}
  -
  -void lcd_cursor_on(void)
  -{
  -   lcd_cursor_enabled = 1;
  -   lcd_toggle_cursor();
  -}
  -void lcd_cursor_off(void)
  -{
  -   lcd_cursor_enabled = 0;
  -   lcd_toggle_cursor();
  -}
  -
  -char lcd_is_cursor_enabled(void)
  -{
  -   return lcd_cursor_enabled;
  -}
  -
   static void update_panel_size(struct fdt_disp_config *config)  {
  panel_info.vl_col = config-width;
  --
  1.7.9.5
 
  ___
  U-Boot mailing list
  U-Boot@lists.denx.de
  http://lists.denx.de/mailman/listinfo/u-boot
--
nvpublic
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH v2 5/7] tegra: usb: various small cleanups

2013-01-25 Thread Simon Glass
On Sat, Jan 26, 2013 at 3:41 AM, Lucas Stach d...@lynxeye.de wrote:
 Remove unneeded headers, function prototype and stale comment, that
 doesn't match the actual codebase anymore.

 Signed-off-by: Lucas Stach d...@lynxeye.de

Acked-by: Simon Glass s...@chromium.org

 ---
  arch/arm/cpu/armv7/tegra20/usb.c| 13 +
  arch/arm/include/asm/arch-tegra20/usb.h |  3 ---
  2 files changed, 1 insertion(+), 15 deletions(-)

 diff --git a/arch/arm/cpu/armv7/tegra20/usb.c 
 b/arch/arm/cpu/armv7/tegra20/usb.c
 index e4165e0..3fdd5df 100644
 --- a/arch/arm/cpu/armv7/tegra20/usb.c
 +++ b/arch/arm/cpu/armv7/tegra20/usb.c
 @@ -25,21 +25,15 @@
  #include asm/io.h
  #include asm-generic/gpio.h
  #include asm/arch/clock.h
 -#include asm/arch/gpio.h
 -#include asm/arch/pinmux.h
 -#include asm/arch/tegra.h
  #include asm/arch/usb.h
  #include usb/ulpi.h
 -#include asm/arch-tegra/clk_rst.h
 -#include asm/arch-tegra/sys_proto.h
 -#include asm/arch-tegra/uart.h
  #include libfdt.h
  #include fdtdec.h

  #ifdef CONFIG_USB_ULPI
 #ifndef CONFIG_USB_ULPI_VIEWPORT
 #error  To use CONFIG_USB_ULPI on Tegra Boards you have to also \
 -   define CONFIG_USB_ULPI_VIEWPORT
 +   define CONFIG_USB_ULPI_VIEWPORT
 #endif
  #endif

 @@ -191,11 +185,6 @@ void usbf_reset_controller(struct fdt_usb *config, 
 struct usb_ctlr *usbctlr)
 /* Enable the UTMIP PHY */
 if (config-utmi)
 setbits_le32(usbctlr-susp_ctrl, UTMIP_PHY_ENB);
 -
 -   /*
 -* TODO: where do we take the USB1 out of reset? The old code would
 -* take USB3 out of reset, but not USB1. This code doesn't do either.
 -*/
  }

  /* set up the UTMI USB controller with the parameters provided */
 diff --git a/arch/arm/include/asm/arch-tegra20/usb.h 
 b/arch/arm/include/asm/arch-tegra20/usb.h
 index fdbd127..b18c850 100644
 --- a/arch/arm/include/asm/arch-tegra20/usb.h
 +++ b/arch/arm/include/asm/arch-tegra20/usb.h
 @@ -243,9 +243,6 @@ struct usb_ctlr {
  #define VBUS_VLD_STS   (1  26)


 -/* Change the USB host port into host mode */
 -void usb_set_host_mode(void);
 -
  /* Setup USB on the board */
  int board_usb_init(const void *blob);

 --
 1.8.0.2

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


Re: [U-Boot] [PATCH v2 6/7] tegra: usb: move implementation into right directory

2013-01-25 Thread Simon Glass
On Sat, Jan 26, 2013 at 3:41 AM, Lucas Stach d...@lynxeye.de wrote:
 This moves the Tegra USB implementation into the drivers/usb/host
 directory. Note that this merges the old
 /arch/arm/cpu/armv7/tegra20/usb.c file into ehci-tegra.c. No code
 changes, just moving stuff around.

 v2: While at it also move some defines and the usb.h header file to make
 usb driver usable for Tegra30.
 NOTE: A lot more work is required to properly init the PHYs and PLL_U on
 Tegra30, this is just to make porting easier and it does no harm here.

 Signed-off-by: Lucas Stach d...@lynxeye.de

Acked-by: Simon Glass s...@chromium.org

I have to admit I am not sure what happened to the existing
drivers/usb/host/ehci-tegra.c, but I'm sure you have it covered.

 ---
  arch/arm/cpu/armv7/tegra20/Makefile|   1 -
  arch/arm/cpu/armv7/tegra20/usb.c   | 555 
 -
  .../include/asm/{arch-tegra20 = arch-tegra}/usb.h |   0
  arch/arm/include/asm/arch-tegra20/tegra.h  |   1 -
  arch/arm/include/asm/arch-tegra30/tegra.h  |   2 +
  board/nvidia/common/board.c|   2 +-
  drivers/usb/host/ehci-tegra.c  | 535 +++-
  7 files changed, 536 insertions(+), 560 deletions(-)
  delete mode 100644 arch/arm/cpu/armv7/tegra20/usb.c
  rename arch/arm/include/asm/{arch-tegra20 = arch-tegra}/usb.h (100%)

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


Re: [U-Boot] [PATCH] common/lcd.c: cleanup use of global variables

2013-01-25 Thread Jeroen Hofstee

On 01/05/2013 08:45 PM, Wolfgang Denk wrote:

lcd_color_fg and lcd_color_bg had to be declared in board specific
code, but were not actually used there; in addition, we have getter /
setter functions for these, which were not used either.

Get rid of the global variables, and use the getter function where
needed (so far no setter calls are needed).

Signed-off-by: Wolfgang Denk w...@denx.de
Cc: Alessandro Rubini rub...@unipv.it
Cc: Anatolij Gustschin ag...@denx.de
Cc: Bo Shen voice.s...@atmel.com
Cc: Haavard Skinnemoen haavard.skinnem...@atmel.com
Cc: Kyungmin Park kyungmin.p...@samsung.com
Cc: Marek Vasut marek.va...@gmail.com
Cc: Minkyu Kang mk7.k...@samsung.com
Cc: Nikita Kiryanov nik...@compulab.co.il
Cc: Simon Glass s...@chromium.org
Cc: Stelian Pop stel...@popies.net
Cc: Tom Warren twar...@nvidia.com
---


Acked-by: Jeroen Hofstee jer...@myspectrum.nl


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


Re: [U-Boot] [PATCH 06/11] tegra20: switch over seaboard and ventana to use tablebased pinmux

2013-01-25 Thread Lucas Stach
Hello Simon,

Am Samstag, den 26.01.2013, 10:20 +1300 schrieb Simon Glass:
 Hi Lucas,
 
 On Fri, Jan 25, 2013 at 7:22 AM, Lucas Stach d...@lynxeye.de wrote:
  Am Freitag, den 25.01.2013, 06:54 +1300 schrieb Simon Glass:
  Hi Lucas,
 
  On Fri, Jan 25, 2013 at 5:48 AM, Lucas Stach d...@lynxeye.de wrote:
   Init pinmux in one shot, in order to avoid any conflicts.
  
   Signed-off-by: Lucas Stach d...@lynxeye.de
   ---
board/nvidia/seaboard/seaboard.c | 133 
   +--
include/configs/seaboard.h   |   3 +
include/configs/ventana.h|   3 +
3 files changed, 121 insertions(+), 18 deletions(-)
 
  This seems like a lot of code and presumably quite a bit of
  duplication between boards. What sort of conflicts does this avoid,
  and is it the only way of avoiding them?
 
  I don't see it as duplication, but as explicitly spelling out how the
  pinmux configuration should be set up on a certain board.
 
 I mean that the table is very similar for different boards, so looks
 like duplicated coded (133 very similar lines for each board).
 
 Also, this seems to break FDT use. At present it is possible (I think)
 to boot the same U-Boot on any board, with the device tree specifying
 the config. With your change that is no longer possible, I think?
 
 Looking ahead to T114 I see a similar problem. The funcmux approach
 was a compromise in that we could just select appropriate values for
 each function - there was no agreement on how to put this in the FDT
 though (my intention was that it would depend on the kernel binding,
 but that is now defined, so what excuse do we have for not
 implementing it in U-Boot?).
 
That Tegra30 doesn't do so either. ;) But I agree, that's no valid
excuse and we should resolve this before Tegra114 introduces more of
this stuff. See below. 
 
  Before this change we would leave some pads uninitialised in their
  (random) reset configuration. For example on the Colibri this leads to
  NAND not working as it's wired up to the KBC pads. If we only configure
  those, ATC will remain in it's reset state and would be also configured
  to the NAND function, which leads to fail. Having an explicit, known to
  be conflict free configuration for all pads avoids all those unpleasant
  surprises.
 
 Well yes, but we seem to be right back to where we started, with the
 FDT unable to describe a key feature of the boards (pinmux).
 
I see your point now. The obvious answer for now is: it's not regressing
functionality, as we were never able to boot the same U-Boot image by
just changing the DT.

But yes in the end we want to pack this information into the DT files.
But even then it would be nice if people would test this pachset, as I
imagine DT based pinmux is the same as tablebased pinmux, just in a
slightly different flavour. ;) So if people test the tablebased config
now, we can do the conversion to DT based with a lot more confidence.

I'll look into using the kernel pinmux binding minus the MUX stuff, as I
think there's no real reason to have this in U-Boot.

Regards,
Lucas

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


Re: [U-Boot] [PATCH 1/7 V2] EXYNOS5: Add function to enable XXTI clock source

2013-01-25 Thread Simon Glass
On Thu, Jan 24, 2013 at 10:43 PM, Rajeshwari Shinde
rajeshwar...@samsung.com wrote:
 This patch adds funtion to enable XXTI clock source
 required by MAX98095 codec.

 Signed-off-by: Rajeshwari Shinde rajeshwar...@samsung.com

Acked-by: Simon Glass s...@chromium.org

 ---
 Changes in V2:
 - Corrected multi-line comment style
  arch/arm/cpu/armv7/exynos/power.c|   11 +++
  arch/arm/include/asm/arch-exynos/power.h |   11 +++
  2 files changed, 22 insertions(+), 0 deletions(-)

 diff --git a/arch/arm/cpu/armv7/exynos/power.c 
 b/arch/arm/cpu/armv7/exynos/power.c
 index 8572cfd..8de30c1 100644
 --- a/arch/arm/cpu/armv7/exynos/power.c
 +++ b/arch/arm/cpu/armv7/exynos/power.c
 @@ -105,3 +105,14 @@ void power_ps_hold_setup(void)
 setbits_le32(power-ps_hold_control,
 EXYNOS_PS_HOLD_CONTROL_DATA_HIGH);
  }
 +
 +
 +void power_enable_xclkout(void)
 +{
 +   struct exynos5_power *power =
 +   (struct exynos5_power *)samsung_get_base_power();
 +
 +   /* use xxti for xclk out */
 +   clrsetbits_le32(power-pmu_debug, PMU_DEBUG_CLKOUT_SEL_MASK,
 +   PMU_DEBUG_XXTI);
 +}
 diff --git a/arch/arm/include/asm/arch-exynos/power.h 
 b/arch/arm/include/asm/arch-exynos/power.h
 index 85e2cd9..09343d7 100644
 --- a/arch/arm/include/asm/arch-exynos/power.h
 +++ b/arch/arm/include/asm/arch-exynos/power.h
 @@ -872,4 +872,15 @@ void set_dp_phy_ctrl(unsigned int enable);
   * (e.g. power button).
   */
  void power_ps_hold_setup(void);
 +
 +/* PMU_DEBUG bits [12:8] = 0x1000 selects XXTI clock source */
 +#define PMU_DEBUG_XXTI  0x1000
 +/* Mask bit[12:8] for xxti clock selection */
 +#define PMU_DEBUG_CLKOUT_SEL_MASK   0x1f00
 +
 +/*
 + * Pmu debug is used for xclkout, enable xclkout with
 + * source as XXTI
 + */
 +void power_enable_xclkout(void);
  #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 1/2 V2] SF: Add driver for Gigabyte device GD25LQ and GD25Q64B

2013-01-25 Thread Simon Glass
On Wed, Jan 23, 2013 at 7:30 PM, Rajeshwari Shinde
rajeshwar...@samsung.com wrote:
 This patch adds driver for the gigabyte devices
 GD25LQ and GD25Q64B required for Snow Board.

 Signed-off-by: Rajeshwari Shinde rajeshwar...@samsung.com

Acked-by: Simon Glass s...@chromium.org

 ---
 Changes in V2:
 - Added U-Boot copyright header to gigadevice.c
 - Removed unnecessary blank lines.
  drivers/mtd/spi/Makefile |1 +
  drivers/mtd/spi/gigadevice.c |   81 
 ++
  drivers/mtd/spi/spi_flash.c  |3 +
  drivers/mtd/spi/spi_flash_internal.h |1 +
  4 files changed, 86 insertions(+), 0 deletions(-)
  create mode 100644 drivers/mtd/spi/gigadevice.c

 diff --git a/drivers/mtd/spi/Makefile b/drivers/mtd/spi/Makefile
 index 90f8392..ecbb210 100644
 --- a/drivers/mtd/spi/Makefile
 +++ b/drivers/mtd/spi/Makefile
 @@ -32,6 +32,7 @@ endif
  COBJS-$(CONFIG_SPI_FLASH)  += spi_flash.o
  COBJS-$(CONFIG_SPI_FLASH_ATMEL)+= atmel.o
  COBJS-$(CONFIG_SPI_FLASH_EON)  += eon.o
 +COBJS-$(CONFIG_SPI_FLASH_GIGADEVICE)   += gigadevice.o
  COBJS-$(CONFIG_SPI_FLASH_MACRONIX) += macronix.o
  COBJS-$(CONFIG_SPI_FLASH_SPANSION) += spansion.o
  COBJS-$(CONFIG_SPI_FLASH_SST)  += sst.o
 diff --git a/drivers/mtd/spi/gigadevice.c b/drivers/mtd/spi/gigadevice.c
 new file mode 100644
 index 000..b5e1ebe
 --- /dev/null
 +++ b/drivers/mtd/spi/gigadevice.c
 @@ -0,0 +1,81 @@
 +/*
 + * Gigadevice SPI flash driver
 + * Copyright 2013, Samsung Electronics Co., Ltd.
 + * Author: Banajit Goswami banaji...@samsung.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 common.h
 +#include malloc.h
 +#include spi_flash.h
 +
 +#include spi_flash_internal.h
 +
 +struct gigadevice_spi_flash_params {
 +   uint16_tid;
 +   uint16_tnr_blocks;
 +   const char  *name;
 +};
 +
 +static const struct gigadevice_spi_flash_params gigadevice_spi_flash_table[] 
 = {
 +   {
 +   .id = 0x6016,
 +   .nr_blocks  = 64,
 +   .name   = GD25LQ,
 +   },
 +   {
 +   .id = 0x4017,
 +   .nr_blocks  = 128,
 +   .name   = GD25Q64B,
 +   },
 +};
 +
 +struct spi_flash *spi_flash_probe_gigadevice(struct spi_slave *spi, u8 
 *idcode)
 +{
 +   const struct gigadevice_spi_flash_params *params;
 +   struct spi_flash *flash;
 +   unsigned int i;
 +
 +   for (i = 0; i  ARRAY_SIZE(gigadevice_spi_flash_table); i++) {
 +   params = gigadevice_spi_flash_table[i];
 +   if (params-id == ((idcode[1]  8) | idcode[2]))
 +   break;
 +   }
 +
 +   if (i == ARRAY_SIZE(gigadevice_spi_flash_table)) {
 +   debug(SF: Unsupported Gigadevice ID %02x%02x\n,
 +   idcode[1], idcode[2]);
 +   return NULL;
 +   }
 +
 +   flash = spi_flash_alloc_base(spi, params-name);
 +   if (!flash) {
 +   debug(SF: Failed to allocate memory\n);
 +   return NULL;
 +   }
 +   /* page_size */
 +   flash-page_size = 256;
 +   /* sector_size = page_size * pages_per_sector */
 +   flash-sector_size = flash-page_size * 16;
 +   /* size = sector_size * sector_per_block * number of blocks */
 +   flash-size = flash-sector_size * 16 * params-nr_blocks;
 +
 +   return flash;
 +}
 diff --git a/drivers/mtd/spi/spi_flash.c b/drivers/mtd/spi/spi_flash.c
 index 17f3d3c..ee05171 100644
 --- a/drivers/mtd/spi/spi_flash.c
 +++ b/drivers/mtd/spi/spi_flash.c
 @@ -305,6 +305,9 @@ static const struct {
  #ifdef CONFIG_SPI_FLASH_EON
 { 0, 0x1c, spi_flash_probe_eon, },
  #endif
 +#ifdef CONFIG_SPI_FLASH_GIGADEVICE
 +   { 0, 0xc8, spi_flash_probe_gigadevice, },
 +#endif
  #ifdef CONFIG_SPI_FLASH_MACRONIX
 { 0, 0xc2, spi_flash_probe_macronix, },
  #endif
 diff --git a/drivers/mtd/spi/spi_flash_internal.h 
 b/drivers/mtd/spi/spi_flash_internal.h
 index 141cfa8..e0afbc3 100644
 --- a/drivers/mtd/spi/spi_flash_internal.h
 +++ 

Re: [U-Boot] Want to study U-Boot code

2013-01-25 Thread Robert P. J. Day
On Fri, 25 Jan 2013, Wolfgang Denk wrote:

 Dear Woody Wu,

 In message 
 CAAsE_ue4VffAioQWzHPpyOZmzoFk9E5S7jj2+2BZuiK=c5y...@mail.gmail.com you 
 wrote:
 
  I want to firstly get a picture to basically understand how u-boot
  work, especially on an ARM9 based board. I think not everyone who
  want to understand u-boot has to read the full code.  Thank.

 This depends on your definition of understanding.  On a highlevel,
 you might start with reaing and digesting the manual, eventually
 trying out how U-Boot works on some (real or emulated) board.

  if i can jump in, a good way to start playing is to configure and
build for the sandbox architecture so you can run it on your x86
system.  for the benefit of a couple friends, i whipped together a
wiki page for that here:

http://www.crashcourse.ca/wiki/index.php/U-Boot_sandbox

  very simple but enough to get you started, and you can match up
running the commands with the underlying code.

rday

-- 


Robert P. J. Day Ottawa, Ontario, CANADA
http://crashcourse.ca

Twitter:   http://twitter.com/rpjday
LinkedIn:   http://ca.linkedin.com/in/rpjday

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


Re: [U-Boot] [PATCH 06/11] tegra20: switch over seaboard and ventana to use tablebased pinmux

2013-01-25 Thread Simon Glass
Hi Lucas,

On Sat, Jan 26, 2013 at 10:38 AM, Lucas Stach d...@lynxeye.de wrote:
 Hello Simon,

 Am Samstag, den 26.01.2013, 10:20 +1300 schrieb Simon Glass:
 Hi Lucas,

 On Fri, Jan 25, 2013 at 7:22 AM, Lucas Stach d...@lynxeye.de wrote:
  Am Freitag, den 25.01.2013, 06:54 +1300 schrieb Simon Glass:
  Hi Lucas,
 
  On Fri, Jan 25, 2013 at 5:48 AM, Lucas Stach d...@lynxeye.de wrote:
   Init pinmux in one shot, in order to avoid any conflicts.
  
   Signed-off-by: Lucas Stach d...@lynxeye.de
   ---
board/nvidia/seaboard/seaboard.c | 133 
   +--
include/configs/seaboard.h   |   3 +
include/configs/ventana.h|   3 +
3 files changed, 121 insertions(+), 18 deletions(-)
 
  This seems like a lot of code and presumably quite a bit of
  duplication between boards. What sort of conflicts does this avoid,
  and is it the only way of avoiding them?
 
  I don't see it as duplication, but as explicitly spelling out how the
  pinmux configuration should be set up on a certain board.

 I mean that the table is very similar for different boards, so looks
 like duplicated coded (133 very similar lines for each board).

 Also, this seems to break FDT use. At present it is possible (I think)
 to boot the same U-Boot on any board, with the device tree specifying
 the config. With your change that is no longer possible, I think?

 Looking ahead to T114 I see a similar problem. The funcmux approach
 was a compromise in that we could just select appropriate values for
 each function - there was no agreement on how to put this in the FDT
 though (my intention was that it would depend on the kernel binding,
 but that is now defined, so what excuse do we have for not
 implementing it in U-Boot?).

 That Tegra30 doesn't do so either. ;) But I agree, that's no valid
 excuse and we should resolve this before Tegra114 introduces more of
 this stuff. See below.
 
  Before this change we would leave some pads uninitialised in their
  (random) reset configuration. For example on the Colibri this leads to
  NAND not working as it's wired up to the KBC pads. If we only configure
  those, ATC will remain in it's reset state and would be also configured
  to the NAND function, which leads to fail. Having an explicit, known to
  be conflict free configuration for all pads avoids all those unpleasant
  surprises.

 Well yes, but we seem to be right back to where we started, with the
 FDT unable to describe a key feature of the boards (pinmux).

 I see your point now. The obvious answer for now is: it's not regressing
 functionality, as we were never able to boot the same U-Boot image by
 just changing the DT.

Well, kind of. In fact we were able to boot at 3 different T20 boards
just by adding a 'funcmux' property to the device's node to select the
required mux option for that driver. This code is no use on T30/T114,
and was only a stop-gap anyway.


 But yes in the end we want to pack this information into the DT files.
 But even then it would be nice if people would test this pachset, as I
 imagine DT based pinmux is the same as tablebased pinmux, just in a
 slightly different flavour. ;) So if people test the tablebased config
 now, we can do the conversion to DT based with a lot more confidence.

 I'll look into using the kernel pinmux binding minus the MUX stuff, as I
 think there's no real reason to have this in U-Boot.

Well I would rather than we get that running than switch to
table-driven mux, assuming it is not too big a job?

I imagine perhaps naively that a function could be written which
parses the pinmux and sets it up in U-Boot - effectively using the FDT
as the pinmux table.

Regards,
Simon


 Regards,
 Lucas

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


Re: [U-Boot] [PATCH 06/11] tegra20: switch over seaboard and ventana to use tablebased pinmux

2013-01-25 Thread Lucas Stach
Am Samstag, den 26.01.2013, 10:49 +1300 schrieb Simon Glass:
[...]
  But yes in the end we want to pack this information into the DT files.
  But even then it would be nice if people would test this pachset, as I
  imagine DT based pinmux is the same as tablebased pinmux, just in a
  slightly different flavour. ;) So if people test the tablebased config
  now, we can do the conversion to DT based with a lot more confidence.
 
  I'll look into using the kernel pinmux binding minus the MUX stuff, as I
  think there's no real reason to have this in U-Boot.
 
 Well I would rather than we get that running than switch to
 table-driven mux, assuming it is not too big a job?
 
 I imagine perhaps naively that a function could be written which
 parses the pinmux and sets it up in U-Boot - effectively using the FDT
 as the pinmux table.

That's my plan. But still even if we keep the binding the same, the
actual pinmux config would differ between the kernel and U-Boot (a lot
more pads kept in tristate in U-Boot). So as the FDT would effectively
resemble the same tables I included in this patchset, some testing
coverage of that would smoothen the transition.

Regards,
Lucas


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


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

2013-01-25 Thread Tom Rini
On Fri, Jan 25, 2013 at 10:45:19AM -0600, Andy Fleming wrote:

   README.mips: update known issues and TODOs (2013-01-16 10:52:08 +0100)
 
 are available in the git repository at:
 
   git://www.denx.de/git/u-boot-mpc85xx.git master
 
 for you to fetch changes up to 1342f7dd2c864889ce3ef6a78fe74155fd1f9a8f:
 
   corenet: Disable video on P2020DS (2013-01-25 10:32:22 -0600)
 
 
 Anatolij Gustschin (1):
   mpc8xxx: fix DDR init value to use CONFIG_MEM_INIT_VALUE
 
 Andy Fleming (1):
   corenet: Disable video on P2020DS
 
 Hongtao Jia (2):
   powerpc/mpc8572ds: Enable bank interleaving to cs0+cs1 for dual-rank 
 DIMMs
   powerpc/mpc8544ds: Add USB controller support for MPC8544DS
 
 James Yang (5):
   Move DDR command parsing to separate function
   Fix data stage name matching issue
   Add copy command to FSL DDR interactive
   README.fsl-ddr typos and update to reflect hotkey
   powerpc/mpc8: FSL DDR debugger auto run of stored commands
 
 Poonam Aggrwal (2):
   powerpc/mpc85xx: Few updates for B4860 cpu changes
   powerpc/mpc85xx:Add support of B4420 SoC
 
 Prabhakar Kushwaha (8):
   board/T4240qds:Fix TLB and LAW size of NAND flash
   boards/T4240qds:Fix IFC AMASK init as per FPGA register space
   board/freescale/common:Add support of QTAG register
   powerpc/mpc85xx:Fix Core cluster configuration loop
   powerpc/t4240qds: Print FPGA detail version
   powerpc/mpc85xx: Add BSC9132/BSC9232 processor support
   powerpc/85xx: Add BSC9132QDS support
   board/common: Add support for QIXIS read/write using i2c
 
 Scott Wood (1):
   powerpc/mpc85xx: add support for MMUv2 page sizes
 
 Shaohui Xie (1):
   powerpc/p2041: move Lanes mux to board early init
 
 Shaveta Leekha (3):
   powerpc/qixis: enable qixis dump command and add switch dumping command
   powerpc/b4860qds: Add support to dump switch settings on b4860qds board
   powerpc/t4240qds: Add support to dump switch settings on t4240qds board
 
 Shengzhou Liu (1):
   powerpc/t4240: Adding workaround errata A-005871
 
 Timur Tabi (1):
   powerpc/t4qds: move VSC3316 config data from t4qds.h to t4qds.c
 
 Vakul Garg (1):
   powerpc/mpc85xx: Add property 'fsl, sec-era' in device tree node 
 'crypto'
 
 Valentin Longchamp (2):
   powerpc/p2041: add RCW file for P2041RDB
   powerpc/p2041: set RCW and PBI files for .pbl build or P2041RDB
 
 York Sun (4):
   powerpc/mpc85xx: Reserve default boot page
   powerpc/t4240qds: Update IFC timing for NOR flash
   powerpc/b4860qds: Added Support for B4860QDS
   powerpc/mpc8xxx: Enable entering DDR debugging by key press
 
  MAINTAINERS  |4 +
  arch/powerpc/cpu/mpc85xx/Makefile|5 +
  arch/powerpc/cpu/mpc85xx/b4860_ids.c |6 +
  arch/powerpc/cpu/mpc85xx/b4860_serdes.c  |   60 ++
  arch/powerpc/cpu/mpc85xx/bsc9132_serdes.c|   96 +++
  arch/powerpc/cpu/mpc85xx/cmd_errata.c|4 +
  arch/powerpc/cpu/mpc85xx/cpu_init.c  |   44 +-
  arch/powerpc/cpu/mpc85xx/fdt.c   |   24 +
  arch/powerpc/cpu/mpc85xx/start.S |2 +-
  arch/powerpc/cpu/mpc85xx/tlb.c   |   19 +-
  arch/powerpc/cpu/mpc8xxx/cpu.c   |2 +
  arch/powerpc/cpu/mpc8xxx/ddr/ctrl_regs.c |4 +
  arch/powerpc/cpu/mpc8xxx/ddr/ddr.h   |3 +-
  arch/powerpc/cpu/mpc8xxx/ddr/interactive.c   |  324 ++---
  arch/powerpc/cpu/mpc8xxx/ddr/main.c  |8 +-
  arch/powerpc/cpu/mpc8xxx/fdt.c   |   78 +-
  arch/powerpc/include/asm/config_mpc85xx.h|   39 +-
  arch/powerpc/include/asm/immap_85xx.h|   34 +-
  arch/powerpc/include/asm/mmu.h   |   52 +-
  arch/powerpc/include/asm/processor.h |2 +
  board/freescale/b4860qds/Makefile|   54 ++
  board/freescale/b4860qds/b4860qds.c  |  505 +
  board/freescale/b4860qds/b4860qds.h  |   26 +
  board/freescale/b4860qds/b4860qds_crossbar_con.h |   67 ++
  board/freescale/b4860qds/b4860qds_qixis.h|   37 +
  board/freescale/b4860qds/ddr.c   |  190 +
  board/freescale/b4860qds/eth_b4860qds.c  |  338 +
  board/freescale/b4860qds/law.c   |   44 ++
  board/freescale/b4860qds/pci.c   |   39 +
  board/freescale/b4860qds/tlb.c   |  127 
  board/freescale/bsc9132qds/Makefile  |   52 ++
  board/freescale/bsc9132qds/README|  150 
  board/freescale/bsc9132qds/bsc9132qds.c  |  406 +++
  board/freescale/bsc9132qds/ddr.c |  209 ++
  board/freescale/bsc9132qds/law.c |   35 +
  board/freescale/bsc9132qds/tlb.c |   92 +++
  

Re: [U-Boot] AM335X: Set fdt_high for AM335X devices to enable booting with Device Tree

2013-01-25 Thread Tom Rini
On Tue, Sep 18, 2012 at 09:26:05AM -, hvaib...@ti.com wrote:

 For AM335X boards, such as the EVM and Bone Linux kernel fails to
 locate the device tree blob on boot. The reason being is that
 u-boot is copying the DT blob to the upper part of RAM when booting
 the kernel and the kernel is unable to access the blob.
 By setting the fdt_high variable to 0x (to prevent the copy)
 the kernel is able to locate the DT blob and boot.
 
 This patch is tested on BeagleBone platform.
 
 Signed-off-by: Vaibhav Hiremath hvaib...@ti.com
 Cc: Tom Rini tr...@ti.com

So, a funny thing happened along the way since this patch.  The newest
revision of the EVM includes 1GB of DDR and thus we do now need this
patch.  Applied to u-boot-ti/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] [PATCH v2 2/3] pcm051: Add support for Phytec phyCORE-AM335x

2013-01-25 Thread Tom Rini
On Fri, Jan 11, 2013 at 11:53:31AM +0100, Lars Poeschel wrote:

 From: Lars Poeschel poesc...@lemonage.de
 
 The board is named pcm051 and has this hardware:
 SOC: TI AM3359
 DDR3-RAM: 2x MT41J256M8HX-15EIT:D 512MiB
 ETH 1: LAN8710AI
 SPI-Flash: W25Q64BVSSIG
 RTC: RV-4162-C7
 I2C-EEPROM: CAT32WC32
 NAND: MT29F4G08_VFPGA63
 PMIC: TPS65910A3
 LCD
 
 Supported:
 UART 1
 MMC/SD
 ETH 1
 USB
 I2C
 SPI
 
 Not yet supported:
 NAND
 RTC
 LCD
 
 Signed-off-by: Lars Poeschel poesc...@lemonage.de

With the following added (due to another patch I pulled in)

diff --git a/include/configs/pcm051.h b/include/configs/pcm051.h
index 2096fcf..aa90ba9 100644
--- a/include/configs/pcm051.h
+++ b/include/configs/pcm051.h
@@ -295,6 +295,7 @@
 #define CONFIG_NET_MULTI
 #define CONFIG_PHY_GIGE
 #define CONFIG_PHYLIB
+#define CONFIG_PHY_ADDR0
 #define CONFIG_PHY_SMSC
 
 #endif /* ! __CONFIG_PCM051_H */

Applied to u-boot-ti/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] [PATCH 04/11] tegra20: switch over tamonten platform to use tablebased pinmux

2013-01-25 Thread Lucas Stach
Am Freitag, den 25.01.2013, 14:04 -0800 schrieb Stephen Warren:
 On 01/24/2013 08:48 AM, Lucas Stach wrote:
  Init pinmux in one shot, in order to avoid any conflicts.
 
  diff --git a/board/avionic-design/common/tamonten.c 
  b/board/avionic-design/common/tamonten.c
 
  +static struct pingroup_config tamonten_pinmux[] = {
  +   PINMUX_ENTRY(ATA, IDE, NORMAL, NORMAL), /* GPIO */
  +   PINMUX_ENTRY(ATB, SDIO4, NORMAL, NORMAL), /* MMC */
 ...
 
 I believe this initializes every single pingroup on the SoC to
 something. In order to prevent any behavior changes, wouldn't it be
 better to first fill in this table only with entries that achieve the
 same pinmux programming that used to be performed by the C code you're
 removing? Then, a separate later patch could fill in missing items in
 the pinmux table. I think that'd end up being much safer and easier to
 validate.
 

As I wrote in the cover letter this initializes the pinmux to the same
values the Linux kernel uses. I don't consider it a safer approach to
pull out the old pinmux from the C Code and then later building a
conflict free full muxtable out of this.

However I made sure to go through the C Code to see which pads need to
be un-tristated. At that time I cross-checked the table with the
functions used by the C Code. But as a human I'm not safe from mistakes.

Regards,
Lucas


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


Re: [U-Boot] [U-Boot, v2, 1/1] omap4: allow the use of a plain text env file instead boot scripts

2013-01-25 Thread Tom Rini
On Mon, Jan 07, 2013 at 03:51:20AM -, Javier Martinez Canillas wrote:

 For production systems it is better to use script images since
 they are protected by checksums and carry valuable information like
 name and timestamp. Also, you can't validate the content passed to
 env import.
 
 But for development, it is easier to use the env import command and
 plain text files instead of script-images.
 
 Since both OMAP4 supported boards (Panda and TI SDP4430) are used
 primarily for development, this patch allows U-Boot to load env var
 from a text file in case that an boot.scr script-image is not present.
 
 The variable uenvcmd (if existent) will be executed (using run) after
 uEnv.txt was loaded. If uenvcmd doesn't exist the default boot sequence
 will be started.
 
 Signed-off-by: Javier Martinez Canillas javier.marti...@collabora.co.uk
 Acked-by: Nishanth Menon n...@ti.com

Applied to u-boot-ti/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] [PATCH v2 1/3] am33xx: add a pulldown macro to pinmux config

2013-01-25 Thread Tom Rini
On Fri, Jan 11, 2013 at 11:53:30AM +0100, Lars Poeschel wrote:

 From: Lars Poeschel poesc...@lemonage.de
 
 Signed-off-by: Lars Poeschel poesc...@lemonage.de

Applied to u-boot-ti/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] Add DDR3 support for AM335x-EVM (Version 1.5A)

2013-01-25 Thread Tom Rini
On Mon, Jan 14, 2013 at 05:32:20AM -, Jeff Lance wrote:

 AM335x EVM 1.5A uses Micron MT41J512M8RH-125 SDRAM 4Gb (512Mx8) as the
 DDR3 chip.
 
 [Hebbar Gururaja gururaja.heb...@ti.com]
   - Resolve merge conflict while rebasing. File structure is
 changed in the mainline. So re-arrange the code accordingly.
   - Update commit message to reflect the DDR3 part number
 
 Signed-off-by: Jeff Lance j-lan...@ti.com
 Signed-off-by: Tom Rini tr...@ti.com
 Signed-off-by: Hebbar Gururaja gururaja.heb...@ti.com

Applied to u-boot-ti/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] [PATCH v2 3/3] am335x: display msg when reading MAC from efuse

2013-01-25 Thread Tom Rini
On Fri, Jan 11, 2013 at 11:53:32AM +0100, Lars Poeschel wrote:

 From: Lars Poeschel poesc...@lemonage.de
 
 When ethaddr is not set in environment the MAC address is read
 from efuse. The message was only printed in debug case, but this
 message could be of interest for the ordinary user, so printf it.
 
 Signed-off-by: Lars Poeschel poesc...@lemonage.de

Applied to u-boot-ti/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] [U-Boot, 1/3] gpio: Build the da8xx_gpio code for the davinci644x device

2013-01-25 Thread Tom Rini
On Fri, Jan 18, 2013 at 05:19:48AM -, Holger Hans Peter Freyther wrote:

 The differences include the number of GPIOs and that one is
 not required to set the pinmux on request.

I was about to reply that I applied this but I see the series is missing
a Signed-off-by line.  Please send a v2 with a Signed-off-by line,
assuming of course that the guidelines apply and all that.  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] [U-Boot, v2, 1/2] OMAP3: use a single board file for IGEP devices

2013-01-25 Thread Tom Rini
On Thu, Dec 27, 2012 at 01:35:56AM -, Javier Martinez Canillas wrote:

 Even when the IGEPv2 board and the IGEP Computer-on-Module
 are different from a form factor point of view, they are
 very similar in the fact that share many components and how
 they are wired.
 
 So, it is possible (and better) to have a single board file
 for both devices and just use the CONFIG_MACH_TYPE to make
 a differentiation between each board when needed.
 
 This change avoids code duplication by removing 298 lines of
 code and makes future maintenance easier.
 
 Signed-off-by: Javier Martinez Canillas javier.marti...@collabora.co.uk
 Acked-by: Igor Grinberg grinb...@compulab.co.il

Applied to u-boot-ti/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] [U-Boot, v5, 2/2] OMAP3: igep00x0: add boot status GPIO LED

2013-01-25 Thread Tom Rini
On Thu, Dec 27, 2012 at 03:36:01AM -, Javier Martinez Canillas wrote:

 This patch adds an GPIO LED boot status for IGEP boards.
 
 The GPIO LED used is the red LED0 while the Linux kernel
 uses the green LED0 as the boot status.
 
 By using different GPIO LEDs, the user can know in which
 step of the boot process the board currently is.
 
 Signed-off-by: Javier Martinez Canillas javier.marti...@collabora.co.uk
 Acked-by: Igor Grinberg grinb...@compulab.co.il

Applied to u-boot-ti/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] Please pull u-boot-ti/master

2013-01-25 Thread Tom Rini
Hello,

The following changes since commit 7cb70a34b976e68f6348ea0718780e8f38901482:

  fdt: fix dts preprocessor options (2013-01-17 09:07:59 -0700)

are available in the git repository at:

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

for you to fetch changes up to e25a6b504bb0c6e7a3a20cc0d2afacb6d88d29b1:

  AM335X: Set fdt_high for AM335X devices to enable booting with Device Tree 
(2013-01-25 17:10:43 -0500)


Javier Martinez Canillas (3):
  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

Jeff Lance (1):
  Add DDR3 support for AM335x-EVM (Version 1.5A)

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

hvaib...@ti.com (1):
  AM335X: Set fdt_high for AM335X devices to enable booting with Device Tree

 MAINTAINERS|3 +
 arch/arm/include/asm/arch-am33xx/ddr_defs.h|   34 +++
 arch/arm/include/asm/arch-am33xx/mux.h |3 +-
 board/isee/igep0020/igep0020.h |  151 --
 board/isee/igep0030/Makefile   |   43 ---
 board/isee/igep0030/igep0030.c |  117 
 board/isee/{igep0020 = igep00x0}/Makefile |2 +-
 .../{igep0020/igep0020.c = igep00x0/igep00x0.c}   |   51 +++-
 .../{igep0030/igep0030.h = igep00x0/igep00x0.h}   |   35 ++-
 board/phytec/pcm051/Makefile   |   46 +++
 board/phytec/pcm051/board.c|  266 +
 board/phytec/pcm051/board.h|   33 +++
 board/phytec/pcm051/mux.c  |  133 +
 board/ti/am335x/board.c|   43 ++-
 boards.cfg |9 +-
 include/configs/am335x_evm.h   |1 +
 include/configs/igep00x0.h |5 +
 include/configs/omap4_common.h |   17 +-
 include/configs/pcm051.h   |  301 
 19 files changed, 951 insertions(+), 342 deletions(-)
 delete mode 100644 board/isee/igep0020/igep0020.h
 delete mode 100644 board/isee/igep0030/Makefile
 delete mode 100644 board/isee/igep0030/igep0030.c
 rename board/isee/{igep0020 = igep00x0}/Makefile (98%)
 rename board/isee/{igep0020/igep0020.c = igep00x0/igep00x0.c} (86%)
 rename board/isee/{igep0030/igep0030.h = igep00x0/igep00x0.h} (93%)
 create mode 100644 board/phytec/pcm051/Makefile
 create mode 100644 board/phytec/pcm051/board.c
 create mode 100644 board/phytec/pcm051/board.h
 create mode 100644 board/phytec/pcm051/mux.c
 create mode 100644 include/configs/pcm051.h

-- 
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] Please pull u-boot-mpc85xx.git

2013-01-25 Thread Fleming Andy-AFLEMING

 
 
 create mode 100644 drivers/net/fm/b4860.c
 create mode 100644 include/configs/B4860QDS.h
 create mode 100644 include/configs/BSC9132QDS.h
 
 So, I see:
 bsc9132qds.c: In function 'ft_board_setup':
 bsc9132qds.c:349:19: warning: variable 'cpu' set but not used
 [-Wunused-but-set-variable]
 
 On the various BSC boards.  Do you want me to take it now, or after
 you've fixed it up?


Argh. That apparently wasn't seen by my compiler setup. I'll fix it. What 
compiler are you using?


Andy


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


Re: [U-Boot] [PATCH 10/11] tegra20: remove old pinmux setup

2013-01-25 Thread Lucas Stach
Am Freitag, den 25.01.2013, 14:12 -0800 schrieb Stephen Warren:
 On 01/24/2013 08:48 AM, Lucas Stach wrote:
  All boards are converted to the new tablebased pinmux setup. Get rid of
  the old method.
 
  diff --git a/arch/arm/cpu/tegra-common/board.c 
  b/arch/arm/cpu/tegra-common/board.c
 
  @@ -145,7 +121,6 @@ static void setup_uarts(int uart_ids)
  if (uart_ids  (1  i)) {
  enum periph_id id = id_for_uart[i];
   
  -   funcmux_select(id, uart_configs[i]);
  clock_ll_start_uart(id);
  }
  }
 
 Doesn't the debug UART get set up very early, in the SPL, before any
 table-based pinmux could be activated?
 
 If so, I think we need to leave this one funcmux API call in place, so
 that the debug UART always works nice and early.
 
 If not, how much does this series increase the binary of the SPL?
 
Ah right, I forgot about SPL debug. If we go for FDT based pinmux, we
have to init UART in some explicit way, as DT and SPL don't mix.

But even then I would like to get rid of the funcmux style and rather
let the boards provide a minimal UART pinmux init table, as funcmux
doesn't map too well onto the plethora of config options Tegra30
provides for the pinmux.

Regards,
Lucas

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


Re: [U-Boot] [PATCH 10/11] tegra20: remove old pinmux setup

2013-01-25 Thread Stephen Warren
On 01/25/2013 02:19 PM, Lucas Stach wrote:
 Am Freitag, den 25.01.2013, 14:12 -0800 schrieb Stephen Warren:
 On 01/24/2013 08:48 AM, Lucas Stach wrote:
 All boards are converted to the new tablebased pinmux setup. Get rid of
 the old method.

 diff --git a/arch/arm/cpu/tegra-common/board.c 
 b/arch/arm/cpu/tegra-common/board.c

 @@ -145,7 +121,6 @@ static void setup_uarts(int uart_ids)
 if (uart_ids  (1  i)) {
 enum periph_id id = id_for_uart[i];
  
 -   funcmux_select(id, uart_configs[i]);
 clock_ll_start_uart(id);
 }
 }

 Doesn't the debug UART get set up very early, in the SPL, before any
 table-based pinmux could be activated?

 If so, I think we need to leave this one funcmux API call in place, so
 that the debug UART always works nice and early.

 If not, how much does this series increase the binary of the SPL?

 Ah right, I forgot about SPL debug. If we go for FDT based pinmux, we
 have to init UART in some explicit way, as DT and SPL don't mix.
 
 But even then I would like to get rid of the funcmux style and rather
 let the boards provide a minimal UART pinmux init table, as funcmux
 doesn't map too well onto the plethora of config options Tegra30
 provides for the pinmux.

Yes, that's perhaps true.

For reference, I recently worked out all the possible locations of each
logical signal (well, only RX/TX/RTS/CTS for Tegra30) for each UART. I
put the table below for reference in case it's interesting.

Tegra20:

(sets of pingroups that create a complete UART)

 + *   UART A:
 + *   0: unspecified
 + *   1: irrx, irtx
 + *   2: gpu
 + *   3: sdb, sdd
 + *   4: sdio1
 + *   5: uaa
 + *   6: irrx, irtx, uad
 + *   7: irrx, irtx, uad, uab
 + *   8: sdb, sdd, uad
 + *   9: sdb, sdd, uad, uab
 + *   10: uaa, uab
 + *   UART B:
 + *   0: unspecified
 + *   1: uad
 + *   2: uad, irrx, irtx
 + *   UART C:
 + *   0: unspecified
 + *   1: uca
 + *   2: uca, ucb
 + *   UART D:
 + *   0: unspecified
 + *   1: gmc
 + *   2: uda
 + *   UART E:
 + *   0: unspecified
 + *   1: gma
 + *   2: sdio1

Tegra30:

(possible locations for each signal on each UART)

 + * UART CTS pin
 + *   UART A:
 + *   0: unspecified
 + *   1: uart2_rxd
 + *   2: ulpi_data2
 + *   3: gpio_pu2
 + *   UART B:
 + *   0: unspecified
 + *   1: uart2_cts_n
 + *   UART C:
 + *   0: unspecified
 + *   1: uart3_cts_n
 + *   UART D:
 + *   0: unspecified
 + *   1: gmi_a18
 + *   2: ulpi_nxt
 + *   UART E:
 + *   0: unspecified
 + *   1: sdmmc1_dat1
 + *   2: sdmmc4_dat2
 + * UART RTS pin
 + *   UART A:
 + *   0: unspecified
 + *   1: uart2_txd
 + *   2: ulpi_data3
 + *   3: gpio_pu3
 + *   UART B:
 + *   0: unspecified
 + *   1: uart2_rts_n
 + *   UART C:
 + *   0: unspecified
 + *   1: uart3_rts_n
 + *   UART D:
 + *   0: unspecified
 + *   1: gmi_a19
 + *   2: ulpi_stp
 + *   UART E:
 + *   0: unspecified
 + *   1: sdmmc1_dat0
 + *   2: sdmmc4_dat3
 + * UART TXD pin
 + *   UART A:
 + *   0: unspecified
 + *   1: sdmmc3_clk
 + *   2: uart2_rts_n
 + *   3: ulpi_data0
 + *   4: gpio_pu0
 + *   UART B:
 + *   0: unspecified
 + *   1: uart2_txd
 + *   UART C:
 + *   0: unspecified
 + *   1: uart3_txd
 + *   UART D:
 + *   0: unspecified
 + *   1: gmi_a16
 + *   2: ulpi_clk
 + *   UART E:
 + *   0: unspecified
 + *   1: sdmmc1_dat3
 + *   2: sdmmc4_dat0
 + * UART RXD pin
 + *   UART A:
 + *   0: unspecified
 + *   1: sdmmc3_cmd
 + *   2: uart2_cts_n
 + *   3: ulpi_data1
 + *   4: gpio_pu1
 + *   UART B:
 + *   0: unspecified
 + *   1: uart2_rxd
 + *   UART C:
 + *   0: unspecified
 + *   1: uart3_rxd
 + *   UART D:
 + *   0: unspecified
 + *   1: gmi_a17
 + *   2: ulpi_dir
 + *   UART E:
 + *   0: unspecified
 + *   1: sdmmc1_dat2
 + *   2: sdmmc4_dat1

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


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

2013-01-25 Thread Tom Rini
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On 01/25/2013 05:15 PM, Fleming Andy-AFLEMING wrote:
 
 
 
 create mode 100644 drivers/net/fm/b4860.c create mode 100644
 include/configs/B4860QDS.h create mode 100644
 include/configs/BSC9132QDS.h
 
 So, I see: bsc9132qds.c: In function 'ft_board_setup': 
 bsc9132qds.c:349:19: warning: variable 'cpu' set but not used 
 [-Wunused-but-set-variable]
 
 On the various BSC boards.  Do you want me to take it now, or
 after you've fixed it up?
 
 
 Argh. That apparently wasn't seen by my compiler setup. I'll fix
 it. What compiler are you using?

ELDK 5.2.1

- -- 
Tom
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQIcBAEBAgAGBQJRAwpnAAoJENk4IS6UOR1WRY4P/RCj9uAOWayQUJKe0GV4wHWy
k8JyVqy51XR/VzkdrtU2546FQxIJ/hz0z7rwo/o0p7euY6qrMOWRLKiV+nH7TBb4
O26DAuoWHXr6vQc6+GO3DLRHY7KdKfbhiWgCnM678N5I7FX5uIcGGycJlRpn6T6k
IACJwVMBi2q+vEsTSfyTGtTCq5PaUafYG7EA1sckQsZ4jssxd9NakGPhznorHIBM
6QhKZzJbWuLXfT8thMSz3nMKvmFCkl2/LNZvMU2Q8HrkBmDb0tduNi3Fu2jBUY6n
f89A37mf2Q5aM0xQpoD3PfSwp8/nhGNoI0WCTGxYgjkXUkLfB5SzIw1Jro2UFSz/
SSegHVocKlmD0gQLjtJgW7NYFWu6+c3m+RCRyODyJiksG4vU1Ns6UtiUBPMoeOtd
ONXMiEOXcJ+lv8L9fSTzPoB9k9scjHw5KA5zeiedV8ZBkv7Y/NWllf1xQ7oceuqp
86d+pw0QdagdSf3HnCl4Qc2X1n4X5X/jSbI57j7KPnvHV+49gCU8/VcoqKiVFcMn
dl4kefSD3GgMddSdyk/3RJ0/XWr6gAfISUC4ZPSTxepbZluAiOZ6/gFe7Z2/leV/
my2iVlXqDRFSPT0qeHx2vldQJwTGN63nwzCLl6G9UZLzgGrBb8on7fy8e9cFiI5E
nH4c8mQ2lr/EReXt/HqW
=ioCy
-END PGP SIGNATURE-
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] powerpc/mpc85xx: Add revision properties in portal device tree node 'pme'

2013-01-25 Thread Jeffrey Ladouceur
The 'fsl,pme-rev1' and 'fsl-pme-rev2' properties have been added to the
pme portal node. This is required for software to determine which version
of PME hardware is present and take appropriate actions.
These properties are a direct reflection of the corresponding ccsr pme
register value.

Also removed unnecessary static global variables.

Signed-off-by: Jeffrey Ladouceur jeffrey.ladouc...@freescale.com
---
 arch/powerpc/cpu/mpc85xx/portals.c |   20 +---
 1 files changed, 17 insertions(+), 3 deletions(-)

diff --git a/arch/powerpc/cpu/mpc85xx/portals.c 
b/arch/powerpc/cpu/mpc85xx/portals.c
index b59ef69..d529095 100644
--- a/arch/powerpc/cpu/mpc85xx/portals.c
+++ b/arch/powerpc/cpu/mpc85xx/portals.c
@@ -30,11 +30,9 @@
 #include asm/fsl_portals.h
 #include asm/fsl_liodn.h
 
-static ccsr_qman_t *qman = (void *)CONFIG_SYS_FSL_QMAN_ADDR;
-static ccsr_bman_t *bman = (void *)CONFIG_SYS_FSL_BMAN_ADDR;
-
 void setup_portals(void)
 {
+   ccsr_qman_t *qman = (void *)CONFIG_SYS_FSL_QMAN_ADDR;
 #ifdef CONFIG_FSL_CORENET
int i;
 
@@ -166,6 +164,20 @@ static int fdt_qportal(void *blob, int off, int id, char 
*name,
num = get_dpaa_liodn(dev, liodns[0], id);
ret = fdt_setprop(blob, childoff, fsl,liodn,
  liodns[0], sizeof(u32) * num);
+   if (!strncmp(name, pme, 3)) {
+   u32 pme_rev1, pme_rev2;
+   ccsr_pme_t *pme_regs =
+   (void *)CONFIG_SYS_FSL_CORENET_PME_ADDR;
+
+   pme_rev1 = in_be32(pme_regs-pm_ip_rev_1);
+   pme_rev2 = in_be32(pme_regs-pm_ip_rev_2);
+   ret = fdt_setprop(blob, childoff,
+   fsl,pme-rev1, pme_rev1, sizeof(u32));
+   if (ret  0)
+   return ret;
+   ret = fdt_setprop(blob, childoff,
+   fsl,pme-rev2, pme_rev2, sizeof(u32));
+   }
 #endif
} else {
return childoff;
@@ -183,6 +195,7 @@ void fdt_fixup_qportals(void *blob)
int off, err;
unsigned int maj, min;
unsigned int ip_cfg;
+   ccsr_qman_t *qman = (void *)CONFIG_SYS_FSL_QMAN_ADDR;
u32 rev_1 = in_be32(qman-ip_rev_1);
u32 rev_2 = in_be32(qman-ip_rev_2);
char compat[64];
@@ -272,6 +285,7 @@ void fdt_fixup_bportals(void *blob)
int off, err;
unsigned int maj, min;
unsigned int ip_cfg;
+   ccsr_bman_t *bman = (void *)CONFIG_SYS_FSL_BMAN_ADDR;
u32 rev_1 = in_be32(bman-ip_rev_1);
u32 rev_2 = in_be32(bman-ip_rev_2);
char compat[64];
-- 
1.7.2.1


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


Re: [U-Boot] [PATCH 04/11] tegra20: switch over tamonten platform to use tablebased pinmux

2013-01-25 Thread Stephen Warren
On 01/24/2013 08:48 AM, Lucas Stach wrote:
 Init pinmux in one shot, in order to avoid any conflicts.

 diff --git a/board/avionic-design/common/tamonten.c 
 b/board/avionic-design/common/tamonten.c

 +static struct pingroup_config tamonten_pinmux[] = {
 + PINMUX_ENTRY(ATA, IDE, NORMAL, NORMAL), /* GPIO */
 + PINMUX_ENTRY(ATB, SDIO4, NORMAL, NORMAL), /* MMC */
...

I believe this initializes every single pingroup on the SoC to
something. In order to prevent any behavior changes, wouldn't it be
better to first fill in this table only with entries that achieve the
same pinmux programming that used to be performed by the C code you're
removing? Then, a separate later patch could fill in missing items in
the pinmux table. I think that'd end up being much safer and easier to
validate.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 06/11] tegra20: switch over seaboard and ventana to use tablebased pinmux

2013-01-25 Thread Stephen Warren
On 01/25/2013 01:57 PM, Lucas Stach wrote:
 Am Samstag, den 26.01.2013, 10:49 +1300 schrieb Simon Glass:
 [...]
 But yes in the end we want to pack this information into the DT files.
 But even then it would be nice if people would test this pachset, as I
 imagine DT based pinmux is the same as tablebased pinmux, just in a
 slightly different flavour. ;) So if people test the tablebased config
 now, we can do the conversion to DT based with a lot more confidence.

 I'll look into using the kernel pinmux binding minus the MUX stuff, as I
 think there's no real reason to have this in U-Boot.

 Well I would rather than we get that running than switch to
 table-driven mux, assuming it is not too big a job?

 I imagine perhaps naively that a function could be written which
 parses the pinmux and sets it up in U-Boot - effectively using the FDT
 as the pinmux table.
 
 That's my plan. But still even if we keep the binding the same, the
 actual pinmux config would differ between the kernel and U-Boot (a lot
 more pads kept in tristate in U-Boot). So as the FDT would effectively
 resemble the same tables I included in this patchset, some testing
 coverage of that would smoothen the transition.

Why wouldn't the pinmux tables in the FDT passed to U-Boot either be
identical to (a) the kernel, or (b) the small subset of the pinmux
options that U-Boot used to program via code? I don't see any reason for
U-Boot to program all the pingroups to TRISTATE etc.; if it's
programming those pingroups at all, it may as well just program the
correct final value.

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


Re: [U-Boot] [PATCH 06/11] tegra20: switch over seaboard and ventana to use tablebased pinmux

2013-01-25 Thread Stephen Warren
On 01/25/2013 01:49 PM, Simon Glass wrote:
 Hi Lucas,
 
 On Sat, Jan 26, 2013 at 10:38 AM, Lucas Stach d...@lynxeye.de wrote:
 Hello Simon,

 Am Samstag, den 26.01.2013, 10:20 +1300 schrieb Simon Glass:
 Hi Lucas,

 On Fri, Jan 25, 2013 at 7:22 AM, Lucas Stach d...@lynxeye.de wrote:
 Am Freitag, den 25.01.2013, 06:54 +1300 schrieb Simon Glass:
 Hi Lucas,

 On Fri, Jan 25, 2013 at 5:48 AM, Lucas Stach d...@lynxeye.de wrote:
 Init pinmux in one shot, in order to avoid any conflicts.

 Signed-off-by: Lucas Stach d...@lynxeye.de
 ---
  board/nvidia/seaboard/seaboard.c | 133 
 +--
  include/configs/seaboard.h   |   3 +
  include/configs/ventana.h|   3 +
  3 files changed, 121 insertions(+), 18 deletions(-)

 This seems like a lot of code and presumably quite a bit of
 duplication between boards. What sort of conflicts does this avoid,
 and is it the only way of avoiding them?

 I don't see it as duplication, but as explicitly spelling out how the
 pinmux configuration should be set up on a certain board.

 I mean that the table is very similar for different boards, so looks
 like duplicated coded (133 very similar lines for each board).

 Also, this seems to break FDT use. At present it is possible (I think)
 to boot the same U-Boot on any board, with the device tree specifying
 the config. With your change that is no longer possible, I think?

 Looking ahead to T114 I see a similar problem. The funcmux approach
 was a compromise in that we could just select appropriate values for
 each function - there was no agreement on how to put this in the FDT
 though (my intention was that it would depend on the kernel binding,
 but that is now defined, so what excuse do we have for not
 implementing it in U-Boot?).

 That Tegra30 doesn't do so either. ;) But I agree, that's no valid
 excuse and we should resolve this before Tegra114 introduces more of
 this stuff. See below.

 Before this change we would leave some pads uninitialised in their
 (random) reset configuration. For example on the Colibri this leads to
 NAND not working as it's wired up to the KBC pads. If we only configure
 those, ATC will remain in it's reset state and would be also configured
 to the NAND function, which leads to fail. Having an explicit, known to
 be conflict free configuration for all pads avoids all those unpleasant
 surprises.

 Well yes, but we seem to be right back to where we started, with the
 FDT unable to describe a key feature of the boards (pinmux).

 I see your point now. The obvious answer for now is: it's not regressing
 functionality, as we were never able to boot the same U-Boot image by
 just changing the DT.
 
 Well, kind of. In fact we were able to boot at 3 different T20 boards
 just by adding a 'funcmux' property to the device's node to select the
 required mux option for that driver. This code is no use on T30/T114,
 and was only a stop-gap anyway.

??? I don't believe U-Boot supports any funcmux property in the device
tree. Are you referring to some downstream U-Boot? Such a branch
wouldn't be relevant to a patch for upstream U-Boot.

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


Re: [U-Boot] [PATCH 06/11] tegra20: switch over seaboard and ventana to use tablebased pinmux

2013-01-25 Thread Stephen Warren
On 01/24/2013 10:22 AM, Lucas Stach wrote:
 Am Freitag, den 25.01.2013, 06:54 +1300 schrieb Simon Glass:
 Hi Lucas,

 On Fri, Jan 25, 2013 at 5:48 AM, Lucas Stach d...@lynxeye.de wrote:
 Init pinmux in one shot, in order to avoid any conflicts.

 Signed-off-by: Lucas Stach d...@lynxeye.de
 ---
  board/nvidia/seaboard/seaboard.c | 133 
 +--
  include/configs/seaboard.h   |   3 +
  include/configs/ventana.h|   3 +
  3 files changed, 121 insertions(+), 18 deletions(-)

 This seems like a lot of code and presumably quite a bit of
 duplication between boards. What sort of conflicts does this avoid,
 and is it the only way of avoiding them?

 I don't see it as duplication, but as explicitly spelling out how the
 pinmux configuration should be set up on a certain board.
 
 Before this change we would leave some pads uninitialised in their
 (random) reset configuration.

Just being pedantic here, but I don't think the power-on-reset
configuration is random; it's well defined but perhaps just not
documented, and not always what is correct/best for any particular board
design.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 10/11] tegra20: remove old pinmux setup

2013-01-25 Thread Stephen Warren
On 01/24/2013 08:48 AM, Lucas Stach wrote:
 All boards are converted to the new tablebased pinmux setup. Get rid of
 the old method.

 diff --git a/arch/arm/cpu/tegra-common/board.c 
 b/arch/arm/cpu/tegra-common/board.c

 @@ -145,7 +121,6 @@ static void setup_uarts(int uart_ids)
   if (uart_ids  (1  i)) {
   enum periph_id id = id_for_uart[i];
  
 - funcmux_select(id, uart_configs[i]);
   clock_ll_start_uart(id);
   }
   }

Doesn't the debug UART get set up very early, in the SPL, before any
table-based pinmux could be activated?

If so, I think we need to leave this one funcmux API call in place, so
that the debug UART always works nice and early.

If not, how much does this series increase the binary of the SPL?
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [RFC] mmc:fix: Increase the timeout value for SDHCI_send_command()

2013-01-25 Thread Jaehoon Chung
On 01/25/2013 08:44 PM, Jagan Teki wrote:
 Hi,
 
 On Fri, Jan 11, 2013 at 8:49 PM, Lukasz Majewski l.majew...@samsung.com 
 wrote:
 Hi Wolfgang,

 Dear Lukasz Majewski,

 In message 1357665792-8141-1-git-send-email-l.majew...@samsung.com
 you wrote:
 I'd like to ask for your opinion about the following problem:

 I cannot comment on the problem - only a bit about the proposed patch
 ;-)

 From a brief checking I can say that it happens when we are doing
 consecutive MMC operations (i.e. many reads), and the 10ms timeout
 might be too short when eMMC firmware is forced to do some internal
 time consuming operations (e.g. flash blocks management, wear
 leveling).
 In this situation, the SDHCI_CMD_INHIBIT bit is set, which means
 that SDHCI controller didn't received response from eMMC.

 One proposition would be to define the per device/per memory chip
 specific timeouts, to replace those defined at ./drivers/mmc/sdhci.c
 file.

 Is there no way to ask the device and/or controller when it is done,
 so we can poll for ready state instead of adding delays, which will
 always have to be tailored for the so far known worst case, i. e. they
 will be always too long on all almost all systems.

 We are doing this already - the SDHCI_PRESENT_STATE register's bit 0
 (SDHCI_CMD_INHIBIT) and bit 1 (DATA_INHIBIT) are for this purpose.
 Those indicate when host controller can send further command/data to
 the card.

 Moreover, there are also timeouts in the case when someone pull out SD
 card inserted to the slot (or any other use case which I'm not aware).



 --- a/drivers/mmc/sdhci.c
 +++ b/drivers/mmc/sdhci.c
 @@ -137,8 +137,8 @@ int sdhci_send_command(struct mmc *mmc, struct
 mmc_cmd *cmd, unsigned int timeout, start_addr = 0;
 unsigned int retry = 1;

 -   /* Wait max 10 ms */
 -   timeout = 10;
 +   /* Wait max 100 ms */
 +   timeout = 100;

 We have cases where we struggle for sub-second boot times.  Adding
 100 ms delay here is clearly prohbitive.  [Even the 10 ms are way too
 long IMHO.]  There must be a better way to handle this.

 That's why I'm asking.

 It is strange that, when I'm increasing delay it works.

 Maybe we will find some areas of optimization?
 
 BTW: I am also finding the similar issue.
 
 But when I enabled CONFIG_MMC_TRACE for log traces, i never see the
 issue..it's pretty much working fine.
It's not important to enable the MMC_TRACE. It should be increased the delay.
 As per my latest debug, the issue is fire for CMD6 (SWITCH_FUNC).
Right, i also find the error log for CMD6.
Could you test this point?

sdhci_writel(host, SDHCI_INT_ALL_MASK, SDHCI_INT_STATUS);
-   mask = SDHCI_CMD_INHIBIT | SDHCI_DATA_INHIBIT;
+   mask = SDHCI_CMD_INHIBIT;
+
+   if ((data != NULL) || (cmd-resp_type  MMC_RSP_BUSY))
+   mask |= SDHCI_DATA_INHIBIT;

Best Regards,
Jaehoon Chung
 
 May be we need to update the logic on this while loop...
 
 Thanks,
 Jagan.
 


 Best regards,

 Wolfgang Denk




 --
 Best regards,

 Lukasz Majewski

 Samsung RD Poland (SRPOL) | Linux Platform Group
 ___
 U-Boot mailing list
 U-Boot@lists.denx.de
 http://lists.denx.de/mailman/listinfo/u-boot
 ___
 U-Boot mailing list
 U-Boot@lists.denx.de
 http://lists.denx.de/mailman/listinfo/u-boot
 

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


Re: [U-Boot] [PATCH] tegra: fdt: add back missing host1x node

2013-01-25 Thread Allen Martin
On Fri, Jan 25, 2013 at 10:46:47AM -0800, Allen Martin wrote:
 Add back host1x node to seaboard dts file.  This got dropped during
 the tegra fdt sort.
 
 Signed-off-by: Allen Martin amar...@nvidia.com
 ---

Hi Albert, would it be possible for you to apply this directly to your
u-boot-arm repository?  It fixes a regression introduced by my
previous patch:

b7723f3 tegra: fdt: sort dts files

So I wanted to make sure it gets applied before that previous patch
makes it to u-boot/master, and Tom's not ready to do another tegra
pull request yet.

-Allen

  board/nvidia/dts/tegra20-seaboard.dts |   11 +++
  1 file changed, 11 insertions(+)
 
 diff --git a/board/nvidia/dts/tegra20-seaboard.dts 
 b/board/nvidia/dts/tegra20-seaboard.dts
 index 9cb9b5b..527a296 100644
 --- a/board/nvidia/dts/tegra20-seaboard.dts
 +++ b/board/nvidia/dts/tegra20-seaboard.dts
 @@ -27,6 +27,17 @@
   reg =  0x 0x4000 ;
   };
  
 + host1x {
 + status = okay;
 + dc@5420 {
 + status = okay;
 + rgb {
 + status = okay;
 + nvidia,panel = lcd_panel;
 + };
 + };
 + };
 +
   /* This is not used in U-Boot, but is expected to be in kernel .dts */
   i2c@7000d000 {
   clock-frequency = 10;
 -- 
 1.7.10.4
 

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


[U-Boot] Can I read env from RAM in uboot script?

2013-01-25 Thread John Stile
Is it possible to have uboot read it's environment from a RAM address,
rather than NAND?
OR
Can uboot's scripting support load variables from a RAM address?

My NAND layout has redundant halves:
0
  uboot
  ubootenv
  kernel
  fs
128
  uboot
  ubootenv
  kernel
  fs 
256

My firmware update strategy will update the non-booted side of NAND.

It is easy to hack at91bootstrap, to load a uboots env area at some
RAM address, just as it loads uboot at JUMP_ADDR, but how do I get uboot
to use this preloaded uboot-env?

Since uboot takes its environment area address at compile time, I wonder
if uboot could be made to read it from a RAM address (written there by
at91bootstrap), durring the env_relocate_spec()?

So far I have traced:
cpu/arm926ejs/start.S  calls start_armboot()
lib_arm/board.c start_armboot() calls env_relocate()
./common/env_common.c env_relocate() calls env_relocate_spec()
My u-boot.map indicates my env_relocate_spec() comes from env_nand.o
./common/env_nand.c has env_relocate_spec() has ifdefs for
ENV_IS_EMBEDDED, but my config is not.  and CFG_ENV_IS_IN_NAND which I
am currently configured for. 

So where is a good point of attack, or is there one?








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


Re: [U-Boot] [PATCH 1/1 v3] console: USB: KBD: Fix incorrect autoboot timeout

2013-01-25 Thread Marek Vasut
Dear Jim Lin,

 Autoboot timeout defined by CONFIG_BOOTDELAY will not be accurate if
 CONFIG_USB_KEYBOARD and CONFIG_SYS_USB_EVENT_POLL are defined in
 configuration file and when tstc() function for checking key pressed
 takes longer time than 10 ms (e.g., 50 ms) to finish.
 
 Signed-off-by: Jim Lin ji...@nvidia.com

Applied to u-boot-usb
Thanks

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 v2 0/7] Move Tegra EHCI drive to correct place

2013-01-25 Thread Marek Vasut
Dear Lucas Stach,

 This moves out the Tegra EHCI driver from a platform specific directory
 to the standard driver/usb/host dir.
 
 This is a preparation needed to share this driver between Tegra20 and
 Tegra30. No functional change in here, so Tegra30 is still not working.
 
 Patch 6 could be a lot smaller if it were generated with -B, as GIT would
 detect that most of it is moving stuff over, but last time I did this it
 prevented git apply to work. So sorry for the big diff.
 
 I think I incorporated all changes needed to reflect the review feedback
 I got on this last time.
 
 I expect this series to go in through the Tegra tree.

Last two don't apply, I applied first five and pushed.

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 1/2] serial: arm_dcc: Remove CONFIG_ARM_DCC_MULTI option

2013-01-25 Thread Marek Vasut
Dear Michal Simek,

 CONFIG_ARM_DCC_MULTI should be also removed in the patch
 serial: Remove CONFIG_SERIAL_MULTI from serial drivers
 (sha1: a3827250606895ec2dd4b8d867342b7cabf3692f)
 Because the driver defines serial_* functions
 which cause conflict with serial.c (multiple definition of serial_*)
 
 Removing CONFIG_SERIAL_MULTI function also require to define
 default_serial_console for cases where another serial driver
 is not available in the system.
 
 Signed-off-by: Michal Simek michal.si...@xilinx.com

I think it looks good.

Acked-by: Marek Vasut ma...@denx.de

btw. did I by any chance became serial subsystem custodian without knowing 
about 
it recently? ;-)

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 2/2] serial: arm_dcc: Fix compilation warning and remove unneeded initialization

2013-01-25 Thread Marek Vasut
Dear Michal Simek,

 - arm_dcc_dev is already initialized.
 - Remove unused rc variable
 Warning log:
 arm_dcc.c: In function 'drv_arm_dcc_init':
 arm_dcc.c:145:6: warning: unused variable 'rc' [-Wunused-variable]
 
 Signed-off-by: Michal Simek michal.si...@xilinx.com

Acked-by: Marek Vasut ma...@denx.de

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


Re: [U-Boot] Can I read env from RAM in uboot script?

2013-01-25 Thread Wolfgang Denk
Dear John Stile,

In message 1359165410.7974.114.camel@genx you wrote:
 Is it possible to have uboot read it's environment from a RAM address,
 rather than NAND?
 OR
 Can uboot's scripting support load variables from a RAM address?

Yes, all this can be done.  And easily.  See for example the
env import command.

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH, MD: Wolfgang Denk  Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de
Software suppliers are trying to make their  software  packages  more
``user-friendly''.  .  .  .  Their best approach, so far, has been to
take all the old brochures, and stamp the words, ``user-friendly'' on
the cover.   - Bill Gates
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot