[U-Boot] Author: Chandan Nath chandan.n...@ti.com
am335x: Corrected IA TLK110 PHY address This patch is added to correct TLK110 PHY address. The PHY address is changed from 01 (1) to 1e (0) Signed-off-by: Chandan Nath chandan.n...@ti.com Signed-off-by: Hebbar, Gururaja gururaja.heb...@ti.com diff --git a/arch/arm/mach-omap2/devices.c b/arch/arm/mach-omap2/devices.c index 32caa2e..5818c28 100644 --- a/arch/arm/mach-omap2/devices.c +++ b/arch/arm/mach-omap2/devices.c @@ -2165,7 +2165,7 @@ static void am335x_cpsw_init(void) } if (am335x_evmid == IND_AUT_MTR_EVM) { - am335x_cpsw_slaves[0].phy_id = 0:01; + am335x_cpsw_slaves[0].phy_id = 0:1e; am335x_cpsw_slaves[1].phy_id = 0:00; } ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] Author: Chandan Nath chandan.n...@ti.com
Sorry, Please discard this mail. Regards Chandan -Original Message- From: Kumar Nath, Chandan Sent: Monday, October 17, 2011 12:10 PM To: Mohammed, Afzal; u-boot@lists.denx.de Cc: Kumar Nath, Chandan Subject: Author: Chandan Nath chandan.n...@ti.com am335x: Corrected IA TLK110 PHY address This patch is added to correct TLK110 PHY address. The PHY address is changed from 01 (1) to 1e (0) Signed-off-by: Chandan Nath chandan.n...@ti.com Signed-off-by: Hebbar, Gururaja gururaja.heb...@ti.com diff --git a/arch/arm/mach-omap2/devices.c b/arch/arm/mach- omap2/devices.c index 32caa2e..5818c28 100644 --- a/arch/arm/mach-omap2/devices.c +++ b/arch/arm/mach-omap2/devices.c @@ -2165,7 +2165,7 @@ static void am335x_cpsw_init(void) } if (am335x_evmid == IND_AUT_MTR_EVM) { - am335x_cpsw_slaves[0].phy_id = 0:01; + am335x_cpsw_slaves[0].phy_id = 0:1e; am335x_cpsw_slaves[1].phy_id = 0:00; } ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] imx: imx31_phycore.h: fix checkpatch warnings
On 10/16/2011 12:00 AM, Anatolij Gustschin wrote: Cleanup board config file and fix issues reported by checkpatch.pl script. Signed-off-by: Anatolij Gustschin ag...@denx.de Cc: Stefano Babic sba...@denx.de --- include/configs/imx31_phycore.h | 112 +++ 1 files changed, 67 insertions(+), 45 deletions(-) diff --git a/include/configs/imx31_phycore.h b/include/configs/imx31_phycore.h index 48bd50b..f8cc5ec 100644 --- a/include/configs/imx31_phycore.h +++ b/include/configs/imx31_phycore.h @@ -30,7 +30,7 @@ #include asm/arch/imx-regs.h 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
[U-Boot] [PATCH v2 4/5] dm365: add support to print cpu clock information
From: Manjunath Hadli manjunath.ha...@ti.com add support for dm365 in speed.c file to use appropriate PLL clocks to calculate cpu frequency and print. Signed-off-by: sugumar sugu...@ti.com Signed-off-by: Manjunath Hadli manjunath.ha...@ti.com --- arch/arm/cpu/arm926ejs/davinci/speed.c | 43 +++ 1 files changed, 37 insertions(+), 6 deletions(-) diff --git a/arch/arm/cpu/arm926ejs/davinci/speed.c b/arch/arm/cpu/arm926ejs/davinci/speed.c index 8c570ca..d1f227c 100644 --- a/arch/arm/cpu/arm926ejs/davinci/speed.c +++ b/arch/arm/cpu/arm926ejs/davinci/speed.c @@ -51,6 +51,13 @@ #define DDR_PLLDIV PLLC_PLLDIV1 #endif +#ifdef CONFIG_SOC_DM365 +#define ARM_PLLDIV PLLC_PLLDIV2 +#define DDR_PLLDIV PLLC_PLLDIV7 +#define SYSTEM_MOD 0x01C4 +#define PERL_CTRL 0x48 +#endif + #ifdef CONFIG_SOC_DM644X #define ARM_PLLDIV PLLC_PLLDIV2 #define DSP_PLLDIV PLLC_PLLDIV1 @@ -136,13 +143,15 @@ static inline unsigned pll_prediv(unsigned pllbase) return 8; else return pll_div(pllbase, PLLC_PREDIV); +#elif defined(CONFIG_SOC_DM365) + return pll_div(pllbase, PLLC_PREDIV); #endif return 1; } static inline unsigned pll_postdiv(unsigned pllbase) { -#ifdef CONFIG_SOC_DM355 +#if defined(CONFIG_SOC_DM355) || defined(CONFIG_SOC_DM365) return pll_div(pllbase, PLLC_POSTDIV); #elif defined(CONFIG_SOC_DM6446) if (pllbase == DAVINCI_PLL_CNTRL0_BASE) @@ -162,7 +171,11 @@ static unsigned pll_sysclk_mhz(unsigned pll_addr, unsigned div) /* the PLL might be bypassed */ if (readl(pll_addr + PLLC_PLLCTL) BIT(0)) { base /= pll_prediv(pll_addr); - base *= 1 + (readl(pll_addr + PLLC_PLLM) 0x0ff); +#ifdef CONFIG_SOC_DM365 + base *= (2 * (readl(pll_addr + PLLC_PLLM) 0x3ff)); +#else + base *= (1 + (readl(pll_addr + PLLC_PLLM) 0x0ff)); +#endif base /= pll_postdiv(pll_addr); } return DIV_ROUND_UP(base, 1000 * pll_div(pll_addr, div)); @@ -181,20 +194,38 @@ int showclocks(cmd_tbl_t *cmdtp, /* REVISIT fetch and display CPU ID and revision information * too ... that will matter as more revisions appear. */ + unsigned int pllbase; + unsigned int sysdiv; + printf(Clock configuration:\n); - printf(Cores: ARM %d MHz, - pll_sysclk_mhz(DAVINCI_PLL_CNTRL0_BASE, ARM_PLLDIV)); + pllbase = DAVINCI_PLL_CNTRL0_BASE; + sysdiv = ARM_PLLDIV; +#ifdef CONFIG_SOC_DM365 + pllbase = (readl(SYSTEM_MOD + PERL_CTRL) BIT(29)) ? + DAVINCI_PLL_CNTRL1_BASE : DAVINCI_PLL_CNTRL0_BASE; +#endif + + printf(Cores: ARM %d MHz, pll_sysclk_mhz(pllbase, sysdiv)); #ifdef DSP_PLLDIV printf(, DSP %d MHz, pll_sysclk_mhz(DAVINCI_PLL_CNTRL0_BASE, DSP_PLLDIV)); #endif + pllbase = DAVINCI_PLL_CNTRL1_BASE; + sysdiv = DDR_PLLDIV; +#ifdef CONFIG_SOC_DM365 + pllbase = (readl(SYSTEM_MOD + PERL_CTRL) BIT(27)) ? +DAVINCI_PLL_CNTRL1_BASE : DAVINCI_PLL_CNTRL0_BASE; + + if (pllbase == DAVINCI_PLL_CNTRL1_BASE) + sysdiv = PLLC_PLLDIV3; +#endif + printf(\nDDR: %d MHz\n, /* DDR PHY uses an x2 input clock */ - pll_sysclk_mhz(DAVINCI_PLL_CNTRL1_BASE, DDR_PLLDIV) - / 2); + pll_sysclk_mhz(pllbase, sysdiv) / 2); return 0; } -- 1.6.2.4 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v2 3/5] davinci: add clocks command
From: Manjunath Hadli manjunath.ha...@ti.com add 'clocks' command to print various clock frequency info found in SOC such as ARM core frequency, DSP core frequency and DDR frequency. Signed-off-by: Manjunath Hadli manjunath.ha...@ti.com --- arch/arm/cpu/arm926ejs/davinci/speed.c | 25 ++--- 1 files changed, 18 insertions(+), 7 deletions(-) diff --git a/arch/arm/cpu/arm926ejs/davinci/speed.c b/arch/arm/cpu/arm926ejs/davinci/speed.c index 3cc845f..8c570ca 100644 --- a/arch/arm/cpu/arm926ejs/davinci/speed.c +++ b/arch/arm/cpu/arm926ejs/davinci/speed.c @@ -25,6 +25,7 @@ #include netdev.h #include asm/arch/hardware.h #include asm/io.h +#include command.h /* offsets from PLL controller base */ #define PLLC_PLLCTL0x100 @@ -167,11 +168,21 @@ static unsigned pll_sysclk_mhz(unsigned pll_addr, unsigned div) return DIV_ROUND_UP(base, 1000 * pll_div(pll_addr, div)); } -int print_cpuinfo(void) +#ifdef DAVINCI_DM6467EVM +unsigned int davinci_arm_clk_get() +{ + return pll_sysclk_mhz(DAVINCI_PLL_CNTRL0_BASE, ARM_PLLDIV) * 100; +} +#endif + +int showclocks(cmd_tbl_t *cmdtp, + int flag, int argc, char * const argv[]) { /* REVISIT fetch and display CPU ID and revision information * too ... that will matter as more revisions appear. */ + printf(Clock configuration:\n); + printf(Cores: ARM %d MHz, pll_sysclk_mhz(DAVINCI_PLL_CNTRL0_BASE, ARM_PLLDIV)); @@ -185,11 +196,11 @@ int print_cpuinfo(void) pll_sysclk_mhz(DAVINCI_PLL_CNTRL1_BASE, DDR_PLLDIV) / 2); return 0; -} -#ifdef DAVINCI_DM6467EVM -unsigned int davinci_arm_clk_get() -{ - return pll_sysclk_mhz(DAVINCI_PLL_CNTRL0_BASE, ARM_PLLDIV) * 100; } -#endif + +U_BOOT_CMD( + clocks, 1, 0, showclocks, + display clocks, + +); -- 1.6.2.4 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v2 5/5] da8xx: print ARM and DDR frequency from u-boot
From: Manjunath Hadli manjunath.ha...@ti.com print ARM and DDR frequency for da8xx as part of clocks command and a function is added in hardware.h to find which PLL clock is used. Signed-off-by: Rajashekhara, Sudhakar sudhakar@ti.com Signed-off-by: Manjunath Hadli manjunath.ha...@ti.com --- arch/arm/cpu/arm926ejs/davinci/speed.c | 13 ++--- arch/arm/include/asm/arch-davinci/hardware.h | 12 2 files changed, 22 insertions(+), 3 deletions(-) diff --git a/arch/arm/cpu/arm926ejs/davinci/speed.c b/arch/arm/cpu/arm926ejs/davinci/speed.c index d1f227c..9849af2 100644 --- a/arch/arm/cpu/arm926ejs/davinci/speed.c +++ b/arch/arm/cpu/arm926ejs/davinci/speed.c @@ -126,7 +126,7 @@ out: } #endif /* CONFIG_SOC_DA8XX */ - +#ifndef CONFIG_SOC_DA8XX static unsigned pll_div(unsigned pllbase, unsigned offset) { u32 div; @@ -180,6 +180,7 @@ static unsigned pll_sysclk_mhz(unsigned pll_addr, unsigned div) } return DIV_ROUND_UP(base, 1000 * pll_div(pll_addr, div)); } +#endif #ifdef DAVINCI_DM6467EVM unsigned int davinci_arm_clk_get() @@ -194,10 +195,15 @@ int showclocks(cmd_tbl_t *cmdtp, /* REVISIT fetch and display CPU ID and revision information * too ... that will matter as more revisions appear. */ - unsigned int pllbase; - unsigned int sysdiv; printf(Clock configuration:\n); +#ifdef CONFIG_SOC_DA8XX + char buf[32]; + printf( ARM: %-4s MHz\n, strmhz(buf, clk_get(DAVINCI_ARM_CLKID))); + printf( DDR: %-4s MHz\n, strmhz(buf, clk_get(DAVINCI_DDR_CLKID)/2)); +#else + unsigned int pllbase; + unsigned int sysdiv; pllbase = DAVINCI_PLL_CNTRL0_BASE; sysdiv = ARM_PLLDIV; @@ -226,6 +232,7 @@ int showclocks(cmd_tbl_t *cmdtp, printf(\nDDR: %d MHz\n, /* DDR PHY uses an x2 input clock */ pll_sysclk_mhz(pllbase, sysdiv) / 2); +#endif return 0; } diff --git a/arch/arm/include/asm/arch-davinci/hardware.h b/arch/arm/include/asm/arch-davinci/hardware.h index b6a3209..3c2a634 100644 --- a/arch/arm/include/asm/arch-davinci/hardware.h +++ b/arch/arm/include/asm/arch-davinci/hardware.h @@ -35,6 +35,7 @@ #include config.h #include asm/sizes.h +#include asm/io.h #defineREG(addr) (*(volatile unsigned int *)(addr)) #define REG_P(addr)((volatile unsigned int *)(addr)) @@ -410,8 +411,13 @@ struct davinci_pllc_regs { #define DAVINCI_PLLC_DIV_MASK 0x1f #define ASYNC3 get_async3_src() +#define EMIFB get_emifb_src() + +#define PLL1_PLLM ((1 16) | DAVINCI_PLLM_CLKID) +#define PLL1_SYSCLK1 ((1 16) | 0x1) #define PLL1_SYSCLK2 ((1 16) | 0x2) #define DAVINCI_SPI1_CLKID (cpu_is_da830() ? 2 : ASYNC3) +#define DAVINCI_DDR_CLKID EMIFB /* Clock IDs */ enum davinci_clk_ids { DAVINCI_SPI0_CLKID = 2, @@ -536,6 +542,12 @@ static inline int get_async3_src(void) PLL1_SYSCLK2 : 2; } +static inline int get_emifb_src(void) +{ + return (readl(davinci_syscfg_regs-cfgchip3) 0x80) ? + PLL1_PLLM : PLL1_SYSCLK1; +} + #endif /* CONFIG_SOC_DA8XX */ #endif /* __ASM_ARCH_HARDWARE_H */ -- 1.6.2.4 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v2 2/5] davinci: remove macro CONFIG_DISPLAY_CPUINFO
From: Manjunath Hadli manjunath.ha...@ti.com remove the macro CONFIG_DISPLAY_CPUINFO as it is no longer required. This is because clock info will be printed as part 'clocks' command. Signed-off-by: Manjunath Hadli manjunath.ha...@ti.com --- arch/arm/cpu/arm926ejs/davinci/speed.c |2 -- include/configs/davinci_dm355evm.h |1 - include/configs/davinci_dm355leopard.h |1 - include/configs/davinci_dm6467evm.h|1 - include/configs/davinci_dvevm.h|1 - include/configs/davinci_schmoogie.h|1 - include/configs/davinci_sffsdr.h |1 - include/configs/davinci_sonata.h |1 - 8 files changed, 0 insertions(+), 9 deletions(-) diff --git a/arch/arm/cpu/arm926ejs/davinci/speed.c b/arch/arm/cpu/arm926ejs/davinci/speed.c index 40716f6..3cc845f 100644 --- a/arch/arm/cpu/arm926ejs/davinci/speed.c +++ b/arch/arm/cpu/arm926ejs/davinci/speed.c @@ -118,7 +118,6 @@ out: } #endif /* CONFIG_SOC_DA8XX */ -#ifdef CONFIG_DISPLAY_CPUINFO static unsigned pll_div(unsigned pllbase, unsigned offset) { @@ -194,4 +193,3 @@ unsigned int davinci_arm_clk_get() return pll_sysclk_mhz(DAVINCI_PLL_CNTRL0_BASE, ARM_PLLDIV) * 100; } #endif -#endif diff --git a/include/configs/davinci_dm355evm.h b/include/configs/davinci_dm355evm.h index ddf673c..8578730 100644 --- a/include/configs/davinci_dm355evm.h +++ b/include/configs/davinci_dm355evm.h @@ -26,7 +26,6 @@ #define CONFIG_SKIP_LOWLEVEL_INIT /* U-Boot is a 3rd stage loader */ #define CONFIG_SYS_NO_FLASH/* that is, no *NOR* flash */ #define CONFIG_SYS_CONSOLE_INFO_QUIET -#define CONFIG_DISPLAY_CPUINFO /* SoC Configuration */ #define CONFIG_ARM926EJS /* arm926ejs CPU */ diff --git a/include/configs/davinci_dm355leopard.h b/include/configs/davinci_dm355leopard.h index dfa0a00..eaff66e 100644 --- a/include/configs/davinci_dm355leopard.h +++ b/include/configs/davinci_dm355leopard.h @@ -25,7 +25,6 @@ #define CONFIG_SKIP_LOWLEVEL_INIT /* U-Boot is a 3rd stage loader */ #define CONFIG_SYS_NO_FLASH/* that is, no *NOR* flash */ #define CONFIG_SYS_CONSOLE_INFO_QUIET -#define CONFIG_DISPLAY_CPUINFO /* SoC Configuration */ #define CONFIG_ARM926EJS /* arm926ejs CPU */ diff --git a/include/configs/davinci_dm6467evm.h b/include/configs/davinci_dm6467evm.h index c9a0cd1..ddfd3ed 100644 --- a/include/configs/davinci_dm6467evm.h +++ b/include/configs/davinci_dm6467evm.h @@ -22,7 +22,6 @@ /* Spectrum Digital TMS320DM6467 EVM board */ #define DAVINCI_DM6467EVM -#define CONFIG_DISPLAY_CPUINFO #define CONFIG_SYS_USE_NAND #define CONFIG_SYS_NAND_SMALLPAGE diff --git a/include/configs/davinci_dvevm.h b/include/configs/davinci_dvevm.h index c052517..a2aa3c3 100644 --- a/include/configs/davinci_dvevm.h +++ b/include/configs/davinci_dvevm.h @@ -51,7 +51,6 @@ #define DV_EVM #define CONFIG_SYS_NAND_SMALLPAGE #define CONFIG_SYS_USE_NAND -#define CONFIG_DISPLAY_CPUINFO /*===*/ /* SoC Configuration */ /*===*/ diff --git a/include/configs/davinci_schmoogie.h b/include/configs/davinci_schmoogie.h index 5eaa198..66777fd 100644 --- a/include/configs/davinci_schmoogie.h +++ b/include/configs/davinci_schmoogie.h @@ -26,7 +26,6 @@ #define SCHMOOGIE #define CONFIG_SYS_NAND_LARGEPAGE #define CONFIG_SYS_USE_NAND -#define CONFIG_DISPLAY_CPUINFO /*===*/ /* SoC Configuration */ /*===*/ diff --git a/include/configs/davinci_sffsdr.h b/include/configs/davinci_sffsdr.h index 0c65391..a2da65a 100644 --- a/include/configs/davinci_sffsdr.h +++ b/include/configs/davinci_sffsdr.h @@ -28,7 +28,6 @@ #define CONFIG_SYS_NAND_LARGEPAGE #define CONFIG_SYS_USE_NAND #define CONFIG_SYS_USE_DSPLINK /* don't power up the DSP. */ -#define CONFIG_DISPLAY_CPUINFO /* SoC Configuration */ #define CONFIG_ARM926EJS /* arm926ejs CPU core */ #define CONFIG_SYS_TIMERBASE 0x01c21400 /* use timer 0 */ diff --git a/include/configs/davinci_sonata.h b/include/configs/davinci_sonata.h index 74530e8..6d4bf0d 100644 --- a/include/configs/davinci_sonata.h +++ b/include/configs/davinci_sonata.h @@ -51,7 +51,6 @@ #define SONATA_BOARD #define CONFIG_SYS_NAND_SMALLPAGE #define CONFIG_SYS_USE_NOR -#define CONFIG_DISPLAY_CPUINFO /*===*/ /* SoC Configuration */ /*===*/ -- 1.6.2.4 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v2 0/5] addition of clocks command for davinci
From: Manjunath Hadli manjunath.ha...@ti.com This patch series adds new command - 'clocks' for davinci family of SOCs. The command prints CPU, DSP core frequencies and DDR frequency. Also, support for printing frequency info during u-boot initialization is removed as it will delay u-boot coming up. Changes for v2: a) fixed checkpatch warnings. Manjunath Hadli (5): davinci : move clock related functions to new file davinci: remove macro CONFIG_DISPLAY_CPUINFO davinci: add clocks command dm365: add support to print cpu clock information da8xx: print ARM and DDR frequency from u-boot arch/arm/cpu/arm926ejs/davinci/Makefile |2 +- arch/arm/cpu/arm926ejs/davinci/cpu.c | 185 --- arch/arm/cpu/arm926ejs/davinci/speed.c | 244 ++ arch/arm/include/asm/arch-davinci/hardware.h | 12 ++ include/configs/davinci_dm355evm.h |1 - include/configs/davinci_dm355leopard.h |1 - include/configs/davinci_dm6467evm.h |1 - include/configs/davinci_dvevm.h |1 - include/configs/davinci_schmoogie.h |1 - include/configs/davinci_sffsdr.h |1 - include/configs/davinci_sonata.h |1 - 11 files changed, 257 insertions(+), 193 deletions(-) create mode 100644 arch/arm/cpu/arm926ejs/davinci/speed.c ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v2 1/5] davinci : move clock related functions to new file
From: Manjunath Hadli manjunath.ha...@ti.com move the functions related to clock from cpu.c to the new file speed.c. Removed volatile where ever possible and replaced REG instructions by readl. Signed-off-by: Manjunath Hadli manjunath.ha...@ti.com --- arch/arm/cpu/arm926ejs/davinci/Makefile |2 +- arch/arm/cpu/arm926ejs/davinci/cpu.c| 185 - arch/arm/cpu/arm926ejs/davinci/speed.c | 197 +++ 3 files changed, 198 insertions(+), 186 deletions(-) create mode 100644 arch/arm/cpu/arm926ejs/davinci/speed.c diff --git a/arch/arm/cpu/arm926ejs/davinci/Makefile b/arch/arm/cpu/arm926ejs/davinci/Makefile index 0310957..12457ea 100644 --- a/arch/arm/cpu/arm926ejs/davinci/Makefile +++ b/arch/arm/cpu/arm926ejs/davinci/Makefile @@ -27,7 +27,7 @@ include $(TOPDIR)/config.mk LIB= $(obj)lib$(SOC).o -COBJS-y+= cpu.o timer.o psc.o +COBJS-y+= cpu.o timer.o psc.o speed.o COBJS-$(CONFIG_AM18018_LOWLEVEL) += am1808_lowlevel.o COBJS-$(CONFIG_SOC_DM355) += dm355.o COBJS-$(CONFIG_SOC_DM365) += dm365.o diff --git a/arch/arm/cpu/arm926ejs/davinci/cpu.c b/arch/arm/cpu/arm926ejs/davinci/cpu.c index 02819f6..c2f72d6 100644 --- a/arch/arm/cpu/arm926ejs/davinci/cpu.c +++ b/arch/arm/cpu/arm926ejs/davinci/cpu.c @@ -22,191 +22,6 @@ #include common.h #include netdev.h -#include asm/arch/hardware.h -#include asm/io.h - -/* offsets from PLL controller base */ -#define PLLC_PLLCTL0x100 -#define PLLC_PLLM 0x110 -#define PLLC_PREDIV0x114 -#define PLLC_PLLDIV1 0x118 -#define PLLC_PLLDIV2 0x11c -#define PLLC_PLLDIV3 0x120 -#define PLLC_POSTDIV 0x128 -#define PLLC_BPDIV 0x12c -#define PLLC_PLLDIV4 0x160 -#define PLLC_PLLDIV5 0x164 -#define PLLC_PLLDIV6 0x168 -#define PLLC_PLLDIV7 0x16c -#define PLLC_PLLDIV8 0x170 -#define PLLC_PLLDIV9 0x174 - -#define BIT(x) (1 (x)) - -/* SOC-specific pll info */ -#ifdef CONFIG_SOC_DM355 -#define ARM_PLLDIV PLLC_PLLDIV1 -#define DDR_PLLDIV PLLC_PLLDIV1 -#endif - -#ifdef CONFIG_SOC_DM644X -#define ARM_PLLDIV PLLC_PLLDIV2 -#define DSP_PLLDIV PLLC_PLLDIV1 -#define DDR_PLLDIV PLLC_PLLDIV2 -#endif - -#ifdef CONFIG_SOC_DM646X -#define DSP_PLLDIV PLLC_PLLDIV1 -#define ARM_PLLDIV PLLC_PLLDIV2 -#define DDR_PLLDIV PLLC_PLLDIV1 -#endif - -#ifdef CONFIG_SOC_DA8XX -unsigned int sysdiv[9] = { - PLLC_PLLDIV1, PLLC_PLLDIV2, PLLC_PLLDIV3, PLLC_PLLDIV4, PLLC_PLLDIV5, - PLLC_PLLDIV6, PLLC_PLLDIV7, PLLC_PLLDIV8, PLLC_PLLDIV9 -}; - -int clk_get(enum davinci_clk_ids id) -{ - int pre_div; - int pllm; - int post_div; - int pll_out; - unsigned int pll_base; - - pll_out = CONFIG_SYS_OSCIN_FREQ; - - if (id == DAVINCI_AUXCLK_CLKID) - goto out; - - if ((id 16) == 1) - pll_base = (unsigned int)davinci_pllc1_regs; - else - pll_base = (unsigned int)davinci_pllc0_regs; - - id = 0x; - - /* -* Lets keep this simple. Combining operations can result in -* unexpected approximations -*/ - pre_div = (readl(pll_base + PLLC_PREDIV) - DAVINCI_PLLC_DIV_MASK) + 1; - pllm = readl(pll_base + PLLC_PLLM) + 1; - - pll_out /= pre_div; - pll_out *= pllm; - - if (id == DAVINCI_PLLM_CLKID) - goto out; - - post_div = (readl(pll_base + PLLC_POSTDIV) - DAVINCI_PLLC_DIV_MASK) + 1; - - pll_out /= post_div; - - if (id == DAVINCI_PLLC_CLKID) - goto out; - - pll_out /= (readl(pll_base + sysdiv[id - 1]) - DAVINCI_PLLC_DIV_MASK) + 1; - -out: - return pll_out; -} -#ifdef CONFIG_DISPLAY_CPUINFO -int print_cpuinfo(void) -{ - printf(Cores: ARM %d MHz, - clk_get(DAVINCI_ARM_CLKID) / 100); - printf(\nDDR: %d MHz\n, - /* DDR PHY uses an x2 input clock */ - clk_get(0x10001) / 100); - return 0; -} -#endif -#else /* CONFIG_SOC_DA8XX */ - -#ifdef CONFIG_DISPLAY_CPUINFO - -static unsigned pll_div(volatile void *pllbase, unsigned offset) -{ - u32 div; - - div = REG(pllbase + offset); - return (div BIT(15)) ? (1 + (div 0x1f)) : 1; -} - -static inline unsigned pll_prediv(volatile void *pllbase) -{ -#ifdef CONFIG_SOC_DM355 - /* this register read seems to fail on pll0 */ - if (pllbase == (volatile void *)DAVINCI_PLL_CNTRL0_BASE) - return 8; - else - return pll_div(pllbase, PLLC_PREDIV); -#endif - return 1; -} - -static inline unsigned pll_postdiv(volatile void *pllbase) -{ -#ifdef CONFIG_SOC_DM355 - return pll_div(pllbase, PLLC_POSTDIV); -#elif defined(CONFIG_SOC_DM6446) - if (pllbase == (volatile void *)DAVINCI_PLL_CNTRL0_BASE) - return pll_div(pllbase, PLLC_POSTDIV); -#endif -
[U-Boot] [GIT PULL] Pull request: u-boot-imx
Hi Albert, please pull from u-boot-imx, thanks. Generating the pull request I see that three patches are missing (the three patches by Łukasz Majewski). However, everything in the tree seems correct and the tree is already rebased on uboot_arm. Let me know if you find any issue. The following changes since commit e36544d37385c4a4b525e18326feb3664d2268fa: omap: overo: Disable pull-ups on camera PCLK, HS and VS signals (2011-10-14 22:15:13 +0200) are available in the git repository at: git://www.denx.de/git/u-boot-imx.git master Fabio Estevam (2): mx31pdk: Remove unneeded config imx: fix coding style Helmut Raiger (1): mx31: provide readable WEIM CS accessor Marek Vasut (1): I2C: Add i2c_get/set_speed() to mxc_i2c.c Stefano Babic (15): MX51: vision2: Set global macros misc: pmic: Freescale PMIC switches to generic PMIC driver MX5: vision2: use new pmic driver RTC: Switch mc13783 to generic pmic code MX3: qong: use new pmic driver MX5: efikamx/efikasb: use new pmic driver misc: pmic: use I2C_SET_BUS in pmic I2C misc: pmic: addI2C support to pmic_fsl driver MX35: mx35pdk: use new pmic driver MX5: mx51evk: use new pmic driver MX5: mx53evk: use new pmic driver MX31: mx31_litekit: use new pmic driver MX31: mx31ads: use new pmic driver misc:pmic:max8998 MAX8998 support at a new PMIC driver. misc:pmic:samsung Enable PMIC driver at GONI target arch/arm/cpu/arm1136/mx31/generic.c | 11 ++ arch/arm/cpu/arm1136/mx31/timer.c | 23 ++- arch/arm/cpu/arm1136/mx35/generic.c |2 +- arch/arm/cpu/arm926ejs/mx25/generic.c | 110 +++--- arch/arm/cpu/arm926ejs/mx25/reset.c |2 +- arch/arm/cpu/arm926ejs/mx25/timer.c | 16 +- arch/arm/cpu/arm926ejs/mx27/reset.c |2 +- arch/arm/cpu/arm926ejs/mx27/timer.c | 14 +- arch/arm/cpu/armv7/mx5/soc.c| 10 +- arch/arm/include/asm/arch-mx31/imx-regs.h | 35 - arch/arm/include/asm/arch-mx31/sys_proto.h | 35 arch/arm/include/asm/arch-mx5/sys_proto.h |8 + board/davedenx/qong/qong.c | 107 ++--- board/efikamx/efikamx.c | 51 --- board/freescale/mx31ads/mx31ads.c | 16 ++- board/freescale/mx31pdk/mx31pdk.c | 14 ++- board/freescale/mx35pdk/mx35pdk.c | 18 ++- board/freescale/mx51evk/mx51evk.c | 47 +++--- board/freescale/mx53evk/mx53evk.c | 17 ++- board/imx31_phycore/imx31_phycore.c | 41 - board/karo/tx25/tx25.c |2 +- board/logicpd/imx27lite/imx27lite.c |6 +- board/logicpd/imx31_litekit/imx31_litekit.c | 30 +++- board/samsung/goni/goni.c |4 + board/ttcontrol/vision2/vision2.c | 33 +++-- boards.cfg |3 +- drivers/i2c/mxc_i2c.c | 31 +++- drivers/misc/Makefile |6 +- drivers/misc/fsl_pmic.c | 235 --- drivers/misc/pmic_core.c| 147 + drivers/misc/pmic_fsl.c | 66 drivers/misc/pmic_i2c.c | 92 +++ drivers/misc/pmic_max8998.c | 43 + drivers/misc/pmic_spi.c | 109 + drivers/rtc/mc13783-rtc.c | 20 ++- include/configs/efikamx.h |5 +- include/configs/imx31_litekit.h |9 +- include/configs/mx31ads.h |8 +- include/configs/mx31pdk.h |6 +- include/configs/mx35pdk.h |5 +- include/configs/mx51evk.h |6 +- include/configs/mx53evk.h |5 +- include/configs/qong.h |5 +- include/configs/s5p_goni.h |4 + include/configs/vision2.h | 22 ++- include/fsl_pmic.h |5 +- include/max8998_pmic.h | 84 ++ include/pmic.h | 71 48 files changed, 1110 insertions(+), 531 deletions(-) create mode 100644 arch/arm/include/asm/arch-mx31/sys_proto.h delete mode 100644 drivers/misc/fsl_pmic.c create mode 100644 drivers/misc/pmic_core.c create mode 100644 drivers/misc/pmic_fsl.c create mode 100644 drivers/misc/pmic_i2c.c create mode 100644 drivers/misc/pmic_max8998.c create mode 100644 drivers/misc/pmic_spi.c create mode 100644 include/max8998_pmic.h create mode 100644 include/pmic.h Thanks, 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:
Re: [U-Boot] [PATCH v2 3/3] mkimage: adding support for Davinci AIS image
On 10/15/2011 10:23 PM, Wolfgang Denk wrote: Dear Stefano Babic, In message 1317889214-10567-1-git-send-email-sba...@denx.de you wrote: Some Davinci processors supports the Application Image Script (AIS) boot process. The patch adds the generation of the AIS image inside the mkimage tool to make possible to generate a bootable U-boot without external tools (TI Davinci AIS Generator). Signed-off-by: Stefano Babic sba...@denx.de CC: Wolfgang Denk w...@denx.de This doesn't apply any more - please rebase, and keep list sorted. Sure - I think the list you mean is uimage_type[], right ? 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 v2] tools/env: add posibility to inject configuration
Am 31.08.2011 17:26, schrieb Andreas Bießmann: If one wants to use fw_printenv/fw_setenv in special variants (eg compiled in MTD parameters without configuration file) he needs to change the sources. This patch add the posibillity to change the behaviour of fw_printenv by defining a specific configuration header at compile time. Signed-off-by: Andreas Bießmann biessm...@corscience.de any comments else? best regards Andreas Bießmann ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v2 3/3] mkimage: adding support for Davinci AIS image
Dear Stefano Babic, In message 4e9be578.6000...@denx.de you wrote: This doesn't apply any more - please rebase, and keep list sorted. Sure - I think the list you mean is uimage_type[], right ? Yes. 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 If all you have is a hammer, everything looks like a nail. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH V3 3/3] mkimage: adding support for Davinci AIS image
Some Davinci processors supports the Application Image Script (AIS) boot process. The patch adds the generation of the AIS image inside the mkimage tool to make possible to generate a bootable U-boot without external tools (TI Davinci AIS Generator). Signed-off-by: Stefano Babic sba...@denx.de CC: Wolfgang Denk w...@denx.de --- Changes since V2: - rebased on mainline and sort uimage_type list (Wolfgang Denk) Changes since V1: - removed warning in gcc 4.6 iwhen -Wunused-but-set-variable is set - drop remained warnings raised by checkpatch common/image.c |9 +- include/image.h |1 + tools/Makefile |4 +- tools/aisimage.c | 451 ++ tools/aisimage.h | 97 tools/mkimage.c |2 + tools/mkimage.h |1 + 7 files changed, 560 insertions(+), 5 deletions(-) create mode 100644 tools/aisimage.c create mode 100644 tools/aisimage.h diff --git a/common/image.c b/common/image.c index ed6b26b..4ec7379 100644 --- a/common/image.c +++ b/common/image.c @@ -130,19 +130,20 @@ static const table_entry_t uimage_os[] = { }; static const table_entry_t uimage_type[] = { + { IH_TYPE_AISIMAGE, aisimage, Davinci AIS image,}, { IH_TYPE_FILESYSTEM, filesystem, Filesystem Image, }, { IH_TYPE_FIRMWARE, firmware, Firmware, }, { IH_TYPE_FLATDT, flat_dt,Flat Device Tree, }, { IH_TYPE_KERNEL, kernel, Kernel Image, }, + { IH_TYPE_KWBIMAGE, kwbimage, Kirkwood Boot Image,}, + { IH_TYPE_IMXIMAGE, imximage, Freescale i.MX Boot Image,}, + { IH_TYPE_INVALID,NULL, Invalid Image, }, { IH_TYPE_MULTI, multi, Multi-File Image, }, + { IH_TYPE_OMAPIMAGE, omapimage, TI OMAP SPL With GP CH,}, { IH_TYPE_RAMDISK,ramdisk,RAMDisk Image, }, { IH_TYPE_SCRIPT, script, Script, }, { IH_TYPE_STANDALONE, standalone, Standalone Program, }, - { IH_TYPE_IMXIMAGE, imximage, Freescale i.MX Boot Image,}, - { IH_TYPE_KWBIMAGE, kwbimage, Kirkwood Boot Image,}, - { IH_TYPE_OMAPIMAGE, omapimage, TI OMAP SPL With GP CH,}, { IH_TYPE_UBLIMAGE, ublimage, Davinci UBL image,}, - { IH_TYPE_INVALID,NULL, Invalid Image, }, { -1, , , }, }; diff --git a/include/image.h b/include/image.h index cca1cc5..52a0cb4 100644 --- a/include/image.h +++ b/include/image.h @@ -159,6 +159,7 @@ #define IH_TYPE_IMXIMAGE 10 /* Freescale IMXBoot Image */ #define IH_TYPE_UBLIMAGE 11 /* Davinci UBL Image*/ #define IH_TYPE_OMAPIMAGE 12 /* TI OMAP Config Header Image */ +#define IH_TYPE_AISIMAGE 13 /* TI Davinci AIS Image */ /* * Compression Types diff --git a/tools/Makefile b/tools/Makefile index fc741d3..df56a25 100644 --- a/tools/Makefile +++ b/tools/Makefile @@ -86,6 +86,7 @@ NOPED_OBJ_FILES-y += fit_image.o OBJ_FILES-$(CONFIG_CMD_NET) += gen_eth_addr.o OBJ_FILES-$(CONFIG_CMD_LOADS) += img2srec.o OBJ_FILES-$(CONFIG_XWAY_SWAP_BYTES) += xway-swap-bytes.o +NOPED_OBJ_FILES-y += aisimage.o NOPED_OBJ_FILES-y += kwbimage.o NOPED_OBJ_FILES-y += imximage.o NOPED_OBJ_FILES-y += omapimage.o @@ -184,7 +185,8 @@ $(obj)xway-swap-bytes$(SFX):$(obj)xway-swap-bytes.o $(HOSTCC) $(HOSTCFLAGS) $(HOSTLDFLAGS) -o $@ $^ $(HOSTSTRIP) $@ -$(obj)mkimage$(SFX): $(obj)crc32.o \ +$(obj)mkimage$(SFX): $(obj)aisimage.o \ + $(obj)crc32.o \ $(obj)default_image.o \ $(obj)fit_image.o \ $(obj)image.o \ diff --git a/tools/aisimage.c b/tools/aisimage.c new file mode 100644 index 000..6a10111 --- /dev/null +++ b/tools/aisimage.c @@ -0,0 +1,451 @@ +/* + * (C) Copyright 2011 + * Stefano Babic, DENX Software Engineering, sba...@denx.de. + * + * See file CREDITS for list of people who contributed to this + * project. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ + +/* Required to obtain the getline
Re: [U-Boot] [PATCH v2 3/5] davinci: add clocks command
Dear Manjunath Hadli, Am 17.10.2011 10:01, schrieb manjunath.ha...@ti.com: From: Manjunath Hadli manjunath.ha...@ti.com add 'clocks' command to print various clock frequency info found in SOC such as ARM core frequency, DSP core frequency and DDR frequency. Isn't that the job of command 'bdi'? Why introduce a new, proprietary command instead of changing still available ones? Well maybe is a 'clocks' command really useful, but then it should be provided to all with a clear interface and not hidden in some architecture specific directory. Best regards Andreas Bießmann ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] kirkwood_spi: add dummy spi_init()
-Original Message- From: Michael Walle [mailto:mich...@walle.cc] Sent: Monday, October 17, 2011 2:13 AM To: Wolfgang Denk Cc: u-boot@lists.denx.de; Prafulla Wadaskar Subject: Re: [PATCH] kirkwood_spi: add dummy spi_init() Hi Wolfgang, Am Sonntag 16 Oktober 2011, 22:25:11 schrieb Wolfgang Denk: In message 201110162032.02236.mich...@walle.cc you wrote: The spi_init() function is missing. Add it. Signed-off-by: Michael Walle mich...@walle.cc ... could you commit this small patch? (acked by mike) No, I cannot. This is kirkwood related and thus has to go through the Marvell custodian. oh sorry :) You had him on Cc: ? No, but now. @prafulla: please commit this patch. Sure, I will review and do it by tomorrow Regards.. Prafulla . . -- Michael ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v2 3/5] davinci: add clocks command
Dear =?ISO-8859-1?Q?Andreas_Bie=DFmann?=, In message 4e9c017d.1080...@gmail.com you wrote: add 'clocks' command to print various clock frequency info found in SOC such as ARM core frequency, DSP core frequency and DDR frequency. Isn't that the job of command 'bdi'? Why introduce a new, proprietary command instead of changing still available ones? bdinfo indeed should include major clock information, but does not necissarily print all relevant data on a specific SoC. Well maybe is a 'clocks' command really useful, but then it should be provided to all with a clear interface and not hidden in some architecture specific directory. Correct. There are already several such implementations (in arch/powerpc/cpu/mpc512x/speed.c and arch/powerpc/cpu/mpc83xx/speed.c), now it is high time to turn this into a generic command that can be used by everyone. 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 Pain is a thing of the mind. The mind can be controlled. -- Spock, Operation -- Annihilate! stardate 3287.2 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 3/4] net: drop !NET_MULTI code
Dear Mike Frysinger, In message 1317585688-3396-4-git-send-email-vap...@gentoo.org you wrote: This is long over due. All but two net drivers have been converted, but those have now been dropped. The only thing left to do is actually delete all references to NET_MULTI and code that is compiled when that is not defined. So here we scrub the core code. Unfortunately this commit breaks a number of boards. For example: ./MAKEALL IDS8247 Configuring for IDS8247 board... ether_fcc.c:75: error: 'CONFIG_SYS_CMXFCR_MASK1' undeclared here (not in a function) ether_fcc.c:76: error: 'CONFIG_SYS_CMXFCR_VALUE1' undeclared here (not in a function) make[1]: *** [/work/wd/tmp-ppc/arch/powerpc/cpu/mpc8260/ether_fcc.o] Error 1 Please fix. 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 God may be subtle, but He isn't plain mean. - Albert Einstein ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v2 1/2] Introduce generic TPM support in u-boot
On Sunday, October 16, 2011 09:49:19 PM Vadim Bendebury wrote: On Sun, Oct 16, 2011 at 5:28 AM, Marek Vasut marek.va...@gmail.com wrote: On Sunday, October 16, 2011 05:45:40 AM Vadim Bendebury wrote: On Sat, Oct 15, 2011 at 8:31 PM, Marek Vasut marek.va...@gmail.com wrote: On Sunday, October 16, 2011 03:04:33 AM Vadim Bendebury wrote: On Sat, Oct 15, 2011 at 2:09 PM, Marek Vasut marek.va...@gmail.com wrote: On Saturday, October 15, 2011 08:47:39 PM Vadim Bendebury wrote: Dear Marek Vasut, thank you for your comments, please see below: On Sat, Oct 15, 2011 at 11:08 AM, Marek Vasut marek.va...@gmail.com wrote: On Saturday, October 15, 2011 05:38:50 AM Vadim Bendebury wrote: TPM (Trusted Platform Module) is an integrated circuit and software platform that provides computer manufacturers with the core components of a subsystem used to assure authenticity, integrity and confidentiality. [...] Quick points: * The license Please suggest the appropriate file header text. Uh ... you should know the license !!! removed the BSD part Are you sure you're not relicensing code you don't own ? I'm just curious, what's the origin of the code ? I'd prefer to avoid legal crap. I am sure. Would you mind answering my second question please ? I wrote this from scratch. Thanks! [...] __v is needed to avoid side effects when invoking the macro. Side effects ? What side effects ? https://www.securecoding.cert.org/confluence/display/seccode/PRE31-C.+Av oid +side-effects+in+arguments+to+unsafe+macros I still don't see it. You use the variable in printf() and writeX(), neither of which change the variable ... so where's the sideeffect ? The side effect comes from the calling site. When data[count++] is used as a macro argument, if there is no intermediate variable defined in the macro declaration, macro expansion inserts data[count++] in the code several times (as many times as the parameter is used in the macro declaration), and in this particular case gets executed twice, resulting in `count' advancing by 2 and wrong `data' values used. Thanks for clearing this Cheers cheers, /vb ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v4 2/2] NS16550: buffer reads
Dear Simon Glass, In message 1318742050-2201-2-git-send-email-...@chromium.org you wrote: ... With it enabled, on ppc it's an extra 396 bytes of image size, and 1056 bytes of BSS. ARM note from Simon Glass s...@chromium.org - ARM code size goes from 212 to 484 bytes (extra 272 bytes), BSS to 1056 bytes. One problem I see is that the code size on some boards grows even if the new option is not enabled. Here a compare before and after applying your patches (without any changes to the respective board configurations): Configuring for AR405 board... textdata bss dec hex filename - 246058 12972 14636 273666 42d02 /work/wd/tmp-ppc/u-boot + 246062 12972 14636 273670 42d06 /work/wd/tmp-ppc/u-boot Configuring for CANBT board... textdata bss dec hex filename - 12071086043876 133190 20846 /work/wd/tmp-ppc/u-boot + 12071486043876 133194 2084a /work/wd/tmp-ppc/u-boot Configuring for pcs440ep board... textdata bss dec hex filename - 296191 19636 345088 660915 a15b3 /work/wd/tmp-ppc/u-boot + 296195 19636 345088 660919 a15b7 /work/wd/tmp-ppc/u-boot ... 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 Out of register space (ugh) - vi ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] dcache:s5p CONFIG_SYS_CACHELINE_SIZE added for s5p GONI target
Define the D-cache line size for S5PC110 GONI reference target. Signed-off-by: Lukasz Majewski l.majew...@samsung.com Signed-off-by: Kyungmin Park kyungmin.p...@samsung.com Cc: Minkyu Kang mk7.k...@samsung.com --- include/configs/s5p_goni.h |2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/include/configs/s5p_goni.h b/include/configs/s5p_goni.h index aa51114..f58f4f1 100644 --- a/include/configs/s5p_goni.h +++ b/include/configs/s5p_goni.h @@ -223,6 +223,8 @@ #define CONFIG_SYS_INIT_SP_ADDR(CONFIG_SYS_LOAD_ADDR - 0x100) +#define CONFIG_SYS_CACHELINE_SIZE 64 + #define CONFIG_PMIC #define CONFIG_PMIC_I2C #define CONFIG_PMIC_MAX8998 -- 1.7.2.3 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] dcache:s5p CONFIG_SYS_CACHELINE_SIZE added for s5p UNIVERSAL C210 target
Define the D-cache line size for S5PC210 UNIVERSAL reference target. Signed-off-by: Lukasz Majewski l.majew...@samsung.com Signed-off-by: Kyungmin Park kyungmin.p...@samsung.com Cc: Minkyu Kang mk7.k...@samsung.com --- include/configs/s5pc210_universal.h |2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/include/configs/s5pc210_universal.h b/include/configs/s5pc210_universal.h index 4031016..ff85ade 100644 --- a/include/configs/s5pc210_universal.h +++ b/include/configs/s5pc210_universal.h @@ -243,4 +243,6 @@ #define CONFIG_SYS_INIT_SP_ADDR(CONFIG_SYS_LOAD_ADDR - GENERATED_GBL_DATA_SIZE) +#define CONFIG_SYS_CACHELINE_SIZE 32 + #endif /* __CONFIG_H */ -- 1.7.2.3 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v4 0/2] usb:gadget:s5p USB Device Controller (UDC) implementation
This patch series adds support for Samsung's USB Device Controller (UDC) on GONI reference target. Lukasz Majewski (2): usb:gadget:s5p USB Device Controller (UDC) implementation usb:gadget:s5p Enabling the USB Gadget framework at GONI arch/arm/include/asm/arch-s5pc1xx/cpu.h|4 + arch/arm/include/asm/arch-s5pc1xx/hs_otg.h | 32 + board/samsung/goni/goni.c | 47 +- drivers/usb/gadget/Makefile|4 + drivers/usb/gadget/regs-otg.h | 209 drivers/usb/gadget/s3c_udc_otg.c | 888 + drivers/usb/gadget/s3c_udc_otg_xfer_dma.c | 1449 include/configs/s5p_goni.h |3 + include/usb/lin_gadget_compat.h| 62 ++ include/usb/s3c_udc.h | 165 10 files changed, 2862 insertions(+), 1 deletions(-) create mode 100644 arch/arm/include/asm/arch-s5pc1xx/hs_otg.h create mode 100644 drivers/usb/gadget/regs-otg.h create mode 100644 drivers/usb/gadget/s3c_udc_otg.c create mode 100644 drivers/usb/gadget/s3c_udc_otg_xfer_dma.c create mode 100644 include/usb/lin_gadget_compat.h create mode 100644 include/usb/s3c_udc.h -- 1.7.2.3 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v4 2/2] usb:gadget:s5p Enabling the USB Gadget framework at GONI
This commit is enabling support for USB Gadgets support at GONI reference target. It uses new generic PMIC framework. Signed-off-by: Lukasz Majewski l.majew...@samsung.com Signed-off-by: Kyungmin Park kyungmin.p...@samsung.com Cc: Minkyu Kang mk7.k...@samsung.com Cc: Remy Bohmer li...@bohmer.net --- Changes for v2: - None Changes for v3: - Error handlers for max8998_set_ldo functions Changes for v4: - Adjust to new generic PMIC framework Depend on: New generic PMIC framework http://patchwork.ozlabs.org/patch/118071/ http://patchwork.ozlabs.org/patch/117565/ http://patchwork.ozlabs.org/patch/117563/ --- arch/arm/include/asm/arch-s5pc1xx/cpu.h|4 ++ arch/arm/include/asm/arch-s5pc1xx/hs_otg.h | 32 +++ board/samsung/goni/goni.c | 47 +++- include/configs/s5p_goni.h |3 ++ 4 files changed, 85 insertions(+), 1 deletions(-) create mode 100644 arch/arm/include/asm/arch-s5pc1xx/hs_otg.h diff --git a/arch/arm/include/asm/arch-s5pc1xx/cpu.h b/arch/arm/include/asm/arch-s5pc1xx/cpu.h index e74959f..e699fc4 100644 --- a/arch/arm/include/asm/arch-s5pc1xx/cpu.h +++ b/arch/arm/include/asm/arch-s5pc1xx/cpu.h @@ -55,6 +55,10 @@ #define S5PC110_VIC1_BASE 0xF210 #define S5PC110_VIC2_BASE 0xF220 #define S5PC110_VIC3_BASE 0xF230 +#define S5PC110_OTG_BASE 0xEC00 +#define S5PC110_PHY_BASE 0xEC10 +#define S5PC110_USB_PHY_CONTROL 0xE010E80C + #ifndef __ASSEMBLY__ #include asm/io.h diff --git a/arch/arm/include/asm/arch-s5pc1xx/hs_otg.h b/arch/arm/include/asm/arch-s5pc1xx/hs_otg.h new file mode 100644 index 000..d68db04 --- /dev/null +++ b/arch/arm/include/asm/arch-s5pc1xx/hs_otg.h @@ -0,0 +1,32 @@ +/* + * (C) Copyright 2009 SAMSUNG Electronics + * Minkyu Kang mk7.k...@samsung.com + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + */ + +#ifndef __ASM_ARCH_HSOTG_H_ +#define __ASM_ARCH_HSOTG_H_ + +#ifndef __ASSEMBLY__ +struct s3c_plat_otg_data { + int (*phy_control)(int on); + unsigned intregs_phy; + unsigned intregs_otg; +}; + +#endif /* __ASSEMBLY__ */ +#endif diff --git a/board/samsung/goni/goni.c b/board/samsung/goni/goni.c index e191bfb..c4fc3e9 100644 --- a/board/samsung/goni/goni.c +++ b/board/samsung/goni/goni.c @@ -26,7 +26,9 @@ #include asm/arch/gpio.h #include asm/arch/mmc.h #include pmic.h - +#include asm/arch/hs_otg.h +#include asm/arch/cpu.h +#include max8998_pmic.h DECLARE_GLOBAL_DATA_PTR; static struct s5pc110_gpio *s5pc110_gpio; @@ -100,3 +102,46 @@ int board_mmc_init(bd_t *bis) return s5p_mmc_init(0, 4); } #endif + +#ifdef CONFIG_USB_GADGET +static int s5pc1xx_phy_control(int on) +{ + int ret; + static int status; + struct pmic *p = get_pmic(); + + if (pmic_probe(p)) + return -1; + + if (on !status) { + ret = pmic_set_output(p, MAX8998_REG_ONOFF1, + MAX8998_LDO3, LDO_ON); + ret = pmic_set_output(p, MAX8998_REG_ONOFF2, + MAX8998_LDO8, LDO_ON); + if (ret) { + puts(MAX8998 LDO setting error!\n); + return -1; + } + status = 1; + } else if (!on status) { + ret = pmic_set_output(p, MAX8998_REG_ONOFF1, + MAX8998_LDO3, LDO_OFF); + ret = pmic_set_output(p, MAX8998_REG_ONOFF2, + MAX8998_LDO8, LDO_OFF); + if (ret) { + puts(MAX8998 LDO setting error!\n); + return -1; + } + status = 0; + } + udelay(1); + + return 0; +} + +struct s3c_plat_otg_data s5pc110_otg_data = { + .phy_control = s5pc1xx_phy_control, + .regs_phy = S5PC110_PHY_BASE, + .regs_otg = S5PC110_OTG_BASE, +}; +#endif diff --git a/include/configs/s5p_goni.h b/include/configs/s5p_goni.h index f58f4f1..969e060 100644 --- a/include/configs/s5p_goni.h +++ b/include/configs/s5p_goni.h @@ -240,5 +240,8 @@ #define CONFIG_SYS_I2C_SPEED 5 #define CONFIG_I2C_MULTI_BUS #define CONFIG_SYS_MAX_I2C_BUS 7 +#define
Re: [U-Boot] [PATCH 3/5 v1] integrator: do not test first part of the memory
Hi Arnaud, On Sun, Oct 16, 2011 at 5:51 PM, Albert ARIBAUD albert.u.b...@aribaud.net wrote: Le 18/09/2011 09:52, Linus Walleij a écrit : When booting from Flash, the Integrator remaps its flash memory from 0x2400 to 0x, and starts executing it at 0x. This ROM thus hides the RAM underneath and first 0x4 bytes of the memory cannot be tested by get_ram_size(). So let's test from 0x4 to the end of detected memory instead. Is this masking of RAM by FLASH a hardware thing that cannot be avoided? Can't the U-Boot startup code somehow remap the FLASH elsewhere, and then proceed to really test the whole RAM? Well, it is unmapped in board_init() but that is post-RAM-test. The reason I cannot unmapp it in dram_init() is that at this point U-Boot is running from flash and has not relocated itself (it wants to test RAM before relocating of course) and the flash it is running from is exactly that which is in the way of the RAM test. So on integrator, the flash memory remaps itself to address 0x when booting from flash, and U-Boot has text base 0x in this case, and is running in flash relative 0x. If it would remap the flash at this point it would unmap itself, and crash. This way of having the flash containing U-Boot remap itself over the system RAM seems to be uncommon, but I'd share the problem with anyone else trying to do something similar I guess. Yours, Linus Walleij ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v4 2/2] NS16550: buffer reads
Dear Simon, In message 1318742050-2201-2-git-send-email-...@chromium.org you wrote: This improves the performance of U-Boot when accepting rapid input, such as pasting a sequence of commands. Without this patch, on P4080DS I see a maximum of around 5 lines can be pasted. With this patch, it handles around 70 lines before lossage, long enough for most things you'd paste. Let me try to summarize my thinking: - It is a fundamental design decision that U-Boot is single tasking. This implies that while a command is running, no other things get done in parallel. This includes communication over the serial line, USB, Ethernet, ... - That means that by design U-Boot does not support multi-line input: as soon as you hit enter U-Boot will start executing your command, and will only become ready for new input when it has completed the execution of the command(s), i. e. after printing the next prompt. - For this suported mode of operation your patch is not needed. It just adds code size and complexity. - Your description rapid input is actually wrong. The speed of input over the serial line is limited by the baud rate settings, and even if you transfer at maximum speed all supported systems are fast enough to receive the data without loss. - The use case you are trying to support is actually multi-line input, so you should describe it as such. I agree that this would be an interesting feature for some use cases, but if we go on and implement it, we should (1) document it properly and (2) implement it in a way that works reliably. - However, your implementation does not result in reliable multi-line input. It works only in a few specific use cases, and will fail silently for others. I don't see a way ho you would announce this new feature. The numbers you mention in the commit message (it handles around 70 lines before lossage) apply for this specific board only, and for your use case only (pasting of short lines that produce no output). So essentially you are saying: hey, we now have multi-line input, but it works only a bit. It will fail sooner or later, without error messages, and I cannot even tell you what the limits for your system are. And it depends on which input you send. This does not exactly sound promising. On the other hand, we also have the rule that things that are useful to some and that don't hurt others should be allowed to go in. What makes me hesitate are two things: - The patch promises a feature (multi-line input), but fails to provide a reliably working implementation. - As it turns out, the patch increases code size even for boards that do not activate this feature. I have to admit that I'm at a loss with a decision here. 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 We don't have to protect the environment -- the Second Coming is at hand. - James Watt ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v4 2/2] NS16550: buffer reads
Dear Simon, I wrote: - However, your implementation does not result in reliable multi-line input. It works only in a few specific use cases, and will fail silently for others. I don't see a way ho you would announce this new feature. The numbers you mention in the commit message (it handles around 70 lines before lossage) apply for this specific board only, and for your use case only (pasting of short lines that produce no output). Actually I believe that the restriction is even worse - I think that any commands that consume any significant amount of time will casue problems, too. Can you please test what happens when you have, for example, a sleep 10 or a erase all in the first few lines of the pasted input ? 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 can it profit a man to gain the whole world and to come to his property with a gastric ulcer, a blown prostate, and bifocals? -- John Steinbeck, _Cannery Row_ ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] Makefile: prevent libgcc to be linked twice
If we define USE_PRIVATE_LIBGCC, PLATFORM_LIBS is used during link. During this last link editing, libgcc may be listed twice and fail. Prevent this using filter-out in top Makefile. Signed-off-by: Nicolas Ferre nicolas.fe...@atmel.com --- Makefile |3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/Makefile b/Makefile index 5db2e0e..4bdfe11 100644 --- a/Makefile +++ b/Makefile @@ -311,7 +311,8 @@ endif else PLATFORM_LIBGCC = -L $(shell dirname `$(CC) $(CFLAGS) -print-libgcc-file-name`) -lgcc endif -PLATFORM_LIBS += $(PLATFORM_LIBGCC) +PLATFORM_LIBS := $(PLATFORM_LIBGCC) \ + $(filter-out %$(PLATFORM_LIBGCC), $(PLATFORM_LIBS)) export PLATFORM_LIBS # Special flags for CPP when processing the linker script. -- 1.7.5.4 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] powerpc: net: restore fcc addr logic
In the recent dropping of !NET_MULTI code (commit e2a53458a7ab37523304), I misread the logic in include/net.h. Some of it was used by NET_MULTI code. So restore it to fix failing boards, and do so in the powerpc asm config header (which is a better place anyways). Signed-off-by: Mike Frysinger vap...@gentoo.org --- note: haven't finished MAKEALL, but this should fix things I think arch/powerpc/include/asm/config.h | 19 +++ 1 files changed, 19 insertions(+), 0 deletions(-) diff --git a/arch/powerpc/include/asm/config.h b/arch/powerpc/include/asm/config.h index d138636..f572e06 100644 --- a/arch/powerpc/include/asm/config.h +++ b/arch/powerpc/include/asm/config.h @@ -36,6 +36,25 @@ # endif #endif +#if defined(CONFIG_CPM2) defined(CONFIG_ETHER_ON_FCC) +# if defined(CONFIG_ETHER_ON_SCC) +# error Ethernet not correctly defined +# endif /* CONFIG_ETHER_ON_SCC */ +# if (CONFIG_ETHER_INDEX == 1) +# define CONFIG_ETHER_ON_FCC1 +# define CONFIG_SYS_CMXFCR_MASK1 CONFIG_SYS_CMXFCR_MASK +# define CONFIG_SYS_CMXFCR_VALUE1 CONFIG_SYS_CMXFCR_VALUE +# elif (CONFIG_ETHER_INDEX == 2) +# define CONFIG_ETHER_ON_FCC2 +# define CONFIG_SYS_CMXFCR_MASK2 CONFIG_SYS_CMXFCR_MASK +# define CONFIG_SYS_CMXFCR_VALUE2 CONFIG_SYS_CMXFCR_VALUE +# elif (CONFIG_ETHER_INDEX == 3) +# define CONFIG_ETHER_ON_FCC3 +# define CONFIG_SYS_CMXFCR_MASK3 CONFIG_SYS_CMXFCR_MASK +# define CONFIG_SYS_CMXFCR_VALUE3 CONFIG_SYS_CMXFCR_VALUE +# endif /* CONFIG_ETHER_INDEX */ +#endif /* CONFIG_8260 CONFIG_ETHER_ON_FCC */ + #define CONFIG_LMB #define CONFIG_SYS_BOOT_RAMDISK_HIGH #define CONFIG_SYS_BOOT_GET_CMDLINE -- 1.7.6.1 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] powerpc: net: restore fcc addr logic
On Monday 17 October 2011 10:46:20 Mike Frysinger wrote: In the recent dropping of !NET_MULTI code (commit e2a53458a7ab37523304), I misread the logic in include/net.h. Some of it was used by NET_MULTI code. So restore it to fix failing boards, and do so in the powerpc asm config header (which is a better place anyways). mmm, this adds a bunch of build warnings, so NAK this version. -mike ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 4/5] usbtty: init endpoints prior to startup events
On some usb device controllers (pxa) the endpoint configuration must be programmed prior to enable it. Signed-off-by: Stefan Herbrechtsmeier sherb...@cit-ec.uni-bielefeld.de CC: Marek Vasut marek.va...@gmail.com CC: Remy Bohmer li...@bohmer.net --- drivers/serial/usbtty.c |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/serial/usbtty.c b/drivers/serial/usbtty.c index cffd5a2..e2e87fe 100644 --- a/drivers/serial/usbtty.c +++ b/drivers/serial/usbtty.c @@ -554,11 +554,11 @@ int drv_usbtty_init (void) usbtty_init_strings (); usbtty_init_instances (); + usbtty_init_endpoints (); + udc_startup_events (device_instance);/* Enable dev, init udc pointers */ udc_connect (); /* Enable pullup for host detection */ - usbtty_init_endpoints (); - /* Device initialization */ memset (usbttydev, 0, sizeof (usbttydev)); -- 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/5] pxa: convert pxa27x_udc to use read and write functions
Signed-off-by: Stefan Herbrechtsmeier sherb...@cit-ec.uni-bielefeld.de CC: Marek Vasut marek.va...@gmail.com CC: Remy Bohmer li...@bohmer.net --- arch/arm/include/asm/arch-pxa/pxa-regs.h |8 +- drivers/usb/gadget/pxa27x_udc.c | 183 -- 2 files changed, 104 insertions(+), 87 deletions(-) diff --git a/arch/arm/include/asm/arch-pxa/pxa-regs.h b/arch/arm/include/asm/arch-pxa/pxa-regs.h index a4d50a7..055dfe0 100644 --- a/arch/arm/include/asm/arch-pxa/pxa-regs.h +++ b/arch/arm/include/asm/arch-pxa/pxa-regs.h @@ -756,7 +756,7 @@ typedef void(*ExcpHndlr) (void) ; #define UDCOTGICR_IEIDR(1 1)/* OTG ID Change Rising Edge Interrupt Enable */ #define UDCOTGICR_IEIDF(1 0)/* OTG ID Change Falling Edge Interrupt Enable */ -#define UDCCSN(x) __REG2(0x40600100, (x) 2) +#define UDCCSN(x) (0x40600100 + ((x) 2)) #define UDCCSR00x40600100 /* UDC Control/Status register - Endpoint 0 */ #define UDCCSR0_SA (1 7)/* Setup Active */ @@ -804,7 +804,7 @@ typedef void(*ExcpHndlr) (void) ; #define UDCCSR_PC (1 1)/* Packet Complete */ #define UDCCSR_FS (1 0)/* FIFO needs service */ -#define UDCBCN(x) __REG2(0x40600200, (x)2) +#define UDCBCN(x) (0x40600200 + ((x) 2)) #define UDCBCR0 0x40600200 /* Byte Count Register - EP0 */ #define UDCBCRA 0x40600204 /* Byte Count Register - EPA */ #define UDCBCRB 0x40600208 /* Byte Count Register - EPB */ @@ -830,7 +830,7 @@ typedef void(*ExcpHndlr) (void) ; #define UDCBCRW 0x40600258 /* Byte Count Register - EPW */ #define UDCBCRX 0x4060025C /* Byte Count Register - EPX */ -#define UDCDN(x) __REG2(0x40600300, (x)2) +#define UDCDN(x) (0x40600300 + ((x) 2)) #define UDCDR0 0x40600300 /* Data Register - EP0 */ #define UDCDRA 0x40600304 /* Data Register - EPA */ #define UDCDRB 0x40600308 /* Data Register - EPB */ @@ -856,7 +856,7 @@ typedef void(*ExcpHndlr) (void) ; #define UDCDRW 0x40600358 /* Data Register - EPW */ #define UDCDRX 0x4060035C /* Data Register - EPX */ -#define UDCCN(x) __REG2(0x40600400, (x)2) +#define UDCCN(x) (0x40600400 + ((x) 2)) #define UDCCRA 0x40600404 /* Configuration register EPA */ #define UDCCRB 0x40600408 /* Configuration register EPB */ #define UDCCRC 0x4060040C /* Configuration register EPC */ diff --git a/drivers/usb/gadget/pxa27x_udc.c b/drivers/usb/gadget/pxa27x_udc.c index e6ccd49..0d3a988 100644 --- a/drivers/usb/gadget/pxa27x_udc.c +++ b/drivers/usb/gadget/pxa27x_udc.c @@ -26,11 +26,13 @@ #include common.h #include config.h #include asm/byteorder.h -#include usbdcore.h -#include usbdcore_ep0.h +#include usbdevice.h #include asm/arch/hardware.h +#include asm/io.h #include usb/pxa27x_udc.h +#include ep0.h + /* number of endpoints on this UDC */ #define UDC_MAX_ENDPOINTS 24 @@ -50,7 +52,7 @@ static void udc_dump_buffer(char *name, u8 *buf, int len) static inline void udc_ack_int_UDCCR(int mask) { - USIR1 = mask | USIR1; + writel(readl(USIR1) | mask, USIR1); } /* @@ -68,9 +70,7 @@ static int udc_write_urb(struct usb_endpoint_instance *endpoint) { struct urb *urb = endpoint-tx_urb; int ep_num = endpoint-endpoint_address USB_ENDPOINT_NUMBER_MASK; - u32 *addr32 = (u32 *) UDCDN(ep_num); u32 *data32 = (u32 *) urb-buffer; - u8 *addr8 = (u8 *) UDCDN(ep_num); u8 *data8 = (u8 *) urb-buffer; unsigned int i, n, w, b, is_short; int timeout = 2000; /* 2ms */ @@ -98,26 +98,28 @@ static int udc_write_urb(struct usb_endpoint_instance *endpoint) /* Prepare for data send */ if (ep_num) - UDCCSN(ep_num) = UDCCSR_PC; + writel(UDCCSR_PC ,UDCCSN(ep_num)); for (i = 0; i w; i++) - *addr32 = data32[endpoint-sent/4 + i]; + writel(data32[endpoint-sent / 4 + i], UDCDN(ep_num)); + for (i = 0; i b; i++) - *addr8 = data8[endpoint-sent + w*4 + i]; + writeb(data8[endpoint-sent + w * 4 + i], UDCDN(ep_num)); /* Set Packet Complete if less data then tx_packetSize */ if (is_short) - UDCCSN(ep_num) = ep_num ? UDCCSR_SP : UDCCSR0_IPR; + writel(ep_num ? UDCCSR_SP : UDCCSR0_IPR, UDCCSN(ep_num)); /* Wait for data sent */ - while (!(UDCCSN(ep_num) (ep_num ? UDCCSR_PC : UDCCSR0_IPR))) { - if (ep_num) { + if (ep_num) { + while (!(readl(UDCCSN(ep_num)) UDCCSR_PC)) { if (timeout-- == 0) return -1; else udelay(1); - }; + } } +
[U-Boot] [PATCH 5/5] pxa: fix relocation
The current relocation don't work correct, as it doesn't clear the initial ram (dcache) after relocation. This leads to missing bootargs during Linux boot. Additionally the current relocation use the sdram address for the initial ram which introduce a bug in the sdram initialization. This patch extend the relocation in order to disable the mmu and to clear the dcache after the relocation. Additionally it makes the initial ram address and size configurable and fix the various CONFIG_SYS_INIT_SP_ADDR definitions in the pxa board config files. Signed-off-by: Stefan Herbrechtsmeier sherb...@cit-ec.uni-bielefeld.de CC: Marek Vasut marek.va...@gmail.com CC: Prakash Kumar prak...@embedx.com CC: Robert Schwebel r.schwe...@pengutronix.de CC: Cliff Brake cliff.br...@gmail.com CC: Stefano Babic sba...@denx.de --- arch/arm/cpu/pxa/start.S | 38 -- include/configs/balloon3.h |7 +-- include/configs/cerf250.h|6 +- include/configs/colibri_pxa270.h |6 +- include/configs/cradle.h |6 +- include/configs/csb226.h |6 +- include/configs/innokom.h|6 +- include/configs/lubbock.h|6 +- include/configs/palmld.h |6 +- include/configs/palmtc.h |6 +- include/configs/pleb2.h |6 +- include/configs/pxa255_idp.h |6 +- include/configs/trizepsiv.h |6 +- include/configs/vpac270.h|7 +-- include/configs/xaeniax.h|6 +- include/configs/xm250.h |6 +- include/configs/zipitz2.h|6 +- 17 files changed, 108 insertions(+), 28 deletions(-) diff --git a/arch/arm/cpu/pxa/start.S b/arch/arm/cpu/pxa/start.S index 6191a73..2a2d722 100644 --- a/arch/arm/cpu/pxa/start.S +++ b/arch/arm/cpu/pxa/start.S @@ -185,7 +185,7 @@ reset: /* Flush TLB */ mcr p15, 0, r0, c8, c7, 0 - /* Allocate 4096 bytes of Dcache as RAM */ + /* Allocate CONFIG_SYS_INIT_RAM_SIZE bytes of Dcache as RAM */ /* Drain pending loads and stores */ mcr p15, 0, r0, c7, c10, 4 @@ -196,9 +196,9 @@ reset: mcr p15, 0, r0, c9, c2, 0 CPWAIT r0 - /* 128 lines reserved (128 x 32bytes = 4096 bytes total) */ - mov r0, #128 - mov r1, #0xa000 + /* lines to reserve (32bytes per cache line) */ + ldr r0, =(CONFIG_SYS_INIT_RAM_SIZE 5) + ldr r1, =(CONFIG_SYS_INIT_RAM_ADDR) alloc: mcr p15, 0, r1, c7, c2, 5 /* Drain pending loads and stores */ @@ -316,6 +316,20 @@ clbss_l:strr2, [r0]/* clear loop...*/ add r0, r0, #4 cmp r0, r1 bne clbss_l + +disable_mmu: + mov r0, #0 + /* Flush Dcache */ + mcr p15, 0, r0, c7, c6, 0 + + /* Flush dTLB */ + mcr p15, 0, r0, c8, c6, 0 + + /* Disable MMU and DCache */ + mrc p15, 0, r0, c1, c0, 0 + bic r0, #0x0005 /* ( -C-M) */ + mcr p15, 0, r0, c1, c0, 0 + CPWAIT r0 #endif /* #ifndef CONFIG_SPL_BUILD */ /* @@ -589,18 +603,22 @@ reset_endless: .align 14 .globl mmu_table mmu_table: - /* 0x - 0xa000 : 1:1, uncached mapping */ + /* 0x -- CONFIG_SYS_INIT_RAM_ADDR */ + /* 1:1, uncached mapping */ .set__base, 0 - .rept 0xa00 + .rept CONFIG_SYS_INIT_RAM_ADDR 20 .word (__base 20) | 0xc12 .set__base, __base + 1 .endr - /* 0xa000 - 0xa010 : 1:1, cached mapping */ - .word (0xa00 20) | 0x1c1e + /* CONFIG_SYS_INIT_RAM_ADDR -- CONFIG_SYS_INIT_RAM_ADDR + 0x10 */ + /* 1:1, cached mapping */ + .word CONFIG_SYS_INIT_RAM_ADDR | 0x1c1e - .set__base, 0xa01 - .rept 0x1000 - 0xa01 + /* CONFIG_SYS_INIT_RAM_ADDR + 0x10 -- 0x1 */ + /* 1:1, uncached mapping */ + .set__base, (CONFIG_SYS_INIT_RAM_ADDR 20) + 1 + .rept 0x1000 - ((CONFIG_SYS_INIT_RAM_ADDR 20) + 1) .word (__base 20) | 0xc12 .set__base, __base + 1 .endr diff --git a/include/configs/balloon3.h b/include/configs/balloon3.h index b604b52..36cb896 100644 --- a/include/configs/balloon3.h +++ b/include/configs/balloon3.h @@ -132,8 +132,11 @@ #defineCONFIG_SYS_LOAD_ADDR0xa100 #define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM_1 -#defineCONFIG_SYS_INIT_SP_ADDR \ - (PHYS_SDRAM_1 + GENERATED_GBL_DATA_SIZE + 2048) +#define CONFIG_SYS_INIT_RAM_ADDR 0xc000 /* D-Cache */ +#define CONFIG_SYS_INIT_RAM_SIZE 0x1000 /* 4 kB */ +#define CONFIG_SYS_INIT_SP_ADDR(CONFIG_SYS_INIT_RAM_ADDR + \ +CONFIG_SYS_INIT_RAM_SIZE - \ +
[U-Boot] [PATCH 1/5] pxa: fix usb host register mismatch
Signed-off-by: Stefan Herbrechtsmeier sherb...@cit-ec.uni-bielefeld.de CC: Marek Vasut marek.va...@gmail.com CC: Remy Bohmer li...@bohmer.net --- arch/arm/cpu/pxa/usb.c |2 +- arch/arm/include/asm/arch-pxa/pxa-regs.h |2 ++ 2 files changed, 3 insertions(+), 1 deletions(-) diff --git a/arch/arm/cpu/pxa/usb.c b/arch/arm/cpu/pxa/usb.c index 0311d5e..7f78ab7 100644 --- a/arch/arm/cpu/pxa/usb.c +++ b/arch/arm/cpu/pxa/usb.c @@ -72,7 +72,7 @@ int usb_cpu_stop(void) udelay(11); writel(readl(UHCHR) ~UHCHR_FHR, UHCHR); - writel(readl(UHCCOMS) | UHCHR_FHR, UHCCOMS); + writel(readl(UHCCOMS) | UHCCOMS_HCR, UHCCOMS); udelay(10); #if defined(CONFIG_CPU_MONAHANS) diff --git a/arch/arm/include/asm/arch-pxa/pxa-regs.h b/arch/arm/include/asm/arch-pxa/pxa-regs.h index 109fdc0..a4d50a7 100644 --- a/arch/arm/include/asm/arch-pxa/pxa-regs.h +++ b/arch/arm/include/asm/arch-pxa/pxa-regs.h @@ -946,6 +946,8 @@ typedef void(*ExcpHndlr) (void) ; #define UHCHIE 0x4C68 #define UHCHIT 0x4C6C +#define UHCCOMS_HCR(10) + #define UHCHR_FSBIR(10) #define UHCHR_FHR (11) #define UHCHR_CGR (12) -- 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/5] pxa: activate the first usb host port on pxa27x by default
The pxa27x has 3 usb host ports. Activate all by default. Signed-off-by: Stefan Herbrechtsmeier sherb...@cit-ec.uni-bielefeld.de CC: Marek Vasut marek.va...@gmail.com CC: Remy Bohmer li...@bohmer.net --- arch/arm/cpu/pxa/usb.c |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/arm/cpu/pxa/usb.c b/arch/arm/cpu/pxa/usb.c index 7f78ab7..9cc454d 100644 --- a/arch/arm/cpu/pxa/usb.c +++ b/arch/arm/cpu/pxa/usb.c @@ -55,7 +55,7 @@ int usb_cpu_init(void) while (readl(UHCHR) UHCHR_FSBIR) udelay(1); -#if defined(CONFIG_CPU_MONAHANS) +#if defined(CONFIG_CPU_MONAHANS) || defined(CONFIG_PXA27X) writel(readl(UHCHR) ~UHCHR_SSEP0, UHCHR); #endif #if defined(CONFIG_PXA27X) @@ -75,7 +75,7 @@ int usb_cpu_stop(void) writel(readl(UHCCOMS) | UHCCOMS_HCR, UHCCOMS); udelay(10); -#if defined(CONFIG_CPU_MONAHANS) +#if defined(CONFIG_CPU_MONAHANS) || defined(CONFIG_PXA27X) writel(readl(UHCHR) | UHCHR_SSEP0, UHCHR); #endif #if defined(CONFIG_PXA27X) -- 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/5] altera_tse: m88e1111s: Honor device flags regarding PHY interface mode.
Note: This is kind of guess work. The current code is preserved for all RGMII related modes. It is different for flags=0 (GMII) and flags=5 (SGMII). The last case, SGMII, is successfully tested on Altera's Terasic DE4. Signed-off-by: Joachim Foerster joachim.foers...@missinglinkelectronics.com --- drivers/net/altera_tse.c | 10 -- 1 files changed, 8 insertions(+), 2 deletions(-) diff --git a/drivers/net/altera_tse.c b/drivers/net/altera_tse.c index f20f7d0..04e19cb 100644 --- a/drivers/net/altera_tse.c +++ b/drivers/net/altera_tse.c @@ -583,7 +583,11 @@ static uint mii_m88es_setmode_sr(uint mii_reg, struct altera_tse_priv *priv) { uint mii_data = tse_mdio_read(priv, mii_reg); mii_data = 0xfff0; - mii_data |= 0xb; + if ((priv-flags = 1) (priv-flags = 4)) { + mii_data |= 0xb; + } else if (priv-flags == 5) { + mii_data |= 0x4; + } return mii_data; } @@ -591,7 +595,9 @@ static uint mii_m88es_setmode_cr(uint mii_reg, struct altera_tse_priv *priv) { uint mii_data = tse_mdio_read(priv, mii_reg); mii_data = ~0x82; - mii_data |= 0x82; + if ((priv-flags = 1) (priv-flags = 4)) { + mii_data |= 0x82; + } return mii_data; } -- 1.7.6 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 2/5] altera_tse: Fix SGDMA reset triggering.
The SW_RESET needs to be set! Signed-off-by: Joachim Foerster joachim.foers...@missinglinkelectronics.com --- drivers/net/altera_tse.c |8 1 files changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/net/altera_tse.c b/drivers/net/altera_tse.c index c7f8ba9..8bc600a 100644 --- a/drivers/net/altera_tse.c +++ b/drivers/net/altera_tse.c @@ -357,8 +357,8 @@ static void tse_eth_reset(struct eth_device *dev) if (counter = ALT_TSE_SGDMA_BUSY_WATCHDOG_CNTR) { debug(Timeout waiting for rx sgdma!\n); - rx_sgdma-control = ALT_SGDMA_CONTROL_SOFTWARERESET_MSK; - rx_sgdma-control = ALT_SGDMA_CONTROL_SOFTWARERESET_MSK; + rx_sgdma-control = ALT_SGDMA_CONTROL_SOFTWARERESET_MSK; + rx_sgdma-control = ALT_SGDMA_CONTROL_SOFTWARERESET_MSK; } counter = 0; @@ -370,8 +370,8 @@ static void tse_eth_reset(struct eth_device *dev) if (counter = ALT_TSE_SGDMA_BUSY_WATCHDOG_CNTR) { debug(Timeout waiting for tx sgdma!\n); - tx_sgdma-control = ALT_SGDMA_CONTROL_SOFTWARERESET_MSK; - tx_sgdma-control = ALT_SGDMA_CONTROL_SOFTWARERESET_MSK; + tx_sgdma-control = ALT_SGDMA_CONTROL_SOFTWARERESET_MSK; + tx_sgdma-control = ALT_SGDMA_CONTROL_SOFTWARERESET_MSK; } /* reset the mac */ mac_dev-command_config.bits.transmit_enable = 1; -- 1.7.6 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 1/5] altera_tse: Clear SGDMA's RUN bit in async case, too.
Signed-off-by: Joachim Foerster joachim.foers...@missinglinkelectronics.com --- drivers/net/altera_tse.c |6 ++ 1 files changed, 6 insertions(+), 0 deletions(-) diff --git a/drivers/net/altera_tse.c b/drivers/net/altera_tse.c index 54a944b..c7f8ba9 100644 --- a/drivers/net/altera_tse.c +++ b/drivers/net/altera_tse.c @@ -199,6 +199,12 @@ static int alt_sgdma_do_async_transfer(volatile struct alt_sgdma_registers *dev, debug(Timeout waiting sgdma in do async!\n); /* +* Clear the RUN bit in the control register. This is needed +* restart the SGDMA engine later on. +*/ + dev-control = 0; + + /* * Clear any (previous) status register information * that might occlude our error checking later. */ -- 1.7.6 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 0/5] altera_tse: Several small, but relevant fixes/feature
This patch series comprises small, but relevant fixes, regarding the driver for Altera's TSE ip core. They are needed to make it run on a Terasic DE4 board. The new feature is the support for dedicated descriptor memory. Joachim Foerster (5): altera_tse: Clear SGDMA's RUN bit in async case, too. altera_tse: Fix SGDMA reset triggering. altera_tse: Add support for dedicated descriptor memory. altera_tse: m88es: Honor device flags regarding PHY interface mode. altera_tse: Fix return of eth_device's recv() callback. board/altera/nios2-generic/nios2-generic.c | 10 +- drivers/net/altera_tse.c | 45 ++- include/netdev.h |3 +- 3 files changed, 47 insertions(+), 11 deletions(-) -- 1.7.6 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 3/5] altera_tse: Add support for dedicated descriptor memory.
Signed-off-by: Joachim Foerster joachim.foers...@missinglinkelectronics.com --- board/altera/nios2-generic/nios2-generic.c | 10 +- drivers/net/altera_tse.c | 19 --- include/netdev.h |3 ++- 3 files changed, 27 insertions(+), 5 deletions(-) diff --git a/board/altera/nios2-generic/nios2-generic.c b/board/altera/nios2-generic/nios2-generic.c index 220a4c4..49ef80d 100644 --- a/board/altera/nios2-generic/nios2-generic.c +++ b/board/altera/nios2-generic/nios2-generic.c @@ -74,7 +74,15 @@ int board_eth_init(bd_t *bis) rc += altera_tse_initialize(0, CONFIG_SYS_ALTERA_TSE_MAC_BASE, CONFIG_SYS_ALTERA_TSE_SGDMA_RX_BASE, - CONFIG_SYS_ALTERA_TSE_SGDMA_TX_BASE); + CONFIG_SYS_ALTERA_TSE_SGDMA_TX_BASE, +#if defined(CONFIG_SYS_ALTERA_TSE_SGDMA_DESC_BASE) \ + (CONFIG_SYS_ALTERA_TSE_SGDMA_DESC_SIZE 0) + CONFIG_SYS_ALTERA_TSE_SGDMA_DESC_BASE, + CONFIG_SYS_ALTERA_TSE_SGDMA_DESC_SIZE); +#else + 0, + 0); +#endif #endif #ifdef CONFIG_ETHOC rc += ethoc_initialize(0, CONFIG_SYS_ETHOC_BASE); diff --git a/drivers/net/altera_tse.c b/drivers/net/altera_tse.c index 8bc600a..f20f7d0 100644 --- a/drivers/net/altera_tse.c +++ b/drivers/net/altera_tse.c @@ -882,7 +882,8 @@ static int tse_eth_init(struct eth_device *dev, bd_t * bd) /* TSE init code */ int altera_tse_initialize(u8 dev_num, int mac_base, - int sgdma_rx_base, int sgdma_tx_base) + int sgdma_rx_base, int sgdma_tx_base, + u32 sgdma_desc_base, u32 sgdma_desc_size) { struct altera_tse_priv *priv; struct eth_device *dev; @@ -903,8 +904,20 @@ int altera_tse_initialize(u8 dev_num, int mac_base, free(dev); return 0; } - tx_desc = dma_alloc_coherent(sizeof(*tx_desc) * (3 + PKTBUFSRX), -dma_handle); + if (sgdma_desc_size) { + if (sgdma_desc_size (sizeof(*tx_desc) * (3 + PKTBUFSRX))) { + printf(ALTERA_TSE-%hu: + descriptor memory is too small\n, dev_num); + free(priv); + free(dev); + return 0; + } + tx_desc = (struct alt_sgdma_descriptor *)sgdma_desc_base; + } else { + tx_desc = dma_alloc_coherent(sizeof(*tx_desc) * (3 + PKTBUFSRX), +dma_handle); + } + rx_desc = tx_desc + 2; debug(tx desc: address = 0x%x\n, (unsigned int)tx_desc); debug(rx desc: address = 0x%x\n, (unsigned int)rx_desc); diff --git a/include/netdev.h b/include/netdev.h index 669f60b..361df5c 100644 --- a/include/netdev.h +++ b/include/netdev.h @@ -42,7 +42,8 @@ int cpu_eth_init(bd_t *bis); /* Driver initialization prototypes */ int altera_tse_initialize(u8 dev_num, int mac_base, - int sgdma_rx_base, int sgdma_tx_base); + int sgdma_rx_base, int sgdma_tx_base, + u32 sgdma_desc_base, u32 sgdma_desc_size); int at91emac_register(bd_t *bis, unsigned long iobase); int au1x00_enet_initialize(bd_t*); int ax88180_initialize(bd_t *bis); -- 1.7.6 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 5/5] altera_tse: Fix return of eth_device's recv() callback.
Signed-off-by: Joachim Foerster joachim.foers...@missinglinkelectronics.com --- drivers/net/altera_tse.c |2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/drivers/net/altera_tse.c b/drivers/net/altera_tse.c index 04e19cb..c4ff8c7 100644 --- a/drivers/net/altera_tse.c +++ b/drivers/net/altera_tse.c @@ -323,6 +323,8 @@ static int tse_eth_rx(struct eth_device *dev) /* setup the sgdma */ alt_sgdma_do_async_transfer(priv-sgdma_rx, rx_desc[0]); + + return packet_length; } return -1; -- 1.7.6 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 1/2] gpio: Add driver for Altera's PIO core
This driver may handle multiple PIO cores and thus needs to be setup by calling the altera_pio_init() function within the early board setup routine. The driver comes with some extras, see below the copyleft header. Signed-off-by: Joachim Foerster joachim.foers...@missinglinkelectronics.com --- arch/nios2/include/asm/gpio.h | 13 +- board/altera/nios2-generic/custom_fpga.h |1 + board/altera/nios2-generic/nios2-generic.c |8 + drivers/gpio/Makefile |1 + drivers/gpio/altera_pio.c | 299 5 files changed, 320 insertions(+), 2 deletions(-) create mode 100644 drivers/gpio/altera_pio.c diff --git a/arch/nios2/include/asm/gpio.h b/arch/nios2/include/asm/gpio.h index 4b21c8f..908381f 100644 --- a/arch/nios2/include/asm/gpio.h +++ b/arch/nios2/include/asm/gpio.h @@ -5,8 +5,8 @@ * bit[0] data * bit[1] output enable * - * when CONFIG_SYS_GPIO_BASE is not defined, board may provide - * its own driver. + * When CONFIG_SYS_GPIO_BASE is not defined, the board may either + * provide its own driver or the altera_pio driver may be used. * * Copyright (C) 2010 Thomas Chou tho...@wytron.com.tw * @@ -58,6 +58,15 @@ static inline int gpio_is_valid(int number) return ((unsigned)number) CONFIG_SYS_GPIO_WIDTH; } #else +#ifdef CONFIG_ALTERA_PIO +extern int altera_pio_init(u32 base, u8 width, char iot, + u32 rstval, u32 negmask, + const char *label); + +extern void altera_pio_info(void); +#define gpio_status() altera_pio_info() +#endif + extern int gpio_request(unsigned gpio, const char *label); extern int gpio_free(unsigned gpio); extern int gpio_direction_input(unsigned gpio); diff --git a/board/altera/nios2-generic/custom_fpga.h b/board/altera/nios2-generic/custom_fpga.h index f7f3853..fd3ec9a 100644 --- a/board/altera/nios2-generic/custom_fpga.h +++ b/board/altera/nios2-generic/custom_fpga.h @@ -51,6 +51,7 @@ /* led_pio.s1 is a altera_avalon_pio */ #define LED_PIO_BASE 0x82120870 #define LED_PIO_WIDTH 8 +#define LED_PIO_RSTVAL 0x0 /* high_res_timer.s1 is a altera_avalon_timer */ #define CONFIG_SYS_TIMER_BASE 0x82120820 diff --git a/board/altera/nios2-generic/nios2-generic.c b/board/altera/nios2-generic/nios2-generic.c index 49ef80d..0f88275 100644 --- a/board/altera/nios2-generic/nios2-generic.c +++ b/board/altera/nios2-generic/nios2-generic.c @@ -26,6 +26,7 @@ #include netdev.h #include mtd/cfi_flash.h #include asm/io.h +#include asm/gpio.h void text_base_hook(void); /* nop hook for text_base.S */ @@ -43,6 +44,13 @@ void early_flash_cmd_reset(void) int board_early_init_f(void) { text_base_hook(); +#ifdef CONFIG_ALTERA_PIO +#ifdef LED_PIO_BASE + altera_pio_init(LED_PIO_BASE, LED_PIO_WIDTH, 'o', + LED_PIO_RSTVAL, (1 LED_PIO_WIDTH) - 1, + led); +#endif +#endif #if defined(CONFIG_ENV_IS_IN_FLASH) defined(CONFIG_ENV_ADDR) early_flash_cmd_reset(); #endif diff --git a/drivers/gpio/Makefile b/drivers/gpio/Makefile index beca1da..c874b1a 100644 --- a/drivers/gpio/Makefile +++ b/drivers/gpio/Makefile @@ -34,6 +34,7 @@ COBJS-$(CONFIG_PCA953X) += pca953x.o COBJS-$(CONFIG_S5P)+= s5p_gpio.o COBJS-$(CONFIG_TEGRA2_GPIO)+= tegra2_gpio.o COBJS-$(CONFIG_DA8XX_GPIO) += da8xx_gpio.o +COBJS-$(CONFIG_ALTERA_PIO) += altera_pio.o COBJS := $(COBJS-y) SRCS := $(COBJS:.o=.c) diff --git a/drivers/gpio/altera_pio.c b/drivers/gpio/altera_pio.c new file mode 100644 index 000..1b8c19c --- /dev/null +++ b/drivers/gpio/altera_pio.c @@ -0,0 +1,299 @@ +/* + * Driver for Altera's PIO ip core + * + * Copyright (C) 2011 Missing Link Electronics + * Joachim Foerster joac...@missinglinkelectronics.com + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * To use this driver, in your board's config. header: + * #define CONFIG_ALTERA_PIO + * #define CONFIG_SYS_ALTERA_PIO_NUM number-of-pio-cores + * #define CONFIG_SYS_ALTERA_PIO_GPIO_NUM total-number-of-gpios + * And in your board's early setup routine: + * altera_pio_init(baseaddr, width, 'i'|'o'|'t', + * reset-value, neg-mask, label); + * - 'i'|'o'|'t': PIO is input-only/output-only/tri-state + *
[U-Boot] [PATCH 0/2] Replace nios2-generic's gpio.c with dedicated driver.
Let's have a dedicated driver for Altera's PIO ip core, which does not have to be duplicated for each board using PIO. Joachim Foerster (2): gpio: Add driver for Altera's PIO core board/nios2-generic: Use altera_pio driver and remove board specific driver arch/nios2/include/asm/gpio.h | 13 +- board/altera/nios2-generic/Makefile|1 - board/altera/nios2-generic/custom_fpga.h |1 + board/altera/nios2-generic/gpio.c | 71 --- board/altera/nios2-generic/nios2-generic.c |8 + drivers/gpio/Makefile |1 + drivers/gpio/altera_pio.c | 299 include/configs/nios2-generic.h|4 + 8 files changed, 324 insertions(+), 74 deletions(-) delete mode 100644 board/altera/nios2-generic/gpio.c create mode 100644 drivers/gpio/altera_pio.c -- 1.7.6 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 2/2] board/nios2-generic: Use altera_pio driver and remove board specific driver
Signed-off-by: Joachim Foerster joachim.foers...@missinglinkelectronics.com --- board/altera/nios2-generic/Makefile |1 - board/altera/nios2-generic/gpio.c | 71 --- include/configs/nios2-generic.h |4 ++ 3 files changed, 4 insertions(+), 72 deletions(-) delete mode 100644 board/altera/nios2-generic/gpio.c diff --git a/board/altera/nios2-generic/Makefile b/board/altera/nios2-generic/Makefile index 359f590..59fd465 100644 --- a/board/altera/nios2-generic/Makefile +++ b/board/altera/nios2-generic/Makefile @@ -32,7 +32,6 @@ LIB = $(obj)lib$(BOARD).o COBJS-y:= $(BOARD).o COBJS-$(CONFIG_CMD_IDE) += ../common/cfide.o COBJS-$(CONFIG_EPLED) += ../common/epled.o -COBJS-$(CONFIG_GPIO) += gpio.o COBJS-$(CONFIG_SEVENSEG) += ../common/sevenseg.o SOBJS-y:= text_base.o diff --git a/board/altera/nios2-generic/gpio.c b/board/altera/nios2-generic/gpio.c deleted file mode 100644 index 4a30564..000 --- a/board/altera/nios2-generic/gpio.c +++ /dev/null @@ -1,71 +0,0 @@ -/* - * board gpio driver - * - * Copyright (C) 2010 Thomas Chou tho...@wytron.com.tw - * Licensed under the GPL-2 or later. - */ -#include common.h -#include asm/io.h - -#ifndef CONFIG_SYS_GPIO_BASE - -#define ALTERA_PIO_BASE LED_PIO_BASE -#define ALTERA_PIO_WIDTH LED_PIO_WIDTH -#define ALTERA_PIO_DATA (ALTERA_PIO_BASE + 0) -#define ALTERA_PIO_DIR (ALTERA_PIO_BASE + 4) -static u32 pio_data_reg; -static u32 pio_dir_reg; - -int gpio_request(unsigned gpio, const char *label) -{ - return 0; -} - -int gpio_free(unsigned gpio) -{ - return 0; -} - -int gpio_direction_input(unsigned gpio) -{ - u32 mask = 1 gpio; - writel(pio_dir_reg = ~mask, ALTERA_PIO_DIR); - return 0; -} - -int gpio_direction_output(unsigned gpio, int value) -{ - u32 mask = 1 gpio; - if (value) - pio_data_reg |= mask; - else - pio_data_reg = ~mask; - writel(pio_data_reg, ALTERA_PIO_DATA); - writel(pio_dir_reg |= mask, ALTERA_PIO_DIR); - return 0; -} - -int gpio_get_value(unsigned gpio) -{ - u32 mask = 1 gpio; - if (pio_dir_reg mask) - return (pio_data_reg mask) ? 1 : 0; - else - return (readl(ALTERA_PIO_DATA) mask) ? 1 : 0; -} - -void gpio_set_value(unsigned gpio, int value) -{ - u32 mask = 1 gpio; - if (value) - pio_data_reg |= mask; - else - pio_data_reg = ~mask; - writel(pio_data_reg, ALTERA_PIO_DATA); -} - -int gpio_is_valid(int number) -{ - return ((unsigned)number) ALTERA_PIO_WIDTH; -} -#endif diff --git a/include/configs/nios2-generic.h b/include/configs/nios2-generic.h index 1395939..9ba35e8 100644 --- a/include/configs/nios2-generic.h +++ b/include/configs/nios2-generic.h @@ -63,6 +63,10 @@ /* * STATUS LED */ +#define CONFIG_ALTERA_PIO +#define CONFIG_SYS_ALTERA_PIO_NUM 1 +#define CONFIG_SYS_ALTERA_PIO_GPIO_NUM LED_PIO_WIDTH + #define CONFIG_STATUS_LED /* Enable status driver */ #define CONFIG_GPIO_LED/* Enable GPIO LED driver */ #define CONFIG_GPIO/* Enable GPIO driver */ -- 1.7.6 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] powerpc: cpm2 boards: update fcc register logic
In the recent dropping of !NET_MULTI code (commit e2a53458a7ab37523304), I misread the logic in include/net.h. Some of it was used by NET_MULTI code as glue between the multi/non-multi worlds for cpm2 boards. Rather than restore the block of code, push the logic to the board config headers where it all belongs. Signed-off-by: Mike Frysinger vap...@gentoo.org --- i've build tested all these boards only as i have no hardware include/configs/CPU86.h |8 include/configs/CPU87.h |8 include/configs/IDS8247.h|4 ++-- include/configs/IPHASE4539.h |4 ++-- include/configs/ISPAN.h |4 ++-- include/configs/MPC8260ADS.h | 10 +- include/configs/MPC8266ADS.h |4 ++-- include/configs/MPC8560ADS.h |4 ++-- include/configs/RPXsuper.h |4 ++-- include/configs/Rattler.h|8 include/configs/SBC8540.h|4 ++-- include/configs/SCM.h|8 include/configs/TQM8260.h|6 +++--- include/configs/TQM8272.h|4 ++-- include/configs/ZPC1900.h|4 ++-- include/configs/ep8260.h |4 ++-- include/configs/gw8260.h |8 include/configs/hymod.h | 12 ++-- include/configs/muas3001.h |4 ++-- include/configs/ppmc8260.h |4 ++-- include/configs/rsdproto.h |4 ++-- include/configs/sacsng.h |6 +++--- include/configs/sbc8560.h|4 ++-- include/configs/stxgp3.h |4 ++-- include/configs/stxssa.h |4 ++-- 25 files changed, 69 insertions(+), 69 deletions(-) diff --git a/include/configs/CPU86.h b/include/configs/CPU86.h index ab64ada..abf4ef4 100644 --- a/include/configs/CPU86.h +++ b/include/configs/CPU86.h @@ -89,8 +89,8 @@ * - RAM for BD/Buffers is on the 60x Bus (see 28-13) * - Enable Full Duplex in FSMR */ -# define CONFIG_SYS_CMXFCR_MASK (CMXFCR_FC1|CMXFCR_RF1CS_MSK|CMXFCR_TF1CS_MSK) -# define CONFIG_SYS_CMXFCR_VALUE (CMXFCR_RF1CS_CLK11|CMXFCR_TF1CS_CLK12) +# define CONFIG_SYS_CMXFCR_MASK1 (CMXFCR_FC1|CMXFCR_RF1CS_MSK|CMXFCR_TF1CS_MSK) +# define CONFIG_SYS_CMXFCR_VALUE1 (CMXFCR_RF1CS_CLK11|CMXFCR_TF1CS_CLK12) # define CONFIG_SYS_CPMFCR_RAMTYPE 0 # define CONFIG_SYS_FCC_PSMR (FCC_PSMR_FDE|FCC_PSMR_LPB) @@ -102,8 +102,8 @@ * - RAM for BD/Buffers is on the 60x Bus (see 28-13) * - Enable Full Duplex in FSMR */ -# define CONFIG_SYS_CMXFCR_MASK (CMXFCR_FC2|CMXFCR_RF2CS_MSK|CMXFCR_TF2CS_MSK) -# define CONFIG_SYS_CMXFCR_VALUE (CMXFCR_RF2CS_CLK13|CMXFCR_TF2CS_CLK14) +# define CONFIG_SYS_CMXFCR_MASK2 (CMXFCR_FC2|CMXFCR_RF2CS_MSK|CMXFCR_TF2CS_MSK) +# define CONFIG_SYS_CMXFCR_VALUE2 (CMXFCR_RF2CS_CLK13|CMXFCR_TF2CS_CLK14) # define CONFIG_SYS_CPMFCR_RAMTYPE 0 # define CONFIG_SYS_FCC_PSMR (FCC_PSMR_FDE|FCC_PSMR_LPB) diff --git a/include/configs/CPU87.h b/include/configs/CPU87.h index 2b1716a..723bdf3 100644 --- a/include/configs/CPU87.h +++ b/include/configs/CPU87.h @@ -93,8 +93,8 @@ * - RAM for BD/Buffers is on the 60x Bus (see 28-13) * - Enable Full Duplex in FSMR */ -# define CONFIG_SYS_CMXFCR_MASK (CMXFCR_FC1|CMXFCR_RF1CS_MSK|CMXFCR_TF1CS_MSK) -# define CONFIG_SYS_CMXFCR_VALUE (CMXFCR_RF1CS_CLK11|CMXFCR_TF1CS_CLK12) +# define CONFIG_SYS_CMXFCR_MASK1 (CMXFCR_FC1|CMXFCR_RF1CS_MSK|CMXFCR_TF1CS_MSK) +# define CONFIG_SYS_CMXFCR_VALUE1 (CMXFCR_RF1CS_CLK11|CMXFCR_TF1CS_CLK12) # define CONFIG_SYS_CPMFCR_RAMTYPE 0 # define CONFIG_SYS_FCC_PSMR (FCC_PSMR_FDE|FCC_PSMR_LPB) @@ -106,8 +106,8 @@ * - RAM for BD/Buffers is on the 60x Bus (see 28-13) * - Enable Full Duplex in FSMR */ -# define CONFIG_SYS_CMXFCR_MASK (CMXFCR_FC2|CMXFCR_RF2CS_MSK|CMXFCR_TF2CS_MSK) -# define CONFIG_SYS_CMXFCR_VALUE (CMXFCR_RF2CS_CLK13|CMXFCR_TF2CS_CLK14) +# define CONFIG_SYS_CMXFCR_MASK2 (CMXFCR_FC2|CMXFCR_RF2CS_MSK|CMXFCR_TF2CS_MSK) +# define CONFIG_SYS_CMXFCR_VALUE2 (CMXFCR_RF2CS_CLK13|CMXFCR_TF2CS_CLK14) # define CONFIG_SYS_CPMFCR_RAMTYPE 0 # define CONFIG_SYS_FCC_PSMR (FCC_PSMR_FDE|FCC_PSMR_LPB) diff --git a/include/configs/IDS8247.h b/include/configs/IDS8247.h index 8552250..be778fe 100644 --- a/include/configs/IDS8247.h +++ b/include/configs/IDS8247.h @@ -154,8 +154,8 @@ * - RAM for BD/Buffers is on the 60x Bus (see 28-13) * - Enable Full Duplex in FSMR */ -# define CONFIG_SYS_CMXFCR_MASK (CMXFCR_FC1|CMXFCR_RF1CS_MSK|CMXFCR_TF1CS_MSK) -# define CONFIG_SYS_CMXFCR_VALUE (CMXFCR_RF1CS_CLK10|CMXFCR_TF1CS_CLK9) +# define CONFIG_SYS_CMXFCR_MASK1 (CMXFCR_FC1|CMXFCR_RF1CS_MSK|CMXFCR_TF1CS_MSK) +# define CONFIG_SYS_CMXFCR_VALUE1 (CMXFCR_RF1CS_CLK10|CMXFCR_TF1CS_CLK9) # define CONFIG_SYS_CPMFCR_RAMTYPE 0 # define CONFIG_SYS_FCC_PSMR (FCC_PSMR_FDE|FCC_PSMR_LPB) diff --git a/include/configs/IPHASE4539.h b/include/configs/IPHASE4539.h index 0af43b6..d966306 100644 --- a/include/configs/IPHASE4539.h +++
[U-Boot] [RFC PATCH] nios2: Pseudo implement dcache_status/enable/disable()
AFAIK the NIOS2 architecture does not have any possibility to dynamically switch off the data cache. So _status() always reports 1 and _enable/_disable() just issue a flush of everything. For example, common/cmd_elf.c depends on these symbols. Signed-off-by: Joachim Foerster joachim.foers...@missinglinkelectronics.com --- arch/nios2/cpu/cpu.c | 17 + 1 files changed, 17 insertions(+), 0 deletions(-) diff --git a/arch/nios2/cpu/cpu.c b/arch/nios2/cpu/cpu.c index ef360ee..01dd057 100644 --- a/arch/nios2/cpu/cpu.c +++ b/arch/nios2/cpu/cpu.c @@ -47,3 +47,20 @@ int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) nios2_callr(CONFIG_SYS_RESET_ADDR); return 0; } + +int dcache_status(void) +{ + return 1; +} + +void dcache_enable(void) +{ + flush_dcache(CONFIG_SYS_DCACHE_SIZE, CONFIG_SYS_DCACHELINE_SIZE); + return; +} + +void dcache_disable(void) +{ + flush_dcache(CONFIG_SYS_DCACHE_SIZE, CONFIG_SYS_DCACHELINE_SIZE); + return; +} -- 1.7.6 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] How to unsubscribe.
On Monday 17 October 2011 00:56:37 Sandeep Kumar wrote: How can I unsubscribe from this mailing list. read the link at the end of every e-mail -mike ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [RFC PATCH] nios2: Pseudo implement dcache_status/enable/disable()
On Monday 17 October 2011 11:40:09 Joachim Foerster wrote: +void dcache_enable(void) +{ + flush_dcache(CONFIG_SYS_DCACHE_SIZE, CONFIG_SYS_DCACHELINE_SIZE); + return; +} + +void dcache_disable(void) +{ + flush_dcache(CONFIG_SYS_DCACHE_SIZE, CONFIG_SYS_DCACHELINE_SIZE); + return; +} drop the useless return; statements -mike ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v4 2/2] NS16550: buffer reads
Hi Wolfgang, On Mon, Oct 17, 2011 at 4:08 AM, Wolfgang Denk w...@denx.de wrote: Dear Simon Glass, In message 1318742050-2201-2-git-send-email-...@chromium.org you wrote: ... With it enabled, on ppc it's an extra 396 bytes of image size, and 1056 bytes of BSS. ARM note from Simon Glass s...@chromium.org - ARM code size goes from 212 to 484 bytes (extra 272 bytes), BSS to 1056 bytes. One problem I see is that the code size on some boards grows even if the new option is not enabled. Here a compare before and after applying your patches (without any changes to the respective board configurations): Configuring for AR405 board... text data bss dec hex filename - 246058 12972 14636 273666 42d02 /work/wd/tmp-ppc/u-boot + 246062 12972 14636 273670 42d06 /work/wd/tmp-ppc/u-boot Configuring for CANBT board... text data bss dec hex filename - 120710 8604 3876 133190 20846 /work/wd/tmp-ppc/u-boot + 120714 8604 3876 133194 2084a /work/wd/tmp-ppc/u-boot Configuring for pcs440ep board... text data bss dec hex filename - 296191 19636 345088 660915 a15b3 /work/wd/tmp-ppc/u-boot + 296195 19636 345088 660919 a15b7 /work/wd/tmp-ppc/u-boot ... This doesn't happen for me on ARM - the compiler just inlines the new static raw functions into the public functions. I will see if I can figure out what is happening on PPC. It is 4 bytes, or one instruction, right? The fix might be to duplicate more code, or perhaps add an inline keyword to the two functions. Regards, Simon 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 Out of register space (ugh) - vi ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v2] nios2: Pseudo implement dcache_status/enable/disable()
AFAIK the NIOS2 architecture does not have any possibility to dynamically switch off the data cache. So _status() always reports 1 and _enable/_disable() just issue a flush of everything. For example, common/cmd_elf.c depends on these symbols. Signed-off-by: Joachim Foerster joachim.foers...@missinglinkelectronics.com --- Changes for v2: - Remove return; from added void functions arch/nios2/cpu/cpu.c | 15 +++ 1 files changed, 15 insertions(+), 0 deletions(-) diff --git a/arch/nios2/cpu/cpu.c b/arch/nios2/cpu/cpu.c index ef360ee..c9ce390 100644 --- a/arch/nios2/cpu/cpu.c +++ b/arch/nios2/cpu/cpu.c @@ -47,3 +47,18 @@ int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) nios2_callr(CONFIG_SYS_RESET_ADDR); return 0; } + +int dcache_status(void) +{ + return 1; +} + +void dcache_enable(void) +{ + flush_dcache(CONFIG_SYS_DCACHE_SIZE, CONFIG_SYS_DCACHELINE_SIZE); +} + +void dcache_disable(void) +{ + flush_dcache(CONFIG_SYS_DCACHE_SIZE, CONFIG_SYS_DCACHELINE_SIZE); +} -- 1.7.6 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v4 2/2] NS16550: buffer reads
Hi Wolfgang, On Mon, Oct 17, 2011 at 5:18 AM, Wolfgang Denk w...@denx.de wrote: Dear Simon, In message 1318742050-2201-2-git-send-email-...@chromium.org you wrote: This improves the performance of U-Boot when accepting rapid input, such as pasting a sequence of commands. Without this patch, on P4080DS I see a maximum of around 5 lines can be pasted. With this patch, it handles around 70 lines before lossage, long enough for most things you'd paste. Let me try to summarize my thinking: - It is a fundamental design decision that U-Boot is single tasking. This implies that while a command is running, no other things get done in parallel. This includes communication over the serial line, USB, Ethernet, ... - That means that by design U-Boot does not support multi-line input: as soon as you hit enter U-Boot will start executing your command, and will only become ready for new input when it has completed the execution of the command(s), i. e. after printing the next prompt. - For this suported mode of operation your patch is not needed. It just adds code size and complexity. - Your description rapid input is actually wrong. The speed of input over the serial line is limited by the baud rate settings, and even if you transfer at maximum speed all supported systems are fast enough to receive the data without loss. - The use case you are trying to support is actually multi-line input, so you should describe it as such. I agree that this would be an interesting feature for some use cases, but if we go on and implement it, we should (1) document it properly and (2) implement it in a way that works reliably. I can certainly improve the documentation and commit message. - However, your implementation does not result in reliable multi-line input. It works only in a few specific use cases, and will fail silently for others. I don't see a way ho you would announce this new feature. The numbers you mention in the commit message (it handles around 70 lines before lossage) apply for this specific board only, and for your use case only (pasting of short lines that produce no output). So essentially you are saying: hey, we now have multi-line input, but it works only a bit. It will fail sooner or later, without error messages, and I cannot even tell you what the limits for your system are. And it depends on which input you send. This does not exactly sound promising. That all sounds reasonable. I think it is good enough, but not perfect. Due to the fundamental design decision you mention at the top, we cannot squirrel away serial input in the background. The best we can do is squirrel it away in the foreground, as we output new serial data (I suppose we could squirrel it away in net loops and other places but I don't want to go there!). This turns out to be mostly good enough, because it is rare for people to want to paste 'sleep 10' and the like into their terminal (your other message). I would like to spit out a warning when serial input is lost - as I mentioned that could be combined with a serial overhaul at some point. On the other hand, we also have the rule that things that are useful to some and that don't hurt others should be allowed to go in. What makes me hesitate are two things: - The patch promises a feature (multi-line input), but fails to provide a reliably working implementation. I *think* it does the best possible within the fundamental design decision constraint. If there is more it can do, please let me have your ideas. I don't believe buffering conflicts with the constraint - they are separate things. But yes in systems with interrupts normally the input buffer is filled in the background and drained in the foreground. - As it turns out, the patch increases code size even for boards that do not activate this feature. Yes, I will take a look at this problem. I have to admit that I'm at a loss with a decision here. Well it's not easy being a maintainer :-) In any case this patch is not the end of the story as serial needs some work - another objection you didn't mention above is that this function lives in only one driver. Is that a good thing (hide it away) or a bad thing (all drivers should support it and the implementation should move up a level)? Regards, Simon 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 We don't have to protect the environment -- the Second Coming is at hand. - James Watt ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] dcache:s5p CONFIG_SYS_CACHELINE_SIZE added for s5p GONI target
On Mon, Oct 17, 2011 at 4:42 AM, Lukasz Majewski l.majew...@samsung.com wrote: Define the D-cache line size for S5PC110 GONI reference target. Signed-off-by: Lukasz Majewski l.majew...@samsung.com Signed-off-by: Kyungmin Park kyungmin.p...@samsung.com Acked-by: Anton Staaf robot...@chromium.org Cc: Minkyu Kang mk7.k...@samsung.com --- include/configs/s5p_goni.h | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/include/configs/s5p_goni.h b/include/configs/s5p_goni.h index aa51114..f58f4f1 100644 --- a/include/configs/s5p_goni.h +++ b/include/configs/s5p_goni.h @@ -223,6 +223,8 @@ #define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_LOAD_ADDR - 0x100) +#define CONFIG_SYS_CACHELINE_SIZE 64 + #define CONFIG_PMIC #define CONFIG_PMIC_I2C #define CONFIG_PMIC_MAX8998 -- 1.7.2.3 ___ 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] dcache:s5p CONFIG_SYS_CACHELINE_SIZE added for s5p UNIVERSAL C210 target
On Mon, Oct 17, 2011 at 4:42 AM, Lukasz Majewski l.majew...@samsung.com wrote: Define the D-cache line size for S5PC210 UNIVERSAL reference target. Signed-off-by: Lukasz Majewski l.majew...@samsung.com Signed-off-by: Kyungmin Park kyungmin.p...@samsung.com Acked-by: Anton Staaf robot...@chromium.org Cc: Minkyu Kang mk7.k...@samsung.com --- include/configs/s5pc210_universal.h | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/include/configs/s5pc210_universal.h b/include/configs/s5pc210_universal.h index 4031016..ff85ade 100644 --- a/include/configs/s5pc210_universal.h +++ b/include/configs/s5pc210_universal.h @@ -243,4 +243,6 @@ #define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_LOAD_ADDR - GENERATED_GBL_DATA_SIZE) +#define CONFIG_SYS_CACHELINE_SIZE 32 + #endif /* __CONFIG_H */ -- 1.7.2.3 ___ 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] Makefile: prevent libgcc to be linked twice
On Monday 17 October 2011 09:41:15 Nicolas Ferre wrote: If we define USE_PRIVATE_LIBGCC, PLATFORM_LIBS is used during link. During this last link editing, libgcc may be listed twice and fail. Prevent this using filter-out in top Makefile. could you please provide more details ? libgcc should not be listed twice. -mike ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 3/5] pxa: convert pxa27x_udc to use read and write functions
On Monday, October 17, 2011 05:22:48 PM Stefan Herbrechtsmeier wrote: Signed-off-by: Stefan Herbrechtsmeier sherb...@cit-ec.uni-bielefeld.de CC: Marek Vasut marek.va...@gmail.com CC: Remy Bohmer li...@bohmer.net --- Hi Stefan, this patch is awesome, I really need this one. But ... Can you possibly convert the register definitions to struct based access ? Like struct pxa_usb_regs { u32 reg1; u32 reg2; ... }; and then use it in the functions : type fn() { struct pxa_usb_regs regs = (struct pxa_usb_regs)0x4600; ... writel(val, regs-reg1); } Thanks!! ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v2] arm926ejs: add NXP LPC32x0 cpu series support
This change adds initial support for NXP LPC32x0 SoC series. Signed-off-by: Vladimir Zapolskiy v...@mleia.com --- Changes from v1: * BIT(n) and SBF(s, v) macro are not used anymore * removed NS16550 and 14-clock UART definitions from uart.h * added devices.c file, which contains standard UART preinitialization routine * added get_serial_clock() function, it returns actual frequency of UART clock * __udelay() realization is simplified, no need of interrupt handling arch/arm/cpu/arm926ejs/lpc32xx/Makefile| 45 arch/arm/cpu/arm926ejs/lpc32xx/clkpwr.c| 100 ++ arch/arm/cpu/arm926ejs/lpc32xx/cpu.c | 44 arch/arm/cpu/arm926ejs/lpc32xx/devices.c | 46 arch/arm/cpu/arm926ejs/lpc32xx/timer.c | 92 arch/arm/include/asm/arch-lpc32xx/clk.h| 155 arch/arm/include/asm/arch-lpc32xx/config.h | 49 + arch/arm/include/asm/arch-lpc32xx/cpu.h| 62 +++ arch/arm/include/asm/arch-lpc32xx/timer.h | 74 + arch/arm/include/asm/arch-lpc32xx/uart.h | 54 ++ arch/arm/include/asm/arch-lpc32xx/wdt.h| 51 + 11 files changed, 772 insertions(+), 0 deletions(-) create mode 100644 arch/arm/cpu/arm926ejs/lpc32xx/Makefile create mode 100644 arch/arm/cpu/arm926ejs/lpc32xx/clkpwr.c create mode 100644 arch/arm/cpu/arm926ejs/lpc32xx/cpu.c create mode 100644 arch/arm/cpu/arm926ejs/lpc32xx/devices.c create mode 100644 arch/arm/cpu/arm926ejs/lpc32xx/timer.c create mode 100644 arch/arm/include/asm/arch-lpc32xx/clk.h create mode 100644 arch/arm/include/asm/arch-lpc32xx/config.h create mode 100644 arch/arm/include/asm/arch-lpc32xx/cpu.h create mode 100644 arch/arm/include/asm/arch-lpc32xx/timer.h create mode 100644 arch/arm/include/asm/arch-lpc32xx/uart.h create mode 100644 arch/arm/include/asm/arch-lpc32xx/wdt.h diff --git a/arch/arm/cpu/arm926ejs/lpc32xx/Makefile b/arch/arm/cpu/arm926ejs/lpc32xx/Makefile new file mode 100644 index 000..29b4dc8 --- /dev/null +++ b/arch/arm/cpu/arm926ejs/lpc32xx/Makefile @@ -0,0 +1,45 @@ +# +# (C) Copyright 2000-2006 +# Wolfgang Denk, DENX Software Engineering, w...@denx.de. +# +# See file CREDITS for list of people who contributed to this +# project. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation; either version 2 of +# the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, +# MA 02111-1307 USA +# + +include $(TOPDIR)/config.mk + +LIB = $(obj)lib$(SOC).o + +COBJS = cpu.o clkpwr.o devices.o timer.o + +SRCS:= $(SOBJS:.o=.S) $(COBJS:.o=.c) +OBJS:= $(addprefix $(obj),$(COBJS) $(SOBJS)) + +all:$(obj).depend $(LIB) + +$(LIB): $(OBJS) + $(call cmd_link_o_target, $(OBJS)) + +# + +# defines $(obj).depend target +include $(SRCTREE)/rules.mk + +sinclude $(obj).depend + +# diff --git a/arch/arm/cpu/arm926ejs/lpc32xx/clkpwr.c b/arch/arm/cpu/arm926ejs/lpc32xx/clkpwr.c new file mode 100644 index 000..83e068f --- /dev/null +++ b/arch/arm/cpu/arm926ejs/lpc32xx/clkpwr.c @@ -0,0 +1,100 @@ +/* + * Copyright (C) 2011 by Vladimir Zapolskiy v...@mleia.com + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +#include common.h +#include div64.h +#include asm/arch/cpu.h +#include asm/arch/clk.h +#include asm/io.h + +static clk_t *clk = (clk_t *)CLK_PM_BASE; + +unsigned int get_sys_clk_rate(void) +{ + if (readl(clk-sysclk_ctrl) CLK_SYSCLK_PLL397) + return RTC_CLK_FREQUENCY * 397; + else + return OSC_CLK_FREQUENCY; +} + +unsigned int get_hclk_pll_rate(void) +{ + unsigned long long fin, fref,
[U-Boot] mx5 configs: CONFIG_PRIME should really be CONFIG_ETHPRIME
Signed-off-by: Wolfgang Grandegger w...@denx.de --- include/configs/mx51evk.h |2 +- include/configs/mx53ard.h |2 +- include/configs/mx53evk.h |2 +- include/configs/mx53loco.h |2 +- include/configs/mx53smd.h |2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/include/configs/mx51evk.h b/include/configs/mx51evk.h index 0c10870..de540e1 100644 --- a/include/configs/mx51evk.h +++ b/include/configs/mx51evk.h @@ -122,7 +122,7 @@ #define CONFIG_BOOTDELAY 3 -#define CONFIG_PRIME FEC0 +#define CONFIG_ETHPRIMEFEC0 #define CONFIG_LOADADDR0x9080 /* loadaddr env var */ diff --git a/include/configs/mx53ard.h b/include/configs/mx53ard.h index 3e99031..daba05f 100644 --- a/include/configs/mx53ard.h +++ b/include/configs/mx53ard.h @@ -90,7 +90,7 @@ #define CONFIG_BOOTDELAY 3 -#define CONFIG_PRIME smc911x +#define CONFIG_ETHPRIMEsmc911x /*Support LAN9217*/ #define CONFIG_SMC911X diff --git a/include/configs/mx53evk.h b/include/configs/mx53evk.h index 2033492..34f47e1 100644 --- a/include/configs/mx53evk.h +++ b/include/configs/mx53evk.h @@ -101,7 +101,7 @@ #define CONFIG_BOOTDELAY 3 -#define CONFIG_PRIME FEC0 +#define CONFIG_ETHPRIMEFEC0 #define CONFIG_LOADADDR0x7080 /* loadaddr env var */ #define CONFIG_SYS_TEXT_BASE0x7780 diff --git a/include/configs/mx53loco.h b/include/configs/mx53loco.h index c3e4e13..f35bac1 100644 --- a/include/configs/mx53loco.h +++ b/include/configs/mx53loco.h @@ -86,7 +86,7 @@ #define CONFIG_BOOTDELAY 3 -#define CONFIG_PRIME FEC0 +#define CONFIG_ETHPRIMEFEC0 #define CONFIG_LOADADDR0x7080 /* loadaddr env var */ #define CONFIG_SYS_TEXT_BASE0x7780 diff --git a/include/configs/mx53smd.h b/include/configs/mx53smd.h index c117a33..cc68749 100644 --- a/include/configs/mx53smd.h +++ b/include/configs/mx53smd.h @@ -93,7 +93,7 @@ #define CONFIG_BOOTDELAY 3 -#define CONFIG_PRIME FEC0 +#define CONFIG_ETHPRIMEFEC0 #define CONFIG_LOADADDR0x7080 /* loadaddr env var */ #define CONFIG_SYS_TEXT_BASE0x7780 -- 1.7.4.1 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] ehci-fsl: correct size of ehci caplength
According to the EHCI specification the Capability Register Length has a size of 8 bits. Signed-off-by: Wolfgang Grandegger w...@denx.de --- include/usb/ehci-fsl.h | 25 + 1 files changed, 13 insertions(+), 12 deletions(-) diff --git a/include/usb/ehci-fsl.h b/include/usb/ehci-fsl.h index 67600ed..f50a8f2 100644 --- a/include/usb/ehci-fsl.h +++ b/include/usb/ehci-fsl.h @@ -186,35 +186,36 @@ struct usb_ehci { u32 gptimer1_ctrl; /* 0x08C - General Purpose Timer 1 control */ u32 sbuscfg;/* 0x090 - System Bus Interface Control */ u8 res2[0x6C]; - u16 caplength; /* 0x100 - Capability Register Length */ + u8 caplength; /* 0x100 - Capability Register Length */ + u8 res3[0x1]; u16 hciversion; /* 0x102 - Host Interface Version */ u32 hcsparams; /* 0x104 - Host Structural Parameters */ u32 hccparams; /* 0x108 - Host Capability Parameters */ - u8 res3[0x14]; + u8 res4[0x14]; u32 dciversion; /* 0x120 - Device Interface Version */ u32 dciparams; /* 0x124 - Device Controller Params */ - u8 res4[0x18]; + u8 res5[0x18]; u32 usbcmd; /* 0x140 - USB Command */ u32 usbsts; /* 0x144 - USB Status */ u32 usbintr;/* 0x148 - USB Interrupt Enable */ u32 frindex;/* 0x14C - USB Frame Index */ - u8 res5[0x4]; + u8 res6[0x4]; u32 perlistbase;/* 0x154 - Periodic List Base - USB Device Address */ u32 ep_list_addr; /* 0x158 - Next Asynchronous List - End Point Address */ - u8 res6[0x4]; + u8 res7[0x4]; u32 burstsize; /* 0x160 - Programmable Burst Size */ #define FSL_EHCI_TXPBURST(X) ((X) 8) #define FSL_EHCI_RXPBURST(X) (X) u32 txfilltuning; /* 0x164 - Host TT Transmit pre-buffer packet tuning */ - u8 res7[0x8]; + u8 res8[0x8]; u32 ulpi_viewpoint; /* 0x170 - ULPI Reister Access */ - u8 res8[0xc]; + u8 res9[0xc]; u32 config_flag;/* 0x180 - Configured Flag Register */ u32 portsc; /* 0x184 - Port status/control */ - u8 res9[0x1C]; + u8 res10[0x1C]; u32 otgsc; /* 0x1a4 - Oo-The-Go status and control */ u32 usbmode;/* 0x1a8 - USB Device Mode */ u32 epsetupstat;/* 0x1ac - End Point Setup Status */ @@ -228,18 +229,18 @@ struct usb_ehci { u32 epctrl3;/* 0x1cc - End Point Control 3 */ u32 epctrl4;/* 0x1d0 - End Point Control 4 */ u32 epctrl5;/* 0x1d4 - End Point Control 5 */ - u8 res10[0x28]; + u8 res11[0x28]; u32 usbgenctrl; /* 0x200 - USB General Control */ u32 isiphyctrl; /* 0x204 - On-Chip PHY Control */ - u8 res11[0x1F8]; + u8 res12[0x1F8]; u32 snoop1; /* 0x400 - Snoop 1 */ u32 snoop2; /* 0x404 - Snoop 2 */ u32 age_cnt_limit; /* 0x408 - Age Count Threshold */ u32 prictrl;/* 0x40c - Priority Control */ u32 sictrl; /* 0x410 - System Interface Control */ - u8 res12[0xEC]; + u8 res13[0xEC]; u32 control;/* 0x500 - Control */ - u8 res13[0xafc]; + u8 res14[0xafc]; }; #endif /* _EHCI_FSL_H */ -- 1.7.4.1 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] ehci-mxc: remove incorrect comment
The USB port to be used is determined by CONFIG_MXC_USB_PORT. So, it appears that the comment is not correct. Remove it. Signed-off-by: Wolfgang Grandegger w...@denx.de --- drivers/usb/host/ehci-mxc.c |1 - 1 files changed, 0 insertions(+), 1 deletions(-) diff --git a/drivers/usb/host/ehci-mxc.c b/drivers/usb/host/ehci-mxc.c index a0cfbb7..f403d49 100644 --- a/drivers/usb/host/ehci-mxc.c +++ b/drivers/usb/host/ehci-mxc.c @@ -120,7 +120,6 @@ int ehci_hcd_init(void) udelay(80); - /* Take USB2 */ ehci = (struct usb_ehci *)(IMX_USB_BASE + (0x200 * CONFIG_MXC_USB_PORT)); hccr = (struct ehci_hccr *)((uint32_t)ehci-caplength); -- 1.7.4.1 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] mx5 configs: CONFIG_PRIME should really be CONFIG_ETHPRIME
Signed-off-by: Wolfgang Grandegger w...@denx.de --- Resend due to missing [PATCH] prefix. include/configs/mx51evk.h |2 +- include/configs/mx53ard.h |2 +- include/configs/mx53evk.h |2 +- include/configs/mx53loco.h |2 +- include/configs/mx53smd.h |2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/include/configs/mx51evk.h b/include/configs/mx51evk.h index 0c10870..de540e1 100644 --- a/include/configs/mx51evk.h +++ b/include/configs/mx51evk.h @@ -122,7 +122,7 @@ #define CONFIG_BOOTDELAY 3 -#define CONFIG_PRIME FEC0 +#define CONFIG_ETHPRIMEFEC0 #define CONFIG_LOADADDR0x9080 /* loadaddr env var */ diff --git a/include/configs/mx53ard.h b/include/configs/mx53ard.h index 3e99031..daba05f 100644 --- a/include/configs/mx53ard.h +++ b/include/configs/mx53ard.h @@ -90,7 +90,7 @@ #define CONFIG_BOOTDELAY 3 -#define CONFIG_PRIME smc911x +#define CONFIG_ETHPRIMEsmc911x /*Support LAN9217*/ #define CONFIG_SMC911X diff --git a/include/configs/mx53evk.h b/include/configs/mx53evk.h index 2033492..34f47e1 100644 --- a/include/configs/mx53evk.h +++ b/include/configs/mx53evk.h @@ -101,7 +101,7 @@ #define CONFIG_BOOTDELAY 3 -#define CONFIG_PRIME FEC0 +#define CONFIG_ETHPRIMEFEC0 #define CONFIG_LOADADDR0x7080 /* loadaddr env var */ #define CONFIG_SYS_TEXT_BASE0x7780 diff --git a/include/configs/mx53loco.h b/include/configs/mx53loco.h index c3e4e13..f35bac1 100644 --- a/include/configs/mx53loco.h +++ b/include/configs/mx53loco.h @@ -86,7 +86,7 @@ #define CONFIG_BOOTDELAY 3 -#define CONFIG_PRIME FEC0 +#define CONFIG_ETHPRIMEFEC0 #define CONFIG_LOADADDR0x7080 /* loadaddr env var */ #define CONFIG_SYS_TEXT_BASE0x7780 diff --git a/include/configs/mx53smd.h b/include/configs/mx53smd.h index c117a33..cc68749 100644 --- a/include/configs/mx53smd.h +++ b/include/configs/mx53smd.h @@ -93,7 +93,7 @@ #define CONFIG_BOOTDELAY 3 -#define CONFIG_PRIME FEC0 +#define CONFIG_ETHPRIMEFEC0 #define CONFIG_LOADADDR0x7080 /* loadaddr env var */ #define CONFIG_SYS_TEXT_BASE0x7780 -- 1.7.4.1 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v6 1/2] Introduce generic TPM support in u-boot
TPM (Trusted Platform Module) is an integrated circuit and software platform that provides computer manufacturers with the core components of a subsystem used to assure authenticity, integrity and confidentiality. This driver supports version 1.2 of the TCG (Trusted Computing Group) specifications. The TCG specification defines several so called localities in a TPM chip, to be controlled by different software layers. When used on a typical x86 platform during the firmware phase, only locality 0 can be accessed by the CPU, so this driver even while supporting the locality concept presumes that only locality zero is used. This implementation is loosely based on the article Writing a TPM Device Driver published on http://ptgmedia.pearsoncmg.com Compiling this driver with DEBUG defined will generate trace of all accesses to TMP registers. This driver has been tested and is being used in three different functional ChromeOS machines (Pinetrail and Sandy Bridge Intel chipsets) all using the same Infineon SLB 9635 TT 1.2 device. A u-boot cli command allowing access to the TPM was also implemented and is being submitted as a second patch. Change-Id: I22a33c3e5b2e20eec9557a7621bd463b30389d73 Signed-off-by: Vadim Bendebury vben...@chromium.org CC: Wolfgang Denk w...@denx.de --- v5 with A function comment header correction. Makefile |3 + README| 10 + drivers/tpm/Makefile | 43 drivers/tpm/generic_lpc_tpm.c | 495 + include/tpm.h | 71 ++ 5 files changed, 622 insertions(+), 0 deletions(-) create mode 100644 drivers/tpm/Makefile create mode 100644 drivers/tpm/generic_lpc_tpm.c create mode 100644 include/tpm.h diff --git a/Makefile b/Makefile index 5db2e0e..df86088 100644 --- a/Makefile +++ b/Makefile @@ -268,6 +268,9 @@ LIBS += arch/powerpc/cpu/mpc8xxx/lib8xxx.o endif LIBS += drivers/rtc/librtc.o LIBS += drivers/serial/libserial.o +ifeq ($(CONFIG_GENERIC_LPC_TPM),y) +LIBS += drivers/tpm/libtpm.o +endif LIBS += drivers/twserial/libtws.o LIBS += drivers/usb/eth/libusb_eth.o LIBS += drivers/usb/gadget/libusb_gadget.o diff --git a/README b/README index 7e032a9..bcd3695 100644 --- a/README +++ b/README @@ -1018,6 +1018,16 @@ The following options need to be configured: CONFIG_SH_ETHER_CACHE_WRITEBACK If this option is set, the driver enables cache flush. +- TPM Support: + CONFIG_GENERIC_LPC_TPM + Support for generic parallel port TPM devices. Only one device + per system is supported at this time. + + CONFIG_TPM_TIS_BASE_ADDRESS + Base address where the generic TPM device is mapped + to. Contemporary x86 systems usually map it at + 0xfed4. + - USB Support: At the moment only the UHCI host controller is supported (PIP405, MIP405, MPC5200); define diff --git a/drivers/tpm/Makefile b/drivers/tpm/Makefile new file mode 100644 index 000..be11c8b --- /dev/null +++ b/drivers/tpm/Makefile @@ -0,0 +1,43 @@ +# Copyright (c) 2011 The Chromium OS Authors. All rights reserved. +# +# See file CREDITS for list of people who contributed to this +# project. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation; either version 2 of +# the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, +# MA 02111-1307 USA +# + +include $(TOPDIR)/config.mk + +LIB := $(obj)libtpm.o + +COBJS-$(CONFIG_GENERIC_LPC_TPM) = generic_lpc_tpm.o + +COBJS := $(COBJS-y) +SRCS := $(COBJS:.o=.c) +OBJS := $(addprefix $(obj),$(COBJS)) + +all: $(LIB) + +$(LIB): $(obj).depend $(OBJS) + $(call cmd_link_o_target, $(OBJS)) + +# + +include $(SRCTREE)/rules.mk + +sinclude $(obj).depend + +# diff --git a/drivers/tpm/generic_lpc_tpm.c b/drivers/tpm/generic_lpc_tpm.c new file mode 100644 index 000..6c494eb --- /dev/null +++ b/drivers/tpm/generic_lpc_tpm.c @@ -0,0 +1,495 @@ +/* + * Copyright (c) 2011 The Chromium OS Authors. + * + * 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
[U-Boot] [PATCH] davinci: remove config.mk file from the sources
To compile TI Davinci SoC support the identical config.mk file from the cpu directory shall be used. Signed-off-by: Vladimir Zapolskiy v...@mleia.com --- arch/arm/cpu/arm926ejs/davinci/config.mk | 32 -- 1 files changed, 0 insertions(+), 32 deletions(-) delete mode 100644 arch/arm/cpu/arm926ejs/davinci/config.mk diff --git a/arch/arm/cpu/arm926ejs/davinci/config.mk b/arch/arm/cpu/arm926ejs/davinci/config.mk deleted file mode 100644 index 565adda..000 --- a/arch/arm/cpu/arm926ejs/davinci/config.mk +++ /dev/null @@ -1,32 +0,0 @@ -# -# (C) Copyright 2002 -# Gary Jennejohn, DENX Software Engineering, g...@denx.de -# -# See file CREDITS for list of people who contributed to this -# project. -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License as -# published by the Free Software Foundation; either version 2 of -# the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, -# MA 02111-1307 USA -# - -PLATFORM_RELFLAGS += -fno-common -ffixed-r8 -msoft-float - -PLATFORM_CPPFLAGS += -march=armv5te -# = -# -# Supply options according to compiler version -# -# = -PLATFORM_RELFLAGS +=$(call cc-option,-mshort-load-bytes,$(call cc-option,-malignment-traps,)) -- 1.7.5.4 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] See attached and respond
Award3.rtf Description: RTF file ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] tools: make it possible to build tools unconfigured
Dear Ilya, In message 1308173853-20178-1-git-send-email-ya...@emcraft.com you wrote: Sometimes we want to build common tools without configuring for specific target. Currently top Makefile has some support for this but it doesn't work. This patch tries to fix this. Things changed: - config.mk disable 'ld script not found error' in case if we are building tools only. - Makefilemkimage relies on autogenerated version so we need to move $(VERSION_FILE) rule out of ifeq and make tools rule depend on it. - tools/Makefile put common/env_embedded.o and envcrc.o to object list conditionally. This fixes errors during dependency generation. Signed-off-by: Ilya Yanok ya...@emcraft.com --- Makefile | 34 +- config.mk |2 ++ tools/Makefile | 19 --- 3 files changed, 35 insertions(+), 20 deletions(-) Is it correct to assume that this commit has been obsolteted by the following commits: 249b53a 2011-10-06 20:19:42 +0200 Build timestamp_autogenerated.h without config a76406f 2011-10-06 20:20:15 +0200 Safer timestamp_autogenerated.h generation 9f87658 2011-10-06 20:21:16 +0200 ublimage: NAND block size isn't set at build-time ? 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 Every living thing wants to survive. -- Spock, The Ultimate Computer, stardate 4731.3 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] zlib: handle overflow while calculating available stream input size
Dear Anatolij Gustschin, In message 1318696372-13816-1-git-send-email-ag...@denx.de you wrote: If compressed data is located in sectors at the end of the flash and it's offset + input stream size 0x, the uncompressing time is very long, since processing of the stream is done bytewise (and not blockwise) due to overflow in inflate_fast() while calculation and checking for enough input available. Check for this overflow condition and limit the available stream input size to the actually max. possible input size. This fixes the problem. The issue is easily reproduceable by placing a gziped bitmap in flash, e.g. at FFF8, and running 'bmp' commands like 'bmp info FFF8' or 'bmp display FFF8'. The uncompressing can take up to 3 sec. whereas it should normaly take a fraction of a second. If the 'splashimage' environment variable points to this address, the booting time also increases significantly. Signed-off-by: Anatolij Gustschin ag...@denx.de --- Note: there are 6 errors and 4 warning reported by checkpatch.pl for this patch. I didn't fix them intentionally and used the coding style of the zlib code here. The code would look ugly otherwise. lib/zlib/inffast.c |8 1 files changed, 8 insertions(+), 0 deletions(-) Applied, thanks. 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 Another dream that failed. There's nothing sadder. -- Kirk, This side of Paradise, stardate 3417.3 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] Pull request: u-boot-video/master
Dear Anatolij Gustschin, In message 20111015215457.04c4056f@wker you wrote: Hello Wolfgang, The following changes since commit d8fffa057c9430fd0c5104ab6ff7db4cdb03db51: Merge branch 'master' of git://git.denx.de/u-boot-mips (2011-10-12 22:47:15 +0200) are available in the git repository at: git://git.denx.de/u-boot-video.git master Helmut Raiger (2): mx31: make HSP clock for mx3fb driver available video: Moving mx3fb.c to CONFIG_VIDEO Marek Vasut (1): MX5: Make IPU display output and pixel format configurable Stefano Babic (2): VIDEO: MX5: Switch MX5 to CONFIG_VIDEO VIDEO: MX5: export pix format Timur Tabi (1): video: update the Freescale DIU driver to use linux/fb.h arch/arm/cpu/arm1136/mx31/generic.c | 40 ++- arch/arm/include/asm/arch-mx31/clock.h|1 + arch/arm/include/asm/arch-mx31/imx-regs.h | 14 + board/ttcontrol/vision2/vision2.c | 40 ++- drivers/video/Makefile|2 +- drivers/video/cfb_console.c |7 + drivers/video/fsl_diu_fb.c| 54 +--- drivers/video/ipu.h | 46 +--- drivers/video/mx3fb.c | 459 + drivers/video/mxc_ipuv3_fb.c | 119 +++- include/configs/imx31_phycore.h | 24 +- include/configs/qong.h| 14 +- include/configs/vision2.h | 11 +- include/ipu_pixfmt.h | 81 + 14 files changed, 497 insertions(+), 415 deletions(-) create mode 100644 include/ipu_pixfmt.h Applied, thanks. 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 If I can have honesty, it's easier to overlook mistakes. -- Kirk, Space Seed, stardate 3141.9 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] Pull request u-boot-blackfin.git
Dear Mike Frysinger, In message 1318789406-8473-1-git-send-email-vap...@gentoo.org you wrote: The following changes since commit 8d80d057537fd536c8cc2252dc18ec3dea9a47e2: serial_exit: punt unused prototype (2011-10-15 22:20:59 +0200) are available in the git repository at: git://www.denx.de/git/u-boot-blackfin.git master Mike Frysinger (2): Blackfin: define CONFIG_SYS_CACHELINE_SIZE Blackfin: bfin_spi: fix build error when DEBUG is defined arch/blackfin/include/asm/blackfin_local.h |1 + arch/blackfin/include/asm/cache.h | 70 arch/blackfin/include/asm/config.h |3 + drivers/spi/bfin_spi.c |2 +- 4 files changed, 75 insertions(+), 1 deletions(-) create mode 100644 arch/blackfin/include/asm/cache.h Applied, thanks. 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 Alles Gescheite ist schon gedacht worden, man muß nur versuchen, es noch einmal zu denken. -- Goethe, Maximen und Reflexionen ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] kw_gpio: fix error in kw_gpio_direction_input
Dear Holger Brunck, In message 1314004866-11454-1-git-send-email-holger.bru...@keymile.com you wrote: The function kw_gpio_is_valid returns zero on success, so adapt the error check accordingly. Signed-off-by: Holger Brunck holger.bru...@keymile.com cc: Prafulla Wadaskar prafu...@marvell.com cc: Dieter Kiermaier dk-arm-li...@gmx.de --- drivers/gpio/kw_gpio.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) Applied, thanks. Best regards, Wolfgang Denk -- DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de The price of curiosity is a terminal experience. - Terry Pratchett, _The Dark Side of the Sun_ ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH V4 7/9] DM9000:Add a byte swap macro for dm9000 io operation.
Dear Jason Jin, In message 1314258403-31530-1-git-send-email-jason@freescale.com you wrote: commit a45dde2293c816138e53c26eca6fd0322583f9a6 changed the dm9000 direct register access to standard IO. This should work on the ColdFire platform as there are corresponding macros for the LE devices. But the hardware settings on some ColdFire boards had swapped the byte order which make the original macros such as out_le16 cannot work. To avoid changing the common io access code on ColdFire platform, the DM9000_BYTE_SWAPPED define was added to make the dm9000 use __raw* IO access on some ColdFire boards. Signed-off-by: Jason Jin jason@freescale.com --- Changes for V2: Remove the 'volatile' in the macro. Changes for V3: Seperate the dm9000 code support and the platform code to two patches so that it can be accepted by different custodian. Resend: Add Ben Warren Changes for V4: rename the DM9000_BYTE_SWAPPED to CONFIG_DM9000_BYTE_SWAPPED drivers/net/dm9000x.c | 10 +- 1 files changed, 9 insertions(+), 1 deletions(-) Applied, thanks. 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 To live is always desirable. -- Eleen the Capellan, Friday's Child, stardate 3498.9 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 1/3] Makefile: Add generic build rules for include/asm/arch/asm-offsets.h
Dear Albert, In message 1314536593-14310-2-git-send-email-graeme.r...@gmail.com Graeme Russ wrote: Add three features to the top-level makefile: - Add include/asm/arch/asm-offsets.h as a dependency of the 'depend' target to eliminate 'file does not exist' errors during dependency building - Skip generation of include/asm/arch/asm-offsets.h if the source file ($(CPUDIR)/$(SOC)/asm-offsets.c) does not exist - Add removal of arch specific asm-offsets.s and asm-offsets.h files to the 'clean' target Signed-off-by: Graeme Russ graeme.r...@gmail.com --- Big Fat Note: I have not tested this on ARM which needs to be looked at closely as the SoC files are one level deeper than where sc520 sits under x86 Makefile | 24 ++-- 1 files changed, 22 insertions(+), 2 deletions(-) Would you please ACK or NAK this patch? 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 Am besten betrachten Sie Fehlermeldungen als eine Art Psycho-Test, mit dem herausgefunden werden soll, wie belastbar Sie sind. - Dr. R. Wonneberger, Kompaktführer LaTeX, Kap. 1.6: Fehlermeldungen ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 1/2] Add board_panic_no_console to deal with early critical errors
Dear Simon Glass, In message 1314633910-8550-2-git-send-email-...@chromium.org you wrote: Tested-by: Simon Glass s...@chromium.org Signed-off-by: Simon Glass s...@chromium.org --- include/common.h |8 lib/vsprintf.c | 26 -- 2 files changed, 32 insertions(+), 2 deletions(-) Can we please make this feature conditional, so that boards that are not going to use it don't have to suffer from the increased code size? Thanks. Best regards, Wolfgang Denk -- DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de The combination of a number of things to make existence worthwhile. Yes, the philosophy of 'none,' meaning 'all.' -- Spock and Lincoln, The Savage Curtain, stardate 5906.4 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 2/2] Add check that console is ready before output
Dear Simon Glass, In message 1314633910-8550-3-git-send-email-...@chromium.org you wrote: If puts() or printf() is called before the console is ready, U-Boot will either hang or die. This adds a check for this so that debug() can be used in early code without concern that it will hang. U-Boot boots properly Tested-by: Simon Glass s...@chromium.org Signed-off-by: Simon Glass s...@chromium.org --- common/console.c |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) Isn't this just hushing up implementation errors? Before, the incorrect call would cause U-Boot to fail - a situation which cannot be overlooked during the port, so the problem will quickly be analyzed and fixed. With your commit, everything appears to work fine, just some (expected) output will be missing. This is misleading at beats, and will cause that buggy code will go undetected for a long time. I don't think this is a good strategy. Please comment. 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 Compassion -- that's the one things no machine ever had. Maybe it's the one thing that keeps men ahead of them. -- McCoy, The Ultimate Computer, stardate 4731.3 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v2] tools/env: add posibility to inject configuration
Dear =?UTF-8?q?Andreas=20Bie=C3=9Fmann?=, In message 1314804368-25687-1-git-send-email-biessm...@corscience.de you wrote: If one wants to use fw_printenv/fw_setenv in special variants (eg compiled in MTD parameters without configuration file) he needs to change the sources. This patch add the posibillity to change the behaviour of fw_printenv by defining a specific configuration header at compile time. ... +/tools/env/fw_env_config.h Instead of putting this (generated) file into tools/env/, we better put it into include/generated/ 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 In a survey taken several years ago, all incoming freshmen at MIT were asked if they expected to graduate in the top half of their class. Ninety-seven percent responded that they did. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v5 01/13] Add generic, reusable menu code
Dear Jason Hobbs, In message 1314805054-16250-2-git-send-email-jason.ho...@calxeda.com you wrote: This will be used first by the pxe code, but is intended to be generic and reusable for other jobs in U-boot. Signed-off-by: Jason Hobbs jason.ho...@calxeda.com --- changes in v2: - new in v2 changes in v3: - move timeout support to later patch - fix NULL case bug in menu_item_key_match - consistently use 'item_key' instead of 'key' - move default/prompt logic into menu code - consistently return int for error propagation - change option setting functions to menu_create parameters - add README.menu changes in v4: - change pxecfg to pxe in commit log - improve the menu documentation changes in v5: - none common/Makefile |1 + common/menu.c | 393 +++ doc/README.menu | 119 + include/menu.h | 30 4 files changed, 543 insertions(+), 0 deletions(-) create mode 100644 common/menu.c create mode 100644 doc/README.menu create mode 100644 include/menu.h Applied, thanks. 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 One planet is all you get. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v5 02/13] common, menu: use abortboot for menu timeout
Dear Jason Hobbs, In message 1314805054-16250-3-git-send-email-jason.ho...@calxeda.com you wrote: Signed-off-by: Jason Hobbs jason.ho...@calxeda.com --- changes in v2: - expose abortboot externally instead of using a wrapper - expose abortboot externally when CONFIG_MENU is set changes in v3: - simplify the conditional export of abortboot - add timeout support for the menu in this patch - add doc for timeout feature changes in v4: - added more comments to menu.c changes in v5: - none common/main.c| 10 -- common/menu.c| 40 doc/README.menu |6 +++--- include/common.h |3 +++ include/menu.h |2 +- 5 files changed, 47 insertions(+), 14 deletions(-) Applied, thanks. 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 Drawing on my fine command of language, I said nothing. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v5 03/13] common: add run_command2 for running simple or hush commands
Dear Jason Hobbs, In message 1314805054-16250-4-git-send-email-jason.ho...@calxeda.com you wrote: Signed-off-by: Jason Hobbs jason.ho...@calxeda.com Cc: Mike Frysinger vap...@gentoo.org --- changes in v2: - whitespace correction changes in v4: - fix indention of a run_command2 line - make run_command2 static inline changes in v5: - return parse_string_outer value directly common/hush.c |2 +- common/main.c | 56 +++- include/hush.h |2 +- 3 files changed, 29 insertions(+), 31 deletions(-) Applied, thanks. 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 It is a good thing for an uneducated man to read books of quotations. - Sir Winston Churchill _My Early Life_ ch. 9 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v5 04/13] Add isblank
Dear Jason Hobbs, In message 1314805054-16250-5-git-send-email-jason.ho...@calxeda.com you wrote: Existing ctype checks are implemented using a 256 byte lookup table, allowing each character to be in any of 8 character classes. Since there are 8 existing character classes without the blank class, I implemented isblank without using the lookup table. Since there are only two blank characters - tab and space - this is a more reasonable approach than doubling the size of the lookup table to accommodate one more class. Signed-off-by: Jason Hobbs jason.ho...@calxeda.com --- new in v4 changes in v5: - none include/linux/ctype.h |6 ++ 1 files changed, 6 insertions(+), 0 deletions(-) Applied, thanks. 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 Comparing information and knowledge is like asking whether the fatness of a pig is more or less green than the designated hitter rule. - David Guaspari ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v5 05/13] cosmetic: remove unneeded curly braces
Dear Jason Hobbs, In message 1314805054-16250-6-git-send-email-jason.ho...@calxeda.com you wrote: This prevents a checkpatch warning in the patch to use isblank Signed-off-by: Jason Hobbs jason.ho...@calxeda.com --- new in v4 changes in v5: - none common/main.c |6 ++ 1 files changed, 2 insertions(+), 4 deletions(-) Applied, thanks. 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 For every complex problem, there is a solution that is simple, neat, and wrong. - Mark Twain ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v5 06/13] Replace space and tab checks with isblank
Dear Jason Hobbs, In message 1314805054-16250-7-git-send-email-jason.ho...@calxeda.com you wrote: These are various places I found that checked for conditions equivalent to isblank. Signed-off-by: Jason Hobbs jason.ho...@calxeda.com --- new in v4 changes in v5: - none board/hymod/env.c|9 + common/command.c |9 + common/main.c|5 +++-- drivers/bios_emulator/x86emu/debug.c |7 --- examples/standalone/smc911x_eeprom.c |5 +++-- lib/hashtable.c |4 +++- 6 files changed, 23 insertions(+), 16 deletions(-) Applied, thanks. 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 A committee is a group that keeps the minutes and loses hours. -- Milton Berle ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v5 07/13] README: document standard image variables
Dear Jason Hobbs, In message 1314805054-16250-8-git-send-email-jason.ho...@calxeda.com you wrote: With these documented, we can start pushing towards standardizing their use across boards. Signed-off-by: Jason Hobbs jason.ho...@calxeda.com Cc: Mike Frysinger vap...@gentoo.org --- new in v4 changes in v5: - moved the doc into README alongside the other environment variables. README | 19 +++ 1 files changed, 19 insertions(+), 0 deletions(-) diff --git a/README b/README index 0886987..da4a230 100644 --- a/README +++ b/README @@ -3507,6 +3507,25 @@ List of environment variables (most likely not complete): Ethernet is encapsulated/received over 802.1q VLAN tagged frames. Applied, thanks. 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 No one wants war. -- Kirk, Errand of Mercy, stardate 3201.7 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v4 2/2] NS16550: buffer reads
On Mon, Oct 17, 2011 at 4:08 AM, Wolfgang Denk w...@denx.de wrote: Dear Simon Glass, In message 1318742050-2201-2-git-send-email-...@chromium.org you wrote: ... With it enabled, on ppc it's an extra 396 bytes of image size, and 1056 bytes of BSS. ARM note from Simon Glass s...@chromium.org - ARM code size goes from 212 to 484 bytes (extra 272 bytes), BSS to 1056 bytes. One problem I see is that the code size on some boards grows even if the new option is not enabled. Here a compare before and after applying your patches (without any changes to the respective board configurations): Configuring for AR405 board... text data bss dec hex filename - 246058 12972 14636 273666 42d02 /work/wd/tmp-ppc/u-boot + 246062 12972 14636 273670 42d06 /work/wd/tmp-ppc/u-boot Configuring for CANBT board... text data bss dec hex filename - 120710 8604 3876 133190 20846 /work/wd/tmp-ppc/u-boot + 120714 8604 3876 133194 2084a /work/wd/tmp-ppc/u-boot Configuring for pcs440ep board... text data bss dec hex filename - 296191 19636 345088 660915 a15b3 /work/wd/tmp-ppc/u-boot + 296195 19636 345088 660919 a15b7 /work/wd/tmp-ppc/u-boot ... Hi Wolfgang, Can you please tell me which ELDK version this is using? I see that the 405 board seems to need ppc_4xx which suggests 4.2 rather than 5, since in 5 the compiler is called powerpc- But I might be confused. Regards, Simon 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 Out of register space (ugh) - vi ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v5 08/13] lib: add uuid_str_to_bin for use with bootp and PXE uuid
Dear Jason Hobbs, In message 1314805054-16250-9-git-send-email-jason.ho...@calxeda.com you wrote: Signed-off-by: Jason Hobbs jason.ho...@calxeda.com --- changes for v2: - Move uuid_str_to_bin's prototype from uuid. to common.h - Place uuid.o make rule in sorted order and conditionalize changes for v3: - check for NULL pointers in uuid conversion function changes for v4: - add a UUID string validator changes in v5: - none include/common.h |4 ++ lib/Makefile |1 + lib/uuid.c | 85 ++ 3 files changed, 90 insertions(+), 0 deletions(-) create mode 100644 lib/uuid.c Applied, thanks. Best regards, Wolfgang Denk -- DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de The ideal situation is to have massive computing power right at home. Something that dims the streetlights and shrinks the picture on the neighbours' TVs when you boot it up. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v5 09/13] Add pxe command
Dear Jason Hobbs, In message 1314805054-16250-10-git-send-email-jason.ho...@calxeda.com you wrote: Add pxe command, which is intended to mimic PXELINUX functionality. 'pxe get' uses tftp to retrieve a file based on UUID, MAC address or IP address. 'pxe boot' interprets the contents of PXELINUX config like file to boot using a specific initrd, kernel and kernel command line. This patch also adds a README.pxe file - see it for more details on the pxe command. Signed-off-by: Jason Hobbs jason.ho...@calxeda.com --- changes in v2: - call abortboot directly instead of via a wrapper - change the license to GPLv2+ - cleanup brace usage in multiline statements, conditionals - allow bootfile to not exist, or to be a standalone filename - try to clarify what's going on with get_relfile - try cfg paths one by one instead of building an array - refactor getenv/printfs to a new from_env function - use the new generic menu code instead of that being integrated - drop the ifdef from do_tftp in common.h - use a clearer comment wrt to localcmd dup - default to no timeout changes in v3: - use GPLv2+ license for the readme - parse and create menu in separate steps - adapt to menu interface changes changes in v4: - rename pxecfg to pxe - expose run_command2 externally when using pxe - add more comments to common/cmd_pxe.c - format_mac_pxe's outbuf is now allocated in its caller - get_bootfile_path now takes bootfile_path from caller - drop a redundant file not found message - make printf messages more informative - use sizeof(struct blah) instead of sizeof(*p) - use memset to initialize some structs per wd's request - use isblank to check for non EOL whitespace - switch to standard subcommand handling - fix regression where ctrl+c didn't return to command line - check for filesize missing after a tftp get - only call do_bootm with argc == 4 if fdtaddr != NULL (thanks Ricardo Salveti) - use lowercase hex in formatted MAC string (thanks Loïc Minier) - prefix MAC strings with 01- to indicate Ethernet hwtype (thanks Loïc Minier) - switch to the standard environment variables - switch from simple to strict strtoul where possible changes in v5: - convert another simple_strtoul to strict common/Makefile |1 + common/cmd_pxe.c | 1355 ++ common/main.c|2 + doc/README.pxe | 240 ++ include/common.h |6 + 5 files changed, 1604 insertions(+), 0 deletions(-) create mode 100644 common/cmd_pxe.c create mode 100644 doc/README.pxe Applied, thanks. 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 I think animal testing is a terrible idea; they get all nervous and give the wrong answers. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v5 10/13] net: bootp: add PXE/RFC 4578 DHCP options support
Dear Jason Hobbs, In message 1314805054-16250-11-git-send-email-jason.ho...@calxeda.com you wrote: These options are required to be present in RFC 4578 compliant DHCP requests. They give more information to DHCP servers to allow serving different DHCP responses to different systems based on client architecture, client capabilities, UUID, or vendor. Signed-off-by: Jason Hobbs jason.ho...@calxeda.com --- changes for v2: - Use common.h to get uuid_str_to_bin prototype changes for v4: - Ensure pxeuuid contains a valid UUID string changes for v5: - none net/bootp.c | 40 1 files changed, 40 insertions(+), 0 deletions(-) Applied, thanks. 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 WARNING: This Product Attracts Every Other Piece of Matter in the Universe, Including the Products of Other Manufacturers, with a Force Proportional to the Product of the Masses and Inversely Proportional to the Distance Between Them. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 1/2] Add board_panic_no_console to deal with early critical errors
Hi Wolfgang, On Mon, Oct 17, 2011 at 1:06 PM, Wolfgang Denk w...@denx.de wrote: Dear Simon Glass, In message 1314633910-8550-2-git-send-email-...@chromium.org you wrote: Tested-by: Simon Glass s...@chromium.org Signed-off-by: Simon Glass s...@chromium.org --- include/common.h | 8 lib/vsprintf.c | 26 -- 2 files changed, 32 insertions(+), 2 deletions(-) Can we please make this feature conditional, so that boards that are not going to use it don't have to suffer from the increased code size? We can easily make some of it conditional (the exported functions), but some of it is changes to make the low-level formatter respect an 'end' pointer. I will take a look as there might be something clever we can do there. We would also need to add, for example, an snprintf() macro which drops the numeric parameter, so that code which uses snprintf() continues to work. Regards, Simon Thanks. Best regards, Wolfgang Denk -- DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de The combination of a number of things to make existence worthwhile. Yes, the philosophy of 'none,' meaning 'all.' -- Spock and Lincoln, The Savage Curtain, stardate 5906.4 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v5 11/13] Convert ca9x4_ct_vxp to standard env variables
Dear Jason Hobbs, In message 1314805054-16250-12-git-send-email-jason.ho...@calxeda.com you wrote: Signed-off-by: Jason Hobbs jason.ho...@calxeda.com Cc: Matt Waddel matt.waddel at linaro.org --- new in v4 changes for v5: - none include/configs/ca9x4_ct_vxp.h | 12 ++-- 1 files changed, 6 insertions(+), 6 deletions(-) Applied, thanks. Best regards, Wolfgang Denk -- DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de The C-shell doesn't parse. It adhoculates. - casper@holland.sun.com in 3ol96k$b...@engnews2.eng.sun.com ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v5 12/13] arm: ca9x4_ct_vxp: enable pxe command support
Dear Jason Hobbs, In message 1314805054-16250-13-git-send-email-jason.ho...@calxeda.com you wrote: Signed-off-by: Jason Hobbs jason.ho...@calxeda.com Cc: Matt Waddel matt.waddel at linaro.org --- changes in v2: - use CONFIG_MENU to enable building the menu for pxecfg use changes in v4: - use CONFIG_CMD_PXE instead of CONFIG_CMD_PXECFG - update to standard environment variables changes for v5: - none include/configs/ca9x4_ct_vxp.h |4 1 files changed, 4 insertions(+), 0 deletions(-) Applied, thanks. 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 Voodoo Programming: Things programmers do that they know shouldn't work but they try anyway, and which sometimes actually work, such as recompiling everything. - Karl Lehenbauer ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v5 13/13] arm: ca9x4_ct_vxp: enable PXE BOOTP options support
Dear Jason Hobbs, In message 1314805054-16250-14-git-send-email-jason.ho...@calxeda.com you wrote: Signed-off-by: Jason Hobbs jason.ho...@calxeda.com Cc: Matt Waddel matt.waddel at linaro.org --- changes for v2: - add armv7 architecture to VCI string changes for v4: - combine the PXE bootp options with the other bootp options changes for v5: - none include/configs/ca9x4_ct_vxp.h |3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) Applied, thanks. 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 A list is only as strong as its weakest link.-- Don Knuth ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] tools: make it possible to build tools unconfigured
Dear Wolfgang, On 17.10.2011 23:42, Wolfgang Denk wrote: Sometimes we want to build common tools without configuring for specific target. Currently top Makefile has some support for this but it doesn't work. This patch tries to fix this. Things changed: - config.mk disable 'ld script not found error' in case if we are building tools only. - Makefilemkimage relies on autogenerated version so we need to move $(VERSION_FILE) rule out of ifeq and make tools rule depend on it. - tools/Makefile put common/env_embedded.o and envcrc.o to object list conditionally. This fixes errors during dependency generation. Signed-off-by: Ilya Yanok ya...@emcraft.com --- Makefile | 34 +- config.mk |2 ++ tools/Makefile | 19 --- 3 files changed, 35 insertions(+), 20 deletions(-) Is it correct to assume that this commit has been obsolteted by the following commits: 249b53a 2011-10-06 20:19:42 +0200 Build timestamp_autogenerated.h without config a76406f 2011-10-06 20:20:15 +0200 Safer timestamp_autogenerated.h generation 9f87658 2011-10-06 20:21:16 +0200 ublimage: NAND block size isn't set at build-time Not exactly. I've reposted my patch splitting it into three as Mike suggested, and all these patches are already applied. The commits you mention deal with the related problems that were introduced later during the development. Regards, Ilya. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 2/2] Add check that console is ready before output
Hi Wolfgang, On Mon, Oct 17, 2011 at 1:11 PM, Wolfgang Denk w...@denx.de wrote: Dear Simon Glass, In message 1314633910-8550-3-git-send-email-...@chromium.org you wrote: If puts() or printf() is called before the console is ready, U-Boot will either hang or die. This adds a check for this so that debug() can be used in early code without concern that it will hang. U-Boot boots properly Tested-by: Simon Glass s...@chromium.org Signed-off-by: Simon Glass s...@chromium.org --- common/console.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) Isn't this just hushing up implementation errors? Before, the incorrect call would cause U-Boot to fail - a situation which cannot be overlooked during the port, so the problem will quickly be analyzed and fixed. With your commit, everything appears to work fine, just some (expected) output will be missing. This is misleading at beats, and will cause that buggy code will go undetected for a long time. I don't think this is a good strategy. Please comment. Yes indeed - I did actually submit an 'early panic' patch which I should take another look at - it is called 'Add board_panic_no_console to deal with early critical errors'. I think it was in the same patch set but I'm not sure. It would panic when console output was performed before the console was ready - and therefore give the behaviour you desire. Regards, Simon 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 Compassion -- that's the one things no machine ever had. Maybe it's the one thing that keeps men ahead of them. -- McCoy, The Ultimate Computer, stardate 4731.3 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] powerpc: cpm2 boards: update fcc register logic
Dear Mike Frysinger, In message 1318865938-26720-1-git-send-email-vap...@gentoo.org you wrote: In the recent dropping of !NET_MULTI code (commit e2a53458a7ab37523304), I misread the logic in include/net.h. Some of it was used by NET_MULTI code as glue between the multi/non-multi worlds for cpm2 boards. Rather than restore the block of code, push the logic to the board config headers where it all belongs. Signed-off-by: Mike Frysinger vap...@gentoo.org --- i've build tested all these boards only as i have no hardware include/configs/CPU86.h |8 include/configs/CPU87.h |8 include/configs/IDS8247.h|4 ++-- include/configs/IPHASE4539.h |4 ++-- include/configs/ISPAN.h |4 ++-- include/configs/MPC8260ADS.h | 10 +- include/configs/MPC8266ADS.h |4 ++-- include/configs/MPC8560ADS.h |4 ++-- include/configs/RPXsuper.h |4 ++-- include/configs/Rattler.h|8 include/configs/SBC8540.h|4 ++-- include/configs/SCM.h|8 include/configs/TQM8260.h|6 +++--- include/configs/TQM8272.h|4 ++-- include/configs/ZPC1900.h|4 ++-- include/configs/ep8260.h |4 ++-- include/configs/gw8260.h |8 include/configs/hymod.h | 12 ++-- include/configs/muas3001.h |4 ++-- include/configs/ppmc8260.h |4 ++-- include/configs/rsdproto.h |4 ++-- include/configs/sacsng.h |6 +++--- include/configs/sbc8560.h|4 ++-- include/configs/stxgp3.h |4 ++-- include/configs/stxssa.h |4 ++-- 25 files changed, 69 insertions(+), 69 deletions(-) Applied, thanks. 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 Genius doesn't work on an assembly line basis. You can't simply say, Today I will be brilliant. -- Kirk, The Ultimate Computer, stardate 4731.3 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v4 2/2] NS16550: buffer reads
Dear Simon Glass, In message capnjgz1412ezjh3f4ww16k4z55kjdggwj7+vmyk_ot-mzvd...@mail.gmail.com you wrote: Can you please tell me which ELDK version this is using? I see that the 405 board seems to need ppc_4xx which suggests 4.2 rather than 5, since in 5 the compiler is called powerpc- Right, I was testing this with ELDK 4.2. Best regards, Wolfgang Denk -- DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de You can observe a lot just by watchin'. - Yogi Berra ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] tools: make it possible to build tools unconfigured
Dear Ilya Yanok, In message 4e9c8ef9.3030...@emcraft.com you wrote: Is it correct to assume that this commit has been obsolteted by the following commits: ... Not exactly. I've reposted my patch splitting it into three as Mike suggested, and all these patches are already applied. The commits you mention deal with the related problems that were introduced later during the development. So it should still be applied? 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 I am more bored than you could ever possibly be. Go back to work. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 2/2] Add check that console is ready before output
Dear Simon Glass, In message capnjgz3wbmjbs1zcd4_jqsuzco2boaok865cal6tweux9zv...@mail.gmail.com you wrote: Yes indeed - I did actually submit an 'early panic' patch which I should take another look at - it is called 'Add board_panic_no_console to deal with early critical errors'. I think it was in the same patch set but I'm not sure. It was (I even commented on it). It would panic when console output was performed before the console was ready - and therefore give the behaviour you desire. Well, but there will probably be a large number of boards that don't implement this function (or don;t enable it if we make it configurable). And all these will now fail silently. 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 panic: kernel trap (ignored) ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 2/2] Add check that console is ready before output
Hi Wolfgang, On Mon, Oct 17, 2011 at 1:25 PM, Simon Glass s...@chromium.org wrote: Hi Wolfgang, On Mon, Oct 17, 2011 at 1:11 PM, Wolfgang Denk w...@denx.de wrote: Dear Simon Glass, In message 1314633910-8550-3-git-send-email-...@chromium.org you wrote: If puts() or printf() is called before the console is ready, U-Boot will either hang or die. This adds a check for this so that debug() can be used in early code without concern that it will hang. U-Boot boots properly Tested-by: Simon Glass s...@chromium.org Signed-off-by: Simon Glass s...@chromium.org --- common/console.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) Isn't this just hushing up implementation errors? Before, the incorrect call would cause U-Boot to fail - a situation which cannot be overlooked during the port, so the problem will quickly be analyzed and fixed. With your commit, everything appears to work fine, just some (expected) output will be missing. This is misleading at beats, and will cause that buggy code will go undetected for a long time. I don't think this is a good strategy. Please comment. Yes indeed - I did actually submit an 'early panic' patch which I should take another look at - it is called 'Add board_panic_no_console to deal with early critical errors'. I think it was in the same patch set but I'm not sure. It would panic when console output was performed before the console was ready - and therefore give the behaviour you desire. I took another look at this - in fact this patch has been entirely superseded by Graeme's: commit e3e454cd72f319908355427b1a3ae54b3dd53356 Author: Graeme Russ graeme.r...@gmail.com Date: Mon Aug 29 02:14:05 2011 + console: Squelch pre-console output in console functions so there is no need for me to resubmit. The other patch I mentioned, The board_panic_no_console patch is still of interest though. Regards, Simon 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 Compassion -- that's the one things no machine ever had. Maybe it's the one thing that keeps men ahead of them. -- McCoy, The Ultimate Computer, stardate 4731.3 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 2/2] Add check that console is ready before output
Hi Wolfgang, On Mon, Oct 17, 2011 at 1:37 PM, Wolfgang Denk w...@denx.de wrote: Dear Simon Glass, In message capnjgz3wbmjbs1zcd4_jqsuzco2boaok865cal6tweux9zv...@mail.gmail.com you wrote: Yes indeed - I did actually submit an 'early panic' patch which I should take another look at - it is called 'Add board_panic_no_console to deal with early critical errors'. I think it was in the same patch set but I'm not sure. It was (I even commented on it). It would panic when console output was performed before the console was ready - and therefore give the behaviour you desire. Well, but there will probably be a large number of boards that don't implement this function (or don;t enable it if we make it configurable). And all these will now fail silently. Sorry, just emailed again on this thread - actually the behaviour of that patch has already come in due to Graeme's patch. And I think it is actually the opposite - they will not fail silently, but in fact ignore the pre-console printf() and continue. Previously (before Graeme's patch and this one had it been applied) any pre-console printf() would cause a silent failure / hang. I think this was the intent of the fix. The intent of my other patch in the series was to provide a way for a board to panic before the console is ready, and hopefully get a message to the user (flashing lights, LCD, init all the UARTs and blast out a msg, etc.). It is true that most boards will not implement this. We could perhaps look at implementing a weak function to do this at the architecture level (but only for SOCs) but it seems risky. Regards, Simon 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 panic: kernel trap (ignored) ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v6 01/20] sandbox: Add architecture header files
Dear Simon Glass, In message 1318270953-32482-2-git-send-email-...@chromium.org you wrote: This adds required header files for the sandbox architecture, and a basic description of what sandbox is (README.sandbox). Signed-off-by: Simon Glass s...@chromium.org --- Changes in v6: - Remove volatile keyword from arch/sandbox/include/asm/bitops.h arch/sandbox/include/asm/bitops.h | 162 + arch/sandbox/include/asm/byteorder.h | 40 +++ arch/sandbox/include/asm/config.h | 26 + arch/sandbox/include/asm/global_data.h| 66 arch/sandbox/include/asm/io.h | 41 +++ arch/sandbox/include/asm/posix_types.h| 57 ++ arch/sandbox/include/asm/ptrace.h | 38 +++ arch/sandbox/include/asm/string.h | 23 arch/sandbox/include/asm/system.h | 36 +++ arch/sandbox/include/asm/types.h | 72 + arch/sandbox/include/asm/u-boot-sandbox.h | 38 +++ arch/sandbox/include/asm/u-boot.h | 61 +++ arch/sandbox/include/asm/unaligned.h | 23 doc/README.sandbox| 53 ++ include/common.h |3 + 15 files changed, 739 insertions(+), 0 deletions(-) create mode 100644 arch/sandbox/include/asm/bitops.h create mode 100644 arch/sandbox/include/asm/byteorder.h create mode 100644 arch/sandbox/include/asm/config.h create mode 100644 arch/sandbox/include/asm/global_data.h create mode 100644 arch/sandbox/include/asm/io.h create mode 100644 arch/sandbox/include/asm/posix_types.h create mode 100644 arch/sandbox/include/asm/ptrace.h create mode 100644 arch/sandbox/include/asm/string.h create mode 100644 arch/sandbox/include/asm/system.h create mode 100644 arch/sandbox/include/asm/types.h create mode 100644 arch/sandbox/include/asm/u-boot-sandbox.h create mode 100644 arch/sandbox/include/asm/u-boot.h create mode 100644 arch/sandbox/include/asm/unaligned.h create mode 100644 doc/README.sandbox Applied, thanks. Best regards, Wolfgang Denk -- DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de The number you have dialed is imaginary. Please divide by 0 and try again. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v6 02/20] Fix use of int as pointer in image.c
Dear Simon Glass, In message 1318270953-32482-3-git-send-email-...@chromium.org you wrote: It is better to use %p in this case. Signed-off-by: Simon Glass s...@chromium.org Acked-by: Mike Frysinger vap...@gentoo.org --- Changes in v2: - Split this change out from 'Add architecture image support' common/image.c |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) Applied, thanks. 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 Do you know about being with somebody? Wanting to be? If I had the whole universe, I'd give it to you, Janice. When I see you, I feel like I'm hungry all over. Do you know how that feels? -- Charlie Evans, Charlie X, stardate 1535.8 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v6 03/20] sandbox: Add architecture image support
Dear Simon Glass, In message 1318270953-32482-4-git-send-email-...@chromium.org you wrote: We won't actually load an image with this architecture, but we still need to define it. Signed-off-by: Simon Glass s...@chromium.org --- Changes in v3: - Add architecture image support for sandbox Changes in v5: - Define IH_ARCH_DEFAULT which is now required arch/sandbox/include/asm/u-boot.h |3 +++ include/image.h |1 + 2 files changed, 4 insertions(+), 0 deletions(-) Applied, thanks. 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 ...all the good computer designs are bootlegged; the formally planned products, if they are built at all, are dogs! - David E. Lundstrom, A Few Good Men From Univac, MIT Press, 1987 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v6 04/20] sandbox: Add compiler defines to support a 64-bit x86_64 platform
Dear Simon Glass, In message 1318270953-32482-5-git-send-email-...@chromium.org you wrote: This sets __WORDSIZE to 8 correctly on 64-bit machines. Signed-off-by: Simon Glass s...@chromium.org --- Changes in v2: - Update commit message to remove 'temporary' - Allow __WORDSIZE to be defined in Makefile / elsewhere include/compiler.h | 12 +++- 1 files changed, 11 insertions(+), 1 deletions(-) Applied, thanks. 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 (null cookie; hope that's ok) ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot