Re: [U-Boot] [PATCH] MX27: add missing get_tbclk()
On 07/02/2012 22:26, Marek Vasut wrote: Signed-off-by: Stefano Babic sba...@denx.de --- arch/arm/cpu/arm926ejs/mx27/timer.c |8 1 files changed, 8 insertions(+), 0 deletions(-) diff --git a/arch/arm/cpu/arm926ejs/mx27/timer.c b/arch/arm/cpu/arm926ejs/mx27/timer.c index 5af9359..226c0a5 100644 --- a/arch/arm/cpu/arm926ejs/mx27/timer.c +++ b/arch/arm/cpu/arm926ejs/mx27/timer.c @@ -171,3 +171,11 @@ void __udelay(unsigned long usec) while (get_ticks() tmp) /* loop till event */ /*NOP*/; } + +ulong get_tbclk(void) +{ +ulong tbclk; + +tbclk = CONFIG_MX27_CLK32; +return tbclk; +} Why not simply ... return CONFIG... ? Yes, right, as I already did for the other i.MX Fixed in V2 Stefano -- = DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: off...@denx.de = ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] OMAP3: TAM3517: update ehci interface
On 08/02/2012 07:06, Govindraj wrote: Looks like this is copy paste error from my side, (for port2/3 it should have been bypass for port2/3 rather its port1 set in bypass mode) I will correct this part and repost the patch. Thanks - only for info, I have already tested with these changes and everything works. Best regards, Stefano Babic -- = DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: off...@denx.de = ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v4 4/7] ehci-omap: Clean up added ehci-omap.c
On 08/02/2012 07:15, Govindraj wrote: Based on comments from Stefano Babic sba...@denx.de In this thread [1] here the updated patch [2] same is corrected in u-boot tree having v4 ehci-omap patch-set: git://gitorious.org/denx_u-boot/denx_uboot_omap.git v4_ehci_omap4 --- Tested-by: Stefano Babic sba...@denx.de Best regards, Stefano Babic -- = DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: off...@denx.de = ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v4 5/7] OMAP3+: Clock: Adding ehci clock enabling
On 06/02/2012 14:55, Govindraj.R wrote: From: Govindraj.R govindraj.r...@ti.com Adding ehci clock enabling mechanism part of clock framework. When essential clocks are enabled during init phase usb host clocks can also be enabled from clock framework. Acked-by: Igor Grinberg grinb...@compulab.co.il Signed-off-by: Govindraj.R govindraj.r...@ti.com --- Tested-by: Stefano Babic sba...@denx.de Best regards, Stefano Babic -- = DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: off...@denx.de = ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v4 6/7] OMAP4: clock-common: Move the usb dppl configuration to new func
On 06/02/2012 14:55, Govindraj.R wrote: From: Govindraj.R govindraj.r...@ti.com usb dpll configuration is done only part of non-essential dppl configuration however if CONFIG_USB_EHCI_OMAP is defined we may have to configure usb dpll's for proper functioning of usb modules. So move the usb dppl configuration to a new func. and utilise the same during essential dpll configuration. Signed-off-by: Govindraj.R govindraj.r...@ti.com --- Tested-by: Stefano Babic sba...@denx.de Best regards, Stefano Babic -- = DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: off...@denx.de = ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v4 7/7] OMAP4: ehci-omap: enable ehci-omap for panda boards
On 06/02/2012 14:55, Govindraj.R wrote: From: Govindraj.R govindraj.r...@ti.com For panda initialise the mux pins for ehci usage and enable ehci in omap4_panda config file. Signed-off-by: Govindraj.R govindraj.r...@ti.com --- Tested-by: Stefano Babic sba...@denx.de Best regards, Stefano Babic -- = DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: off...@denx.de = ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v4 3/7] ehci-omap: driver for EHCI host on OMAP3
On 06/02/2012 14:55, Govindraj.R wrote: From: Ilya Yanok ya...@emcraft.com Taken from Beagle code. Tested on mcx board (AM3517-based). Signed-off-by: Ilya Yanok ya...@emcraft.com --- Tested-by: Stefano Babic sba...@denx.de Best regards, Stefano Babic -- = DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: off...@denx.de = ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH V2] MX27: add missing get_tbclk()
Signed-off-by: Stefano Babic sba...@denx.de --- Changes since V1: - return directly CONFIG_MX27_CLK32 instead using temporary variable (Marek Vasut) arch/arm/cpu/arm926ejs/mx27/timer.c |5 + 1 files changed, 5 insertions(+), 0 deletions(-) diff --git a/arch/arm/cpu/arm926ejs/mx27/timer.c b/arch/arm/cpu/arm926ejs/mx27/timer.c index 5af9359..a5dd684 100644 --- a/arch/arm/cpu/arm926ejs/mx27/timer.c +++ b/arch/arm/cpu/arm926ejs/mx27/timer.c @@ -171,3 +171,8 @@ void __udelay(unsigned long usec) while (get_ticks() tmp) /* loop till event */ /*NOP*/; } + +ulong get_tbclk(void) +{ + return CONFIG_MX27_CLK32; +} -- 1.7.5.4 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 1/2] arm/km: speed up i2c access for keymile boards
Hi Prafulla, On 12/14/2011 04:31 PM, Holger Brunck wrote: We don't need 3us delay for our i2c bus. Decrease it to 1us. It would also be possible to use 100ns in the future, but currently kirkwood has no ndelay implementation. Signed-off-by: Holger Brunck holger.bru...@keymile.com Cc: Valentin Longchamp valentin.longch...@keymile.com Cc: Prafulla Wadaskar prafu...@marvell.com Cc: Heiko Schocher h...@denx.de --- include/configs/km/km_arm.h |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) can you pull these two small updates for km_arm or is something misssing? Thanks! Regards Holger ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH V2] OMAP3: TAM3517: update ehci interface
Changed the EHCI interface using the ulpi framework. Signed-off-by: Stefano Babic sba...@denx.de CC: Tom Rini tom.r...@gmail.com --- This patch is based and tested on top of Govindraj's patches for EHCI omap: http://patchwork.ozlabs.org/patch/139377/ Changes since V1: - do not use temporary variable to return values (Igor Grinberg) - port 2 is TTL, cannot be PHY (Igor Grinberg) board/technexion/twister/twister.c | 22 ++ include/configs/tam3517-common.h |2 ++ 2 files changed, 24 insertions(+), 0 deletions(-) diff --git a/board/technexion/twister/twister.c b/board/technexion/twister/twister.c index 4d34d24..b927586 100644 --- a/board/technexion/twister/twister.c +++ b/board/technexion/twister/twister.c @@ -33,6 +33,10 @@ #include asm/arch/mmc_host_def.h #include i2c.h #include asm/gpio.h +#ifdef CONFIG_USB_EHCI +#include usb.h +#include asm/ehci-omap.h +#endif #include twister.h DECLARE_GLOBAL_DATA_PTR; @@ -56,6 +60,24 @@ static const u32 gpmc_XR16L2751[] = { XR16L2751_GPMC_CONFIG6, }; +#ifdef CONFIG_USB_EHCI +static struct omap_usbhs_board_data usbhs_bdata = { + .port_mode[0] = OMAP_EHCI_PORT_MODE_PHY, + .port_mode[1] = OMAP_EHCI_PORT_MODE_PHY, + .port_mode[2] = OMAP_USBHS_PORT_MODE_UNUSED, +}; + +int ehci_hcd_init(void) +{ + return omap_ehci_hcd_init(usbhs_bdata); +} + +int ehci_hcd_stop(void) +{ + return omap_ehci_hcd_stop(); +} +#endif + int board_init(void) { gpmc_init(); /* in SRAM or SDRAM, finish GPMC */ diff --git a/include/configs/tam3517-common.h b/include/configs/tam3517-common.h index 817d468..13eeadb 100644 --- a/include/configs/tam3517-common.h +++ b/include/configs/tam3517-common.h @@ -100,6 +100,8 @@ #define CONFIG_OMAP3_GPIO_5 #define CONFIG_USB_EHCI #define CONFIG_USB_EHCI_OMAP +#define CONFIG_USB_ULPI +#define CONFIG_USB_ULPI_VIEWPORT_OMAP #define CONFIG_OMAP_EHCI_PHY1_RESET_GPIO 25 #define CONFIG_SYS_USB_EHCI_MAX_ROOT_PORTS 3 #define CONFIG_USB_STORAGE -- 1.7.5.4 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH V5] ARM: omap3: Added Teejet mt_ventoux
The mt_ventoux board is a custom board using the Technexion TAM3517 module. The patch fixes also the mtdparts variable in the TAM3517 common configuration file. Signed-off-by: Stefano Babic sba...@denx.de CC: Ilya Yanok ya...@emcraft.com CC: Igor Grinberg grinb...@compulab.co.il CC: Tom Rini tom.r...@gmail.com Cc: Detlev Zundel d...@denx.de --- Changes since V4: - applied comments already sent for the twister board Changes since V3: - rebased on current u-boot-ti - rebased on EHCI patches and add EHCI support - fix mtdparts default value in common file Changes since V2: - CONFIG_OMAP_HSMMC requires CONFIG_GENERIC_MMC, do not check both (T. Rini) Changes since V1: - CONFIG_FPGA must be enabled (S. Babic) - reworking fpga functions (Igor Grinberg) - drop clean / distclean from Makefile (Igor Grinberg) - TAB / Spaces issue (Igor Grinberg) MAINTAINERS |1 + board/teejet/mt_ventoux/Makefile | 38 +++ board/teejet/mt_ventoux/mt_ventoux.c | 233 ++ board/teejet/mt_ventoux/mt_ventoux.h | 429 ++ boards.cfg |1 + include/configs/mt_ventoux.h | 58 + include/configs/tam3517-common.h |4 +- 7 files changed, 762 insertions(+), 2 deletions(-) create mode 100644 board/teejet/mt_ventoux/Makefile create mode 100644 board/teejet/mt_ventoux/mt_ventoux.c create mode 100644 board/teejet/mt_ventoux/mt_ventoux.h create mode 100644 include/configs/mt_ventoux.h diff --git a/MAINTAINERS b/MAINTAINERS index 0a3b39d..a8e56bb 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -574,6 +574,7 @@ Stefano Babic sba...@denx.de ea20davinci flea3 i.MX35 + mt_ventoux omap3 mx35pdk i.MX35 mx51evk i.MX51 polaris xscale/pxa diff --git a/board/teejet/mt_ventoux/Makefile b/board/teejet/mt_ventoux/Makefile new file mode 100644 index 000..4c8db10 --- /dev/null +++ b/board/teejet/mt_ventoux/Makefile @@ -0,0 +1,38 @@ +# +# Copyright (C) 2011 Ilya Yanok, Emcraft Systems +# +# Based on ti/evm/Makefile +# +# 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. +# + +include $(TOPDIR)/config.mk + +LIB= $(obj)lib$(BOARD).o + +COBJS := $(BOARD).o + +SRCS := $(COBJS:.o=.c) +OBJS := $(addprefix $(obj),$(COBJS)) + +$(LIB):$(obj).depend $(OBJS) + $(call cmd_link_o_target, $(OBJS)) + +# + +# defines $(obj).depend target +include $(SRCTREE)/rules.mk + +sinclude $(obj).depend diff --git a/board/teejet/mt_ventoux/mt_ventoux.c b/board/teejet/mt_ventoux/mt_ventoux.c new file mode 100644 index 000..c5eb42c --- /dev/null +++ b/board/teejet/mt_ventoux/mt_ventoux.c @@ -0,0 +1,233 @@ +/* + * Copyright (C) 2011 + * Stefano Babic, DENX Software Engineering, sba...@denx.de. + * + * Copyright (C) 2009 TechNexion Ltd. + * + * 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. + */ + +#include common.h +#include netdev.h +#include fpga.h +#include asm/io.h +#include asm/arch/mem.h +#include asm/arch/mux.h +#include asm/arch/sys_proto.h +#include asm/omap_gpio.h +#include asm/arch/mmc_host_def.h +#include i2c.h +#include spartan3.h +#include asm/gpio.h +#ifdef CONFIG_USB_EHCI +#include usb.h +#include asm/ehci-omap.h +#endif +#include mt_ventoux.h + +DECLARE_GLOBAL_DATA_PTR; + +#ifndef CONFIG_FPGA +#error The Teejet mt_ventoux must have CONFIG_FPGA enabled +#endif + +#define FPGA_RESET 62 +#define FPGA_PROG 116 +#define FPGA_CCLK 117 +#define FPGA_DIN 118 +#define FPGA_INIT 119 +#define FPGA_DONE 154 + +/* Timing definitions for FPGA */ +static const u32 gpmc_fpga[] = { + FPGA_GPMC_CONFIG1, +
[U-Boot] [PATCH V8] mcx: support for HTKW mcx board
From: Ilya Yanok ya...@emcraft.com This patch adds support for the HTKW mcx AM3517-based board. Serial, Ethernet, NAND, MMC, RTC, EHCI USB host and both NAND and MMC SPLs are supported. Signed-off-by: Ilya Yanok ya...@emcraft.com Signed-off-by: Stefano Babic sba...@denx.de CC: Tom Rini tom.r...@gmail.com Cc: Detlev Zundel d...@denx.de --- Changes since V7: - do not use temporary variable to return values (Igor Grinberg) - port 2 is TTL, cannot be PHY (Igor Grinberg) Changes from V6: - rebased on current u-boot-ti - applied and tested on top of EHCI Gavindraj's patches - uses ULPI framework Changes from V5 http://article.gmane.org/gmane.comp.boot-loaders.u-boot/120254 - added comments on CONFIG_SYS_TEXT_BASE and SPL_{MALLOC,BSS} Changes from V4 http://article.gmane.org/gmane.comp.boot-loaders.u-boot/120148 - board_mmc_init return value fixed - machine id added locally - CONFIG_SYS_NAND_U_BOOT_SIZE removed Changes from V3 http://article.gmane.org/gmane.comp.boot-loaders.u-boot/118530 - Comment for misc_init_r function fixed - Added check for gpio_request return value. - Removed #if defined(CONFIG_GENERIC_MMC) around board_mmc_init - CONFIG_USE_IRQ and related stuff removed from config - CONFIG_OMAP3_MICRON_DDR removed - CONFIG_SYS_MAXRAGS changed 32 - 16 - Incorrect multiline comments (/*--- ones) fixed - CONFIG_SPL_MAX_SIZE rewritten 0xB400 - (45 10) - CONFIG_SPL_NAND_WORKSPACE removed Changes from V2 http://article.gmane.org/gmane.comp.boot-loaders.u-boot/116548 - None Changes from V1 http://article.gmane.org/gmane.comp.boot-loaders.u-boot/115026 - Calls to gpio_set_value after gpio_direction_output removed - Minor style problem (tab instead of space) fixed SPL series: Changes from V1 http://article.gmane.org/gmane.comp.boot-loaders.u-boot/112892 - OMAP EHCI support enabled in config - MMC SPL support enabled in config DaVinci EMAC and HTKW mcx support series: Changes from V3 http://article.gmane.org/gmane.comp.boot-loaders.u-boot/112884 - NAND SPL support enabled in config Changes from V2 http://article.gmane.org/gmane.comp.boot-loaders.u-boot/112317 - removed dead code from board/htkw/mcx/Makefile as Mike suggested - removed EMAC reset (now done in generic cpu_eth_init()) - removed some unsuned defines from configuration header Changes from V1 http://article.gmane.org/gmane.comp.boot-loaders.u-boot/97 - various style fixes to make checkpatch (almost) happy - FSF address removed from GPL comments - CONFIG_SYS_TEXT_BASE moved to configuration header, config.mk droped - CONFIG_MACH_TYPE is used instead of setting mach type from board code - i2c_init removed from misc_init_r - cpu_eth_init removed (added to generic place by another patch) - CONTROL_PADCONF defines removed - Fixed boolean config options not to have a value - CONFIG_MUSB_* and related defines removed MAINTAINERS |4 + board/htkw/mcx/Makefile | 38 + board/htkw/mcx/mcx.c| 112 + board/htkw/mcx/mcx.h| 408 +++ boards.cfg |1 + include/configs/mcx.h | 378 +++ 6 files changed, 941 insertions(+), 0 deletions(-) create mode 100644 board/htkw/mcx/Makefile create mode 100644 board/htkw/mcx/mcx.c create mode 100644 board/htkw/mcx/mcx.h create mode 100644 include/configs/mcx.h diff --git a/MAINTAINERS b/MAINTAINERS index a8e56bb..7e52f50 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -920,6 +920,10 @@ Richard Woodruff r-woodru...@ti.com omap2420h4 ARM1136EJS +Ilya Yanok ya...@emcraft.com + + mcx ARM ARMV7 (AM35x SoC) + Syed Mohammed Khasim sm.kha...@gmail.com Sughosh Ganu urwithsugh...@gmail.com diff --git a/board/htkw/mcx/Makefile b/board/htkw/mcx/Makefile new file mode 100644 index 000..4c8db10 --- /dev/null +++ b/board/htkw/mcx/Makefile @@ -0,0 +1,38 @@ +# +# Copyright (C) 2011 Ilya Yanok, Emcraft Systems +# +# Based on ti/evm/Makefile +# +# 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. +# + +include $(TOPDIR)/config.mk + +LIB= $(obj)lib$(BOARD).o + +COBJS := $(BOARD).o + +SRCS := $(COBJS:.o=.c) +OBJS := $(addprefix $(obj),$(COBJS)) + +$(LIB):$(obj).depend $(OBJS) + $(call cmd_link_o_target, $(OBJS)) + +# + +#
Re: [U-Boot] [PATCH 1/2] arm/km: speed up i2c access for keymile boards
-Original Message- From: Holger Brunck [mailto:holger.bru...@keymile.com] Sent: 08 February 2012 14:20 To: Prafulla Wadaskar Cc: u-boot@lists.denx.de; Valentin Longchamp; Heiko Schocher Subject: Re: [PATCH 1/2] arm/km: speed up i2c access for keymile boards Hi Prafulla, On 12/14/2011 04:31 PM, Holger Brunck wrote: We don't need 3us delay for our i2c bus. Decrease it to 1us. It would also be possible to use 100ns in the future, but currently kirkwood has no ndelay implementation. Signed-off-by: Holger Brunck holger.bru...@keymile.com Cc: Valentin Longchamp valentin.longch...@keymile.com Cc: Prafulla Wadaskar prafu...@marvell.com Cc: Heiko Schocher h...@denx.de --- include/configs/km/km_arm.h |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) can you pull these two small updates for km_arm or is something misssing? Applied both to u-boot-marvell.git master branch Regards.. Prafulla . . . ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH V2] bugfix: all Marvell specific build fails due to undefined reference to `get_ticks'
-Original Message- From: Prafulla Wadaskar [mailto:prafu...@marvell.com] Sent: 08 February 2012 16:40 To: u-boot@lists.denx.de Cc: Prabhanjan Sarnaik; Ashish Karkare; Prafulla Wadaskar Subject: [PATCH V2] bugfix: all Marvell specific build fails due to undefined reference to `get_ticks' after http://patchwork.ozlabs.org/patch/136415/ was applied. All Marvell build fails with below error common/libcommon.o: In function `cread_line': /home/uboot/src/u-boot-arm/common/main.c:717: undefined reference to `get_ticks' /home/uboot/src/u-boot-arm/common/main.c:717: undefined reference to `get_tbclk' /home/uboot/src/u-boot-arm/common/main.c:720: undefined reference to `get_ticks' The same is fixed for Kirkwood, ARMADA100, pantheon and orion5x SoCs Signed-off-by: Prafulla Wadaskar prafu...@marvell.com --- Change log: V2: get_tbclk body changed to single line stateent as per feedback by Graeme Russ arch/arm/cpu/arm926ejs/armada100/timer.c | 18 ++ arch/arm/cpu/arm926ejs/kirkwood/timer.c | 18 ++ arch/arm/cpu/arm926ejs/orion5x/timer.c | 18 ++ arch/arm/cpu/arm926ejs/pantheon/timer.c | 18 ++ 4 files changed, 72 insertions(+), 0 deletions(-) diff --git a/arch/arm/cpu/arm926ejs/armada100/timer.c b/arch/arm/cpu/arm926ejs/armada100/timer.c index fbade4b..355cd6d 100644 --- a/arch/arm/cpu/arm926ejs/armada100/timer.c +++ b/arch/arm/cpu/arm926ejs/armada100/timer.c @@ -190,3 +190,21 @@ void reset_cpu (unsigned long ignored) while(1); } + +/* + * This function is derived from PowerPC code (read timebase as long long). + * On ARM it just returns the timer value. + */ +unsigned long long get_ticks(void) +{ + return get_timer(0); +} + +/* + * This function is derived from PowerPC code (timebase clock frequency). + * On ARM it returns the number of timer ticks per second. + */ +ulong get_tbclk (void) +{ + return (ulong)CONFIG_SYS_HZ; +} diff --git a/arch/arm/cpu/arm926ejs/kirkwood/timer.c b/arch/arm/cpu/arm926ejs/kirkwood/timer.c index a98f54c..f5d0160 100644 --- a/arch/arm/cpu/arm926ejs/kirkwood/timer.c +++ b/arch/arm/cpu/arm926ejs/kirkwood/timer.c @@ -153,3 +153,21 @@ int timer_init(void) return 0; } + +/* + * This function is derived from PowerPC code (read timebase as long long). + * On ARM it just returns the timer value. + */ +unsigned long long get_ticks(void) +{ + return get_timer(0); +} + +/* + * This function is derived from PowerPC code (timebase clock frequency). + * On ARM it returns the number of timer ticks per second. + */ +ulong get_tbclk (void) +{ + return (ulong)CONFIG_SYS_HZ; +} diff --git a/arch/arm/cpu/arm926ejs/orion5x/timer.c b/arch/arm/cpu/arm926ejs/orion5x/timer.c index e39ecc2..8a8aaf1 100644 --- a/arch/arm/cpu/arm926ejs/orion5x/timer.c +++ b/arch/arm/cpu/arm926ejs/orion5x/timer.c @@ -167,3 +167,21 @@ void timer_init_r(void) lastdec = read_timer(); timestamp = 0; } + +/* + * This function is derived from PowerPC code (read timebase as long long). + * On ARM it just returns the timer value. + */ +unsigned long long get_ticks(void) +{ + return get_timer(0); +} + +/* + * This function is derived from PowerPC code (timebase clock frequency). + * On ARM it returns the number of timer ticks per second. + */ +ulong get_tbclk (void) +{ + return (ulong)CONFIG_SYS_HZ; +} diff --git a/arch/arm/cpu/arm926ejs/pantheon/timer.c b/arch/arm/cpu/arm926ejs/pantheon/timer.c index 17045b1..28aadad 100644 --- a/arch/arm/cpu/arm926ejs/pantheon/timer.c +++ b/arch/arm/cpu/arm926ejs/pantheon/timer.c @@ -197,3 +197,21 @@ void reset_cpu (unsigned long ignored) /*enable functional WDT clock */ writel(APBC_APBCLK | APBC_FNCLK, mpmu-wdtpcr); } + +/* + * This function is derived from PowerPC code (read timebase as long long). + * On ARM it just returns the timer value. + */ +unsigned long long get_ticks(void) +{ + return get_timer(0); +} + +/* + * This function is derived from PowerPC code (timebase clock frequency). + * On ARM it returns the number of timer ticks per second. + */ +ulong get_tbclk (void) +{ + return (ulong)CONFIG_SYS_HZ; +} -- Applied to u-boot-marvell.git master branch Regards.. Prafulla . . . ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v4] arm, arm-kirkwood: disable l2c before linux boot
-Original Message- From: Michael Walle [mailto:mich...@walle.cc] Sent: 01 February 2012 23:54 To: u-boot@lists.denx.de Cc: Michael Walle; Albert ARIBAUD; Prafulla Wadaskar; Wolfgang Denk Subject: [PATCH v4] arm, arm-kirkwood: disable l2c before linux boot The decompressor expects the L2 cache to be disabled. This fixes booting some kernels, which have CONFIG_ARM_PATCH_PHYS_VIRT enabled. Signed-off-by: Michael Walle mich...@walle.cc Acked-by: Prafulla Wadaskar prafu...@marvell.com Cc: Albert ARIBAUD albert.u.b...@aribaud.net Cc: Prafulla Wadaskar prafu...@marvell.com Cc: Wolfgang Denk w...@denx.de --- v4: update copyright year of arch/arm/cpu/arm926ejs/kirkwood/cache.c add acked by prafulla v3: remove unused enable function v2: replace magic number with macro arch/arm/cpu/arm926ejs/cache.c |9 arch/arm/cpu/arm926ejs/cpu.c |2 + arch/arm/cpu/arm926ejs/kirkwood/Makefile |1 + arch/arm/cpu/arm926ejs/kirkwood/cache.c | 34 ++ 4 files changed, 46 insertions(+), 0 deletions(-) create mode 100644 arch/arm/cpu/arm926ejs/kirkwood/cache.c diff --git a/arch/arm/cpu/arm926ejs/cache.c b/arch/arm/cpu/arm926ejs/cache.c index ee90ab7..504f604 100644 --- a/arch/arm/cpu/arm926ejs/cache.c +++ b/arch/arm/cpu/arm926ejs/cache.c @@ -68,3 +68,12 @@ void flush_cache(unsigned long start, unsigned long size) { } #endif /* #ifndef CONFIG_SYS_DCACHE_OFF */ + +/* + * Stub implementations for l2 cache operations + */ +void __l2_cache_disable(void) +{ +} +void l2_cache_disable(void) +__attribute__((weak, alias(__l2_cache_disable))); diff --git a/arch/arm/cpu/arm926ejs/cpu.c b/arch/arm/cpu/arm926ejs/cpu.c index 5c902df..626384c 100644 --- a/arch/arm/cpu/arm926ejs/cpu.c +++ b/arch/arm/cpu/arm926ejs/cpu.c @@ -50,6 +50,8 @@ int cleanup_before_linux (void) /* turn off I/D-cache */ icache_disable(); dcache_disable(); + l2_cache_disable(); + /* flush I/D-cache */ cache_flush(); diff --git a/arch/arm/cpu/arm926ejs/kirkwood/Makefile b/arch/arm/cpu/arm926ejs/kirkwood/Makefile index 0754297..777006c 100644 --- a/arch/arm/cpu/arm926ejs/kirkwood/Makefile +++ b/arch/arm/cpu/arm926ejs/kirkwood/Makefile @@ -30,6 +30,7 @@ COBJS-y = cpu.o COBJS-y += dram.o COBJS-y += mpp.o COBJS-y += timer.o +COBJS-y += cache.o SRCS := $(SOBJS:.o=.S) $(COBJS-y:.o=.c) OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS-y)) diff --git a/arch/arm/cpu/arm926ejs/kirkwood/cache.c b/arch/arm/cpu/arm926ejs/kirkwood/cache.c new file mode 100644 index 000..645d962 --- /dev/null +++ b/arch/arm/cpu/arm926ejs/kirkwood/cache.c @@ -0,0 +1,34 @@ +/* + * Copyright (c) 2012 Michael Walle + * Michael Walle mich...@walle.cc + * + * 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. + */ +#include common.h +#include asm/arch/cpu.h + +#define FEROCEON_EXTRA_FEATURE_L2C_EN (122) + +void l2_cache_disable() +{ + u32 ctrl; + + ctrl = readfr_extra_feature_reg(); + ctrl = ~FEROCEON_EXTRA_FEATURE_L2C_EN; + writefr_extra_feature_reg(ctrl); +} -- Applied to u-boot-marvell.git master branch Regards.. Prafulla . . . ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH V2] edminiv2: add hush parser, cmdline editing and long help
-Original Message- From: u-boot-boun...@lists.denx.de [mailto:u-boot- boun...@lists.denx.de] On Behalf Of Albert ARIBAUD Sent: 17 January 2012 01:42 To: u-boot@lists.denx.de Subject: [U-Boot] [PATCH V2] edminiv2: add hush parser, cmdline editing and long help Signed-off-by: Albert ARIBAUD albert.u.b...@aribaud.net --- Patch history: V2: include cmdline editing, forgotten in V1 include/configs/edminiv2.h | 10 ++ 1 files changed, 10 insertions(+), 0 deletions(-) diff --git a/include/configs/edminiv2.h b/include/configs/edminiv2.h index 88d32b2..988d045 100644 --- a/include/configs/edminiv2.h +++ b/include/configs/edminiv2.h @@ -221,6 +221,16 @@ #define CONFIG_SYS_RESET_ADDRESS 0x #define CONFIG_SYS_MAXARGS 16 +/* Use the HUSH parser */ +#define CONFIG_SYS_HUSH_PARSER +#define CONFIG_SYS_PROMPT_HUSH_PS2 + +/* Enable command line editing */ +#define CONFIG_CMDLINE_EDITING + +/* provide extensive help */ +#define CONFIG_SYS_LONGHELP + /* additions for new relocation code, must be added to all boards */ #define CONFIG_SYS_SDRAM_BASE0 #define CONFIG_SYS_INIT_SP_ADDR \ -- Applied to u-boot-marvell.git master branch Regards.. Prafulla . . . ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 0/4] Add USB support to orion5x and edminiv2
-Original Message- From: u-boot-boun...@lists.denx.de [mailto:u-boot- boun...@lists.denx.de] On Behalf Of Albert ARIBAUD Sent: 16 January 2012 13:39 To: u-boot@lists.denx.de Subject: [U-Boot] [PATCH 0/4] Add USB support to orion5x and edminiv2 This patch set adds USB support to the LaCie ED Mini V2 by renaming the 'kirkwood' USB driver a 'marvell' USB driver, sharing it between the orion5x SoC family and enabling it for the edminiv2 board. (this is similar to what was done with the 'mvgbe' driver in commits 9b6bcdcb to ab9164d0) Albert ARIBAUD (4): Rename ehci-kirkwood as ehci-marvell Remove kirkwood-specifics from marvell EHCI driver orion5x: add USB host ehci-marvell support edminiv2: add USB host support arch/arm/include/asm/arch-kirkwood/config.h|2 +- arch/arm/include/asm/arch-kirkwood/kirkwood.h | 12 ++ arch/arm/include/asm/arch-orion5x/orion5x.h| 12 ++ drivers/usb/host/Makefile |2 +- .../usb/host/{ehci-kirkwood.c = ehci-marvell.c} | 36 include/configs/edminiv2.h | 14 6 files changed, 62 insertions(+), 16 deletions(-) rename drivers/usb/host/{ehci-kirkwood.c = ehci-marvell.c} (73%) Applied this patch serried to u-boot-marvell.git master branch Regards.. Prafulla . . . ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] kirkwood: add support for D-Link DNS-325
-Original Message- From: Stefan Herbrechtsmeier [mailto:ste...@code.herbrechtsmeier.net] Sent: 23 December 2011 22:05 To: u-boot@lists.denx.de Cc: Stefan Herbrechtsmeier; Prafulla Wadaskar; albert.u.b...@aribaud.net Subject: [PATCH] kirkwood: add support for D-Link DNS-325 From: Stefan stefan@odin.(none) This patch adds support for D-Link DNS-325 ShareCenter NAS. Signed-off-by: Stefan Herbrechtsmeier ste...@code.herbrechtsmeier.net Cc: prafu...@marvell.com Cc: albert.u.b...@aribaud.net --- MAINTAINERS |4 + board/d-link/dns325/Makefile | 49 + board/d-link/dns325/dns325.c | 148 +++ board/d-link/dns325/dns325.h | 48 + board/d-link/dns325/kwbimage.cfg | 208 ++ boards.cfg |1 + include/configs/dns325.h | 188 ++ 7 files changed, 646 insertions(+), 0 deletions(-) create mode 100644 board/d-link/dns325/Makefile create mode 100644 board/d-link/dns325/dns325.c create mode 100644 board/d-link/dns325/dns325.h create mode 100644 board/d-link/dns325/kwbimage.cfg create mode 100644 include/configs/dns325.h Applied to u-boot-marvell.git master branch Regards.. Prafulla . . . ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] kirkwood_spi: correct access to irq_mask register
-Original Message- From: Ian Campbell [mailto:i...@hellion.org.uk] Sent: 27 January 2012 22:04 To: Prafulla Wadaskar Cc: u-boot@lists.denx.de; Albert ARIBAUD Subject: RE: [PATCH] kirkwood_spi: correct access to irq_mask register On Thu, 2012-01-12 at 08:22 -0800, Prafulla Wadaskar wrote: -Original Message- From: Ian Campbell [mailto:i...@hellion.org.uk] Sent: 12 January 2012 21:40 To: u-boot@lists.denx.de Cc: Ian Campbell; Prafulla Wadaskar; Albert ARIBAUD Subject: [PATCH] kirkwood_spi: correct access to irq_mask register Problem appears to have been present since day one but masked because alignment aborts were not enabled. ca4b55800ed7 arm, arm926ejs: always do cpu critical inits turned on alignment aborts and uncovered this latent problem. Signed-off-by: Ian Campbell i...@hellion.org.uk Acked-By: Jason Cooper u-b...@lakedaemon.net Tested-By: Holger Brunck holger.bru...@keymile.com Cc: Prafulla Wadaskar prafu...@marvell.com Cc: Albert ARIBAUD albert.u.b...@aribaud.net --- v2: Resending per patch submission guidelines. --- drivers/spi/kirkwood_spi.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/drivers/spi/kirkwood_spi.c b/drivers/spi/kirkwood_spi.c index dfe542d..db8ba8b 100644 --- a/drivers/spi/kirkwood_spi.c +++ b/drivers/spi/kirkwood_spi.c @@ -66,7 +66,7 @@ struct spi_slave *spi_setup_slave(unsigned int bus, unsigned int cs, debug(data = 0x%08x \n, data); writel(KWSPI_SMEMRDIRQ, spireg-irq_cause); - writel(KWSPI_IRQMASK, spireg-irq_mask); + writel(KWSPI_IRQMASK, spireg-irq_mask); /* program mpp registers to select SPI_CSn */ if (cs) { Hi Ian Thanks for the patch (resend :-) ) Actually it was in my pipeline. I will pull this ASAP as well as other patches in my plate. Ping? This patch doesn't seem to be in git yet. Applied to u-boot-marvell.git master branch Regards.. Prafulla . . . ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] Pull request for u-boot-marvell.git
Dear Albert Please kindly pull The following changes since commit ca849aa4b86b282f837c58a0b129460ebfad2239: David Müller (ELSOFT AG) (1): ARM: activate DISPLAY_CPUINFO for VCMA9 + SMDK2410 board are available in the git repository at: u-boot-marvell.git master branch. Albert ARIBAUD (5): edminiv2: add hush parser, cmdline editing and long help Rename ehci-kirkwood as ehci-marvell Remove kirkwood-specifics from marvell EHCI driver orion5x: add USB host ehci-marvell support edminiv2: add USB host support Holger Brunck (2): arm/km: speed up i2c access for keymile boards arm/km: checkpatch cleanup Ian Campbell (1): kirkwood_spi: correct access to irq_mask register Michael Walle (1): arm, arm-kirkwood: disable l2c before linux boot Prafulla Wadaskar (1): bugfix: all Marvell specific build fails due to undefined reference to `get_ticks' Stefan (1): kirkwood: add support for D-Link DNS-325 MAINTAINERS|4 + arch/arm/cpu/arm926ejs/armada100/timer.c | 18 ++ arch/arm/cpu/arm926ejs/cache.c |9 + arch/arm/cpu/arm926ejs/cpu.c |2 + arch/arm/cpu/arm926ejs/kirkwood/Makefile |1 + arch/arm/cpu/arm926ejs/kirkwood/cache.c| 34 arch/arm/cpu/arm926ejs/kirkwood/timer.c| 18 ++ arch/arm/cpu/arm926ejs/orion5x/timer.c | 18 ++ arch/arm/cpu/arm926ejs/pantheon/timer.c| 18 ++ arch/arm/include/asm/arch-kirkwood/config.h|2 +- arch/arm/include/asm/arch-kirkwood/kirkwood.h | 12 ++ arch/arm/include/asm/arch-orion5x/orion5x.h| 12 ++ board/d-link/dns325/Makefile | 49 + board/d-link/dns325/dns325.c | 148 ++ board/d-link/dns325/dns325.h | 48 + board/d-link/dns325/kwbimage.cfg | 208 board/keymile/km_arm/km_arm.c | 23 +-- boards.cfg |1 + drivers/spi/kirkwood_spi.c |2 +- drivers/usb/host/Makefile |2 +- .../usb/host/{ehci-kirkwood.c = ehci-marvell.c} | 36 ++-- include/configs/dns325.h | 188 ++ include/configs/edminiv2.h | 24 +++ include/configs/km/km_arm.h|2 +- 24 files changed, 849 insertions(+), 30 deletions(-) create mode 100644 arch/arm/cpu/arm926ejs/kirkwood/cache.c create mode 100644 board/d-link/dns325/Makefile create mode 100644 board/d-link/dns325/dns325.c create mode 100644 board/d-link/dns325/dns325.h create mode 100644 board/d-link/dns325/kwbimage.cfg rename drivers/usb/host/{ehci-kirkwood.c = ehci-marvell.c} (73%) create mode 100644 include/configs/dns325.h Regards.. Prafulla . . . ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH V8] mcx: support for HTKW mcx board
On 02/08/12 11:30, Stefano Babic wrote: From: Ilya Yanok ya...@emcraft.com This patch adds support for the HTKW mcx AM3517-based board. Serial, Ethernet, NAND, MMC, RTC, EHCI USB host and both NAND and MMC SPLs are supported. Signed-off-by: Ilya Yanok ya...@emcraft.com Signed-off-by: Stefano Babic sba...@denx.de CC: Tom Rini tom.r...@gmail.com Cc: Detlev Zundel d...@denx.de Acked-by: Igor Grinberg grinb...@compulab.co.il --- Changes since V7: - do not use temporary variable to return values (Igor Grinberg) - port 2 is TTL, cannot be PHY (Igor Grinberg) Changes from V6: - rebased on current u-boot-ti - applied and tested on top of EHCI Gavindraj's patches - uses ULPI framework Changes from V5 http://article.gmane.org/gmane.comp.boot-loaders.u-boot/120254 - added comments on CONFIG_SYS_TEXT_BASE and SPL_{MALLOC,BSS} Changes from V4 http://article.gmane.org/gmane.comp.boot-loaders.u-boot/120148 - board_mmc_init return value fixed - machine id added locally - CONFIG_SYS_NAND_U_BOOT_SIZE removed Changes from V3 http://article.gmane.org/gmane.comp.boot-loaders.u-boot/118530 - Comment for misc_init_r function fixed - Added check for gpio_request return value. - Removed #if defined(CONFIG_GENERIC_MMC) around board_mmc_init - CONFIG_USE_IRQ and related stuff removed from config - CONFIG_OMAP3_MICRON_DDR removed - CONFIG_SYS_MAXRAGS changed 32 - 16 - Incorrect multiline comments (/*--- ones) fixed - CONFIG_SPL_MAX_SIZE rewritten 0xB400 - (45 10) - CONFIG_SPL_NAND_WORKSPACE removed Changes from V2 http://article.gmane.org/gmane.comp.boot-loaders.u-boot/116548 - None Changes from V1 http://article.gmane.org/gmane.comp.boot-loaders.u-boot/115026 - Calls to gpio_set_value after gpio_direction_output removed - Minor style problem (tab instead of space) fixed SPL series: Changes from V1 http://article.gmane.org/gmane.comp.boot-loaders.u-boot/112892 - OMAP EHCI support enabled in config - MMC SPL support enabled in config DaVinci EMAC and HTKW mcx support series: Changes from V3 http://article.gmane.org/gmane.comp.boot-loaders.u-boot/112884 - NAND SPL support enabled in config Changes from V2 http://article.gmane.org/gmane.comp.boot-loaders.u-boot/112317 - removed dead code from board/htkw/mcx/Makefile as Mike suggested - removed EMAC reset (now done in generic cpu_eth_init()) - removed some unsuned defines from configuration header Changes from V1 http://article.gmane.org/gmane.comp.boot-loaders.u-boot/97 - various style fixes to make checkpatch (almost) happy - FSF address removed from GPL comments - CONFIG_SYS_TEXT_BASE moved to configuration header, config.mk droped - CONFIG_MACH_TYPE is used instead of setting mach type from board code - i2c_init removed from misc_init_r - cpu_eth_init removed (added to generic place by another patch) - CONTROL_PADCONF defines removed - Fixed boolean config options not to have a value - CONFIG_MUSB_* and related defines removed MAINTAINERS |4 + board/htkw/mcx/Makefile | 38 + board/htkw/mcx/mcx.c| 112 + board/htkw/mcx/mcx.h| 408 +++ boards.cfg |1 + include/configs/mcx.h | 378 +++ 6 files changed, 941 insertions(+), 0 deletions(-) create mode 100644 board/htkw/mcx/Makefile create mode 100644 board/htkw/mcx/mcx.c create mode 100644 board/htkw/mcx/mcx.h create mode 100644 include/configs/mcx.h diff --git a/MAINTAINERS b/MAINTAINERS index a8e56bb..7e52f50 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -920,6 +920,10 @@ Richard Woodruff r-woodru...@ti.com omap2420h4 ARM1136EJS +Ilya Yanok ya...@emcraft.com + + mcx ARM ARMV7 (AM35x SoC) + Syed Mohammed Khasim sm.kha...@gmail.com Sughosh Ganu urwithsugh...@gmail.com diff --git a/board/htkw/mcx/Makefile b/board/htkw/mcx/Makefile new file mode 100644 index 000..4c8db10 --- /dev/null +++ b/board/htkw/mcx/Makefile @@ -0,0 +1,38 @@ +# +# Copyright (C) 2011 Ilya Yanok, Emcraft Systems +# +# Based on ti/evm/Makefile +# +# 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. +# + +include $(TOPDIR)/config.mk + +LIB = $(obj)lib$(BOARD).o + +COBJS:=
Re: [U-Boot] [PATCH V2] OMAP3: TAM3517: update ehci interface
On 02/08/12 11:28, Stefano Babic wrote: Changed the EHCI interface using the ulpi framework. Signed-off-by: Stefano Babic sba...@denx.de CC: Tom Rini tom.r...@gmail.com Acked-by: Igor Grinberg grinb...@compulab.co.il --- This patch is based and tested on top of Govindraj's patches for EHCI omap: http://patchwork.ozlabs.org/patch/139377/ Changes since V1: - do not use temporary variable to return values (Igor Grinberg) - port 2 is TTL, cannot be PHY (Igor Grinberg) board/technexion/twister/twister.c | 22 ++ include/configs/tam3517-common.h |2 ++ 2 files changed, 24 insertions(+), 0 deletions(-) diff --git a/board/technexion/twister/twister.c b/board/technexion/twister/twister.c index 4d34d24..b927586 100644 --- a/board/technexion/twister/twister.c +++ b/board/technexion/twister/twister.c @@ -33,6 +33,10 @@ #include asm/arch/mmc_host_def.h #include i2c.h #include asm/gpio.h +#ifdef CONFIG_USB_EHCI +#include usb.h +#include asm/ehci-omap.h +#endif #include twister.h DECLARE_GLOBAL_DATA_PTR; @@ -56,6 +60,24 @@ static const u32 gpmc_XR16L2751[] = { XR16L2751_GPMC_CONFIG6, }; +#ifdef CONFIG_USB_EHCI +static struct omap_usbhs_board_data usbhs_bdata = { + .port_mode[0] = OMAP_EHCI_PORT_MODE_PHY, + .port_mode[1] = OMAP_EHCI_PORT_MODE_PHY, + .port_mode[2] = OMAP_USBHS_PORT_MODE_UNUSED, +}; + +int ehci_hcd_init(void) +{ + return omap_ehci_hcd_init(usbhs_bdata); +} + +int ehci_hcd_stop(void) +{ + return omap_ehci_hcd_stop(); +} +#endif + int board_init(void) { gpmc_init(); /* in SRAM or SDRAM, finish GPMC */ diff --git a/include/configs/tam3517-common.h b/include/configs/tam3517-common.h index 817d468..13eeadb 100644 --- a/include/configs/tam3517-common.h +++ b/include/configs/tam3517-common.h @@ -100,6 +100,8 @@ #define CONFIG_OMAP3_GPIO_5 #define CONFIG_USB_EHCI #define CONFIG_USB_EHCI_OMAP +#define CONFIG_USB_ULPI +#define CONFIG_USB_ULPI_VIEWPORT_OMAP #define CONFIG_OMAP_EHCI_PHY1_RESET_GPIO 25 #define CONFIG_SYS_USB_EHCI_MAX_ROOT_PORTS 3 #define CONFIG_USB_STORAGE -- Regards, Igor. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH V5] ARM: omap3: Added Teejet mt_ventoux
On 02/08/12 11:29, Stefano Babic wrote: The mt_ventoux board is a custom board using the Technexion TAM3517 module. The patch fixes also the mtdparts variable in the TAM3517 common configuration file. Signed-off-by: Stefano Babic sba...@denx.de CC: Ilya Yanok ya...@emcraft.com CC: Igor Grinberg grinb...@compulab.co.il CC: Tom Rini tom.r...@gmail.com Cc: Detlev Zundel d...@denx.de Acked-by: Igor Grinberg grinb...@compulab.co.il --- Changes since V4: - applied comments already sent for the twister board Changes since V3: - rebased on current u-boot-ti - rebased on EHCI patches and add EHCI support - fix mtdparts default value in common file Changes since V2: - CONFIG_OMAP_HSMMC requires CONFIG_GENERIC_MMC, do not check both (T. Rini) Changes since V1: - CONFIG_FPGA must be enabled (S. Babic) - reworking fpga functions (Igor Grinberg) - drop clean / distclean from Makefile (Igor Grinberg) - TAB / Spaces issue (Igor Grinberg) MAINTAINERS |1 + board/teejet/mt_ventoux/Makefile | 38 +++ board/teejet/mt_ventoux/mt_ventoux.c | 233 ++ board/teejet/mt_ventoux/mt_ventoux.h | 429 ++ boards.cfg |1 + include/configs/mt_ventoux.h | 58 + include/configs/tam3517-common.h |4 +- 7 files changed, 762 insertions(+), 2 deletions(-) create mode 100644 board/teejet/mt_ventoux/Makefile create mode 100644 board/teejet/mt_ventoux/mt_ventoux.c create mode 100644 board/teejet/mt_ventoux/mt_ventoux.h create mode 100644 include/configs/mt_ventoux.h diff --git a/MAINTAINERS b/MAINTAINERS index 0a3b39d..a8e56bb 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -574,6 +574,7 @@ Stefano Babic sba...@denx.de ea20davinci flea3 i.MX35 + mt_ventoux omap3 mx35pdk i.MX35 mx51evk i.MX51 polaris xscale/pxa diff --git a/board/teejet/mt_ventoux/Makefile b/board/teejet/mt_ventoux/Makefile new file mode 100644 index 000..4c8db10 --- /dev/null +++ b/board/teejet/mt_ventoux/Makefile @@ -0,0 +1,38 @@ +# +# Copyright (C) 2011 Ilya Yanok, Emcraft Systems +# +# Based on ti/evm/Makefile +# +# 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. +# + +include $(TOPDIR)/config.mk + +LIB = $(obj)lib$(BOARD).o + +COBJS:= $(BOARD).o + +SRCS := $(COBJS:.o=.c) +OBJS := $(addprefix $(obj),$(COBJS)) + +$(LIB): $(obj).depend $(OBJS) + $(call cmd_link_o_target, $(OBJS)) + +# + +# defines $(obj).depend target +include $(SRCTREE)/rules.mk + +sinclude $(obj).depend diff --git a/board/teejet/mt_ventoux/mt_ventoux.c b/board/teejet/mt_ventoux/mt_ventoux.c new file mode 100644 index 000..c5eb42c --- /dev/null +++ b/board/teejet/mt_ventoux/mt_ventoux.c @@ -0,0 +1,233 @@ +/* + * Copyright (C) 2011 + * Stefano Babic, DENX Software Engineering, sba...@denx.de. + * + * Copyright (C) 2009 TechNexion Ltd. + * + * 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. + */ + +#include common.h +#include netdev.h +#include fpga.h +#include asm/io.h +#include asm/arch/mem.h +#include asm/arch/mux.h +#include asm/arch/sys_proto.h +#include asm/omap_gpio.h +#include asm/arch/mmc_host_def.h +#include i2c.h +#include spartan3.h +#include asm/gpio.h +#ifdef CONFIG_USB_EHCI +#include usb.h +#include asm/ehci-omap.h +#endif +#include mt_ventoux.h + +DECLARE_GLOBAL_DATA_PTR; + +#ifndef CONFIG_FPGA +#error The Teejet mt_ventoux must have CONFIG_FPGA enabled +#endif + +#define FPGA_RESET 62 +#define FPGA_PROG116
Re: [U-Boot] MPC8313 DDR2 configuration
Hi Paul, Thanks for the reply. I am very new to the 32bit world. Currently I am using the files for the MPC8313ERDB as a basis. I have altered srdam.c and my version of MPC8313ERDB.h to reflect my new DDR2 layout. I have 4 ICs, 2 on each CS. The settings you mentioned below are.. #define CONFIG_SYS_BR1_PRELIM CONFIG_SYS_NAND_BR_PRELIM #define CONFIG_SYS_OR1_PRELIM CONFIG_SYS_NAND_OR_PRELIM .. in my version of MPC8313ERDB.h file. I believe these are referring to the eLocalBus base addresses for Local Bus Chip Selects? My DDR2 ram is using the MPC8313 DDR memory controller and I have added. #define CONFIG_SYS_DDR_CS1_CONFIG (CSCONFIG_EN \ | CSCONFIG_ODT_RD_ONLY_CURRENT \ | CSCONFIG_ODT_WR_ONLY_CURRENT \ | CSCONFIG_BANK_BIT_3 \ | CSCONFIG_ROW_BIT_14 \ | CSCONFIG_COL_BIT_10) /* 0x80114202 */ to my version of the MPC8313ERDB.h file. And, I have altered sdram.c to look like this... /* Local address Window for DDR CS0 */ im-sysconf.ddrlaw[0].bar = CONFIG_SYS_DDR_SDRAM_BASE 0xf000; im-sysconf.ddrlaw[0].ar = LBLAWAR_EN | (msize_log2 - 1); /* Local address Window for DDR CS1 */ im-sysconf.ddrlaw[1].bar = (CONFIG_SYS_DDR_SDRAM_BASE + msize) 0xf000; im-sysconf.ddrlaw[1].ar = LBLAWAR_EN | (msize_log2 - 1); im-sysconf.ddrcdr = CONFIG_SYS_DDRCDR_VALUE; /* * Erratum DDR3 requires a 50ms delay after clearing DDRCDR[DDR_cfg], * or the DDR2 controller may fail to initialize correctly. */ __udelay(5); #if ((CONFIG_SYS_DDR_SDRAM_BASE 0x00FF) != 0) #warning Chip select bounds is only configurable in 16MB increments #endif /* Set CS bounds for CS0 */ im-ddr.csbnds[0].csbnds = ((CONFIG_SYS_DDR_SDRAM_BASE CSBNDS_SA_SHIFT) CSBNDS_SA) | (((CONFIG_SYS_DDR_SDRAM_BASE + msize - 1) CSBNDS_EA_SHIFT) CSBNDS_EA); /* Set CS bounds for CS1 */ im-ddr.csbnds[1].csbnds = (((CONFIG_SYS_DDR_SDRAM_BASE + msize) CSBNDS_SA_SHIFT) CSBNDS_SA) | (((CONFIG_SYS_DDR_SDRAM_BASE + (2*msize) - 1) CSBNDS_EA_SHIFT) CSBNDS_EA); /* Enable bank 0. */ im-ddr.cs_config[0] = CONFIG_SYS_DDR_CS0_CONFIG; /* Enable bank 1. */ im-ddr.cs_config[1] = CONFIG_SYS_DDR_CS1_CONFIG; My hardware has not been delivered yet so I can't test the modifications! So I don't know if they might work?! Best Regards, Scott -Original Message- From: paul.gortma...@gmail.com [mailto:paul.gortma...@gmail.com] On Behalf Of Paul Gortmaker Sent: 08 February 2012 04:46 To: Scott Larson Cc: u-boot@lists.denx.de Subject: Re: [U-Boot] MPC8313 DDR2 configuration On Tue, Feb 7, 2012 at 11:52 AM, Scott Larson slar...@a2etech.com wrote: Hi, Looking for help on DDR2 configuration in u-boot. I have the MPC8313ERDB from Freescale. It has 128Mbytes of DDR2 ram. The existing 128MByte that uses only CS0. I have a new board design to bring up. The timing parameters are all ok but I need some guidance on changing the settings to suit my memory configuration. My board has 512Mbytes on CS0 and 512Mbytes on CS1. Changes need to be made to files MPC8313ERDB.h and sdram.c SODIMM with SPD? Autoconfig with CONFIG_SPD_EEPROM is nice compared to hard coding values, if you can use it. I'm pretty sure it works fine on sbc8349 board. I have made all the row and column size and block address pin settings ok. I have set DDR size to 512Mbytes (per Chip Select). I need some guidance on the setting for CS1 bank of ram. Have you created the CONFIG_SYS_BR1_PRELIM and the CONFIG_SYS_OR1_PRELIM defines in your board header? If you copied these from a reference platform, they may still be populated with settings appropriate for flash up at the top of memory instead of DDR2 settings for your 2nd bank... P. thanks Scott ___ 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] adding a new command to help menu
Hello! I have created a new command in u-boot, and I can see it using help name_of_the_command, I can type and call it, everything is working! But when I type help, it isn't in the command list. How do I put it there? Thanks Érico V. Porto ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] adding a new command to help menu
Found it. A clean and rebuild all solved. Érico V. Porto On Wed, Feb 8, 2012 at 8:45 AM, Érico Porto ericoporto2...@gmail.comwrote: Hello! I have created a new command in u-boot, and I can see it using help name_of_the_command, I can type and call it, everything is working! But when I type help, it isn't in the command list. How do I put it there? Thanks Érico V. Porto ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v2] davinci: cleanup davinci_sync_env_enetaddr() fucntion
check for the return status for eth_getenv_enetaddr_by_index() and eth_setenv_enetaddr() functions and print appropriate message on failure. Also convert debug message to printf(). Signed-off-by: Manjunath Hadli manjunath.ha...@ti.com Cc: Tom Rini tr...@ti.com Cc: Mike Frysinger vap...@gentoo.org Cc: Wolfgang Denk w...@denx.de --- Changes for v2: Removed additional check of comparing ethernet address is all zeros, As the core code already calls is_valid_ether_addr() and one of the checks in there is for all zeros. arch/arm/cpu/arm926ejs/davinci/misc.c | 11 +++ 1 files changed, 7 insertions(+), 4 deletions(-) diff --git a/arch/arm/cpu/arm926ejs/davinci/misc.c b/arch/arm/cpu/arm926ejs/davinci/misc.c index 5f510b6..48a635c 100644 --- a/arch/arm/cpu/arm926ejs/davinci/misc.c +++ b/arch/arm/cpu/arm926ejs/davinci/misc.c @@ -101,18 +101,21 @@ void davinci_emac_mii_mode_sel(int mode_sel) void davinci_sync_env_enetaddr(uint8_t *rom_enetaddr) { uint8_t env_enetaddr[6]; + int ret; - eth_getenv_enetaddr_by_index(eth, 0, env_enetaddr); - if (!memcmp(env_enetaddr, \0\0\0\0\0\0, 6)) { + ret = eth_getenv_enetaddr_by_index(eth, 0, env_enetaddr); + if (ret) { /* * There is no MAC address in the environment, so we * initialize it from the value in the EEPROM. */ - debug(### Setting environment from EEPROM MAC address = + printf(### Setting environment from EEPROM MAC address = \%pM\\n, env_enetaddr); - eth_setenv_enetaddr(ethaddr, rom_enetaddr); + ret = !eth_setenv_enetaddr(ethaddr, rom_enetaddr); } + if (!ret) + printf(Failed to set mac address from EEPROM\n); } #endif /* CONFIG_DRIVER_TI_EMAC */ -- 1.6.2.4 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH V6 - Part 2 - 3/3] mx6q: mx6qsabrelite: Add ECSPI support to the Sabrelite platform
On 31/01/2012 18:52, Eric Nelson wrote: Signed-off-by: Eric Nelson eric.nel...@boundarydevices.com Acked-by: Dirk Behme dirk.be...@de.bosch.com Acked-by: Stefano Babic sba...@denx.de --- Applied to u-boot-imx, thanks. Best regards, Stefano Babic -- = DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: off...@denx.de = ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH V6 - Part 5 - 1/1] mx6q: mx6qsabrelite: Conditionally define macros for environment in serial flash
On 31/01/2012 18:52, Eric Nelson wrote: The default settings store the persistent environment on SD card and not serial flash (SPI NOR). To use SPI NOR to save the environment instead of SD card, edit include/configs/mx6qsabrelite.h and - undefine CONFIG_ENV_IS_IN_MMC - define CONFIG_ENV_IS_IN_SPI_FLASH The SPI driver can take as chip select the controller's chip selects as well as an external GPIO. The LSB byte has the value of the internal chip select, the highest (thought as 16-bit value) contains the GPIO number. The GPIO used on Sabre Lite is GP3:19 == 83. Signed-off-by: Eric Nelson eric.nel...@boundarydevices.com --- Applied to u-boot-imx, thanks. Best regards, Stefano Babic -- = DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: off...@denx.de = ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH V6 - Part 4 - 1/1] mx6q: mx6qsabrelite: Provide default serial flash bus and chip-select
On 31/01/2012 18:52, Eric Nelson wrote: Signed-off-by: Eric Nelson eric.nel...@boundarydevices.com Acked-by: Dirk Behme dirk.be...@de.bosch.com Acked-by: Stefano Babic sba...@denx.de --- Applied to u-boot-imx, thanks. Best regards, Stefano Babic -- = DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: off...@denx.de = ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH V6 - Part 1 - 1/1] mx6q: define GPIO macros for translating between ordinals and port:index
On 31/01/2012 18:52, Eric Nelson wrote: The interface to the mxc_gpio driver uses integer (ordinal) values to refer to all GPIOs on the i.MX processors. The registers themselves and much of the i.MX documentation are banked in groups of 32, and these macros allow the use of the port:index numbering for clarity. GPIO_NUMBER() converts to ordinal value from port:index GPIO_PORT() returns the port of an ordinal value GPIO_INDEX() returns the index or offset of the ordinal. Discussion on the mailing list at http://lists.denx.de/pipermail/u-boot/2012-January/116927.html Signed-off-by: Eric Nelson eric.nel...@boundarydevices.com --- Applied to u-boot-imx, thanks. Best regards, Stefano Babic -- = DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: off...@denx.de = ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH V6 - Part 2 - 1/3] mxc_spi: move machine specifics into CPU headers
On 31/01/2012 18:52, Eric Nelson wrote: Move (E)CSPI register declarations into the imx-regs.h files for each supported CPU Introduce two new macros to control conditional setup MXC_CSPI - Used for processors with the Configurable Serial Peripheral Interface (MX3x) MXC_ECSPI - For processors with Enhanced Configurable... (MX5x, MX6x) Signed-off-by: Eric Nelson eric.nel...@boundarydevices.com Acked-by: Dirk Behme dirk.be...@de.bosch.com Acked-by: Stefano Babic sba...@denx.de --- Applied to u-boot-imx, thanks. Best regards, Stefano Babic -- = DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: off...@denx.de = ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH V6 - Part 2 - 2/3] mx6q: Add support for ECSPI through mxc_spi driver
On 31/01/2012 18:52, Eric Nelson wrote: Signed-off-by: Eric Nelson eric.nel...@boundarydevices.com Acked-by: Dirk Behme dirk.be...@de.bosch.com Acked-by: Stefano Babic sba...@denx.de --- Applied to u-boot-imx, thanks. Best regards, Stefano Babic -- = DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: off...@denx.de = ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v3] common/image.c: align usage of fdt_high with initrd_high
On 10/01/2012 08:54, Shawn Guo wrote: The commit message of a28afca (Add uboot fdt_high enviroment variable) states that fdt_high behaves similarly to the existing initrd_high. But fdt_high actually has an outstanding difference from initrd_high. The former specifies the start address, while the later specifies the end address. As fdt_high and initrd_high will likely be used together, it'd be nice to have them behave same. The patch changes the behavior of fdt_high to have it aligned with initrd_high. The document of fdt_high in README is updated with an example to demonstrate the usage of this environment variable. Signed-off-by: Shawn Guo shawn@linaro.org --- Hi, this patch seems to be required to test device tree on i.MX platform. Simon, I have seen several patches from you regarding fdt - maybe you can add your ACK or NACK to this patch. Stefano -- = DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: off...@denx.de = ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] EXYNOS: SMDK5250: Add support for DDR3 memory.
SMDK5250 development boards have different memory variants like DDR3, LPDDR2 and LPDDR3. This patch adds supports for DDR3. The DDR3 is configured for 667Mhz and is being enabled by default. This patch is based on Chander Kashyap's v9 patchset. (http://comments.gmane.org/gmane.comp.boot-loaders.u-boot/124396) Signed-off-by: Hatim Ali hatim...@samsung.com diff --git a/board/samsung/smdk5250/Makefile b/board/samsung/smdk5250/Makefile index 226db1f..50a17cb 100644 --- a/board/samsung/smdk5250/Makefile +++ b/board/samsung/smdk5250/Makefile @@ -27,7 +27,11 @@ LIB = $(obj)lib$(BOARD).o SOBJS := lowlevel_init.o COBJS := clock_init.o +ifdef CONFIG_DDR3 +COBJS += dmc_init_ddr3.o +else COBJS += dmc_init.o +endif COBJS += tzpc_init.o ifndef CONFIG_SPL_BUILD diff --git a/board/samsung/smdk5250/dmc_init.c b/board/samsung/smdk5250/dmc_init.c index 7881074..160d86e 100644 --- a/board/samsung/smdk5250/dmc_init.c +++ b/board/samsung/smdk5250/dmc_init.c @@ -248,7 +248,7 @@ static void config_rdlvl(struct exynos5_dmc *dmc, * ctrl_gateduradj, rdlvl_pass_adj * rdlvl_rddataPadj */ - val = SET_RDLVL_RDDATAPADJ; + val = SET_RDLVL_RDDATA_ADJ; writel(val, phy0_ctrl-phy_con1); writel(val, phy1_ctrl-phy_con1); @@ -361,8 +361,8 @@ void mem_ctrl_init() config_zq(phy0_ctrl, phy1_ctrl); /* Operation Mode : LPDDR2 */ - val = PHY_CON0_RESET_VAL; - SET_CTRL_DDR_MODE(val, DDR_MODE_LPDDR2); + val = CTRL_DDR_MODE(LPDDR2); + val |= BYTE_RDLVL_EN; writel(val, phy0_ctrl-phy_con0); writel(val, phy1_ctrl-phy_con0); diff --git a/board/samsung/smdk5250/dmc_init_ddr3.c b/board/samsung/smdk5250/dmc_init_ddr3.c new file mode 100644 index 000..da42dd2 --- /dev/null +++ b/board/samsung/smdk5250/dmc_init_ddr3.c @@ -0,0 +1,464 @@ +/* + * DDR3 Memory setup for SMDK5250 board based on EXYNOS5 + * + * Copyright (C) 2012 Samsung Electronics + * + * 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 config.h +#include asm/io.h +#include asm/arch/dmc.h +#include asm/arch/clock.h +#include asm/arch/cpu.h +#include setup.h + +/* APLL : 1GHz */ +/* MCLK_CDREX: MCLK_CDREX_677*/ +/* LPDDR support: DDR3 */ + +static void dmc_directcmd_PALL(struct exynos5_dmc *dmc) +{ + unsigned long channel, chip, mask = 0, val; + + /* Sending PALL cmd on + * Channel0-Chip0 + * Channel0-Chip1 + * Channel1-Chip0 + * Channel1-Chip1 + */ + for (channel = 0; channel CONFIG_DMC_CHANNELS; channel++) { + SET_CMD_CHANNEL(mask, channel); + for (chip = 0; chip CONFIG_CHIPS_PER_CHANNEL; chip++) { + SET_CMD_CHIP(mask, chip); + val = DIRECT_CMD_PALL | mask; + writel(val, dmc-directcmd); + sdelay(0x1); + } + } + +} + + +static void dmc_directcmd(struct exynos5_dmc *dmc) +{ + unsigned long channel, mask = 0, val; + + /* Selecting Channel0-Chip0 */ + SET_CMD_CHANNEL(mask, 0); + SET_CMD_CHIP(mask, 0); + + /* Sending NOP cmd on Channel0-Chip0 */ + val = DIRECT_CMD_NOP | mask; + writel(val, dmc-directcmd); + sdelay(0x1); + + dmc_directcmd_PALL(dmc); + + /* Selecting Chip 0*/ + mask = 0; + SET_CMD_CHIP(mask, 0); + for (channel = 0; channel CONFIG_DMC_CHANNELS; channel++) { + /* Selecting Channel */ + SET_CMD_CHANNEL(mask, channel); + + if (channel == 1) { + /* Sending NOP cmd on Channel1-Chip0 */ + val = DIRECT_CMD_NOP | mask; + writel(val, dmc-directcmd); + sdelay(0x1); + } + /* Sending MRS/EMRS command and ZQINIT command + * on Channel0-Chip0 + */ + val = DIRECT_CMD_MRS1 | mask; + writel(val, dmc-directcmd); + sdelay(0x1); + + val = DIRECT_CMD_MRS2 | mask; + writel(val, dmc-directcmd); + sdelay(0x1); + + val = DIRECT_CMD_MRS3 | mask; +
[U-Boot] [PATCH 1/5] mx53loco: Use gpio_direction_input prior to gpio_get_value
Use gpio_direction_input prior to gpio_get_value. Cc: Jason Liu r64...@freescale.com Signed-off-by: Fabio Estevam fabio.este...@freescale.com --- board/freescale/mx53loco/mx53loco.c |2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/board/freescale/mx53loco/mx53loco.c b/board/freescale/mx53loco/mx53loco.c index e6345e7..c2c26f0 100644 --- a/board/freescale/mx53loco/mx53loco.c +++ b/board/freescale/mx53loco/mx53loco.c @@ -153,7 +153,9 @@ int board_mmc_getcd(struct mmc *mmc) int ret; mxc_request_iomux(MX53_PIN_EIM_DA11, IOMUX_CONFIG_ALT1); + gpio_direction_input(75); mxc_request_iomux(MX53_PIN_EIM_DA13, IOMUX_CONFIG_ALT1); + gpio_direction_input(77); if (cfg-esdhc_base == MMC_SDHC1_BASE_ADDR) ret = !gpio_get_value(77); /* GPIO3_13 */ -- 1.7.1 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 2/5] mx53ard: Use gpio_direction_input prior to gpio_get_value
Use gpio_direction_input prior to gpio_get_value. Signed-off-by: Fabio Estevam fabio.este...@freescale.com --- board/freescale/mx53ard/mx53ard.c |2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/board/freescale/mx53ard/mx53ard.c b/board/freescale/mx53ard/mx53ard.c index 40b5c19..e90e39e 100644 --- a/board/freescale/mx53ard/mx53ard.c +++ b/board/freescale/mx53ard/mx53ard.c @@ -89,7 +89,9 @@ int board_mmc_getcd(struct mmc *mmc) int ret; mxc_request_iomux(MX53_PIN_GPIO_1, IOMUX_CONFIG_ALT1); + gpio_direction_input(1); mxc_request_iomux(MX53_PIN_GPIO_4, IOMUX_CONFIG_ALT1); + gpio_direction_input(4); if (cfg-esdhc_base == MMC_SDHC1_BASE_ADDR) ret = !gpio_get_value(1); /* GPIO1_1 */ -- 1.7.1 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 3/5] mx53evk: Use gpio_direction_input prior to gpio_get_value
Use gpio_direction_input prior to gpio_get_value. Cc: Jason Liu r64...@freescale.com Signed-off-by: Fabio Estevam fabio.este...@freescale.com --- board/freescale/mx53evk/mx53evk.c |2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/board/freescale/mx53evk/mx53evk.c b/board/freescale/mx53evk/mx53evk.c index e976ae1..8a6e31d 100644 --- a/board/freescale/mx53evk/mx53evk.c +++ b/board/freescale/mx53evk/mx53evk.c @@ -214,7 +214,9 @@ int board_mmc_getcd(struct mmc *mmc) int ret; mxc_request_iomux(MX53_PIN_EIM_DA11, IOMUX_CONFIG_ALT1); + gpio_direction_input(75); mxc_request_iomux(MX53_PIN_EIM_DA13, IOMUX_CONFIG_ALT1); + gpio_direction_input(77); if (cfg-esdhc_base == MMC_SDHC1_BASE_ADDR) ret = !gpio_get_value(77); /* GPIO3_13 */ -- 1.7.1 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 4/5] mx53smd: Use gpio_direction_input prior to gpio_get_value
Use gpio_direction_input prior to gpio_get_value. Signed-off-by: Fabio Estevam fabio.este...@freescale.com --- board/freescale/mx53smd/mx53smd.c |1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/board/freescale/mx53smd/mx53smd.c b/board/freescale/mx53smd/mx53smd.c index e273192..c237980 100644 --- a/board/freescale/mx53smd/mx53smd.c +++ b/board/freescale/mx53smd/mx53smd.c @@ -135,6 +135,7 @@ struct fsl_esdhc_cfg esdhc_cfg[1] = { int board_mmc_getcd(struct mmc *mmc) { mxc_request_iomux(MX53_PIN_EIM_DA13, IOMUX_CONFIG_ALT1); + gpio_direction_input(77); return !gpio_get_value(77); /* GPIO3_13 */ } -- 1.7.1 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 5/5] mx51evk: Use gpio_direction_input prior to gpio_get_value
Use gpio_direction_input prior to gpio_get_value. Signed-off-by: Fabio Estevam fabio.este...@freescale.com --- board/freescale/mx51evk/mx51evk.c |2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/board/freescale/mx51evk/mx51evk.c b/board/freescale/mx51evk/mx51evk.c index 8d1f6a3..b505a71 100644 --- a/board/freescale/mx51evk/mx51evk.c +++ b/board/freescale/mx51evk/mx51evk.c @@ -327,7 +327,9 @@ int board_mmc_getcd(struct mmc *mmc) int ret; mxc_request_iomux(MX51_PIN_GPIO1_0, IOMUX_CONFIG_ALT1); + gpio_direction_input(0); mxc_request_iomux(MX51_PIN_GPIO1_6, IOMUX_CONFIG_ALT0); + gpio_direction_input(6); if (cfg-esdhc_base == MMC_SDHC1_BASE_ADDR) ret = !gpio_get_value(0); -- 1.7.1 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 1/5] mx53loco: Use gpio_direction_input prior to gpio_get_value
On 08/02/2012 13:34, Fabio Estevam wrote: Use gpio_direction_input prior to gpio_get_value. Cc: Jason Liu r64...@freescale.com Signed-off-by: Fabio Estevam fabio.este...@freescale.com --- board/freescale/mx53loco/mx53loco.c |2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) Hi Fabio, diff --git a/board/freescale/mx53loco/mx53loco.c b/board/freescale/mx53loco/mx53loco.c index e6345e7..c2c26f0 100644 --- a/board/freescale/mx53loco/mx53loco.c +++ b/board/freescale/mx53loco/mx53loco.c @@ -153,7 +153,9 @@ int board_mmc_getcd(struct mmc *mmc) int ret; mxc_request_iomux(MX53_PIN_EIM_DA11, IOMUX_CONFIG_ALT1); + gpio_direction_input(75); mxc_request_iomux(MX53_PIN_EIM_DA13, IOMUX_CONFIG_ALT1); + gpio_direction_input(77); The patch makes clear that the GPIO is configured as input. However, after a reset all GPIOs in the MX53 are configured as input. Do we need such changes ? Stefano -- = DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: off...@denx.de = ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 1/5] mx53loco: Use gpio_direction_input prior to gpio_get_value
On Wed, Feb 8, 2012 at 11:08 AM, Stefano Babic sba...@denx.de wrote: The patch makes clear that the GPIO is configured as input. However, after a reset all GPIOs in the MX53 are configured as input. Do we need such changes ? I would prefer to explicitly set gpio_direction_input rather than depending on the reset value and I think it aligns with the GPIO API mechanism used in the kernel as well. Regards, Fabio Estevam ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 1/5] mx53loco: Use gpio_direction_input prior to gpio_get_value
On 08/02/2012 14:14, Fabio Estevam wrote: On Wed, Feb 8, 2012 at 11:08 AM, Stefano Babic sba...@denx.de wrote: The patch makes clear that the GPIO is configured as input. However, after a reset all GPIOs in the MX53 are configured as input. Do we need such changes ? I would prefer to explicitly set gpio_direction_input rather than depending on the reset value and I think it aligns with the GPIO API mechanism used in the kernel as well. Ok, good reasons. Acked-by: Stefano Babic sba...@denx.de Best regards, Stefano Babic -- = DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: off...@denx.de = ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] Skipping relocation RAM to RAM, esp. on i.MX6?
Dear Aneesh V, In message 4f3219a8.7090...@ti.com you wrote: As for ignoring comments, I think you are culpable of that more than me in this specific instance:) (of course I know you are busy person, but still..). For instance, my arguments in the previous round [1] never got an answer from you. [1] http://article.gmane.org/gmane.comp.boot-loaders.u-boot/96371 I don't see any question from you that has not been answered? You suggest to do things in a way that introduces a number of often discussed disadvantages. And you claim that for you this would be good enough. What should I comment on this? For the record: - You continiue to talk about relocation, but you mean something different (a memory copy). I am not sure if you really understand the difference. - You claim omitting this copy operation would be important to optimize boot times, but you cannot provide any real numbers that support such a claim: * You do not know how much time exactly is needed for this copy operation, so you don't know how much you can potentially safe, and if this would result in any perceptible imprvement of the boot time. * You did not investigate how long other parts of the boot process are talking, so you don't really know where the hot spot where you should focus your optimization efforts. * You did not investigate how the timing behaviour changes if you enable both instruction and data cache in the SPL. In my experience this would be a way more rewarding target for optimization efforts than omitting a little memcpy(). 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 What the gods would destroy they first submit to an IEEE standards committee. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] arm: Add option to disable code relocation
Dear Dirk Behme, In message 4f321b8c.3090...@de.bosch.com you wrote: - They are not actually talking about relocation at all. - They don't base their accessment on any real, measured timings, or otherwise they would start optimizing completely different areas of the code. Maybe they are looking at all areas (including the different ones) of possible optimizations. And this thread is only one topic (note 1). If you look at Aneesh's previous postings you will see that no systematic attempts for optimization have been made. This is a classical case of premature optimization. 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 What is research but a blind date with knowledge? -- Will Harvey ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] i.MX5/6 U-Boot: Cache enabling
On 04.02.2012 11:18, Marek Vasut wrote: Let's discuss how to enable the i.MX5/6 caches in U-Boot: On 03.02.2012 12:00, Stefano Babic wrote: On 03/02/2012 11:18, Dirk Behme wrote: ... As your concerns are surely related to speed up the boot process, IMHO we can focus efforts to add cache support for MX5 / MX6. Ok, sounds good. Any idea what has to be done for this? Or what would be the steps for this? As armv7 architecture, the MX can profit of the work already done for other SOCs. Functions for enabling / disabling / invalidate caches are already provided, in arch/arm/lib and arch/arm/cpu/armv7/cache_v7.c. So at least for MX5/MX6. But we should change MXC drivers to be cache-aware. At least the FEC driver and MMC driver are known to not work when dcache is on. Marek, Troy, Fabio: What do you think is needed to make the i.MX5/6 FEC driver cache-aware? I already have a partly finished implementation of FEC ethernet with cache support somewhere on my drive. Do you like to share this? Many thanks and best regards Dirk ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] Skipping relocation RAM to RAM, esp. on i.MX6?
Dear Wolfgang, On Wednesday 08 February 2012 07:28 PM, Wolfgang Denk wrote: Dear Aneesh V, In message4f3219a8.7090...@ti.com you wrote: As for ignoring comments, I think you are culpable of that more than me in this specific instance:) (of course I know you are busy person, but still..). For instance, my arguments in the previous round [1] never got an answer from you. [1] http://article.gmane.org/gmane.comp.boot-loaders.u-boot/96371 I don't see any question from you that has not been answered? You suggest to do things in a way that introduces a number of often discussed disadvantages. And you claim that for you this would be good enough. What should I comment on this? For the record: - You continiue to talk about relocation, but you mean something different (a memory copy). I am not sure if you really understand the difference. I do understand what the ELF relocation does. - You claim omitting this copy operation would be important to optimize boot times, but you cannot provide any real numbers that support such a claim: * You do not know how much time exactly is needed for this copy operation, so you don't know how much you can potentially safe, and if this would result in any perceptible imprvement of the boot time. I had provided data for OMAP4 and agreed with you that from the boot time point of view it doesn't make sense to disable relocation [1]. But since then I changed my mind due to some other factors: 1. Difficulty in debugging. I use JTAG debuggers. The workarounds available are still painful and not many people know about it. 2. On FPGA platform, it was adding a considerable delay (I don't have the exact number, but that will be in minutes). The u-boot was already scaled down and was doing minimal stuff, but this one could not be removed easily. That's when I created that patch. 3. Un-necessary complexity without any benefit for our platform. I nearly get exhausted explaining to new u-boot users how it all works and nearly always gets confronted with the question why do we need it? In our platforms U-Boot starts from SDRAM and we do not need any of the flexibilities relocation may provide. * You did not investigate how long other parts of the boot process are talking, so you don't really know where the hot spot where you should focus your optimization efforts. * You did not investigate how the timing behaviour changes if you enable both instruction and data cache in the SPL. In my experience this would be a way more rewarding target for optimization efforts than omitting a little memcpy(). We have caches enabled. But anyway, these two points are irrelevant because my argument is not from the point of view of time. At the end of the day I think we are making U-Boot way too complex for a bootloader and I think relocation is one of the factors. [1] http://article.gmane.org/gmane.comp.boot-loaders.u-boot/88288 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] mcx: Enable command line editing
Signed-off-by: Detlev Zundel d...@denx.de CC: Stefano Babic sba...@denx.de --- include/configs/mcx.h |2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/include/configs/mcx.h b/include/configs/mcx.h index 0940e86..fcc32d6 100644 --- a/include/configs/mcx.h +++ b/include/configs/mcx.h @@ -219,6 +219,8 @@ else run nandboot; fi #define CONFIG_AUTO_COMPLETE +#define CONFIG_CMDLINE_EDITING + /* * Miscellaneous configurable options */ -- 1.7.7.6 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] beagle: enable DVI_PUP
From: Peter Meerwald p.meerw...@bct-electronic.com this patch addresses the issue that there is no DVI output on beagleboard-xm in u-boot; the TFP410 is not powered on, DVI_PUP needs to be set high this is done differently on beagleboard-xm rev. B/C versus earlier boards: beagleboard-xm B/C need to set GPIO2 of the TWL4030 earlier boards need to set GPIO170 note that the change occured somewhere inbetween beagleboard-xm rev. A2 and A3 note that beagleboard-xm rev. A and rev. B cannot be distinguished using get_board_revision(), REVISION_XM_A/REVISION_XM_B is bogus due to this glitch, the patch cannot work correctly on some beagleboard-xm rev A/B boards tested on beagleboard-xm rev. C (you should see orange color on a monitor) note that the framebuffer is NOT yet set up, this could be done along the lines below (for 800x480 resolution and RGB24) before calling omap3_dss_enable() static void configure_frame_buffer() { writel(0x8050, (uint *) 0x48050480); // address writel(0x8050, (uint *) 0x48050484); writel(0x01df031f, (uint *) 0x4805048c); // size writel(0x0091, (uint *) 0x480504a0); // RGB24 } Signed-off-by: Peter Meerwald p.meerw...@bct-electronic.com --- board/ti/beagle/beagle.c | 34 ++ 1 files changed, 34 insertions(+), 0 deletions(-) diff --git a/board/ti/beagle/beagle.c b/board/ti/beagle/beagle.c index 5c04b34..79f7f44 100644 --- a/board/ti/beagle/beagle.c +++ b/board/ti/beagle/beagle.c @@ -249,6 +249,38 @@ void beagle_display_init(void) } /* + * Enable DVI power + */ +static void beagle_dvi_pup() { + uchar val; + + switch (get_board_revision()) { + case REVISION_AXBX: + case REVISION_CX: + case REVISION_C4: + case REVISION_XM_A: + gpio_request(170, ); + gpio_direction_output(170, 0); + gpio_set_value(170, 1); + break; + case REVISION_XM_B: + case REVISION_XM_C: + default: + #define GPIODATADIR1 (TWL4030_BASEADD_GPIO+3) + #define GPIODATAOUT1 (TWL4030_BASEADD_GPIO+6) + + i2c_read(TWL4030_CHIP_GPIO, GPIODATADIR1, 1, val, 1); + val |= 4; + i2c_write(TWL4030_CHIP_GPIO, GPIODATADIR1, 1, val, 1); + + i2c_read(TWL4030_CHIP_GPIO, GPIODATAOUT1, 1, val, 1); + val |= 4; + i2c_write(TWL4030_CHIP_GPIO, GPIODATAOUT1, 1, val, 1); + break; + } +} + +/* * Routine: misc_init_r * Description: Configure board specific parts */ @@ -419,6 +451,8 @@ int misc_init_r(void) GPIO15 | GPIO14 | GPIO13 | GPIO12), gpio5_base-oe); dieid_num_r(); + + beagle_dvi_pup(); beagle_display_init(); omap3_dss_enable(); -- 1.7.4.1 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 2/2] mx6qsabrelite: add and enable USB Host 1 support
Cc: Stefano Babic sba...@denx.de Cc: Jason Liu jason@linaro.org Signed-off-by: Wolfgang Grandegger w...@denx.de --- board/freescale/mx6qsabrelite/mx6qsabrelite.c | 12 include/configs/mx6qsabrelite.h | 15 +++ 2 files changed, 27 insertions(+), 0 deletions(-) diff --git a/board/freescale/mx6qsabrelite/mx6qsabrelite.c b/board/freescale/mx6qsabrelite/mx6qsabrelite.c index 4028789..01ecec4 100644 --- a/board/freescale/mx6qsabrelite/mx6qsabrelite.c +++ b/board/freescale/mx6qsabrelite/mx6qsabrelite.c @@ -77,6 +77,18 @@ static void setup_iomux_uart(void) imx_iomux_v3_setup_multiple_pads(uart2_pads, ARRAY_SIZE(uart2_pads)); } +#ifdef CONFIG_USB_EHCI_MX6 +int board_ehci_hcd_init(int port) +{ + imx_iomux_v3_setup_multiple_pads(usb_pads, ARRAY_SIZE(usb_pads)); + + /* Reset USB hub */ + gpio_direction_output(204, 0); /* GPIO 7-12 */ + mdelay(2); + gpio_set_value(204, 1); +} +#endif + #ifdef CONFIG_FSL_ESDHC struct fsl_esdhc_cfg usdhc_cfg[2] = { {USDHC3_BASE_ADDR, 1}, diff --git a/include/configs/mx6qsabrelite.h b/include/configs/mx6qsabrelite.h index 464f0ec..7e69734 100644 --- a/include/configs/mx6qsabrelite.h +++ b/include/configs/mx6qsabrelite.h @@ -56,6 +56,21 @@ #define CONFIG_CMD_FAT #define CONFIG_DOS_PARTITION +#if 1 +/* USB Configs */ +#define CONFIG_CMD_USB +#define CONFIG_CMD_FAT +#define CONFIG_USB_EHCI +#define CONFIG_USB_EHCI_MX6 +#define CONFIG_USB_STORAGE +#define CONFIG_USB_HOST_ETHER +#define CONFIG_USB_ETHER_ASIX +#define CONFIG_USB_ETHER_SMSC95XX +#define CONFIG_MXC_USB_PORT1 +#define CONFIG_MXC_USB_PORTSC (PORT_PTS_UTMI | PORT_PTS_PTW) +#define CONFIG_MXC_USB_FLAGS 0 +#endif + /* allow to overwrite serial and ethaddr */ #define CONFIG_ENV_OVERWRITE #define CONFIG_CONS_INDEX 1 -- 1.7.7.6 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 0/2] usb/mx6q: USB EHCI support for MX6Q boards
Wolfgang Grandegger (2): usb/ehci: Add USB support for the MX6Q mx6qsabrelite: add and enable USB Host 1 support arch/arm/cpu/armv7/mx6/clock.c| 13 ++ arch/arm/include/asm/arch-mx6/imx-regs.h |3 + board/freescale/mx6qsabrelite/mx6qsabrelite.c | 12 ++ drivers/usb/host/Makefile |1 + drivers/usb/host/ehci-mx6.c | 205 + include/configs/mx6qsabrelite.h | 15 ++ 6 files changed, 249 insertions(+), 0 deletions(-) create mode 100644 drivers/usb/host/ehci-mx6.c -- 1.7.7.6 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 1/2] usb/ehci: Add USB support for the MX6Q
Currently, only USB Host 1 is supported. Cc: Remy Bohmer li...@bohmer.net Signed-off-by: Wolfgang Grandegger w...@denx.de --- arch/arm/cpu/armv7/mx6/clock.c | 13 ++ arch/arm/include/asm/arch-mx6/imx-regs.h |3 + drivers/usb/host/Makefile|1 + drivers/usb/host/ehci-mx6.c | 205 ++ 4 files changed, 222 insertions(+), 0 deletions(-) create mode 100644 drivers/usb/host/ehci-mx6.c diff --git a/arch/arm/cpu/armv7/mx6/clock.c b/arch/arm/cpu/armv7/mx6/clock.c index fa3a124..ef98563 100644 --- a/arch/arm/cpu/armv7/mx6/clock.c +++ b/arch/arm/cpu/armv7/mx6/clock.c @@ -36,6 +36,19 @@ enum pll_clocks { struct imx_ccm_reg *imx_ccm = (struct imx_ccm_reg *)CCM_BASE_ADDR; +void enable_usboh3_clk(unsigned char enable) +{ + u32 reg; + + reg = __raw_readl(imx_ccm-CCGR6); + if (enable) + reg |= MXC_CCM_CCGR_CG_MASK MXC_CCM_CCGR0_CG0_OFFSET; + else + reg = ~(MXC_CCM_CCGR_CG_MASK MXC_CCM_CCGR0_CG0_OFFSET); + __raw_writel(reg, imx_ccm-CCGR6); + +} + static u32 decode_pll(enum pll_clocks pll, u32 infreq) { u32 div; diff --git a/arch/arm/include/asm/arch-mx6/imx-regs.h b/arch/arm/include/asm/arch-mx6/imx-regs.h index 5227b44..8a5716a 100644 --- a/arch/arm/include/asm/arch-mx6/imx-regs.h +++ b/arch/arm/include/asm/arch-mx6/imx-regs.h @@ -111,6 +111,9 @@ #define KPP_BASE_ADDR (AIPS1_OFF_BASE_ADDR + 0x38000) #define WDOG1_BASE_ADDR (AIPS1_OFF_BASE_ADDR + 0x3C000) #define WDOG2_BASE_ADDR (AIPS1_OFF_BASE_ADDR + 0x4) +#define ANATOP_BASE_ADDR(AIPS1_OFF_BASE_ADDR + 0x48000) +#define USB_PHY0_BASE_ADDR (AIPS1_OFF_BASE_ADDR + 0x49000) +#define USB_PHY1_BASE_ADDR (AIPS1_OFF_BASE_ADDR + 0x4a000) #define CCM_BASE_ADDR (AIPS1_OFF_BASE_ADDR + 0x44000) #define ANATOP_BASE_ADDR(AIPS1_OFF_BASE_ADDR + 0x48000) #define SNVS_BASE_ADDR (AIPS1_OFF_BASE_ADDR + 0x4C000) diff --git a/drivers/usb/host/Makefile b/drivers/usb/host/Makefile index 77e217f..1b62cc2 100644 --- a/drivers/usb/host/Makefile +++ b/drivers/usb/host/Makefile @@ -43,6 +43,7 @@ endif COBJS-$(CONFIG_USB_EHCI_MXC) += ehci-mxc.o COBJS-$(CONFIG_USB_EHCI_MXS) += ehci-mxs.o COBJS-$(CONFIG_USB_EHCI_MX5) += ehci-mx5.o +COBJS-$(CONFIG_USB_EHCI_MX6) += ehci-mx6.o COBJS-$(CONFIG_USB_EHCI_PPC4XX) += ehci-ppc4xx.o COBJS-$(CONFIG_USB_EHCI_IXP4XX) += ehci-ixp.o COBJS-$(CONFIG_USB_EHCI_KIRKWOOD) += ehci-kirkwood.o diff --git a/drivers/usb/host/ehci-mx6.c b/drivers/usb/host/ehci-mx6.c new file mode 100644 index 000..b7bf49d --- /dev/null +++ b/drivers/usb/host/ehci-mx6.c @@ -0,0 +1,205 @@ +/* + * Copyright (c) 2009 Daniel Mack dan...@caiaq.de + * Copyright (C) 2010 Freescale Semiconductor, Inc. + * + * 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. + */ + +#include common.h +#include usb.h +#include errno.h +#include linux/compiler.h +#include usb/ehci-fsl.h +#include asm/io.h +#include asm/arch/imx-regs.h +#include asm/arch/clock.h +#include asm/arch/mx6x_pins.h +#include asm/arch/iomux-v3.h + +#include ehci.h +#include ehci-core.h + +#define USB_OTGREGS_OFFSET 0x000 +#define USB_H1REGS_OFFSET 0x200 +#define USB_H2REGS_OFFSET 0x400 +#define USB_H3REGS_OFFSET 0x600 +#define USB_OTHERREGS_OFFSET 0x800 + +#define USB_H1_CTRL_OFFSET 0x04 + +#define USBPHY_CTRL0x0030 +#define USBPHY_CTRL_SET0x0034 +#define USBPHY_CTRL_CLR0x0038 +#define USBPHY_CTRL_TOG0x003c + +#define USBPHY_PWD 0x +#define USBPHY_CTRL_SFTRST 0x8000 +#define USBPHY_CTRL_CLKGATE0x4000 +#define USBPHY_CTRL_ENUTMILEVEL3 0x8000 +#define USBPHY_CTRL_ENUTMILEVEL2 0x4000 + +#define ANADIG_USB2_CHRG_DETECT0x0210 +#define ANADIG_USB2_CHRG_DETECT_EN_B 0x0010 +#define ANADIG_USB2_CHRG_DETECT_CHK_CHRG_B 0x0008 + +#define ANADIG_USB2_PLL_480_CTRL 0x0020 +#define ANADIG_USB2_PLL_480_CTRL_SET 0x0024 +#define ANADIG_USB2_PLL_480_CTRL_CLR 0x0028 +#define ANADIG_USB2_PLL_480_CTRL_BYPASS0x0001 +#define ANADIG_USB2_PLL_480_CTRL_ENABLE0x2000 +#define ANADIG_USB2_PLL_480_CTRL_POWER 0x1000 +#define
[U-Boot] [PATCH 1/3] doc: complete, typos
From: Peter Meerwald p.meerw...@bct-electronic.com mention repeatable to README.commands and fix some typos Signed-off-by: Peter Meerwald p.meerw...@bct-electronic.com --- doc/README.commands | 12 ++-- 1 files changed, 6 insertions(+), 6 deletions(-) diff --git a/doc/README.commands b/doc/README.commands index d678992..69576dc 100644 --- a/doc/README.commands +++ b/doc/README.commands @@ -1,19 +1,19 @@ Commands are added to U-Boot by creating a new command structure. -This is done by first including command.h - -Then using the U_BOOT_CMD() macro to fill in a cmd_tbl_t struct. +This is done by first including command.h, then using the U_BOOT_CMD() macro +to fill in a cmd_tbl_t struct. U_BOOT_CMD(name,maxargs,repeatable,command,usage,help) name: is the name of the commad. THIS IS NOT a string. -maxargs: the maximumn numbers of arguments this function takes +maxargs: the maximum number of arguments this function takes +repeatable: either 0 or 1 to indicate if autorepeat is allowed command: Function pointer (*cmd)(struct cmd_tbl_s *, int, int, char *[]); usage: Short description. This is a string -help: long description. This is a string +help: Long description. This is a string - Behinde the scene ** + Behind the scene ** The structure created is named with a special prefix (__u_boot_cmd_) and placed by the linker in a special section. -- 1.7.4.1 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 3/3] usb_ether: fix typo
From: Peter Meerwald p.meerw...@bct-electronic.com Signed-off-by: Peter Meerwald p.meerw...@bct-electronic.com --- drivers/usb/eth/usb_ether.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/drivers/usb/eth/usb_ether.c b/drivers/usb/eth/usb_ether.c index 8bfe256..32f4bc8 100644 --- a/drivers/usb/eth/usb_ether.c +++ b/drivers/usb/eth/usb_ether.c @@ -140,7 +140,7 @@ int usb_host_eth_scan(int mode) dev = usb_get_dev_index(i); /* get device */ debug(i=%d\n, i); if (dev == NULL) - break; /* no more devices avaiable */ + break; /* no more devices available */ /* find valid usb_ether driver for this device, if any */ probe_valid_drivers(dev); -- 1.7.4.1 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 2/3] cmd_eeprom: typo
From: Peter Meerwald p.meerw...@bct-electronic.com Signed-off-by: Peter Meerwald p.meerw...@bct-electronic.com --- common/cmd_eeprom.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/common/cmd_eeprom.c b/common/cmd_eeprom.c index e911377..a48b3d2 100644 --- a/common/cmd_eeprom.c +++ b/common/cmd_eeprom.c @@ -26,7 +26,7 @@ * Support for read and write access to EEPROM like memory devices. This * includes regular EEPROM as well as FRAM (ferroelectic nonvolaile RAM). * FRAM devices read and write data at bus speed. In particular, there is no - * write delay. Also, there is no limit imposed on the numer of bytes that can + * write delay. Also, there is no limit imposed on the number of bytes that can * be transferred with a single read or write. * * Use the following configuration options to ensure no unneeded performance -- 1.7.4.1 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 2/2] mx6qsabrelite: add and enable USB Host 1 support
On Wed, Feb 8, 2012 at 1:23 PM, Wolfgang Grandegger w...@denx.de wrote: --- a/include/configs/mx6qsabrelite.h +++ b/include/configs/mx6qsabrelite.h @@ -56,6 +56,21 @@ #define CONFIG_CMD_FAT #define CONFIG_DOS_PARTITION +#if 1 Please remove this. +/* USB Configs */ +#define CONFIG_CMD_USB +#define CONFIG_CMD_FAT +#define CONFIG_USB_EHCI +#define CONFIG_USB_EHCI_MX6 +#define CONFIG_USB_STORAGE +#define CONFIG_USB_HOST_ETHER +#define CONFIG_USB_ETHER_ASIX +#define CONFIG_USB_ETHER_SMSC95XX +#define CONFIG_MXC_USB_PORT 1 +#define CONFIG_MXC_USB_PORTSC (PORT_PTS_UTMI | PORT_PTS_PTW) +#define CONFIG_MXC_USB_FLAGS 0 +#endif + /* allow to overwrite serial and ethaddr */ #define CONFIG_ENV_OVERWRITE #define CONFIG_CONS_INDEX 1 -- 1.7.7.6 ___ 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] Skipping relocation RAM to RAM, esp. on i.MX6?
Dear Aneesh V, In message 4f328b41.2050...@ti.com you wrote: But since then I changed my mind due to some other factors: 1. Difficulty in debugging. I use JTAG debuggers. The workarounds available are still painful and not many people know about it. We use JTAG debuggers all day, and have been doing so for well over 10 years. All development of PPCBoot nad U-Boot has been done withJTAG debuggers. Relocation has never been a real problem here. Reasinf the manual may help - this is documented in detail there. This is not a good reason to reconsider. 2. On FPGA platform, it was adding a considerable delay (I don't have the exact number, but that will be in minutes). The u-boot was already scaled down and was doing minimal stuff, but this one could not be removed easily. That's when I created that patch. What exactly are you talking about here that was adding a considerable delay - the memory copy ? Are you really sure about that? 3. Un-necessary complexity without any benefit for our platform. I Maintaining different configurations of the code that behave differently, that can cause different types of addressing, compile and link and debug issues is also adding complexity. Using a single, well tested approach is one of the benefits even for your platform. nearly get exhausted explaining to new u-boot users how it all works and nearly always gets confronted with the question why do we need it? In our platforms U-Boot starts from SDRAM and we do not need any of the flexibilities relocation may provide. Maybe it would help if you add your explanations to the manual, so you can point people who ask to the manual instead of repeating this again and agian? At the end of the day I think we are making U-Boot way too complex for a bootloader and I think relocation is one of the factors. Well, if you prefer, you can probably adapt blob (http://sourceforge.net/projects/blob/) or similar to your system. That would be definitely less complex. Hm... isn't it your users who are asking for the features? 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 Time is a drug. Too much of it kills you. - Terry Pratchett, _Small Gods_ ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] i.MX28: Fix ref_cpu clock setup
Did you even test before submitting? Also, I think if I remove patch 3, it all works fine. Naturally, I did. Yet on my own SVN controlled workspace, because my GIT workspace of the mainline didn't build yesterday. I'm looking at the differences now, and there aren't any concerning i.mx28. But we're going on... Should be fixed now (look for tbclk in u-boot mailing list) ... there's a patch ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] Marvell Alaska Phy loopback mode support using RGMII interface
Hi Do we have support for RGMII mode to support phy loopback for Marvell Alaska 88E1112 phy. Any inputs helpful. Amruth p.v ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 1/2] image: add support for Android's boot image format
On Thu, Feb 2, 2012 at 2:28 AM, Aneesh V ane...@ti.com wrote: Dear Wolfgang, On Tuesday 17 January 2012 02:46 PM, Aneesh V wrote: Dear Wolfgang, On Wednesday 23 November 2011 03:33 PM, Sebastian Andrzej Siewior wrote: * Wolfgang Denk | 2011-11-22 20:04:47 [+0100]: Dear Sebastian Andrzej Siewior, In message2022123007.ga5...@linutronix.de you wrote: + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. Sorry, but this is not GPL compatible. Ehm. Is this the All rights reserved issue? If so then I assumed that I cleared up things in No, it's the Redistributions in binary form must reproduce... clause. How so? If you distribute it as source nothing changes. I don't see much difference in binary form either: section 1 of the GPL says |.. keep intact all the notices that refer to this License and to the |absence of any warranty; and give any other recipients of the Program a |copy of this License along with the Program. and this is no different. It does not mention whether the software has to be passed in source or binary form. The BSD part does not push any restrictions on the GPL, it wants the same thing. Section 6 of the GPL says that by redistributing the receiptient should receive a copy of this license. The section you mentioed is no different. If you distribute GPL in binary code you have let the receiptient know, that he is using GPL code. A note in the documentation is enough as far as I know [if remeber correctly Harald went after a few companies which were using Linux and were not letting the customers know about it]. If you look at the fresh released Quake3 source [0] you see that there is a readme file which points out that it is GPL code and enumerates various other licenses. So right now, I don't see why those two should not be compatible. Plus the FSF claims that they are [1]. [0] https://github.com/TTimo/doom3.gpl [1] http://www.gnu.org/licenses/license-list.html#FreeBSD What is your final call on this? The above arguments sound convincing to me, but I have to admit that I am no legal expert. Either way, it will be great to have a closure on this. Lack of fastboot support was the greatest impediment to adoption of mainline U-Boot in our previous platforms. It will be really unfortunate if the same happens to OMAP5 that has just arrived. Ping. Part of the feedback (see http://patchwork.ozlabs.org/patch/126797/) was not addressed, namely the complete reference (including hash) where the code came from. -- Tom ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v3 6/7] usb: ulpi: Extend the existing ulpi framework.
Govindraj, I have Gumstix overo board with OM3730 + USB 3326 USB PHY.I want to add EHCI and ULPI support in u-boot. Once we port the EHCI_OMAP EHCI driver How to test this driver functionality under u-boot environment? Is there any application/commands to test ULPI functionality under u-boot environment? Regards, Subhashini ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] arm: Add option to disable code relocation
Hi Simon, On Wed, Feb 8, 2012 at 6:12 PM, Simon Glass s...@chromium.org wrote: Hi Dirk, But turning on the cache should be trivial - it is already supported so you just need to implement the enable_dcache() function(?) I think. Also make sure that the I-Cache is on as early as possible. Relocation is done with the d-cache off so is slow. Takes about 40ms for me from I have shown that this does not need to be the case - For x86 relocation is performed in the following sequence: 1) CPU Init, Disable Cache, Setup 'Cache-As-RAM', init global data and stack in 'Cache-As-RAM' 2) Init SDRAM 3) Allocate new stack in SDRAM 4) Pivot U-Boot so now SDRAM stack is being used but code is still being executed in Flash 5) Copy global data from CAR to SDRAM 6) Init cache (trashes CAR, but that's OK - it's not being used anymore) 7) Copy U-Boot from Flash to SDRAM 8) Perform relocation fixups 9) Jump to in-RAM copy of U-Boot 10) Continue init sequence... memory, but we do have things which can speed it up. But d-cache matters more than just about anything. Regards, Graeme ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 17/28] net: Refactor to separate the UDP handler from the ARP handler
Hi Mike, On Fri, Feb 3, 2012 at 6:21 AM, Mike Frysinger vap...@gentoo.org wrote: On Thursday 19 January 2012 19:53:20 Joe Hershberger wrote: Only call the handlers if one was registered... don't require protocols to register a handler (eliminating dummies) NetConsole now uses the ARP handler when waiting on arp (instead of needing a #define hack in arp.c) Clear handlers at the end of net loop what if the SetHandler funcs took care of setting to a dummy func when it was given NULL ? then calling code need not worry about creating their own dummies, and you don't have to add NULL pointer checking. The calling code doesn't create dummies any longer. That is the point of the NULL checking. Do you prefer the set method register a dummy instead of a NULL check? -Joe ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 1/6] .gitignore: Add .su files
The '-fstack-usage' option to gcc will generate .su files, ignore them. Signed-off-by: Tom Rini tr...@ti.com --- .gitignore |1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/.gitignore b/.gitignore index e4e95e2..0f32fd8 100644 --- a/.gitignore +++ b/.gitignore @@ -10,6 +10,7 @@ *.orig *.a *.o +*.su *~ *.swp *.patch -- 1.7.0.4 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 2/6] config.mk: Make cc-option create a file under include/generated
Testing for -fstack-usage requires the creation of an output file, which isnt possible with /dev/null. Signed-off-by: Tom Rini tr...@ti.com --- config.mk | 10 +- 1 files changed, 5 insertions(+), 5 deletions(-) diff --git a/config.mk b/config.mk index ddaa477..519bc1b 100644 --- a/config.mk +++ b/config.mk @@ -108,14 +108,14 @@ HOSTCFLAGS+= -pedantic # only supported compiler options are used # CC_OPTIONS_CACHE_FILE := $(OBJTREE)/include/generated/cc_options.mk - -$(if $(wildcard $(CC_OPTIONS_CACHE_FILE)),,\ - $(shell mkdir -p $(dir $(CC_OPTIONS_CACHE_FILE +CC_TEST_FILE := $(OBJTREE)/include/generated/cc_test_file.c -include $(CC_OPTIONS_CACHE_FILE) -cc-option-sys = $(shell if $(CC) $(CFLAGS) $(1) -S -o /dev/null -xc /dev/null \ -/dev/null 21; then \ +cc-option-sys = $(shell mkdir -p $(dir $(CC_TEST_FILE)); \ + touch $(CC_TEST_FILE); \ + if $(CC) $(CFLAGS) $(1) -S -o $(CC_TEST_FILE) \ + -xc $(CC_TEST_FILE) /dev/null 21; then \ echo 'CC_OPTIONS += $(strip $1)' $(CC_OPTIONS_CACHE_FILE); \ echo $(1); fi) -- 1.7.0.4 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 6/6] SPL: Add README.omap3
This document describes the SPL process for OMAP3 (and related) boards as well as a partial memory map and how to verify certain aspects outside of running on the target. Signed-off-by: Tom Rini tr...@ti.com --- doc/SPL/README.omap3 | 71 ++ 1 files changed, 71 insertions(+), 0 deletions(-) create mode 100644 doc/SPL/README.omap3 diff --git a/doc/SPL/README.omap3 b/doc/SPL/README.omap3 new file mode 100644 index 000..729fef1 --- /dev/null +++ b/doc/SPL/README.omap3 @@ -0,0 +1,71 @@ +Overview of SPL on OMAP3 devices + + +Introduction + + +This document provides an overview of how SPL functions on OMAP3 (and related +such as am35x and am37x) processors. + +Methodology +--- + +On these platforms the ROM supports trying a sequence of boot devices. Once +one has been used successfully to load SPL this information is stored in memory +and the location stored in a register. We will read this to determine where to +read U-Boot from in turn. + +Memory Map +-- + +This is an example of a typical setup. See top-level README for documentation +of which CONFIG variables control these values. For a given board and the +amount of DRAM available to it different values may need to be used. +Note that the size of the SPL text rodata and data is enforced with a CONFIG +option and growing over that size results in a link error. The SPL stack +starts at the top of SRAM (which is configurable) and grows downward. The +space between the top of SRAM and the enforced upper bound on the size of the +SPL text, data and rodata is considered the safe stack area. Details on +confirming this behavior are shown below. + +A portion of the system memory map looks as follows: +SRAM: 0x4020 - 0x4020 +DDR1: 0x8000 - 0xBFFF + +Option 1 (SPL only): +0x40200800 - 0x4020BBFF: Area for SPL text, data and rodata +0x4020BC00 - 0x4020FFFC: Area for the SPL stack. +0x8000 - 0x8007: Area for the SPL BSS. +0x8010: CONFIG_SYS_TEXT_BASE of U-Boot +0x80208000 - 0x80307FFF: malloc() pool available to SPL. + +Option 2 (SPL or X-Loader): +0x40200800 - 0x4020BBFF: Area for SPL text, data and rodata +0x4020BC00 - 0x4020FFFC: Area for the SPL stack. +0x80008000: CONFIG_SYS_TEXT_BASE of U-Boot +0x8700 - 0x8707: Area for the SPL BSS. +0x8708 - 0x870F: malloc() pool available to SPL. + +For the areas that reside within DDR1 they must not be used prior to s_init() +completing. Note that CONFIG_SYS_TEXT_BASE must be clear of the areas that SPL +uses while running. This is why we have two versions of the memory map that +only varry in where the BSS and malloc pool reside. + +Estimating stack usage +-- + +With gcc 4.6 (and later) and the use of GNU cflow it is possible to estimate stack usage at various points in run sequence of SPL. The -fstack-usage option to gcc will produce '.su' files (such as arch/arm/cpu/armv7/syslib.su) that will give stack usage information and cflow can construct program flow. + +Must have gcc 4.6 or later, which supports -fstack-usage + +1) Build normally +2) Perform the following shell to generate a list of C files used in SPL +$ for F in `cd spl; find -name *.su`; do \ + echo $F | sed -e 's/.su$/.c/'; done used-spl.list +3) Execute cflow: +$ cflow --main=board_init_r `cat used-spl.list` 21 | $PAGER + +cflow will spit out a number of warnings as it does not parse +the config files and pick functions based on #ifdef. Parsing the '.i' +files instead introduces another set of headaches. These warnings are +not usually important to understanding the flow, however. -- 1.7.0.4 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 4/6] spl.c: Use __noreturn decorator
Signed-off-by: Tom Rini tr...@ti.com --- arch/arm/cpu/armv7/omap-common/spl.c |5 ++--- 1 files changed, 2 insertions(+), 3 deletions(-) diff --git a/arch/arm/cpu/armv7/omap-common/spl.c b/arch/arm/cpu/armv7/omap-common/spl.c index 9c1f7e3..3a2d957 100644 --- a/arch/arm/cpu/armv7/omap-common/spl.c +++ b/arch/arm/cpu/armv7/omap-common/spl.c @@ -92,9 +92,9 @@ void spl_parse_image_header(const struct image_header *header) } } -static void jump_to_image_no_args(void) +static void __noreturn jump_to_image_no_args(void) { - typedef void (*image_entry_noargs_t)(u32 *)__attribute__ ((noreturn)); + typedef void __noreturn (*image_entry_noargs_t)(u32 *); image_entry_noargs_t image_entry = (image_entry_noargs_t) spl_image.entry_point; @@ -107,7 +107,6 @@ static void jump_to_image_no_args(void) image_entry((u32 *)boot_params_ptr_addr); } -void jump_to_image_no_args(void) __attribute__ ((noreturn)); void board_init_r(gd_t *id, ulong dummy) { u32 boot_device; -- 1.7.0.4 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 5/6] README: Add more SPL config options
Signed-off-by: Tom Rini tr...@ti.com --- README | 22 -- 1 files changed, 20 insertions(+), 2 deletions(-) diff --git a/README b/README index 9d713e8..5ec663a 100644 --- a/README +++ b/README @@ -2430,11 +2430,29 @@ FIT uImage format: CONFIG_SPL Enable building of SPL globally. + CONFIG_SPL_LDSCRIPT + LDSCRIPT for linking the SPL binary. + + CONFIG_SPL_MAX_SIZE + Maximum binary size (text, data and rodata) of the SPL binary. + CONFIG_SPL_TEXT_BASE TEXT_BASE for linking the SPL binary. - CONFIG_SPL_LDSCRIPT - LDSCRIPT for linking the SPL binary. + CONFIG_SPL_BSS_START_ADDR + Link address for the BSS within the SPL binary. + + CONFIG_SPL_BSS_MAX_SIZE + Maximum binary size of the BSS section of the SPL binary. + + CONFIG_SPL_STACK + Adress of the start of the stack SPL will use + + CONFIG_SYS_SPL_MALLOC_START + Starting address of the malloc pool used in SPL. + + CONFIG_SYS_SPL_MALLOC_SIZE + The size of the malloc pool used in SPL. CONFIG_SPL_LIBCOMMON_SUPPORT Support for common/libcommon.o in SPL binary -- 1.7.0.4 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 3/6] arm: Check for -fstack-usage support
Signed-off-by: Tom Rini tr...@ti.com --- arch/arm/config.mk |6 +- 1 files changed, 5 insertions(+), 1 deletions(-) diff --git a/arch/arm/config.mk b/arch/arm/config.mk index 45f9dca..caf6adb 100644 --- a/arch/arm/config.mk +++ b/arch/arm/config.mk @@ -53,7 +53,11 @@ PF_CPPFLAGS_ABI := $(call cc-option,\ )\ ) $(call cc-option,-mno-thumb-interwork,)\ ) -PLATFORM_CPPFLAGS += $(PF_CPPFLAGS_ARM) $(PF_CPPFLAGS_ABI) + +# Report stack usage if supported +PF_CPPFLAGS_STACK := $(call cc-option,-fstack-usage,) + +PLATFORM_CPPFLAGS += $(PF_CPPFLAGS_ARM) $(PF_CPPFLAGS_ABI) $(PF_CPPFLAGS_STACK) # For EABI, make sure to provide raise() ifneq (,$(findstring -mabi=aapcs-linux,$(PLATFORM_CPPFLAGS))) -- 1.7.0.4 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 6/6] SPL: Add README.omap3
+only varry in where the BSS and malloc pool reside. vary +2) Perform the following shell to generate a list of C files used in SPL shell command +cflow will spit out a number of warnings as it does not parse +the config files and pick functions based on #ifdef. Parsing the '.i' picks -- Peter Meerwald +43-664-218 (mobile) ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 6/6] SPL: Add README.omap3
On 02/08/2012 04:08 PM, Peter Meerwald wrote: +only varry in where the BSS and malloc pool reside. vary +2) Perform the following shell to generate a list of C files used in SPL shell command +cflow will spit out a number of warnings as it does not parse +the config files and pick functions based on #ifdef. Parsing the '.i' picks Thanks -- Tom ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v7 4/4] EXYNOS: SMDK5250: Add MMC SPL support
On Thu, Feb 2, 2012 at 1:21 PM, Mike Frysinger vap...@gentoo.org wrote: On Thursday 02 February 2012 04:11:27 Chander Kashyap wrote: +int main(int argc, char **argv) +{ ... + unsigned char buffer[BUFSIZE] = {0}; this is an implicit memset() and from what i can see in the code, useless. you read() the entire buffer, so there's no need to initialize it. Funny, I was just about to submit a patch to add this = {0} myself when I found this message. ;) I would say that it (or a memset, whichever people prefer) is a good idea so that this tool can be used to make a reasonable SPL out of any source binary executable, even ones that are smaller than 14K. Specifically, I assembled a bit of quick-and-dirty code for debugging (60 bytes) and wanted to convince the processor to load it as a BL2. This tool worked for the process, but it produced a file with some random data in it. Ick. I wouldn't hold up committing this patch series for it, though... -Doug ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 1/5] mx53loco: Use gpio_direction_input prior to gpio_get_value
2012/2/8 Fabio Estevam feste...@gmail.com: Use gpio_direction_input prior to gpio_get_value. Cc: Jason Liu r64...@freescale.com Signed-off-by: Fabio Estevam fabio.este...@freescale.com Acked-by: Jason Liu r64...@freescale.com --- board/freescale/mx53loco/mx53loco.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/board/freescale/mx53loco/mx53loco.c b/board/freescale/mx53loco/mx53loco.c index e6345e7..c2c26f0 100644 --- a/board/freescale/mx53loco/mx53loco.c +++ b/board/freescale/mx53loco/mx53loco.c @@ -153,7 +153,9 @@ int board_mmc_getcd(struct mmc *mmc) int ret; mxc_request_iomux(MX53_PIN_EIM_DA11, IOMUX_CONFIG_ALT1); + gpio_direction_input(75); mxc_request_iomux(MX53_PIN_EIM_DA13, IOMUX_CONFIG_ALT1); + gpio_direction_input(77); if (cfg-esdhc_base == MMC_SDHC1_BASE_ADDR) ret = !gpio_get_value(77); /* GPIO3_13 */ -- 1.7.1 ___ 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 3/5] mx53evk: Use gpio_direction_input prior to gpio_get_value
2012/2/8 Fabio Estevam feste...@gmail.com: Use gpio_direction_input prior to gpio_get_value. Cc: Jason Liu r64...@freescale.com Signed-off-by: Fabio Estevam fabio.este...@freescale.com Acked-by: Jason Liu r64...@freescale.com --- board/freescale/mx53evk/mx53evk.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/board/freescale/mx53evk/mx53evk.c b/board/freescale/mx53evk/mx53evk.c index e976ae1..8a6e31d 100644 --- a/board/freescale/mx53evk/mx53evk.c +++ b/board/freescale/mx53evk/mx53evk.c @@ -214,7 +214,9 @@ int board_mmc_getcd(struct mmc *mmc) int ret; mxc_request_iomux(MX53_PIN_EIM_DA11, IOMUX_CONFIG_ALT1); + gpio_direction_input(75); mxc_request_iomux(MX53_PIN_EIM_DA13, IOMUX_CONFIG_ALT1); + gpio_direction_input(77); if (cfg-esdhc_base == MMC_SDHC1_BASE_ADDR) ret = !gpio_get_value(77); /* GPIO3_13 */ -- 1.7.1 ___ 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 17/28] net: Refactor to separate the UDP handler from the ARP handler
On Wednesday 08 February 2012 17:52:54 Joe Hershberger wrote: On Fri, Feb 3, 2012 at 6:21 AM, Mike Frysinger wrote: On Thursday 19 January 2012 19:53:20 Joe Hershberger wrote: Only call the handlers if one was registered... don't require protocols to register a handler (eliminating dummies) NetConsole now uses the ARP handler when waiting on arp (instead of needing a #define hack in arp.c) Clear handlers at the end of net loop what if the SetHandler funcs took care of setting to a dummy func when it was given NULL ? then calling code need not worry about creating their own dummies, and you don't have to add NULL pointer checking. The calling code doesn't create dummies any longer. That is the point of the NULL checking. Do you prefer the set method register a dummy instead of a NULL check? yes, i like that fringe code need not setup dummies anymore themselves. however, i think the core code should take take on setting up dummies so that the rest of the code need not have to do NULL checking everywhere. -mike signature.asc Description: This is a digitally signed message part. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 1/6] .gitignore: Add .su files
Acked-by: Mike Frysinger vap...@gentoo.org -mike signature.asc Description: This is a digitally signed message part. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] arm: Add option to disable code relocation
Hi Simon, On Wed, Feb 8, 2012 at 6:12 PM, Simon Glass s...@chromium.org wrote: Also make sure that the I-Cache is on as early as possible. Relocation is done with the d-cache off so is slow. Takes about 40ms for me from Have a close look at the latest x86 patches (not yet pulled into mainline) as an example of how this does not need to be the case. The sequence I now use is: 1) Initialise 'Cache-As-RAM' (CAR) - Cache cannot be used to cache SDRAM, otherwise the Stack and Global Data get trashed 2) Create Stack and Global Data in CAR 3) Initialise SDRAM 4) Create a new stack in SDRAM 5) 'Pivot' U-Boot - Move stack from CAR to SDRAM (U-Boot still running in Flash) 6) Copy Global Data into SDRAM (adjust the global data pointer to point to the in-RAM copy) 7) CAR is no longer used - Enable caching of SDRAM 8) Copy U-Boot to RAM 9) Perform relocation adjustments to in-RAM copy 10) Jump to in-RAM copy 11) Continue initialisation memory, but we do have things which can speed it up. But d-cache matters more than just about anything. Now it may be the case (going by Wolfgang's comments) that some amount of high-memory needs to be reserved, and the amount to be reserved is not known until environment has been read. So there may be a need to put the initial in-RAM stack and global data somewhere 'safe' while high- memory space is calculated and U-Boot copied into RAM. Stack and global- data can then be moved again (stack probably doesn't need moving, just re-initialised at a new location) just below U-Boot. This would still be a lot cheaper than copying U-Boot with D-Cache off Regards, Graeme ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 1/3] doc: complete, typos
Acked-by: Mike Frysinger vap...@gentoo.org -mike signature.asc Description: This is a digitally signed message part. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 2/3] cmd_eeprom: typo
Acked-by: Mike Frysinger vap...@gentoo.org -mike signature.asc Description: This is a digitally signed message part. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 3/3] usb_ether: fix typo
Acked-by: Mike Frysinger vap...@gentoo.org -mike signature.asc Description: This is a digitally signed message part. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH V2] bugfix: all Marvell specific build fails due to undefined reference to `get_ticks'
On Wednesday 08 February 2012 06:09:32 Prafulla Wadaskar wrote: +ulong get_tbclk (void) no space before the ( happens to all of them -mike signature.asc Description: This is a digitally signed message part. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v7 4/4] EXYNOS: SMDK5250: Add MMC SPL support
On Wednesday 08 February 2012 18:35:28 Doug Anderson wrote: On Thu, Feb 2, 2012 at 1:21 PM, Mike Frysinger wrote: On Thursday 02 February 2012 04:11:27 Chander Kashyap wrote: +int main(int argc, char **argv) +{ ... + unsigned char buffer[BUFSIZE] = {0}; this is an implicit memset() and from what i can see in the code, useless. you read() the entire buffer, so there's no need to initialize it. Funny, I was just about to submit a patch to add this = {0} myself when I found this message. ;) I would say that it (or a memset, whichever people prefer) is a good idea so that this tool can be used to make a reasonable SPL out of any source binary executable, even ones that are smaller than 14K. you're right ... i'll claim that i was deceived by the lack of input checking. sounds like the code should be aborting if the input is too large instead of silently truncating. then the memset/{0} is unnecessary: - write out the data read - lseek to the checksum position - write checksum - ftruncate to total length (16KiB?) -mike signature.asc Description: This is a digitally signed message part. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 1/3] doc: complete, typos
From: Peter Meerwald p.meerw...@bct-electronic.com mention repeatable to README.commands and fix some typos Signed-off-by: Peter Meerwald p.meerw...@bct-electronic.com --- doc/README.commands | 12 ++-- 1 files changed, 6 insertions(+), 6 deletions(-) diff --git a/doc/README.commands b/doc/README.commands index d678992..69576dc 100644 --- a/doc/README.commands +++ b/doc/README.commands @@ -1,19 +1,19 @@ Commands are added to U-Boot by creating a new command structure. -This is done by first including command.h - -Then using the U_BOOT_CMD() macro to fill in a cmd_tbl_t struct. +This is done by first including command.h, then using the U_BOOT_CMD() macro +to fill in a cmd_tbl_t struct. U_BOOT_CMD(name,maxargs,repeatable,command,usage,help) name: is the name of the commad. THIS IS NOT a string. -maxargs: the maximumn numbers of arguments this function takes +maxargs: the maximum number of arguments this function takes +repeatable: either 0 or 1 to indicate if autorepeat is allowed command: Function pointer (*cmd)(struct cmd_tbl_s *, int, int, char *[]); usage:Short description. This is a string -help: long description. This is a string +help: Long description. This is a string - Behinde the scene ** + Behind the scene ** The structure created is named with a special prefix (__u_boot_cmd_) and placed by the linker in a special section. Please add my: Tested-by: Marek Vasut marek.va...@gmail.com ;-) ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v2] davinci: cleanup davinci_sync_env_enetaddr() fucntion
On Wednesday 08 February 2012 06:14:35 Manjunath Hadli wrote: - debug(### Setting environment from EEPROM MAC address = + printf(### Setting environment from EEPROM MAC address = i don't think this should be displayed as this is the normal behavior ... otherwise, looks OK to me ... -mike signature.asc Description: This is a digitally signed message part. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [Samsung] [PATCH v7 4/4] EXYNOS: SMDK5250: Add MMC SPL support
On 9 February 2012 09:21, Mike Frysinger vap...@gentoo.org wrote: On Wednesday 08 February 2012 18:35:28 Doug Anderson wrote: On Thu, Feb 2, 2012 at 1:21 PM, Mike Frysinger wrote: On Thursday 02 February 2012 04:11:27 Chander Kashyap wrote: +int main(int argc, char **argv) +{ ... + unsigned char buffer[BUFSIZE] = {0}; this is an implicit memset() and from what i can see in the code, useless. you read() the entire buffer, so there's no need to initialize it. Funny, I was just about to submit a patch to add this = {0} myself when I found this message. ;) I would say that it (or a memset, whichever people prefer) is a good idea so that this tool can be used to make a reasonable SPL out of any source binary executable, even ones that are smaller than 14K. you're right ... i'll claim that i was deceived by the lack of input checking. sounds like the code should be aborting if the input is too large instead of silently truncating. then the memset/{0} is unnecessary: - write out the data read - lseek to the checksum position - write checksum - ftruncate to total length (16KiB?) BUFSIZE is already made 14K, so no need to ftruncate. -mike ___ Samsung mailing list sams...@lists.linaro.org http://lists.linaro.org/mailman/listinfo/samsung -- with warm regards, Chander Kashyap ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [Samsung] [PATCH v7 4/4] EXYNOS: SMDK5250: Add MMC SPL support
On Thursday 09 February 2012 00:25:35 Chander Kashyap wrote: On 9 February 2012 09:21, Mike Frysinger wrote: On Wednesday 08 February 2012 18:35:28 Doug Anderson wrote: On Thu, Feb 2, 2012 at 1:21 PM, Mike Frysinger wrote: On Thursday 02 February 2012 04:11:27 Chander Kashyap wrote: +int main(int argc, char **argv) +{ ... + unsigned char buffer[BUFSIZE] = {0}; this is an implicit memset() and from what i can see in the code, useless. you read() the entire buffer, so there's no need to initialize it. Funny, I was just about to submit a patch to add this = {0} myself when I found this message. ;) I would say that it (or a memset, whichever people prefer) is a good idea so that this tool can be used to make a reasonable SPL out of any source binary executable, even ones that are smaller than 14K. you're right ... i'll claim that i was deceived by the lack of input checking. sounds like the code should be aborting if the input is too large instead of silently truncating. then the memset/{0} is unnecessary: - write out the data read - lseek to the checksum position - write checksum - ftruncate to total length (16KiB?) BUFSIZE is already made 14K, so no need to ftruncate. yes, in v9, it's 14KiB. i was looking at v7 which used 16KiB. -mike signature.asc Description: This is a digitally signed message part. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] Skipping relocation RAM to RAM, esp. on i.MX6?
On Wednesday 08 February 2012 09:53 PM, Wolfgang Denk wrote: Dear Aneesh V, In message4f328b41.2050...@ti.com you wrote: But since then I changed my mind due to some other factors: 1. Difficulty in debugging. I use JTAG debuggers. The workarounds available are still painful and not many people know about it. We use JTAG debuggers all day, and have been doing so for well over 10 years. All development of PPCBoot nad U-Boot has been done withJTAG debuggers. Relocation has never been a real problem here. Reasinf the manual may help - this is documented in detail there. This is not a good reason to reconsider. 2. On FPGA platform, it was adding a considerable delay (I don't have the exact number, but that will be in minutes). The u-boot was already scaled down and was doing minimal stuff, but this one could not be removed easily. That's when I created that patch. What exactly are you talking about here that was adding a considerable delay - the memory copy ? Are you really sure about that? I didn't measure it part by part, but removing relocation gave a noticeable speed-up, this platform is several orders of magnitude slower than the real silicon. So, that should not be surprising. 3. Un-necessary complexity without any benefit for our platform. I Maintaining different configurations of the code that behave differently, that can cause different types of addressing, compile and link and debug issues is also adding complexity. Using a single, well tested approach is one of the benefits even for your platform. Fair enough. But will the new INITCALL framework help? I haven't really followed the discussions on it. But if, as Graeme claims, all relocation stuff is collected in one place and is easily pluggable then maintainability is not a problem, right? Maybe, I should stop the arguments now and wait till that framework is a reality. best regards, Aneesh ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v9 0/4] Add SMDK5250 board support
Dear Chander Kashyap, On 6 February 2012 18:01, Chander Kashyap chander.kash...@linaro.org wrote: This patchset add support for Samsung's SMDK5250 board based on EXYNOS5250 based SoC. It also adds support for MMC SPL booting. The porting is done by Samsung engineers at HQ in System LSI Team. I am contributing in upstreaming the code for the board. Based upon discussions following patches are dropped in this version: Exynos: Add CONFIG_EXYNOS4 Macro to EXYNOS4 based boards Exynos: Clock.c: Replace exynos4 prefix with exynos SMDK5250: enable device tree support is squashed with EXYNOS: Add SMDK5250 board support Chander Kashyap (4): Exynos: Clock.c: Use CONFIG_SYS_CLK_FREQ macro ARM: EXYNOS: Add support for Exynos5 based SoCs EXYNOS: Add SMDK5250 board support EXYNOS: SMDK5250: Add MMC SPL support MAINTAINERS | 1 + Makefile | 1 + arch/arm/cpu/armv7/exynos/clock.c | 214 +- arch/arm/include/asm/arch-exynos/clock.h | 326 + arch/arm/include/asm/arch-exynos/cpu.h | 35 +++- arch/arm/include/asm/arch-exynos/dmc.h | 146 ++ arch/arm/include/asm/arch-exynos/gpio.h | 99 ++- arch/arm/include/asm/arch-exynos/tzpc.h | 52 board/samsung/smdk5250/Makefile | 58 board/samsung/smdk5250/clock_init.c | 202 + board/samsung/smdk5250/dmc_init.c | 462 ++ board/samsung/smdk5250/lowlevel_init.S | 96 ++ board/samsung/smdk5250/mmc_boot.c | 58 board/samsung/smdk5250/setup.h | 451 + board/samsung/smdk5250/smdk5250.c | 146 ++ board/samsung/smdk5250/tzpc_init.c | 48 +++ boards.cfg | 1 + include/configs/s5pc210_universal.h | 1 + include/configs/smdk5250.h | 197 + include/configs/trats.h | 1 + tools/Makefile | 6 + tools/mkexynosspl.c | 122 22 files changed, 2706 insertions(+), 17 deletions(-) create mode 100644 arch/arm/include/asm/arch-exynos/dmc.h create mode 100644 arch/arm/include/asm/arch-exynos/tzpc.h create mode 100644 board/samsung/smdk5250/Makefile create mode 100644 board/samsung/smdk5250/clock_init.c create mode 100644 board/samsung/smdk5250/dmc_init.c create mode 100644 board/samsung/smdk5250/lowlevel_init.S create mode 100644 board/samsung/smdk5250/mmc_boot.c create mode 100644 board/samsung/smdk5250/setup.h create mode 100644 board/samsung/smdk5250/smdk5250.c create mode 100644 board/samsung/smdk5250/tzpc_init.c create mode 100644 include/configs/smdk5250.h create mode 100644 tools/mkexynosspl.c -- applied to u-boot-samsung. Thanks Minkyu Kang. -- from. prom. www.promsoft.net ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] kirkwood_spi: correct access to irq_mask register
On Wed, 2012-02-08 at 01:54 -0800, Prafulla Wadaskar wrote: [...] Subject: RE: [PATCH] kirkwood_spi: correct access to irq_mask register Applied to u-boot-marvell.git master branch Many thanks! Ian. -- Ian Campbell Encyclopedia for sale by father. Son knows everything. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v3 6/7] usb: ulpi: Extend the existing ulpi framework.
Hi Subhashini, On Wed, Feb 8, 2012 at 11:12 PM, SUBHASHINI MANNE subbusi...@gmail.com wrote: Govindraj, I have Gumstix overo board with OM3730 + USB 3326 USB PHY.I want to add EHCI and ULPI support in u-boot. You can refer to the v4 patch series posted earlier: http://www.mail-archive.com/u-boot@lists.denx.de/msg76860.html This patch series adds support for omap4_panda using the ehci-omap framework, You can refer to panda board file change on how to do it. Or you also refer to this patch adding support for OMAP3: TAM3517 http://permalink.gmane.org/gmane.comp.boot-loaders.u-boot/124645 Something similar needs to be done for your board file to support ehci. Once we port the EHCI_OMAP EHCI driver How to test this driver functionality under u-boot environment? usb start; usb info; usb tree; some commands to check if your downstream device is getting enumerated. refer to usb help in u-boot for usage. you can also use fatls and other use case if you have a hub connected to you root port or you can also check for tftpboot if you have ethernet controller over ehci (like in panda or beagle). care to update your config file for usb ehci enabling (refer to v4 patch series as done for panda/beagle) Is there any application/commands to test ULPI functionality under u-boot environment? what kind of ulpi functionality do you want to test omap-ulpi-viewport is basically for the ulpi phy access from INSNREG05_ULPI from ehci reg map to configure and debug phy interface. (chapter 22.2.2.3 ULPI Interfaces from omap36xx TRM v1.x vW) You can refer to OMAP TRM chapter 22.2 High-Speed USB Host Subsystem for reference. -- Thanks, Govindraj.R ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] Please pick up pending Integrator patches
Hi Albert, could you have a look at these patches and possibly pick them up for ARM Integrator: http://patchwork.ozlabs.org/patch/137216/ http://patchwork.ozlabs.org/patch/138669/ http://patchwork.ozlabs.org/patch/138869/ Thanks, Linus Walleij ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH V6 - Part 3 - 0/2] SPI flash enhancements: allow default bus and chip-selects
On 31.01.2012 19:11, Mike Frysinger wrote: On Tuesday 31 January 2012 12:52:06 Eric Nelson wrote: Patch 1 modifies the 'sf' command to allow a default bus and chip-select to be specified by board headers. This allows a bare 'sf' probe command: U-Boot sf probe instead of the more cumbersome usage when a GPIO is tacked onto the chip-select. Otherwise, this command-line would be needed to specify GP3:19 on SabreLite: U-Boot sf probe 0x5300 Patch 2 provides a description of usage and configuration of CONFIG_CMD_SF. you can drop these two SF patches from your mx6q series. i don't want to keep checking to see if you've updated them :p. Now that part 1, 2, 4 and 5 are merged by Stefano to u-boot-imx.git, could we get the two part 3 patches merged, too? Many thanks and best regards Dirk ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] IPv6 Support in U-BOOT
Hello everyone Does u-boot currently support IPv6 ? i have seen several proposals to support IPv6 and also some implementations for specific Soc but havent found any indication for generic support of IPv6 If not supported , is there a plan to support it soon ? Thanks Yehuda ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH V2] bugfix: all Marvell specific build fails due to undefined reference to `get_ticks'
-Original Message- From: Mike Frysinger [mailto:vap...@gentoo.org] Sent: 09 February 2012 09:12 To: u-boot@lists.denx.de Cc: Prafulla Wadaskar; Ashish Karkare; Prabhanjan Sarnaik Subject: Re: [U-Boot] [PATCH V2] bugfix: all Marvell specific build fails due to undefined reference to `get_ticks' On Wednesday 08 February 2012 06:09:32 Prafulla Wadaskar wrote: +ulong get_tbclk (void) no space before the ( happens to all of them Hi Mike Thanks for this comment, actually there are few more places in the code too where such kind of cleanup needed. I will post a separate cleanup patch for the same. Regards.. Prafulla . . . ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] IPv6 Support in U-BOOT
Thanks do you know of any plans to support it in the near future ? see this proposal from wolfgang denx: http://elinux.org/CELF_Project_Proposal/Add_IPV6_support_to_U-Boot On Thu, Feb 9, 2012 at 8:52 AM, amruth vamadev amruth.vama...@gmail.comwrote: No it is not supported. On Thu, Feb 9, 2012 at 11:52 AM, yehuda yitchak yehud...@gmail.com wrote: Hello everyone Does u-boot currently support IPv6 ? i have seen several proposals to support IPv6 and also some implementations for specific Soc but havent found any indication for generic support of IPv6 If not supported , is there a plan to support it soon ? Thanks Yehuda ___ 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] Marvell Alaska Phy loopback mode support using RGMII interface
Hi Amruth Not exactly what you need but drivers/net/phy/marvell.c has some reference for 88E1112. Board/Marvell/sheevaplug/sheevaplug.c has support for 88E1116 which is interfaced over RGMII. Hopefully you may find those useful. Regards.. Prafulla . . . -Original Message- From: u-boot-boun...@lists.denx.de [mailto:u-boot- boun...@lists.denx.de] On Behalf Of amruth vamadev Sent: 08 February 2012 22:43 To: u-boot@lists.denx.de Subject: [U-Boot] Marvell Alaska Phy loopback mode support using RGMII interface Hi Do we have support for RGMII mode to support phy loopback for Marvell Alaska 88E1112 phy. Any inputs helpful. Amruth p.v ___ 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 v3 0/9] tegra: Add I2C driver and associated parts
Hello Tom, Simon Glass wrote: This series brings in an I2C driver for Tegra which can be configured by a flat device tree. It supports 8- and 16-bit addresses and both the normal I2C ports and the DVC port (for controlling the power management unit (PMU)). Recent Linux bindings are used, based on example .dts files found in branch for-3.3/dt at: git://git.kernel.org/pub/scm/linux/kernel/git/olof/tegra.git (I could not find the actual binding documentation to include here) Note: There is still an open question on I2C2 pinmux. The idea of an 'nvidia,pinmux-config' settings did not find favour, so we have no way of passing the correct config to funcmux for this port. Therefore we have disabled it for now. The impact on Seaboard is that the TPM and battery charger cannot be accessed. I am sending this series to the linux-tegra list also, and will do so for future series also. This is because anything to do with fdt also affects the kernel bindings. Please advise if this is not useful. Changes in v2: - Add build warning if CONFIG_SYS_I2C_INIT_BOARD is not defined - Adjust definitions to fit new peripheral clock bindings - Change 'speed' to 'clock-frequency' - Change i2c array to static - Disable port 2 as it is not used - Make i2c/dvc decision come from fdt - Remove i2c configuring using CONFIG (use fdt instead) - Remove u-boot,pinmux binding (sadly) - Return an error if an unavailable i2c bus is selected - Simplify code in i2c_addr_ok() - Tidy comment style - Use DIV_ROUND_UP() instead of a home-grown macro - Use new fdtdec alias decode function Changes in v3: - Add TEGRA_I2C_NUM_CONTROLLERS to select number of I2C ports - Add comment on how to select pinmux for I2C2 - Add comments and warning for mixed alias use in fdtdec - Add new patch to support 16-bit clock divisors required by I2C - Change i2c_init() to reset speed and override the fdt setting - Fix i2c_addr_ok() function to check addresses correctly - Move speed setting from tegra20.dtsi to board .dts file - Rename driver to tegra_i2c since it will later be shared with Tegra3 - Tidy up I2C speed selection to use the peripheral clock - Use CONFIG_TEGRA_I2C instead of CONFIG_TEGRA2_I2C Simon Glass (8): tegra: Rename NV_PA_PMC_BASE to TEGRA2_PMC_BASE fdt: Add function to allow aliases to refer to multiple nodes tegra: Enhance clock support to handle 16-bit clock divisors tegra: fdt: i2c: Add extra I2C bindings for U-Boot tegra: i2c: Initialise I2C on Nvidia boards tegra: i2c: Select I2C ordering for Seaboard tegra: i2c: Select number of controllers for Tegra2 boards tegra: i2c: Enable I2C on Seaboard Yen Lin (1): tegra: i2c: Add I2C driver arch/arm/cpu/armv7/tegra2/ap20.c | 10 +- arch/arm/cpu/armv7/tegra2/board.c|2 +- arch/arm/cpu/armv7/tegra2/clock.c| 63 ++- arch/arm/dts/tegra20.dtsi|6 +- arch/arm/include/asm/arch-tegra2/clk_rst.h | 10 +- arch/arm/include/asm/arch-tegra2/tegra2.h|4 +- arch/arm/include/asm/arch-tegra2/tegra_i2c.h | 160 board/nvidia/common/board.c |7 + board/nvidia/dts/tegra2-seaboard.dts | 21 + drivers/i2c/Makefile |1 + drivers/i2c/tegra_i2c.c | 566 ++ include/configs/seaboard.h |8 + include/configs/tegra2-common.h |3 + include/fdtdec.h | 25 ++ lib/fdtdec.c | 24 +- 15 files changed, 873 insertions(+), 37 deletions(-) create mode 100644 arch/arm/include/asm/arch-tegra2/tegra_i2c.h create mode 100644 drivers/i2c/tegra_i2c.c Do you want to pick up this patchserie? So I can send my Ack for it. If I should pick it up, please send your Acked-by, thanks! bye, Heiko -- DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] i.MX5/6 U-Boot: Cache enabling
On 04.02.2012 11:18, Marek Vasut wrote: Let's discuss how to enable the i.MX5/6 caches in U-Boot: On 03.02.2012 12:00, Stefano Babic wrote: On 03/02/2012 11:18, Dirk Behme wrote: ... As your concerns are surely related to speed up the boot process, IMHO we can focus efforts to add cache support for MX5 / MX6. Ok, sounds good. Any idea what has to be done for this? Or what would be the steps for this? As armv7 architecture, the MX can profit of the work already done for other SOCs. Functions for enabling / disabling / invalidate caches are already provided, in arch/arm/lib and arch/arm/cpu/armv7/cache_v7.c. So at least for MX5/MX6. But we should change MXC drivers to be cache-aware. At least the FEC driver and MMC driver are known to not work when dcache is on. Marek, Troy, Fabio: What do you think is needed to make the i.MX5/6 FEC driver cache-aware? I already have a partly finished implementation of FEC ethernet with cache support somewhere on my drive. Do you like to share this? Many thanks and best regards Try the attached stuff, it's likely crap and needs rebasing. It might give you some pointers as of how to handle this. Dirk From b77e8f6347b456883f27dc2323fbac0453e16110 Mon Sep 17 00:00:00 2001 From: Marek Vasut marek.va...@gmail.com Date: Fri, 19 Aug 2011 23:16:03 +0200 Subject: [PATCH 45/52] FEC: Fix to work with data cache enabled This patch fixes FEC ethernet driver to work with data caches. Changes done: - Buffers are now allocated aligned - Descriptors are marked as free only when whole cacheline containing them is free in fec_recv(). - Introduction of CONFIG_FEC_DESC_ALIGNMENT, which specifies on what boundary the descriptors shall be aligned. This allows aligning them on cacheline boundary on architectures where the cacheline isn't 16 bytes wide (ARMv5 has 32 bytes long cacheline). - Introduction of CONFIG_FEC_DATA_ALIGNMENT, DTTO see above, for data buffers. Signed-off-by: Marek Vasut marek.va...@gmail.com --- drivers/net/fec_mxc.c | 255 +++-- drivers/net/fec_mxc.h | 19 + 2 files changed, 185 insertions(+), 89 deletions(-) diff --git a/drivers/net/fec_mxc.c b/drivers/net/fec_mxc.c index e67b01f..aec6e89 100644 --- a/drivers/net/fec_mxc.c +++ b/drivers/net/fec_mxc.c @@ -50,6 +50,33 @@ DECLARE_GLOBAL_DATA_PTR; #define CONFIG_FEC_MXC_SWAP_PACKET #endif +#ifndef CONFIG_FEC_DESC_ALIGNMENT +#define CONFIG_FEC_DESC_ALIGNMENT 16 +#endif + +#ifndef CONFIG_FEC_DATA_ALIGNMENT +#define CONFIG_FEC_DATA_ALIGNMENT 16 +#endif + +/* Check various alignment issues at compile time */ +#if ((CONFIG_FEC_DESC_ALIGNMENT 16) || (CONFIG_FEC_DESC_ALIGNMENT % 16 != 0)) +#error CONFIG_FEC_DESC_ALIGNMENT must be multiple of 16! +#endif + +#if ((CONFIG_FEC_DATA_ALIGNMENT 16) || (CONFIG_FEC_DATA_ALIGNMENT % 16 != 0)) +#error CONFIG_FEC_DATA_ALIGNMENT must be multiple of 16! +#endif + +#if ((PKTALIGN CONFIG_FEC_DATA_ALIGNMENT) || \ + (PKTALIGN % CONFIG_FEC_DATA_ALIGNMENT != 0)) +#error PKTALIGN must be multiple of CONFIG_FEC_DATA_ALIGNMENT! +#endif + +#if ((PKTSIZE_ALIGN CONFIG_FEC_DATA_ALIGNMENT) || \ + (PKTSIZE_ALIGN % CONFIG_FEC_DATA_ALIGNMENT != 0)) +#error PKTSIZE_ALIGN must be multiple of CONFIG_FEC_DATA_ALIGNMENT! +#endif + #undef DEBUG struct nbuf { @@ -267,43 +294,45 @@ static int fec_tx_task_disable(struct fec_priv *fec) * Initialize receive task's buffer descriptors * @param[in] fec all we know about the device yet * @param[in] count receive buffer count to be allocated - * @param[in] size size of each receive buffer + * @param[in] dsize desired size of each receive buffer * @return 0 on success * * For this task we need additional memory for the data buffers. And each * data buffer requires some alignment. Thy must be aligned to a specific - * boundary each (DB_DATA_ALIGNMENT). + * boundary each. */ -static int fec_rbd_init(struct fec_priv *fec, int count, int size) +static int fec_rbd_init(struct fec_priv *fec, int count, int dsize) { - int ix; - uint32_t p = 0; - - /* reserve data memory and consider alignment */ - if (fec-rdb_ptr == NULL) - fec-rdb_ptr = malloc(size * count + DB_DATA_ALIGNMENT); - p = (uint32_t)fec-rdb_ptr; - if (!p) { - puts(fec_mxc: not enough malloc memory\n); - return -ENOMEM; - } - memset((void *)p, 0, size * count + DB_DATA_ALIGNMENT); - p += DB_DATA_ALIGNMENT-1; - p = ~(DB_DATA_ALIGNMENT-1); - - for (ix = 0; ix count; ix++) { - writel(p, fec-rbd_base[ix].data_pointer); - p += size; - writew(FEC_RBD_EMPTY, fec-rbd_base[ix].status); - writew(0, fec-rbd_base[ix].data_length); - } + uint32_t size; + int i; + uint8_t *data; + /* - * mark the last RBD to close the ring + * Allocate memory for the buffers. This allocation respects the + * alignment */ - writew(FEC_RBD_WRAP | FEC_RBD_EMPTY, fec-rbd_base[ix - 1].status); + size = roundup(dsize, CONFIG_FEC_DATA_ALIGNMENT); + for (i = 0; i count; i++) { + data =
Re: [U-Boot] [PATCH 2/2] mx6qsabrelite: add and enable USB Host 1 support
Hi Wolfgang, On 08.02.2012 16:23, Wolfgang Grandegger wrote: Cc: Stefano Babic sba...@denx.de Cc: Jason Liu jason@linaro.org Signed-off-by: Wolfgang Grandegger w...@denx.de --- board/freescale/mx6qsabrelite/mx6qsabrelite.c | 12 include/configs/mx6qsabrelite.h | 15 +++ 2 files changed, 27 insertions(+), 0 deletions(-) diff --git a/board/freescale/mx6qsabrelite/mx6qsabrelite.c b/board/freescale/mx6qsabrelite/mx6qsabrelite.c index 4028789..01ecec4 100644 --- a/board/freescale/mx6qsabrelite/mx6qsabrelite.c +++ b/board/freescale/mx6qsabrelite/mx6qsabrelite.c @@ -77,6 +77,18 @@ static void setup_iomux_uart(void) imx_iomux_v3_setup_multiple_pads(uart2_pads, ARRAY_SIZE(uart2_pads)); } +#ifdef CONFIG_USB_EHCI_MX6 +int board_ehci_hcd_init(int port) +{ + imx_iomux_v3_setup_multiple_pads(usb_pads, ARRAY_SIZE(usb_pads)); Where is the definition of 'usb_pads'? mx6qsabrelite.c: error: 'usb_pads' undeclared (first use in this function) + /* Reset USB hub */ + gpio_direction_output(204, 0); /* GPIO 7-12 */ With http://git.denx.de/?p=u-boot/u-boot-imx.git;a=commitdiff;h=7861b0f3eb638df23b992f89229c3b416634b6fa we might want to use something like gpio_direction_output(GPIO_NUMBER(7, 12), 0); ? Same below for gpio_set_value() ? + mdelay(2); + gpio_set_value(204, 1); +} mx6qsabrelite.c: warning: no return statement in function returning non-void Best regards Dirk ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 1/2] usb/ehci: Add USB support for the MX6Q
Hi Wolfgang, On 08.02.2012 16:23, Wolfgang Grandegger wrote: Currently, only USB Host 1 is supported. Cc: Remy Bohmer li...@bohmer.net Signed-off-by: Wolfgang Grandegger w...@denx.de --- arch/arm/cpu/armv7/mx6/clock.c | 13 ++ arch/arm/include/asm/arch-mx6/imx-regs.h |3 + drivers/usb/host/Makefile|1 + drivers/usb/host/ehci-mx6.c | 205 ++ 4 files changed, 222 insertions(+), 0 deletions(-) create mode 100644 drivers/usb/host/ehci-mx6.c diff --git a/arch/arm/cpu/armv7/mx6/clock.c b/arch/arm/cpu/armv7/mx6/clock.c index fa3a124..ef98563 100644 --- a/arch/arm/cpu/armv7/mx6/clock.c +++ b/arch/arm/cpu/armv7/mx6/clock.c @@ -36,6 +36,19 @@ enum pll_clocks { struct imx_ccm_reg *imx_ccm = (struct imx_ccm_reg *)CCM_BASE_ADDR; +void enable_usboh3_clk(unsigned char enable) +{ + u32 reg; + + reg = __raw_readl(imx_ccm-CCGR6); + if (enable) + reg |= MXC_CCM_CCGR_CG_MASK MXC_CCM_CCGR0_CG0_OFFSET; + else + reg = ~(MXC_CCM_CCGR_CG_MASK MXC_CCM_CCGR0_CG0_OFFSET); + __raw_writel(reg, imx_ccm-CCGR6); + +} + static u32 decode_pll(enum pll_clocks pll, u32 infreq) { u32 div; ... diff --git a/drivers/usb/host/ehci-mx6.c b/drivers/usb/host/ehci-mx6.c new file mode 100644 index 000..b7bf49d --- /dev/null +++ b/drivers/usb/host/ehci-mx6.c ... +int ehci_hcd_init(void) +{ + struct usb_ehci *ehci; + + enable_usboh3_clk(1); ehci-mx6.c: In function 'ehci_hcd_init': ehci-mx6.c:171: warning: implicit declaration of function 'enable_usboh3_clk' Best regards Dirk ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot