Re: [U-Boot] [PATCH v2 1/4] mmc: dw-mmc: support DesignWare MMC Controller
Hi Andy On 08/31/2012 06:11 AM, Andy Fleming wrote: On Tue, Jul 3, 2012 at 12:58 AM, Jaehoon Chung jh80.ch...@samsung.com wrote: This patch is supported DesginWare MMC Controller. Signed-off-by: Jaehoon Chung jh80.ch...@samsung.com Signed-off-by: Kyungmin Park kyungmin.p...@samsung.com Signed-off-by: Rajeshawari Shinde rajeshwar...@samsung.com diff --git a/drivers/mmc/dw_mmc.c b/drivers/mmc/dw_mmc.c + while (timeout--) { + ctrl = dwmci_readl(host, DWMCI_CTRL); + if (!(ctrl DWMCI_RESET_ALL)) + return 1; + if (timeout == 0) + break; Please fix this loop. while (timeout--) means the loop will stop when timeout reaches 0. It's redundant with if (timeout == 0) break; Will fix + } + return 0; +} + +static void dwmci_set_idma_desc(u8 *idmac, unsigned int des0, + unsigned int des1, unsigned int des2) +{ + struct dwmci_idmac *desc = (struct dwmci_idmac *)idmac; I don't understand why this function takes a u8* Why not just pass a struct dwmci_idmac * ? Will use the struct dwmci_idmac. + + desc-des0 = des0; + desc-des1 = des1; + desc-des2 = des2; + desc-des3 = (unsigned int)desc + sizeof(struct dwmci_idmac); Also, is there a reason that you've decided to label the 4 fields of your descriptor (which appear to reflect flags, count, address, pointer to next descriptor) as des0-3? In DesigneWare IP spec, descriptors are used to those label. +} + +static void dwmci_prepare_data(struct dwmci_host *host, + struct mmc_data *data) +{ + unsigned long ctrl; + unsigned int i = 0, flag, cnt, blk_cnt; + struct dwmci_idmac *p; + ulong data_start, data_end, start_addr; + ALLOC_CACHE_ALIGN_BUFFER(struct dwmci_idmac, idmac, 65565); That's a really large buffer to allocate on the stack... I will use the data-blocks. didn't allocate always 65565 on the stack. (It's too large) + + do { + flag = DWMCI_IDMAC_OWN | DWMCI_IDMAC_CH ; + flag |= (i == 0) ? DWMCI_IDMAC_FS : 0; + if (blk_cnt = 8) { + flag |= DWMCI_IDMAC_LD; + cnt = data-blocksize * blk_cnt; + } else { + flag = ~DWMCI_IDMAC_LD; Clearing this bit will never have an effect (flag was initialized without it set just before). Remove this. + cnt = data-blocksize * 8; + } + + dwmci_set_idma_desc((u8 *)p, flag, cnt, + start_addr + (i * PAGE_SIZE)); + + if (blk_cnt = 8) + break; + blk_cnt -= 8; + p++; + i++; + } while(1); And, again, a loop with an internal control, as opposed to just saying } while (blk_cnt 8) This one may be fine, as I see you use 'p' after. However, I think it best if you rework this loop to be a proper loop. Will modify. + + data_start = (ulong)idmac; + data_end = (ulong)p; I'm not 100% sure, but I think p doesn't point to where you want it, except by luck. You want p to point to the last byte of the descriptor chain, not the first byte of the last descriptor, yes? I suspect it will always work because of the ARCH_DMA_MINALIGN, but it makes the code fragile. Will check. + flush_dcache_range(data_start, data_end + ARCH_DMA_MINALIGN); + This cache flush is why I think 'p' is inaccurate. + + if (data) { + flags = dwmci_set_transfer_mode(host, data); + } Don't use braces for single-line if-clauses. Will remove. [...] + if (data) { + while (1) { + mask = dwmci_readl(host, DWMCI_RINTSTS); + if (mask (DWMCI_DATA_ERR | DWMCI_DATA_TOUT)) { + debug(DATA ERROR!\n); + return -1; + } else if (mask DWMCI_INTMSK_DTO) + break; + } do { mask = ... } while (!(mask DWMCI_INTMSK_DTO)) Will modify. [...] + + for (div = 1; div 255; div++) { + if ((sclk / (2 * div)) = freq) { + break; + } + } 1) Your braces are unnecessary. 2) This is reimplementing a basic mathematical formula in loop form. Don't do that. Do this: div = DIV_ROUND_UP(sclk, 2 * freq); This solves the formula: freq = sclk/(2 * div) for div, choosing a large enough number to ensure that the inequality is satisfied. Will use the DIV_ROUND_UP + do { + status = dwmci_readl(host, DWMCI_CMD); + if (timeout == 0) { + printf(TIMEOUT error!!\n); + return
Re: [U-Boot] [PATCH v2 1/4] mmc: dw-mmc: support DesignWare MMC Controller
Hi Jaehoon, + desc-des0 = des0; + desc-des1 = des1; + desc-des2 = des2; + desc-des3 = (unsigned int)desc + sizeof(struct dwmci_idmac); Also, is there a reason that you've decided to label the 4 fields of your descriptor (which appear to reflect flags, count, address, pointer to next descriptor) as des0-3? In DesigneWare IP spec, descriptors are used to those label. Makes the code pretty cryptic. Better name the struct membder by their function and comment with their IP spec designations, or maybe name them by both their IP name and function, e.g. desc-des0_flags, desc-des1_count etc. But in any case, local variables (des0, des1...) have zero reason to be named after the IP spec. These must be renamed according to their function. Amicalement, -- Albert. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] Pull request: u-boot-arm/master to u-boot/master
On Mon, 15 Oct 2012 07:58:38 +0200, Albert ARIBAUD albert.u.b...@aribaud.net wrote: Hi Minkyu, On Mon, 15 Oct 2012 10:10:33 +0900, Minkyu Kang proms...@gmail.com wrote: Hi Albert, The following changes since commit 28e5ac2d974547bde0c72aa0c1d66fd22c6ef3ad: arm: armv7: temporarily set -mno-unaligned-access (2012-10-05 21:24:22 +0200) are available in the git repository at: git://git.denx.de/u-boot-samsung master for you to fetch changes up to 3ae30b97ff49d34c81bc8c9c2c6e23adf9cba31c: arm: trats: Power down core 1 (2012-10-10 18:53:58 +0900) Chander Kashyap (1): Exynos5250: Enable PXE Support Piotr Wilczek (7): arm:exynos4:trats: Correct SDRAM configuration for trats arm:exynos4:trats: Fix SDRAM size arm:exynos4:pinmux: Modify the gpio function for mmc arm:exynos4:trats: Use pinmux for mmc configuration arm:exynos4:universal: Use pinmux for mmc configuration arm:exynos4:universal: Eliminated low level init arm: trats: Power down core 1 Łukasz Majewski (1): gpio:fix: Proper handling of GPIO subsystem parts at Samsung devices arch/arm/cpu/armv7/exynos/pinmux.c | 58 arch/arm/include/asm/arch-exynos/gpio.h | 19 ++ arch/arm/include/asm/arch-exynos/periph.h|1 + arch/arm/include/asm/arch-s5pc1xx/gpio.h |7 +- board/samsung/trats/trats.c | 80 ++ board/samsung/universal_c210/Makefile|1 - board/samsung/universal_c210/lowlevel_init.S | 395 -- board/samsung/universal_c210/universal.c | 82 ++ drivers/gpio/s5p_gpio.c |6 +- include/configs/s5pc210_universal.h |2 + include/configs/smdk5250.h |6 + include/configs/trats.h | 17 +- 12 files changed, 153 insertions(+), 521 deletions(-) delete mode 100644 board/samsung/universal_c210/lowlevel_init.S Going through ARM regression builds for this now. Unless Tom decides otherwise, will go into u-boot-arm/master once the release is out, not before. Update: Build from u-boot/master and from a merge of u-boot-samsung/master yield similar results, i.e. all 271 ARM targets buuilding clean in each case. But seeing as there were later issues with Tom's tests, and as the patch comes within hours of the release, the choice remains Tom's. Amicalement, -- Albert. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] powerpc/boot: Change the compile macro for SRIO PCIE boot master module
Currently, the SRIO and PCIE boot master module will be compiled into the u-boot image if the macro CONFIG_FSL_CORENET has been defined. And this macro has been included by all the corenet architecture platform boards. But in fact, it's uncertain whether all corenet platform boards support this feature. So it may be better to get rid of the macro CONFIG_FSL_CORENET, and add a special macro for every board which can support the feature. This special macro will be defined in the header file arch/powerpc/include/asm/config_mpc85xx.h. It will decide if the SRIO and PCIE boot master module should be compiled into the board u-boot image. Signed-off-by: Liu Gang gang@freescale.com --- arch/powerpc/cpu/mpc8xxx/srio.c |4 +++- arch/powerpc/include/asm/config_mpc85xx.h |4 drivers/pci/fsl_pci_init.c|6 +++--- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/arch/powerpc/cpu/mpc8xxx/srio.c b/arch/powerpc/cpu/mpc8xxx/srio.c index 0cb65b3..45f73ca 100644 --- a/arch/powerpc/cpu/mpc8xxx/srio.c +++ b/arch/powerpc/cpu/mpc8xxx/srio.c @@ -23,6 +23,7 @@ #include asm/fsl_serdes.h #include asm/fsl_srio.h +#ifdef CONFIG_SYS_FSL_SRIO_PCIE_BOOT_MASTER #define SRIO_PORT_ACCEPT_ALL 0x1001 #define SRIO_IB_ATMU_AR 0x80f55000 #define SRIO_OB_ATMU_AR_MAINT 0x80077000 @@ -31,6 +32,7 @@ #define SRIO_MAINT_WIN_SIZE 0x100 /* 16M */ #define SRIO_RW_WIN_SIZE 0x10 /* 1M */ #define SRIO_LCSBA1CSR 0x6000 +#endif #if defined(CONFIG_FSL_CORENET) #define _DEVDISR_SRIO1 FSL_CORENET_DEVDISR_SRIO1 @@ -95,7 +97,7 @@ void srio_init(void) } } -#ifdef CONFIG_FSL_CORENET +#ifdef CONFIG_SYS_FSL_SRIO_PCIE_BOOT_MASTER void srio_boot_master(int port) { struct ccsr_rio *srio = (void *)CONFIG_SYS_FSL_SRIO_ADDR; diff --git a/arch/powerpc/include/asm/config_mpc85xx.h b/arch/powerpc/include/asm/config_mpc85xx.h index aa27741..00da000 100644 --- a/arch/powerpc/include/asm/config_mpc85xx.h +++ b/arch/powerpc/include/asm/config_mpc85xx.h @@ -331,6 +331,7 @@ #define CONFIG_SYS_FSL_ERRATUM_NMG_CPU_A011 #define CONFIG_SYS_FSL_ERRATUM_CPU_A003999 #define CONFIG_SYS_FSL_ERRATUM_DDR_A003474 +#define CONFIG_SYS_FSL_SRIO_PCIE_BOOT_MASTER #define CONFIG_SYS_FSL_SRIO_MAX_PORTS 2 #define CONFIG_SYS_FSL_SRIO_OB_WIN_NUM 9 #define CONFIG_SYS_FSL_SRIO_IB_WIN_NUM 5 @@ -360,6 +361,7 @@ #define CONFIG_SYS_FSL_ERRATUM_NMG_CPU_A011 #define CONFIG_SYS_FSL_ERRATUM_CPU_A003999 #define CONFIG_SYS_FSL_ERRATUM_DDR_A003474 +#define CONFIG_SYS_FSL_SRIO_PCIE_BOOT_MASTER #define CONFIG_SYS_FSL_SRIO_MAX_PORTS 2 #define CONFIG_SYS_FSL_SRIO_OB_WIN_NUM 9 #define CONFIG_SYS_FSL_SRIO_IB_WIN_NUM 5 @@ -398,6 +400,7 @@ #define CONFIG_SYS_P4080_ERRATUM_SERDES_A005 #define CONFIG_SYS_FSL_ERRATUM_CPU_A003999 #define CONFIG_SYS_FSL_ERRATUM_DDR_A003474 +#define CONFIG_SYS_FSL_SRIO_PCIE_BOOT_MASTER #define CONFIG_SYS_FSL_SRIO_MAX_PORTS 2 #define CONFIG_SYS_FSL_SRIO_OB_WIN_NUM 9 #define CONFIG_SYS_FSL_SRIO_IB_WIN_NUM 5 @@ -426,6 +429,7 @@ #define CONFIG_SYS_FSL_USB_INTERNAL_UTMI_PHY #define CONFIG_SYS_FSL_ERRATUM_ESDHC111 #define CONFIG_SYS_FSL_ERRATUM_DDR_A003474 +#define CONFIG_SYS_FSL_SRIO_PCIE_BOOT_MASTER #define CONFIG_SYS_FSL_SRIO_MAX_PORTS 2 #define CONFIG_SYS_FSL_SRIO_OB_WIN_NUM 9 #define CONFIG_SYS_FSL_SRIO_IB_WIN_NUM 5 diff --git a/drivers/pci/fsl_pci_init.c b/drivers/pci/fsl_pci_init.c index 0d46c96..42dfc4b 100644 --- a/drivers/pci/fsl_pci_init.c +++ b/drivers/pci/fsl_pci_init.c @@ -211,7 +211,7 @@ static int fsl_pci_setup_inbound_windows(struct pci_controller *hose, return 1; } -#ifdef CONFIG_FSL_CORENET +#ifdef CONFIG_SYS_FSL_SRIO_PCIE_BOOT_MASTER static void fsl_pcie_boot_master(pit_t *pi) { /* configure inbound window for slave's u-boot image */ @@ -384,7 +384,7 @@ void fsl_pci_init(struct pci_controller *hose, struct fsl_pci_info *pci_info) /* see if we are a PCIe or PCI controller */ pci_hose_read_config_byte(hose, dev, FSL_PCIE_CAP_ID, pcie_cap); -#ifdef CONFIG_FSL_CORENET +#ifdef CONFIG_SYS_FSL_SRIO_PCIE_BOOT_MASTER /* boot from PCIE --master */ char *s = getenv(bootmaster); char pcie[6]; @@ -594,7 +594,7 @@ int fsl_pci_init_port(struct fsl_pci_info *pci_info, if (fsl_is_pci_agent(hose)) { fsl_pci_config_unlock(hose); hose-last_busno = hose-first_busno; -#ifdef CONFIG_FSL_CORENET +#ifdef CONFIG_SYS_FSL_SRIO_PCIE_BOOT_MASTER } else { /* boot from PCIE --master releases slave's core 0 */ char *s = getenv(bootmaster); -- 1.7.0.4 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH V6] [RESEND] ARM: prevent misaligned array inits
Hi Tom, On Sun, 14 Oct 2012 22:05:15 -0700, Tom Rini tr...@ti.com wrote: On Sun, Oct 14, 2012 at 1:48 AM, Albert ARIBAUD albert.u.b...@aribaud.net wrote: On Tue, 9 Oct 2012 21:28:15 +0200, Albert ARIBAUD albert.u.b...@aribaud.net wrote: Under option -munaligned-access, gcc can perform local char or 16-bit array initializations using misaligned native accesses which will throw a data abort exception. Fix files where these array initializations were unneeded, and for files known to contain such initializations, enforce gcc option -mno-unaligned-access. Signed-off-by: Albert ARIBAUD albert.u.b...@aribaud.net --- Tom, As per our discussion, this patch should be placed in u-boot/next right above the 2012-10 release commit. At this time, just after a git fech u-boot, I don't see the patch in next at all. Do you want me to prepare an ad hoc branch with this patch then the current content of u-boot/next, above v2012.10-rc3, so that you just have to git reset --hard your next on it? Amicalement, As the questions about our usage of rebasing in 'next' have shown, it's not quite as cut and dry as I had hoped to rebase next at my whim (and long term, that's a good thing I think). My plan tomorrow (or today, depending on your local timezone) is to release v2012.10, apply this v6 patch and then bring in next to master, see that everything is still building and go from there. Fine with me, thanks! P.S. Until this release, I'd worked under the assumption that next could be more freely rebased than master is. From now on, I will follow the same principle for next as for master, i.e. not rebase but merge (possibly ff) from other and only rollback if required and appropriate. Amicalement, -- Albert. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 0/6] EXYNOS: Add support for Exynos4x10
Dear Minkyu, Yes, I checked these patches. Actually I do the same, just for Exynos 4x10. My patches depend on Chander's first patch. Best regards, Piotr Wilczek -Original Message- From: Minkyu Kang [mailto:proms...@gmail.com] Sent: Friday, October 12, 2012 6:15 PM To: Piotr Wilczek Cc: u-boot@lists.denx.de; Kyungmin Park; Chander Kashyap Subject: Re: [U-Boot] [PATCH 0/6] EXYNOS: Add support for Exynos4x10 Dear Piotr, On 13 October 2012 00:08, Piotr Wilczek p.wilc...@samsung.com wrote: This patch series adds Register base addresses, clock, gpio, power and system structures for Exynos4x10. Piotr Wilczek (6): Exynos: Exynos4x10: Add base addresses for Exynos4x10 Exynos: Exynos4x10: Add clock structure for exynos4x10 Exynos: Exynos4x10: Add gpio structure for Exynos4X10 Exynos: Exynos4x10: add power structure for Exynos4x10 Exynos: Exynos4x10: add sysreg structure for exynos4x10 arm: trats: Use exynos4x10 structures on Trats board arch/arm/include/asm/arch-exynos/clock.h | 236 + arch/arm/include/asm/arch-exynos/cpu.h| 43 +- arch/arm/include/asm/arch-exynos/gpio.h | 47 ++ arch/arm/include/asm/arch-exynos/power.h | 201 arch/arm/include/asm/arch-exynos/system.h |9 + board/samsung/trats/trats.c | 40 +++--- 6 files changed, 551 insertions(+), 25 deletions(-) Did you check Chander's patchset? http://patchwork.ozlabs.org/patch/188437/ http://patchwork.ozlabs.org/patch/188438/ http://patchwork.ozlabs.org/patch/188511/ http://patchwork.ozlabs.org/patch/188512/ http://patchwork.ozlabs.org/patch/188513/ http://patchwork.ozlabs.org/patch/189809/ Thanks. Minkyu Kang. -- from. prom. www.promsoft.net ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v3 5/5] New board support: Nokia RX-51 aka N900
Hi Marek, as part of the code is written by me I will answer to a couple of the questions Dear Pali Rohár, Based on previous work by: Alistair Buxton Signed-off-by: Pali Rohár Cc: Ивайло Димитров Can we please stick to ASCII instead of UTF8? Cc: Ivaylo Dimitrov (if I'm not mistaken) You are not :). And if it comes to me, it does not matter whether cyrillic or latin will be used. +} + +static void omap3_emu_romcode_call(u32 service_id, u32 *parameters) +{ + u32 i, num_params = *parameters; + u32 *sram_scratch_space = (u32 *)OMAP3_PUBLIC_SRAM_SCRATCH_AREA; + + /* +* copy the parameters to an un-cached area to avoid coherency +* issues +*/ _WHAT_ ?! Use dcache_flush(). The Omap3 rom won't cope with cache memory? Actually -- why do you even do call into ROM ? + for (i = 0; i num_params; i++) { + __raw_writel(*parameters, sram_scratch_space); + parameters++; + sram_scratch_space++; + } + + /* Now make the PPA call */ + do_omap3_emu_romcode_call(service_id, OMAP3_PUBLIC_SRAM_SCRATCH_AREA); +} + That part of the code is ported from existing code in u-boot: http://git.denx.de/?p=u-boot.git;a=blob;f=arch/arm/cpu/armv7/omap3/board.c;h=9cee1d9b490692d02129d98470ba7b57b8e61ce2;hb=HEAD#l373 So I can't think of a reason to do it in a different way. The ROM call is needed to enable workaround for ARM errata 430973. RX-51 being a high secure device does not allow writes to AUX control register outside of the secure world. So, this call is needed to enable IBE bit in AUXCR. I can elaborate more if needed. +* Cortex-A8(r1p0..r1p2) errata 430973 workaround +* Set IBE bit in Auxiliary Control Register +*/ + omap3_update_aux_cr_secure_rx51(1 6, 0); + + return 0; +} + And here is the code where IBE bit (bit 6) set. Have in mind there is a difference re how parameters are passed compared to beagleboard for example, RX-51 ROM expects first parameter to be the number of remaining parameters+1, while beagleboard(again, just an example) ROM expects only the number of the remaining parameters, so existing function in arch/arm/cpu/armv7/omap3/board.c cannot be called (even if it is not declared static). ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] R: Configure a MICRON DDR2 SDRAM MT47H512M4 - 64 Meg x 4 x 8 on MPC8323 custom board
Hi all, first of all I made a mistake: I have two devices DDR2 128Mbitsx16 (2Gbits * 2 devices) on my own hw. I solved the problem changing these in the MPC8323TL.h file under u-boot/include/configs diff MPC8323TL.h u-boot/include/configs/MPC8323TL.h 84a85 #define CONFIG_MAX_MEM_MAPPED ((phys_size_t)512 20) 466a468,472 #define CONFIG_SYS_IBAT7L ( (CONFIG_SYS_SDRAM_BASE + 0x1000) | BATL_PP_10 | BATL_MEMCOHERENCE) #define CONFIG_SYS_IBAT7U ( (CONFIG_SYS_SDRAM_BASE + 0x1000) | BATU_BL_256M | BATU_VS | BATU_VP) #define CONFIG_SYS_DBAT7L CONFIG_SYS_IBAT7L #define CONFIG_SYS_DBAT7U CONFIG_SYS_IBAT7U 516,521d521 /* Nothing in BAT7 */ #define CONFIG_SYS_IBAT7L (0) #define CONFIG_SYS_IBAT7U (0) #define CONFIG_SYS_DBAT7L CONFIG_SYS_IBAT7L #define CONFIG_SYS_DBAT7U CONFIG_SYS_IBAT7U and modifing the file board/TL/mpc8323tl/mpc8323tl.c as follows diff -r board/TL/mpc8323tl/mpc8323tl.c new/board/TL/mpc8323tl/mpc8323tl.c 180a181,182 im-sysconf.ddrlaw[1].bar = (CONFIG_SYS_DDR_BASE + 0x1000) LAWBAR_BAR; 206,208c208,210 im-sysconf.ddrlaw[0].ar = LAWAR_EN | ((ddr_size_log2 - 1) LAWAR_SIZE); im-ddr.sdram_clk_cntl = CONFIG_SYS_DDR_CLK_CNTL; --- im-sysconf.ddrlaw[0].ar = LAWAR_EN | ((ddr_size_log2 - 1) LAWAR_SIZE); im-sysconf.ddrlaw[1].ar = LAWAR_EN | ((ddr_size_log2 - 1) LAWAR_SIZE); im-ddr.sdram_clk_cntl = CONFIG_SYS_DDR_CLK_CNTL; I hope this will help Best Regards Agostino Sette -Messaggio originale- Da: SETTE AGOSTINO - technolabs Inviato: venerdì 5 ottobre 2012 10.34 Cc: 'u-boot@lists.denx.de' Oggetto: Configure a MICRON DDR2 SDRAM MT47H512M4 - 64 Meg x 4 x 8 on MPC8323 custom board Hi all, I have a problem with MICRON DDR2 SDRAM MT47H512M4 - 64 Meg x 4 x 8 on a MPC8323 custom board. The size of the DDR causes a hang of the board. If I set the CONFIG_SYS_DDR_SIZE to 512 the u-boot hangs as follows U-Boot 2012.10-rc1 (Oct 05 2012 - 10:06:41)MPC83XX Reset Status: CPU: e300c2, MPC8323E, Rev: 1.1 at 266.667 MHz, CSB: 133.333 MHz Board: MPC8323_TL RCWHR 0xa060 RCWLR 0x42040083 I2C: ready DRAM: 512 MiB (DDR2, 32-bit, ECC off, 266.667 MHz) but if I resize the DDR to 256 everything works properly. Here is the include/configs/MPC8323_TL.h file #ifndef __CONFIG_H #define __CONFIG_H /* * High Level Configuration Options */ #define CONFIG_E300 1 /* E300 family */ #define CONFIG_QE 1 /* Has QE */ #define CONFIG_MPC83xx 1 /* MPC83xx family */ #define CONFIG_MPC832x 1 /* MPC832x CPU specific */ #define CONFIG_SYS_TEXT_BASE0xE000 #define CONFIG_PCI 1 #define CONFIG_MPC8323_TL 1 /* * System Clock Setup */ #define CONFIG_83XX_CLKIN 6667/* in Hz */ #ifndef CONFIG_SYS_CLK_FREQ #define CONFIG_SYS_CLK_FREQ CONFIG_83XX_CLKIN #endif /* * Hardware Reset Configuration Word */ #define HRCWL_RESERVED 0x2000 #define CONFIG_SYS_HRCW_LOW (\ HRCWL_LCL_BUS_TO_SCB_CLK_1X1 |\ HRCWL_DDR_TO_SCB_CLK_2X1 |\ HRCWL_VCO_1X2 |\ HRCWL_CSB_TO_CLKIN_2X1 |\ HRCWL_CORE_TO_CSB_2X1 |\ HRCWL_CE_PLL_VCO_DIV_2 |\ HRCWL_CE_PLL_DIV_1X1 |\ HRCWL_CE_TO_PLL_1X3) #define CONFIG_SYS_HRCW_HIGH (\ HRCWH_PCI_HOST |\ HRCWH_PCI1_ARBITER_ENABLE |\ HRCWH_CORE_ENABLE |\ HRCWH_FROM_0X0100 |\ HRCWH_BOOTSEQ_DISABLE |\ HRCWH_SW_WATCHDOG_DISABLE |\ HRCWH_ROM_LOC_LOCAL_16BIT |\ HRCWH_BIG_ENDIAN |\ HRCWH_LALE_NORMAL) /* * System IO Config */ #define CONFIG_SYS_SICRL0x /* * IMMR new address */ #define CONFIG_SYS_IMMR 0xD000 /* * System performance */ #define CONFIG_SYS_ACR_PIPE_DEP 3 /* Arbiter pipeline depth (0-3) */ #define CONFIG_SYS_ACR_RPTCNT 3 /* Arbiter repeat count (0-7) */ /* (0-1) Optimize transactions between CSB and the SEC and QUICC Engine block */ #define CONFIG_SYS_SPCR_OPT 1 /* * DDR Setup */ #define CONFIG_VERY_BIG_RAM 1 #define CONFIG_SYS_DDR_BASE 0x /* DDR is system memory */ #define CONFIG_SYS_SDRAM_BASE CONFIG_SYS_DDR_BASE #define CONFIG_SYS_DDR_SDRAM_BASE CONFIG_SYS_DDR_BASE #define CONFIG_SYS_83XX_DDR_USES_CS0 #define CONFIG_SYS_DDRCDR 0x7302 /* DDR II voltage is 1.8V */ #undef CONFIG_SPD_EEPROM #if defined(CONFIG_SPD_EEPROM) /* Determine DDR configuration from I2C interface */ #define SPD_EEPROM_ADDRESS 0x51/* DDR SODIMM */ #else /* Manually set up DDR parameters */ #define CONFIG_SYS_DDR_SIZE 512 #define CONFIG_SYS_DDR_CS0_CONFIG 0x80844202 // 1000 0100 0100 0010 0010 OK #define CONFIG_SYS_DDR_TIMING_0 0x00220802 #define CONFIG_SYS_DDR_TIMING_1 0x3C75F322 #define CONFIG_SYS_DDR_TIMING_2 0x0f9048ca #define
Re: [U-Boot] [PATCH v2 5/6] ARM: Add SPL target to arm1136
Am 14/10/2012 11:17, schrieb Albert ARIBAUD: Hi Stefano, Hi Albert, Nitpick: this patch also removes SPL build files in the clobber rule, but the commit message does not say so. Can you just update the comment? Right, I fix it in V3, 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-53 Fax: +49-8142-66989-80 Email: sba...@denx.de = ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v2 1/4] mmc: dw-mmc: support DesignWare MMC Controller
Hi Albert, On 10/15/2012 04:01 PM, Albert ARIBAUD wrote: Hi Jaehoon, + desc-des0 = des0; + desc-des1 = des1; + desc-des2 = des2; + desc-des3 = (unsigned int)desc + sizeof(struct dwmci_idmac); Also, is there a reason that you've decided to label the 4 fields of your descriptor (which appear to reflect flags, count, address, pointer to next descriptor) as des0-3? In DesigneWare IP spec, descriptors are used to those label. Makes the code pretty cryptic. Better name the struct membder by their function and comment with their IP spec designations, or maybe name them by both their IP name and function, e.g. desc-des0_flags, desc-des1_count etc. But in any case, local variables (des0, des1...) have zero reason to be named after the IP spec. These must be renamed according to their function. Thanks for your comment. I will modify that...e.g. desc-flags/cnt/cur_addr/next_addr or others. Best Regards, Jaehoon Chung Amicalement, ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v2] EXYNOS: Clock: Add common function for pll rate calculation
From: Minkyu Kang mk7.k...@samsung.com Moved the common code to calculate pll clock rate to new function exynos_get_pll_clk(). Signed-off-by: Chander Kashyap chander.kash...@linaro.org --- Changes from v1: - Author name changed arch/arm/cpu/armv7/exynos/clock.c | 102 ++--- 1 file changed, 38 insertions(+), 64 deletions(-) diff --git a/arch/arm/cpu/armv7/exynos/clock.c b/arch/arm/cpu/armv7/exynos/clock.c index 4f3b451..a042423 100644 --- a/arch/arm/cpu/armv7/exynos/clock.c +++ b/arch/arm/cpu/armv7/exynos/clock.c @@ -26,41 +26,19 @@ #include asm/arch/clock.h #include asm/arch/clk.h -/* exynos4: return pll clock frequency */ -static unsigned long exynos4_get_pll_clk(int pllreg) +/* exynos: return pll clock frequency */ +static int exynos_get_pll_clk(int pllreg, unsigned int r, unsigned int k) { - struct exynos4_clock *clk = - (struct exynos4_clock *)samsung_get_base_clock(); - unsigned long r, m, p, s, k = 0, mask, fout; + unsigned long m, p, s = 0, mask, fout; unsigned int freq; - - switch (pllreg) { - case APLL: - r = readl(clk-apll_con0); - break; - case MPLL: - r = readl(clk-mpll_con0); - break; - case EPLL: - r = readl(clk-epll_con0); - k = readl(clk-epll_con1); - break; - case VPLL: - r = readl(clk-vpll_con0); - k = readl(clk-vpll_con1); - break; - default: - printf(Unsupported PLL (%d)\n, pllreg); - return 0; - } - /* * APLL_CON: MIDV [25:16] * MPLL_CON: MIDV [25:16] * EPLL_CON: MIDV [24:16] * VPLL_CON: MIDV [24:16] +* BPLL_CON: MIDV [25:16]: Exynos5 */ - if (pllreg == APLL || pllreg == MPLL) + if (pllreg == APLL || pllreg == MPLL || pllreg == BPLL) mask = 0x3ff; else mask = 0x1ff; @@ -92,13 +70,43 @@ static unsigned long exynos4_get_pll_clk(int pllreg) return fout; } +/* exynos4: return pll clock frequency */ +static unsigned long exynos4_get_pll_clk(int pllreg) +{ + struct exynos4_clock *clk = + (struct exynos4_clock *)samsung_get_base_clock(); + unsigned long r, k = 0; + + switch (pllreg) { + case APLL: + r = readl(clk-apll_con0); + break; + case MPLL: + r = readl(clk-mpll_con0); + break; + case EPLL: + r = readl(clk-epll_con0); + k = readl(clk-epll_con1); + break; + case VPLL: + r = readl(clk-vpll_con0); + k = readl(clk-vpll_con1); + break; + default: + printf(Unsupported PLL (%d)\n, pllreg); + return 0; + } + + return exynos_get_pll_clk(pllreg, r, k); +} + /* exynos5: return pll clock frequency */ static unsigned long exynos5_get_pll_clk(int pllreg) { struct exynos5_clock *clk = (struct exynos5_clock *)samsung_get_base_clock(); - unsigned long r, m, p, s, k = 0, mask, fout; - unsigned int freq, pll_div2_sel, fout_sel; + unsigned long r, k = 0, fout; + unsigned int pll_div2_sel, fout_sel; switch (pllreg) { case APLL: @@ -123,41 +131,7 @@ static unsigned long exynos5_get_pll_clk(int pllreg) return 0; } - /* -* APLL_CON: MIDV [25:16] -* MPLL_CON: MIDV [25:16] -* EPLL_CON: MIDV [24:16] -* VPLL_CON: MIDV [24:16] -* BPLL_CON: MIDV [25:16] -*/ - if (pllreg == APLL || pllreg == MPLL || pllreg == BPLL) - mask = 0x3ff; - else - mask = 0x1ff; - - m = (r 16) mask; - - /* PDIV [13:8] */ - p = (r 8) 0x3f; - /* SDIV [2:0] */ - s = r 0x7; - - freq = CONFIG_SYS_CLK_FREQ; - - if (pllreg == EPLL) { - k = k 0x; - /* FOUT = (MDIV + K / 65536) * FIN / (PDIV * 2^SDIV) */ - fout = (m + k / 65536) * (freq / (p * (1 s))); - } else if (pllreg == VPLL) { - k = k 0xfff; - /* FOUT = (MDIV + K / 1024) * FIN / (PDIV * 2^SDIV) */ - fout = (m + k / 1024) * (freq / (p * (1 s))); - } else { - if (s 1) - s = 1; - /* FOUT = MDIV * FIN / (PDIV * 2^(SDIV - 1)) */ - fout = m * (freq / (p * (1 (s - 1; - } + fout = exynos_get_pll_clk(pllreg, r, k); /* According to the user manual, in EVT1 MPLL and BPLL always gives * 1.6GHz clock, so divide by 2 to get 800MHz MPLL clock.*/ -- 1.7.9.5 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v2] ARCH: EXYNOS: add support to match product id
From: Minkyu Kang mk7.k...@samsung.com Based upon single SoC there can be multiple varients. This patch add support to match the complete product ID. Signed-off-by: Chander Kashyap chander.kash...@linaro.org --- Changes from v1: - Author name changed arch/arm/include/asm/arch-exynos/cpu.h |9 + 1 file changed, 9 insertions(+) diff --git a/arch/arm/include/asm/arch-exynos/cpu.h b/arch/arm/include/asm/arch-exynos/cpu.h index 2cd4ae1..2bde10c 100644 --- a/arch/arm/include/asm/arch-exynos/cpu.h +++ b/arch/arm/include/asm/arch-exynos/cpu.h @@ -139,6 +139,15 @@ static inline int cpu_is_##type(void) \ IS_SAMSUNG_TYPE(exynos4, 0x4) IS_SAMSUNG_TYPE(exynos5, 0x5) +#define IS_EXYNOS_TYPE(type, id) \ +static inline int proid_is_##type(void)\ +{ \ + return s5p_cpu_id == id;\ +} + +IS_EXYNOS_TYPE(exynos4210, 0x4210) +IS_EXYNOS_TYPE(exynos5250, 0x5250) + #define SAMSUNG_BASE(device, base) \ static inline unsigned int samsung_get_base_##device(void) \ { \ -- 1.7.9.5 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v2] ARCH: EXYNOS: add support to match product id
Hi Chander, On Mon, 15 Oct 2012 17:28:23 +0530, Chander Kashyap chander.kash...@linaro.org wrote: From: Minkyu Kang mk7.k...@samsung.com Based upon single SoC there can be multiple varients. Typo here (varients = variants) This patch add support to match the complete product ID. Signed-off-by: Chander Kashyap chander.kash...@linaro.org --- Changes from v1: - Author name changed arch/arm/include/asm/arch-exynos/cpu.h |9 + 1 file changed, 9 insertions(+) diff --git a/arch/arm/include/asm/arch-exynos/cpu.h b/arch/arm/include/asm/arch-exynos/cpu.h index 2cd4ae1..2bde10c 100644 --- a/arch/arm/include/asm/arch-exynos/cpu.h +++ b/arch/arm/include/asm/arch-exynos/cpu.h @@ -139,6 +139,15 @@ static inline int cpu_is_##type(void) \ IS_SAMSUNG_TYPE(exynos4, 0x4) IS_SAMSUNG_TYPE(exynos5, 0x5) +#define IS_EXYNOS_TYPE(type, id) \ +static inline int proid_is_##type(void) \ +{\ + return s5p_cpu_id == id;\ +} + +IS_EXYNOS_TYPE(exynos4210, 0x4210) +IS_EXYNOS_TYPE(exynos5250, 0x5250) + #define SAMSUNG_BASE(device, base) \ static inline unsigned int samsung_get_base_##device(void) \ {\ Amicalement, -- Albert. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v2] ARCH: EXYNOS: add support to match product id
Hi Albert, Thanks. On 15 October 2012 17:58, Albert ARIBAUD albert.u.b...@aribaud.net wrote: Hi Chander, On Mon, 15 Oct 2012 17:28:23 +0530, Chander Kashyap chander.kash...@linaro.org wrote: From: Minkyu Kang mk7.k...@samsung.com Based upon single SoC there can be multiple varients. Typo here (varients = variants) I will fix it. -- with warm regards, Chander Kashyap ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v3] ARCH: EXYNOS: add support to match product id
From: Minkyu Kang mk7.k...@samsung.com Based upon single SoC there can be multiple variants. This patch add support to match the complete product ID. Signed-off-by: Chander Kashyap chander.kash...@linaro.org --- Changes from v1: - Author name changed Changes from v2: - Fixed typo arch/arm/include/asm/arch-exynos/cpu.h |9 + 1 file changed, 9 insertions(+) diff --git a/arch/arm/include/asm/arch-exynos/cpu.h b/arch/arm/include/asm/arch-exynos/cpu.h index 2cd4ae1..2bde10c 100644 --- a/arch/arm/include/asm/arch-exynos/cpu.h +++ b/arch/arm/include/asm/arch-exynos/cpu.h @@ -139,6 +139,15 @@ static inline int cpu_is_##type(void) \ IS_SAMSUNG_TYPE(exynos4, 0x4) IS_SAMSUNG_TYPE(exynos5, 0x5) +#define IS_EXYNOS_TYPE(type, id) \ +static inline int proid_is_##type(void)\ +{ \ + return s5p_cpu_id == id;\ +} + +IS_EXYNOS_TYPE(exynos4210, 0x4210) +IS_EXYNOS_TYPE(exynos5250, 0x5250) + #define SAMSUNG_BASE(device, base) \ static inline unsigned int samsung_get_base_##device(void) \ { \ -- 1.7.9.5 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 5/7] disk: Allow alternate EFI partition signature
On 10/12/2012 06:26 PM, Simon Glass wrote: From: Stefan Reinauer reina...@chromium.org ChromeOS uses a GPT partition table to partition the disk. However, Windows will refuse to install on a GPT partitioned disk if there is no EFI available (Even if there is an MBR, too) To hide the GPT partition table from Windows, we need to write it with a header magic other than EFI PART. To support old and new systems, Check for the magic string CHROMEOS too. Surely if you wanted to install Windows on a disk containing ChromeOS, you would just wipe the disk and re-partition it? I suppose perhaps you're talking about dual-boot though? Either way, it doesn't see like a good idea to be using non-standard EFI signatures - especially if the idea is to hide the GPT from Windows, and presumably then have Windows use the MBR partitions, since that will end up with a decidedly non-standard partition setup; some partitions will only be represented in the MBR (those Windows creates) and some in GPT (presumably whatever ChromeOS created before). ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [STATUS] v2012.10 released, Merge Window is OPEN
Hey all, U-Boot v2012.10 has been released and uploaded to git. I expect to see it on the ftp server soon. The merge window is now open until November 3rd and the next release, v2013.01 is scheduled for release on January 15th 2013. I don't have Wolfgang's stats tools, so I hope he is able to reply to this message with that kind of information soon. In lieu of that, looking over the git log I see: - Lots of cleanups everywhere - ZFS, ext4 support has been added - Improved support for a number of platforms on almost all arches that we support. Finally, if you look around, your favorite community-oriented development board just might be supported now (I count at least 3 being added). Thanks for all of your hard work everyone! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 1/3] mx5: lowlevel_init.S: Split init_clock macro
init_clock is currently shared between mx51 and mx53 and it contains lots of ifdef's which makes it really hard to follow the code. Split the init_clock between mx51 and mx53 to allow easier readability. No functional changes are made. Signed-off-by: Fabio Estevam fabio.este...@freescale.com --- arch/arm/cpu/armv7/mx5/lowlevel_init.S | 95 ++-- 1 file changed, 65 insertions(+), 30 deletions(-) diff --git a/arch/arm/cpu/armv7/mx5/lowlevel_init.S b/arch/arm/cpu/armv7/mx5/lowlevel_init.S index 529e35b..d0bab45 100644 --- a/arch/arm/cpu/armv7/mx5/lowlevel_init.S +++ b/arch/arm/cpu/armv7/mx5/lowlevel_init.S @@ -162,9 +162,9 @@ setup_pll_func: .endm .macro init_clock +#if defined (CONFIG_MX51) ldr r0, =CCM_BASE_ADDR -#if defined(CONFIG_MX51) /* Gate of clocks to the peripherals first */ ldr r1, =0x3FFF str r1, [r0, #CLKCTL_CCGR0] @@ -190,21 +190,6 @@ setup_pll_func: 1: ldr r1, [r0, #CLKCTL_CDHIPR] cmp r1, #0x0 bne 1b -#else - ldr r1, =0x3FFF - str r1, [r0, #CLKCTL_CCGR0] - str r4, [r0, #CLKCTL_CCGR1] - str r4, [r0, #CLKCTL_CCGR2] - str r4, [r0, #CLKCTL_CCGR3] - str r4, [r0, #CLKCTL_CCGR7] - - ldr r1, =0x0003 - str r1, [r0, #CLKCTL_CCGR4] - ldr r1, =0x00FFF030 - str r1, [r0, #CLKCTL_CCGR5] - ldr r1, =0x0F00030F - str r1, [r0, #CLKCTL_CCGR6] -#endif /* Switch ARM to step clock */ mov r1, #0x4 @@ -217,7 +202,6 @@ setup_pll_func: setup_pll PLL1_BASE_ADDR, 800 #endif -#if defined(CONFIG_MX51) setup_pll PLL3_BASE_ADDR, 665 /* Switch peripheral to PLL 3 */ @@ -234,7 +218,7 @@ setup_pll_func: str r1, [r0, #CLKCTL_CBCDR] ldr r1, =0x20C0 | CONFIG_SYS_DDR_CLKSEL str r1, [r0, #CLKCTL_CBCMR] -#endif + setup_pll PLL3_BASE_ADDR, 216 /* Set the platform clock dividers */ @@ -244,21 +228,17 @@ setup_pll_func: ldr r0, =CCM_BASE_ADDR -#if defined(CONFIG_MX51) /* Run 3.0 at Full speed, for other TO's wait till we increase VDDGP */ ldr r3, [r4, #ROM_SI_REV] cmp r3, #0x10 movls r1, #0x1 movhi r1, #0 -#else - mov r1, #0 -#endif + str r1, [r0, #CLKCTL_CACRR] /* Switch ARM back to PLL 1 */ str r4, [r0, #CLKCTL_CCSR] -#if defined(CONFIG_MX51) /* setup the rest */ /* Use lp_apm (24MHz) source for perclk */ ldr r1, =0x20C2 | CONFIG_SYS_DDR_CLKSEL @@ -266,7 +246,6 @@ setup_pll_func: /* ddr clock from PLL 1, all perclk dividers are 1 since using 24MHz */ ldr r1, =CONFIG_SYS_CLKTL_CBCDR str r1, [r0, #CLKCTL_CBCDR] -#endif /* Restore the default values in the Gate registers */ ldr r1, =0x @@ -277,17 +256,72 @@ setup_pll_func: str r1, [r0, #CLKCTL_CCGR4] str r1, [r0, #CLKCTL_CCGR5] str r1, [r0, #CLKCTL_CCGR6] -#if defined(CONFIG_MX53) - str r1, [r0, #CLKCTL_CCGR7] -#endif -#if defined(CONFIG_MX51) /* Use PLL 2 for UART's, get 66.5MHz from it */ ldr r1, =0xA5A2A020 str r1, [r0, #CLKCTL_CSCMR1] ldr r1, =0x00C30321 str r1, [r0, #CLKCTL_CSCDR1] -#elif defined(CONFIG_MX53) + /* make sure divider effective */ +1: ldr r1, [r0, #CLKCTL_CDHIPR] + cmp r1, #0x0 + bne 1b + + str r4, [r0, #CLKCTL_CCDR] + + /* for cko - for ARM div by 8 */ + mov r1, #0x000A + add r1, r1, #0x0F0 + str r1, [r0, #CLKCTL_CCOSR] +#else /* CONFIG_MX53 */ + ldr r0, =CCM_BASE_ADDR + + /* Gate of clocks to the peripherals first */ + ldr r1, =0x3FFF + str r1, [r0, #CLKCTL_CCGR0] + str r4, [r0, #CLKCTL_CCGR1] + str r4, [r0, #CLKCTL_CCGR2] + str r4, [r0, #CLKCTL_CCGR3] + str r4, [r0, #CLKCTL_CCGR7] + ldr r1, =0x0003 + str r1, [r0, #CLKCTL_CCGR4] + ldr r1, =0x00FFF030 + str r1, [r0, #CLKCTL_CCGR5] + ldr r1, =0x0F00030F + str r1, [r0, #CLKCTL_CCGR6] + + /* Switch ARM to step clock */ + mov r1, #0x4 + str r1, [r0, #CLKCTL_CCSR] + + setup_pll PLL1_BASE_ADDR, 800 + + setup_pll PLL3_BASE_ADDR, 216 + + /* Set the platform clock dividers */ + ldr r0, =ARM_BASE_ADDR + ldr r1, =0x0725 + str r1, [r0, #0x14] + + ldr r0, =CCM_BASE_ADDR + + mov r1, #0 + str r1, [r0, #CLKCTL_CACRR] + + /* Switch ARM back to PLL 1 */ + str r4, [r0, #CLKCTL_CCSR] + + /* Restore the default values in the Gate registers */ + ldr r1, =0x + str r1, [r0, #CLKCTL_CCGR0] + str r1, [r0, #CLKCTL_CCGR1] + str r1, [r0, #CLKCTL_CCGR2] + str r1, [r0, #CLKCTL_CCGR3] + str r1, [r0, #CLKCTL_CCGR4] + str r1, [r0, #CLKCTL_CCGR5] + str r1, [r0, #CLKCTL_CCGR6] + str r1, [r0, #CLKCTL_CCGR7] + /* Switch peripheral to PLL2 */
[U-Boot] [PATCH 2/3] mx5: lowlevel_init.S: Fix PLL settings for mx53
Currently PLL2 is not explicitely configured for mx53 and it runs at 333MHz. Since PLL2 is the parent clock for DDR2, IPU, VPU, we should set it at 400MHz instead. Without doing so, it is not possible to use a 2.6.35 FSL kernel and display HDMI at 1080p because the IPU clock cannot reach the requested frequency. Set PLL2 to 400MHz, so that 1080p can be played and the DDR2 can run at its maximum frequency. Also, setup the other PLL's as done in FSL U-boot and re-arrange the code a little bit to allow easier comparison with the original clock setup from FSL U-boot. Signed-off-by: Fabio Estevam fabio.este...@freescale.com --- arch/arm/cpu/armv7/mx5/lowlevel_init.S | 96 -- arch/arm/include/asm/arch-mx5/imx-regs.h |4 ++ 2 files changed, 67 insertions(+), 33 deletions(-) diff --git a/arch/arm/cpu/armv7/mx5/lowlevel_init.S b/arch/arm/cpu/armv7/mx5/lowlevel_init.S index d0bab45..d62093b 100644 --- a/arch/arm/cpu/armv7/mx5/lowlevel_init.S +++ b/arch/arm/cpu/armv7/mx5/lowlevel_init.S @@ -296,20 +296,66 @@ setup_pll_func: setup_pll PLL1_BASE_ADDR, 800 - setup_pll PLL3_BASE_ADDR, 216 +setup_pll PLL3_BASE_ADDR, 400 + +/* Switch peripheral to PLL3 */ +ldr r0, =CCM_BASE_ADDR +ldr r1, =0x00015154 +str r1, [r0, #CLKCTL_CBCMR] +ldr r1, =0x02888945 +orr r1, r1, #(1 16) +str r1, [r0, #CLKCTL_CBCDR] +/* make sure change is effective */ +1: ldr r1, [r0, #CLKCTL_CDHIPR] +cmp r1, #0x0 +bne 1b + +setup_pll PLL2_BASE_ADDR, 400 + + /* Switch peripheral to PLL2 */ + ldr r0, =CCM_BASE_ADDR + ldr r1, =0x00808145 + orr r1, r1, #(2 10) + orr r1, r1, #(0 16) + orr r1, r1, #(1 19) + str r1, [r0, #CLKCTL_CBCDR] + + ldr r1, =0x00016154 + str r1, [r0, #CLKCTL_CBCMR] + + /*change uart clk parent to pll2*/ + ldr r1, [r0, #CLKCTL_CSCMR1] + and r1, r1, #0xfcff + orr r1, r1, #0x0100 + str r1, [r0, #CLKCTL_CSCMR1] + + /* make sure change is effective */ +1: ldr r1, [r0, #CLKCTL_CDHIPR] + cmp r1, #0x0 + bne 1b + +setup_pll PLL3_BASE_ADDR, 216 + + setup_pll PLL4_BASE_ADDR, 455 /* Set the platform clock dividers */ ldr r0, =ARM_BASE_ADDR - ldr r1, =0x0725 + ldr r1, =0x0124 str r1, [r0, #0x14] ldr r0, =CCM_BASE_ADDR - mov r1, #0 str r1, [r0, #CLKCTL_CACRR] - /* Switch ARM back to PLL 1 */ - str r4, [r0, #CLKCTL_CCSR] + /* Switch ARM back to PLL 1. */ + mov r1, #0x0 + str r1, [r0, #CLKCTL_CCSR] + + /* make uart div=6 */ + ldr r1, [r0, #CLKCTL_CSCDR1] + and r1, r1, #0xffc0 + orr r1, r1, #0x0a + str r1, [r0, #CLKCTL_CSCDR1] /* Restore the default values in the Gate registers */ ldr r1, =0x @@ -322,36 +368,14 @@ setup_pll_func: str r1, [r0, #CLKCTL_CCGR6] str r1, [r0, #CLKCTL_CCGR7] - /* Switch peripheral to PLL2 */ - ldr r0, =CCM_BASE_ADDR - ldr r1, =0x00808145 - orr r1, r1, #2 10 - orr r1, r1, #1 19 - str r1, [r0, #CLKCTL_CBCDR] +mov r1, #0x0 +str r1, [r0, #CLKCTL_CCDR] - ldr r1, =0x00016154 - str r1, [r0, #CLKCTL_CBCMR] - /* Change uart clk parent to pll2*/ - ldr r1, [r0, #CLKCTL_CSCMR1] - and r1, r1, #0xfcff - orr r1, r1, #0x0100 - str r1, [r0, #CLKCTL_CSCMR1] - ldr r1, [r0, #CLKCTL_CSCDR1] - and r1, r1, #0xffc0 - orr r1, r1, #0x0a - str r1, [r0, #CLKCTL_CSCDR1] - - /* make sure divider effective */ -1: ldr r1, [r0, #CLKCTL_CDHIPR] - cmp r1, #0x0 - bne 1b +/* for cko - for ARM div by 8 */ +mov r1, #0x000A +add r1, r1, #0x0F0 +str r1, [r0, #CLKCTL_CCOSR] - str r4, [r0, #CLKCTL_CCDR] - - /* for cko - for ARM div by 8 */ - mov r1, #0x000A - add r1, r1, #0x0F0 - str r1, [r0, #CLKCTL_CCOSR] #endif /* CONFIG_MX53 */ .endm @@ -405,3 +429,9 @@ W_DP_665: .word DP_OP_665 W_DP_216: .word DP_OP_216 .word DP_MFD_216 .word DP_MFN_216 +W_DP_400: .word DP_OP_400 + .word DP_MFD_400 + .word DP_MFN_400 +W_DP_455: .word DP_OP_455 + .word DP_MFD_455 + .word DP_MFN_455 diff --git a/arch/arm/include/asm/arch-mx5/imx-regs.h b/arch/arm/include/asm/arch-mx5/imx-regs.h index 46017f4..1d060fd 100644 --- a/arch/arm/include/asm/arch-mx5/imx-regs.h +++ b/arch/arm/include/asm/arch-mx5/imx-regs.h @@ -308,6 +308,10 @@ #define DP_MFD_400 (3 - 1) #define DP_MFN_400 1 +#define DP_OP_455 ((9 4) + ((2 - 1) 0)) +#define DP_MFD_455 (48 - 1) +#define DP_MFN_455 23 +
[U-Boot] [PATCH 3/3] mx53loco: Adapt the IPU clock
Since PLL2 now has changed, it is necessary to adapt the CONFIG_IPUV3_CLK accordingly. Signed-off-by: Fabio Estevam fabio.este...@freescale.com --- include/configs/mx53loco.h |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/configs/mx53loco.h b/include/configs/mx53loco.h index 6a6aaa1..2ecfbd6 100644 --- a/include/configs/mx53loco.h +++ b/include/configs/mx53loco.h @@ -222,6 +222,6 @@ #define CONFIG_SPLASH_SCREEN #define CONFIG_BMP_16BPP #define CONFIG_VIDEO_LOGO -#define CONFIG_IPUV3_CLK 13300 +#define CONFIG_IPUV3_CLK 2 #endif /* __CONFIG_H */ -- 1.7.9.5 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [RFC PATCH 2/2] fs: add partition switch libary, implement ls and fsload commands
On 10/13/2012 01:26 PM, Pavel Herrmann wrote: Hi On Wednesday 10 October 2012 18:05:07 Stephen Warren wrote: ...snip... Makefile|3 +- common/Makefile |2 + common/cmd_fs.c | 86 ++ fs/Makefile | 47 fs/fs.c | 216 +++ include/fs.h| 49 + 6 files changed, 402 insertions(+), 1 deletions(-) create mode 100644 common/cmd_fs.c create mode 100644 fs/Makefile create mode 100644 fs/fs.c create mode 100644 include/fs.h I dont see how this is a partition switch library, when it doesnt deal with partitions at all. Care to explain? Or maybe call it filesystem-auto detection or something? Oops. I will s/partition/filesystem/ in the patch subject. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] ARM: Remove unused CONFIG_DRIVER_SMC91111, CONFIG_DRIVER_LAN91C96
Remove unused CONFIG_DRIVER_SMC9,CONFIG_DRIVER_LAN91C96, if required implement smc_set_mac_add() in board init. Signed-off-by: Ashok Kumar Reddy ashokkourla2...@gmail.com --- arch/arm/lib/board.c | 17 - 1 file changed, 17 deletions(-) diff --git a/arch/arm/lib/board.c b/arch/arm/lib/board.c index 109a1ac..cb71b02 100644 --- a/arch/arm/lib/board.c +++ b/arch/arm/lib/board.c @@ -57,13 +57,6 @@ #include miiphy.h #endif -#ifdef CONFIG_DRIVER_SMC9 -#include ../drivers/net/smc9.h -#endif -#ifdef CONFIG_DRIVER_LAN91C96 -#include ../drivers/net/lan91c96.h -#endif - DECLARE_GLOBAL_DATA_PTR; ulong monitor_flash_len; @@ -593,16 +586,6 @@ void board_init_r(gd_t *id, ulong dest_addr) /* enable exceptions */ enable_interrupts(); - /* Perform network card initialisation if necessary */ -#if defined(CONFIG_DRIVER_SMC9) || defined (CONFIG_DRIVER_LAN91C96) - /* XXX: this needs to be moved to board init */ - if (getenv(ethaddr)) { - uchar enetaddr[6]; - eth_getenv_enetaddr(ethaddr, enetaddr); - smc_set_mac_addr(enetaddr); - } -#endif /* CONFIG_DRIVER_SMC9 || CONFIG_DRIVER_LAN91C96 */ - /* Initialize from environment */ load_addr = getenv_ulong(loadaddr, 16, load_addr); -- 1.7.9.5 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] README : Rename CONFIG_DRIVER_SMC91111 to CONFIG_SMC91111, CONFIG_DRIVER_LAN91C96 to CONFIG_LAN91C96
Rename CONFIG_DRIVER_SMC9 to CONFIG_SMC9, CONFIG_DRIVER_LAN91C96 to CONFIG_LAN91C96 Signed-off-by: Ashok Kumar Reddy ashokkourla2...@gmail.com --- README |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README b/README index dd250a0..f360b62 100644 --- a/README +++ b/README @@ -1084,7 +1084,7 @@ The following options need to be configured: CONFIG_CALXEDA_XGMAC Support for the Calxeda XGMAC device - CONFIG_DRIVER_LAN91C96 + CONFIG_LAN91C96 Support for SMSC's LAN91C96 chips. CONFIG_LAN91C96_BASE @@ -1094,7 +1094,7 @@ The following options need to be configured: CONFIG_LAN91C96_USE_32_BIT Define this to enable 32 bit addressing - CONFIG_DRIVER_SMC9 + CONFIG_SMC9 Support for SMSC's LAN91C111 chip CONFIG_SMC9_BASE -- 1.7.9.5 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] omap2424:Rename CONFIG_DRIVER_LAN91C96 to CONFIG_LAN91C96 as CONFIG_DRIVER_LAN91C96 is obsolete.
Rename CONFIG_DRIVER_LAN91C96 to CONFIG_LAN91C9 as CONFIG_DRIVER_LAN91C96 is obsolete. Signed-off-by: Ashok Kumar Reddy ashokkourla2...@gmail.com --- board/ti/omap2420h4/omap2420h4.c |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/board/ti/omap2420h4/omap2420h4.c b/board/ti/omap2420h4/omap2420h4.c index a3983e3..188e4ac 100644 --- a/board/ti/omap2420h4/omap2420h4.c +++ b/board/ti/omap2420h4/omap2420h4.c @@ -153,7 +153,7 @@ void wait_for_command_complete(unsigned int wd_base) **/ void ether_init (void) { -#ifdef CONFIG_DRIVER_LAN91C96 +#ifdef CONFIG_LAN91C96 int cnt = 20; __raw_writeb(0x3,OMAP2420_CTRL_BASE+0x10a); /*protect-gpio95 */ -- 1.7.9.5 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] U-Boot git usage model
On 10/13/2012 01:17 PM, Wolfgang Denk wrote: Dear Stephen Warren, In message 50770155.20...@wwwdotorg.org you wrote: and in particular, the following parts of that doc is what tells me that committers should always add S-o-b even if the commit didn't change: Developer's Certificate of Origin 1.1 By making a contribution to this project, I certify that: ... (c) The contribution was provided directly to me by some other person who certified (a), (b) or (c) and I have not modified it. No, I think you misinterpret this ;-) This is intended for cases where the original author of the patch shall remain unknown for whatever reasons. Consider some bigger companies doing a lot of their actual development in low-cost countries (say, China). They usually have a ton of developers workignon such stuff, and only one (or very few) people who interface ith the community. It is these interface-guys who will add their SoB based on above rule, meaning: yes, I can certify that this is Open Source, and even though the original author shall remain unnamed this can be used freely in this context. Irrespective of the documentation (which I obviously read the way I describe anyway...), the kernel practice is that everyone who writes or commits a patch adds their S-o-b line, and everyone who simply merges a branch from someone else checks that the provider of the branch added their S-o-b to patches they applied (rather than merged themselves) but does not add their own S-o-b (because it's impossible). I have often wondered why the merge commits themselves were not signed off by the person performing the merge (which would then logically cover all the commits that got merged). I haven't investigated to find out why though. Doing so would seem to solve your objection about merges. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH V2 3/3] fs: add partition switch libary, implement ls and fsload commands
On 10/11/2012 01:59 PM, Stephen Warren wrote: From: Stephen Warren swar...@nvidia.com Implement ls and fsload commands that act like {fat,ext2}{ls,load}, and transparently handle either file-system. This scheme could easily be extended to other filesystem types; I only didn't do it for zfs because I don't have any filesystems of that type to test with. This is exactly what I want to get to. However, I think the first step should be to unify the filesystem api similar to the block device api. This would avoid the wrapper here and yet another copy of nearly identical code. Then we can unify the implementations of *ls and *load. Rob Signed-off-by: Stephen Warren swar...@nvidia.com --- v2: * Build cmd_fs.c when CONFIG_CMD_FS_GENERIC not always. * Use new CONFIG_FS_{FAT,EXT4} rather than CONFIG_CMD_{FAT,EXT2}. * Implemented fs_close() and call it from the tail of fs_ls() and fs_read(). This ensures that any other usage of e.g. the ext4 library between fs_*() calls, then the two usages won't interfere. * Re-organized fs.c to reduce the number of ifdef blocks. * Added argc checking to do_ls(). --- Makefile|3 +- common/Makefile |1 + common/cmd_fs.c | 89 ++ fs/Makefile | 47 +++ fs/fs.c | 227 +++ include/fs.h| 49 6 files changed, 415 insertions(+), 1 deletions(-) create mode 100644 common/cmd_fs.c create mode 100644 fs/Makefile create mode 100644 fs/fs.c create mode 100644 include/fs.h diff --git a/Makefile b/Makefile index d7e2c2f..0b50eb7 100644 --- a/Makefile +++ b/Makefile @@ -242,7 +242,8 @@ LIBS-y += drivers/net/npe/libnpe.o endif LIBS-$(CONFIG_OF_EMBED) += dts/libdts.o LIBS-y += arch/$(ARCH)/lib/lib$(ARCH).o -LIBS-y += fs/cramfs/libcramfs.o \ +LIBS-y += fs/libfs.o \ + fs/cramfs/libcramfs.o \ fs/ext4/libext4fs.o \ fs/fat/libfat.o \ fs/fdos/libfdos.o \ diff --git a/common/Makefile b/common/Makefile index 125b2be..c6c31f7 100644 --- a/common/Makefile +++ b/common/Makefile @@ -103,6 +103,7 @@ COBJS-$(CONFIG_CMD_FLASH) += cmd_flash.o ifdef CONFIG_FPGA COBJS-$(CONFIG_CMD_FPGA) += cmd_fpga.o endif +COBJS-$(CONFIG_CMD_FS_GENERIC) += cmd_fs.o COBJS-$(CONFIG_CMD_GPIO) += cmd_gpio.o COBJS-$(CONFIG_CMD_I2C) += cmd_i2c.o COBJS-$(CONFIG_CMD_IDE) += cmd_ide.o diff --git a/common/cmd_fs.c b/common/cmd_fs.c new file mode 100644 index 000..9df0a66 --- /dev/null +++ b/common/cmd_fs.c @@ -0,0 +1,89 @@ +/* + * Copyright (c) 2012, NVIDIA CORPORATION. All rights reserved. + * + * Inspired by cmd_ext_common.c, cmd_fat.c. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms and conditions of the GNU General Public License, + * version 2, as published by the Free Software Foundation. + * + * This program is distributed in the hope 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, see http://www.gnu.org/licenses/. + */ + +#include common.h +#include command.h +#include fs.h + +int do_fsload(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +{ + unsigned long addr; + unsigned long bytes; + unsigned long pos; + int len_read; + char buf[12]; + + if (argc 5) + return CMD_RET_USAGE; + + if (fs_set_blk_dev(argv[1], argv[2])) + return 1; + + addr = simple_strtoul(argv[3], NULL, 0); + if (argc = 6) + bytes = simple_strtoul(argv[5], NULL, 0); + else + bytes = 0; + if (argc = 7) + pos = simple_strtoul(argv[6], NULL, 0); + else + pos = 0; + + len_read = fs_read(argv[4], addr, pos, bytes); + if (len_read = 0) + return 1; + + sprintf(buf, 0x%x, (unsigned int)len_read); + setenv(filesize, buf); + + return 0; +} + +U_BOOT_CMD( + fsload, 7, 0, do_fsload, + load binary file from a filesystem, + interface [dev[:part]] addr filename [bytes [pos]]\n + - Load binary file 'filename' from partition 'part' on device\n +type 'interface' instance 'dev' to address 'addr' in memory.\n + 'bytes' gives the size to load in bytes.\n + If 'bytes' is 0 or omitted, the file is read until the end.\n + 'pos' gives the file byte position to start reading from.\n + If 'pos' is 0 or omitted, the file is read from the start. +); + +int do_ls(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +{ + if (argc 2) + return CMD_RET_USAGE; + + if (fs_set_blk_dev(argv[1], (argc = 3) ?
Re: [U-Boot] [STATUS] v2012.10 released, Merge Window is OPEN
Am 15/10/2012 17:30, schrieb Tom Rini: Hey all, U-Boot v2012.10 has been released and uploaded to git. I expect to see it on the ftp server soon. The merge window is now open until November 3rd and the next release, v2013.01 is scheduled for release on January 15th 2013. I don't have Wolfgang's stats tools, so I hope he is able to reply to this message with that kind of information soon. Hopefully I do nid run Jonathan Corbet's gitdm in a wrong way (git log -p -M v2012.07..v2012.10 | gitdm -u -s -a -o /tmp/results -h /tmp/results.html) Processed 925 csets from 135 developers 14 employers found A total of 88011 lines added, 36373 removed (delta 51638) Developers with the most changesets Benoît Thébaudeau 69 (7.5%) Tom Rini66 (7.1%) Marek Vasut 51 (5.5%) Troy Kisky 31 (3.4%) Joe Hershberger 30 (3.2%) Nobuhiro Iwamatsu 30 (3.2%) Stephen Warren 28 (3.0%) Michal Simek27 (2.9%) Otavio Salvador 26 (2.8%) Stefano Babic 20 (2.2%) Allen Martin20 (2.2%) Rajeshwari Shinde 19 (2.1%) Gerlando Falauto17 (1.8%) Tetsuyuki Kobayashi 16 (1.7%) Fabio Estevam 16 (1.7%) York Sun16 (1.7%) Łukasz Majewski15 (1.6%) Simon Glass 14 (1.5%) Stephan Linz13 (1.4%) Rob Herring 12 (1.3%) Timur Tabi 12 (1.3%) Ilya Yanok 11 (1.2%) Bo Shen 11 (1.2%) Andreas Bießmann 10 (1.1%) Matt Sealey 10 (1.1%) Mike Frysinger 10 (1.1%) Mathieu J. Poirier 10 (1.1%) Anatolij Gustschin 9 (1.0%) Alison Wang 9 (1.0%) Donghwa Lee 9 (1.0%) Stefan Roese 8 (0.9%) Holger Brunck8 (0.9%) Lucas Stach 8 (0.9%) Valentin Longchamp 7 (0.8%) Daniel Schwierzeck 7 (0.8%) Prabhakar Lad7 (0.8%) Scott Wood 7 (0.8%) Wu, Josh 7 (0.8%) Yoshihiro Shimoda7 (0.8%) Matthew McClintock 7 (0.8%) Laurence Withers 6 (0.6%) Bastian Ruppert 6 (0.6%) Lei Wen 6 (0.6%) Liu Gang 6 (0.6%) Albert ARIBAUD 5 (0.5%) Peter Meerwald 5 (0.5%) Nikita Kiryanov 5 (0.5%) Andrew Sharp 5 (0.5%) Javier Martinez Canillas 5 (0.5%) Luka Perkov 4 (0.4%) Karl O. Pinc 4 (0.4%) Pavel Herrmann 4 (0.4%) Kumar Gala 4 (0.4%) Ira W. Snyder4 (0.4%) Ashok Kumar Reddy4 (0.4%) Jaehoon Chung4 (0.4%) Mikhail Kshevetskiy 4 (0.4%) Markus Hubig 4 (0.4%) Tomáš Hlaváček 4 (0.4%) Viktor Krivak4 (0.4%) Prabhakar Kushwaha 4 (0.4%) Shaohui Xie 4 (0.4%) Igor Grinberg3 (0.3%) Wolfgang Denk3 (0.3%) Dinh Nguyen 3 (0.3%) Zhong Hongbo 3 (0.3%) Michael Walle3 (0.3%) Simon Guinot 3 (0.3%) Sughosh Ganu 3 (0.3%) Andy Fleming 3 (0.3%) Jens Scharsig3 (0.3%) Joakim Tjernlund 3 (0.3%) trem 3 (0.3%) Chandan Nath 3 (0.3%) Steve Sakoman3 (0.3%) Pavel Machek 2 (0.2%) Gabriel Huau 2 (0.2%) Hideyuki Sano2 (0.2%) Stefan Kristiansson 2 (0.2%) Koen Kooi2 (0.2%) Eric Nelson 2 (0.2%) Tom Warren 2 (0.2%) Veli-Pekka Peltola 2 (0.2%) Thierry Reding 2 (0.2%) Charles Manning 2 (0.2%) Vikram Narayanan 2 (0.2%) Rajashekhara, Sudhakar 2 (0.2%) Horst Kronstorfer2 (0.2%) Uma Shankar 2 (0.2%) benoit.thebaudeau@advans 2 (0.2%) Jeroen Hofstee 1 (0.1%) Simon Baatz 1 (0.1%) Rommel Custodio 1 (0.1%) Ramesh Chandrasekaran1 (0.1%) Chan-Taek Park 1 (0.1%) Wolfgang Grandegger 1 (0.1%) Joel A Fernandes 1 (0.1%) Brian Rzycki 1 (0.1%) Chander Kashyap 1 (0.1%) Priyanka Jain1 (0.1%) Jason Jin1 (0.1%) Richard Retanubun1 (0.1%) Iwo Mergler 1 (0.1%) Tyler Olmstead 1 (0.1%) Matthieu CASTET 1 (0.1%) Jim Lin 1 (0.1%) Jongman Heo 1 (0.1%) Arnout Vandecappelle (Essensium/Mind)1 (0.1%) Linus Walleij1 (0.1%) Jagannadha Sutradharudu Teki1 (0.1%) Kaspter Ju 1 (0.1%) Xu, Hong 1 (0.1%) Matej Frančeškin
Re: [U-Boot] [PATCH V3 2/4] FAT: make use of disk_partition_t.part
On 10/13/2012 01:38 PM, Pavel Herrmann wrote: Hi On Wednesday 10 October 2012 12:14:00 Stephen Warren wrote: From: Stephen Warren swar...@nvidia.com This removes the standalone cur_part_nr variable, opening the way to replacing fat_register_device() with fat_set_blk_dev(). Note that when get_partition_info() fails and we use the entire disk, the correct partition number is 0 (whole disk) not 1 (first partition), so that change is also made here. An alternative to this (and the previous) patch might be to simply remove the partition number from the printf(). I don't know how attached people are to it. Signed-off-by: Stephen Warren swar...@nvidia.com Just as a heads up, in the DM any difference between a partition and a whole block device (also between different interfaces for disks) is hidden from any user code (code other than the one keeping track of partitions/disks, that only uses such information to determine whether to scan for partitions), you only get some object that can read/write blocks if you ask it nicely, and you have to make do with that (if you need more then you're probably doing something wrong). As a result, there is no notion of partition number, and the string you are patching up here (along with many others, due to unification of disk interfaces) is changed. OK, so do you think it'd be better right now to drop patches 1 and 2 in this series, and just remove the partition number from fat.c's printf() call? That'd certainly be simple to do. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH V2 3/3] fs: add partition switch libary, implement ls and fsload commands
On 10/15/2012 10:33 AM, Rob Herring wrote: On 10/11/2012 01:59 PM, Stephen Warren wrote: From: Stephen Warren swar...@nvidia.com Implement ls and fsload commands that act like {fat,ext2}{ls,load}, and transparently handle either file-system. This scheme could easily be extended to other filesystem types; I only didn't do it for zfs because I don't have any filesystems of that type to test with. This is exactly what I want to get to. That's good. However, I think the first step should be to unify the filesystem api similar to the block device api. This would avoid the wrapper here and yet another copy of nearly identical code. Then we can unify the implementations of *ls and *load. I think we will always need some form of wrapper. At the very least, we will need fs_set_blk_dev() (or a function that does the same thing under a different name) in order to probe which type of filesystem is present, just like we have get_partition_info() for partitions, which scans for all known forms of partition table. The only way to avoid wrappers for the other functions (ls, load) would be if fs_set_blk_dev() were to set up some global variable pointing at the filesystem implementation struct. If it did that, client code could call directly into the filesystem rather than calling into the wrapper functions to indirect to the correct filesystem. This might be a reasonable design, although even if that is the long-term plan, I don't think it precludes using the wrapper approach first, then refactoring the wrapper away as functionality (e.g. fs_{probe,close}_{fat,ext4}) moves into the filesystem implementations; this seems like a good first step on the way. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v1] ARM : Remove unused CONFIG_DRIVER_SMC91111, CONFIG_DRIVER_LAN91C96
Remove unused CONFIG_DRIVER_SMC9,CONFIG_DRIVER_LAN91C96, if required implement smc_set_mac_addr() in board init. Signed-off-by: Ashok Kumar Reddy ashokkourla2...@gmail.com --- Changes from v1: - Fixed typo arch/arm/lib/board.c | 17 - 1 file changed, 17 deletions(-) diff --git a/arch/arm/lib/board.c b/arch/arm/lib/board.c index 109a1ac..cb71b02 100644 --- a/arch/arm/lib/board.c +++ b/arch/arm/lib/board.c @@ -57,13 +57,6 @@ #include miiphy.h #endif -#ifdef CONFIG_DRIVER_SMC9 -#include ../drivers/net/smc9.h -#endif -#ifdef CONFIG_DRIVER_LAN91C96 -#include ../drivers/net/lan91c96.h -#endif - DECLARE_GLOBAL_DATA_PTR; ulong monitor_flash_len; @@ -593,16 +586,6 @@ void board_init_r(gd_t *id, ulong dest_addr) /* enable exceptions */ enable_interrupts(); -/* Perform network card initialisation if necessary */ -#if defined(CONFIG_DRIVER_SMC9) || defined (CONFIG_DRIVER_LAN91C96) -/* XXX: this needs to be moved to board init */ -if (getenv(ethaddr)) { -uchar enetaddr[6]; -eth_getenv_enetaddr(ethaddr, enetaddr); -smc_set_mac_addr(enetaddr); -} -#endif /* CONFIG_DRIVER_SMC9 || CONFIG_DRIVER_LAN91C96 */ - /* Initialize from environment */ load_addr = getenv_ulong(loadaddr, 16, load_addr); -- 1.7.9.5 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] Problem with first use of patman [FIXED]
Hi Albert, On Sun, Oct 14, 2012 at 10:45 PM, Albert ARIBAUD albert.u.b...@aribaud.net wrote: Hi Simon, On Sun, 14 Oct 2012 16:53:03 -0700, Simon Glass s...@chromium.org wrote: Hi Albert, On Sun, Oct 14, 2012 at 11:52 AM, Albert ARIBAUD albert.u.b...@aribaud.net wrote: Hello Simon and the list, I'm trying to start using patman, and -- probably out of sheer ignorance -- cannot make it work. Not a good first experience, sorry! I've defined my .patman file with aliases for mvgbe, lacie_kw, arm, arm926ejs etc. I am trying to generate patches from a local branch (which I have made available on the u-boot-arm repo as 'add-ws-support') which has two commits. Top commit contains some matman tags, but the error is the without any tag. The complete error is: albert@lilith:~/src/u-boot-arm$ tools/patman/patman -n -c2 Traceback (most recent call last): File tools/patman/patman, line 125, in module series = patchstream.GetMetaData(options.start, options.count) File /home/albert/src/u-boot-arm/tools/patman/patchstream.py, line 352, in GetMetaData ps.ProcessLine(line) File /home/albert/src/u-boot-arm/tools/patman/patchstream.py, line 190, in ProcessLine self.commit.subject = line AttributeError: 'NoneType' object has no attribute 'subject' albert@lilith:~/src/u-boot-arm$ Can Simon (or someone who's already bumped into this error) tell me what I'm doing wrong? I am really not sure about this. I can't seem to repeat the problem with your branch. I am pretty sure from your backtrace that it is parsing the 'git log' output, and seeing a subject before it has seen a commit. It is possible that your 'git log' output is non-standard? Perhaps you could post that to the list? It expects to see: commit hash Author: ... Date: ... blank line commit subject commit lines if any commit hash Author ... You could put a 'print line, self.state' at the top of ProcessLine() in patchstream.py and that might help me debug it. Thanks! Your hint about 'git log' made me find the cause of the problem. My git log content is in no way special... except it has color ( 'ui = always' in my .gitconfig) ! This is what troubled patman: trying with the color spec in .git config commented out, it works ok. I have located two places in patman where it calls git log, added option --no-color to them, verified that it worked with color.ui=auto in my .gitconfig... then used patman to send these very fixes to the list. :) That's great to hear, and thanks for the patch. Amicalement, -- Albert. Regards, Simon ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] patman: force git log commands to not use color
Hi Albert, On Sun, Oct 14, 2012 at 10:47 PM, Albert ARIBAUD albert.u.b...@aribaud.net wrote: Colored logs confuse patman when analyzing logs. Add --no-color option in git log commands in case the default config has color. Signed-off-by: Albert ARIBAUD albert.u.b...@aribaud.net --- tools/patman/gitutil.py |2 +- tools/patman/patchstream.py |2 +- 2 files changed, 2 insertions(+), 2 deletions(-) Thanks for the patch, it's good to find this problem. diff --git a/tools/patman/gitutil.py b/tools/patman/gitutil.py index 59eca99..72d37a0 100644 --- a/tools/patman/gitutil.py +++ b/tools/patman/gitutil.py @@ -38,7 +38,7 @@ def CountCommitsToBranch(): Return: Number of patches that exist on top of the branch -pipe = [['git', 'log', '--oneline', '@{upstream}..'], +pipe = [['git', 'log', '--no-color', '--oneline', '@{upstream}..'], ['wc', '-l']] stdout = command.RunPipe(pipe, capture=True, oneline=True) patch_count = int(stdout) diff --git a/tools/patman/patchstream.py b/tools/patman/patchstream.py index 0503bac..4314537 100644 --- a/tools/patman/patchstream.py +++ b/tools/patman/patchstream.py @@ -344,7 +344,7 @@ def GetMetaData(start, count): start: Commit to start from: 0=HEAD, 1=next one, etc. count: Number of commits to list -pipe = [['git', 'log', '--reverse', 'HEAD~%d' % start, '-n%d' % count]] +pipe = [['git', 'log', '--no-color', '--reverse', 'HEAD~%d' % start, '-n%d' % count]] The functionality is good, but can I ask for 80 columns on this one please? stdout = command.RunPipe(pipe, capture=True) series = Series() ps = PatchStream(series, is_log=True) -- 1.7.9.5 Regards, Simon ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 2/3] configs: mx51evk: Remove CONFIG_HAS_ETH1
mx51evk has only one Ethernet port, so remove CONFIG_HAS_ETH1 option. Signed-off-by: Fabio Estevam fabio.este...@freescale.com --- include/configs/mx51evk.h |1 - 1 file changed, 1 deletion(-) diff --git a/include/configs/mx51evk.h b/include/configs/mx51evk.h index 34b0783..d3edcba 100644 --- a/include/configs/mx51evk.h +++ b/include/configs/mx51evk.h @@ -96,7 +96,6 @@ /* * Eth Configs */ -#define CONFIG_HAS_ETH1 #define CONFIG_MII #define CONFIG_FEC_MXC -- 1.7.9.5 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 1/3] configs: mx53loco: Remove CONFIG_HAS_ETH1
mx53loco has only one Ethernet port, so remove CONFIG_HAS_ETH1 option. Signed-off-by: Fabio Estevam fabio.este...@freescale.com --- include/configs/mx53loco.h |1 - 1 file changed, 1 deletion(-) diff --git a/include/configs/mx53loco.h b/include/configs/mx53loco.h index 2ecfbd6..0658dd3 100644 --- a/include/configs/mx53loco.h +++ b/include/configs/mx53loco.h @@ -58,7 +58,6 @@ #define CONFIG_DOS_PARTITION /* Eth Configs */ -#define CONFIG_HAS_ETH1 #define CONFIG_MII #define CONFIG_FEC_MXC -- 1.7.9.5 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 3/3] configs: mx53evk: Remove CONFIG_HAS_ETH1
mx53evk has only one Ethernet port, so remove CONFIG_HAS_ETH1 option. Signed-off-by: Fabio Estevam fabio.este...@freescale.com --- include/configs/mx53evk.h |1 - 1 file changed, 1 deletion(-) diff --git a/include/configs/mx53evk.h b/include/configs/mx53evk.h index 832050e..8fc415e 100644 --- a/include/configs/mx53evk.h +++ b/include/configs/mx53evk.h @@ -73,7 +73,6 @@ #define CONFIG_DOS_PARTITION /* Eth Configs */ -#define CONFIG_HAS_ETH1 #define CONFIG_MII #define CONFIG_FEC_MXC -- 1.7.9.5 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v6] h2200: Add support for iPAQ h2200 palmtop
Add basic support for HP iPAQ h2200 palmtop. h2200 palmtop was targeted to general consumers. It has 64 MB of RAM, 32 MB flash. No intergrated Wi-Fi nor Ethernet. Based on Intel PXA255 processor. It was shipped with Windows CE 4.2 operating system. Signed-off-by: Lukasz Dalek luk0...@gmail.com --- Changes for v6: - Defined CONFIG_CONS_INDEX - Added h2200 entry to MAINTAINERS Changes for v5: - Fixed Makefile to use $(obj) MAINTAINERS|4 + board/h2200/Makefile | 49 ++ board/h2200/h2200-header.S | 27 board/h2200/h2200.c| 53 +++ boards.cfg |1 + include/configs/h2200.h| 157 6 files changed, 291 insertions(+), 0 deletions(-) create mode 100644 board/h2200/Makefile create mode 100644 board/h2200/h2200-header.S create mode 100644 board/h2200/h2200.c create mode 100644 include/configs/h2200.h diff --git a/MAINTAINERS b/MAINTAINERS index aa54fe1..1b70fb2 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -589,6 +589,10 @@ Stefano Babic sba...@denx.de twister omap3 vision2 i.MX51 +Lukasz Dalek luk0...@gmail.com + + h2200 xscale/pxa + Jason Liu r64...@freescale.com mx53evk i.MX53 diff --git a/board/h2200/Makefile b/board/h2200/Makefile new file mode 100644 index 000..51b1a9e --- /dev/null +++ b/board/h2200/Makefile @@ -0,0 +1,49 @@ +# +# h2200 Support +# +# Copyright (C) 2012 Lukasz Dalek luk0...@gmail.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 $(TOPDIR)/config.mk + +LIB= $(obj)lib$(BOARD).o + +COBJS := h2200.o + +SRCS := $(COBJS:.o=.c) h2200-header.S +OBJS := $(addprefix $(obj),$(COBJS)) + +all: $(LIB) $(obj)h2200-header.bin + +$(obj)h2200-header.o: h2200-header.S + $(CC) $(CFLAGS) -c -o $@ $ + +$(obj)h2200-header.bin: $(obj)h2200-header.o + $(OBJCOPY) -O binary $ $@ + +$(LIB):$(obj).depend $(OBJS) + $(call cmd_link_o_target, $(OBJS)) + +# + +# defines $(obj).depend target +include $(SRCTREE)/rules.mk + +sinclude $(obj).depend + +# diff --git a/board/h2200/h2200-header.S b/board/h2200/h2200-header.S new file mode 100644 index 000..c335bfe --- /dev/null +++ b/board/h2200/h2200-header.S @@ -0,0 +1,27 @@ +/* + * iPAQ h2200 header + * + * Copyright (C) 2012 Lukasz Dalek luk0...@gmail.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 + */ + + .word 0xea0003fe /* b 0x1000 */ + + .org 0x40 + .ascii ECEC + + .org 0x1000 - 1 + .byte 0x0 diff --git a/board/h2200/h2200.c b/board/h2200/h2200.c new file mode 100644 index 000..3076306 --- /dev/null +++ b/board/h2200/h2200.c @@ -0,0 +1,53 @@ +/* + * iPAQ h2200 board configuration + * + * Copyright (C) 2012 Lukasz Dalek luk0...@gmail.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
Re: [U-Boot] U-Boot git usage model
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 10/13/12 15:25, Wolfgang Denk wrote: Dear Tom, In message 5079d95e.4070...@ti.com you wrote: While also IANAL (and I try and stay out of these discussions), paging around in the kernel log it sure seems like Linus and akpm both add S-O-B when they git am something in (perhaps why there is git am --signoff?) but not when it comes via pull request. In other words, up until the point it goes into intended-to-be-pulled-somehow-someway git, whomever is presenting the work adds one (or more) to say I (we) worked on it and yes, applies as well as the person bringing it in (I touch this and believe it to be). Yes, git am has such an option. But git fetch (or pull) does not. I see no technical difference if someone provides me a patch as such, or in form of a git repository with this patch applied so I can just git fetch from it. In both cases the result would be exactly the same: I add the patch to my local repository. But in one case I am supposed to sign it (and tools offer me options to do so), but in the other case I cannot do that, even if I wanted? I will not claim the kernel practice to be 100% consistent, but yes. git am --signoff, git pull/merge and no -s in merge commits seems to be the practice. Perhaps we should stop saying we follow the kernel process, link to it as useful background, but then document what we actually want / do which is only require new S-O-B on code modification, and allow custodians to add their own they want for tracking or otherwise ease of not having to remember a different workflow for kernel vs U-Boot? - -- Tom -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.11 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://www.enigmail.net/ iQIcBAEBAgAGBQJQfE43AAoJENk4IS6UOR1WKEUP/i2Ez8T+zv872jq6hjuhGhiE xCdrc2+npXHx/DguOkHIQqFRPQwlKaAbaGgNLXFWdIHipUcuZlUI1sraLDiQJ0un fToNRqlts0N/nXgwOMMBn13/aihSiGrOy6MvYB0RhFLZ5FVBXxdY3QXc6rOfFrom 45A+60T4VUmghyuoa3I5Oc+H9PEyvPG6BgVFm5JtwB6oPi7KypNOx0pSnv5z7uJ8 JkiLeWDlXag4VJyXFLbf2xOQRFgbFX8EgQcRXOWDjXet1lzXjP5sA9qVnYFMVFHJ AANtj9XFpQft6CK1Wfyq2+9fVNoqQtdqmvjhNbuqJK1vehZrpL4//tO4O++eynnP NlYxtSUDFLeWC/qyksdda02V5Gwme7pA3aMGUFU+VBgPrzAV2aCaseiOxKND//ni MSX+KkBUHy0l8kV7TnwuZtIV+fEvvOkYLD3KMzYxa98h7hbMpUIEa8Ldhkjyw3qx GrzEQ59xHV6stE2/nw++J30rzlxMrnavUU6ato25GcpSDIH2yPzDargrIBtDSteP tHFLfsj8buHx8csylaecHc+qlICA8JshbMcYkYQpzOIKYI+6M6sJOWFeXY9xrIdg b3zjZeJk6MRhU7cdv+q1JfPxmgXKrJ/51taimYJWH1b3saZXS4fEHhshPvbhZ5Sq 5PFd5XVPr+IkrvBKSfFT =5YMo -END PGP SIGNATURE- ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] Fwd: u-boot fails at Start.S in P2020
Hi , I am using a custom board(VPX Based P2020 board) and try to port latest uboot in it . The board is similar to xpedite550x board and the technical specification is shown below -Processor Freescale QorIQ P2020 processor Dual PowerPC e500v2 cores at up to 1.2 GHz 512 kB of shared L2 cache -Memory 1 GB of DDR3-600 SDRAM 128 MB of NOR flash (16-bit) Through Codewarroier Emulator Tool, We checked the DDR,FLASH,Uart console and its working fine without any issue. when we port the latest u-boot (u-boot-2012.07), it fails at _start_cont (start.S) and cannot get serial console .We took reference of xpedite550x board file and made similar changes to our customized board file. We even installed a patch in start.s file with reference to this website http://patchwork.ozlabs.org/patch/172742/ but still the problem persist. Please clear the following issues 1. first start.S failed at Terminate call chain line so only we applied above patch for stack pointer alignment.. Is the patch need to be applied ? 2. After applying the patch , start.S fails at initial entry to cpu_early_init_f. Is there any stack problem Because of this we are not getting any characters in COM console. But we probed the flash CS while poweron boot , processor is keeping bunch of CS( confirms processor able to access flash) Attached objdump of our u-boot. In the dump it is failing at fff8004c fff8004c: 48 00 00 05 bl fff80050 _start_cont+0x20 fff80050: 7d 88 02 a6 mflrr12 Help us to solve the issue With regards, Vidya ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 5/7] disk: Allow alternate EFI partition signature
On Mon, Oct 15, 2012 at 8:19 AM, Stephen Warren swar...@wwwdotorg.orgwrote: On 10/12/2012 06:26 PM, Simon Glass wrote: From: Stefan Reinauer reina...@chromium.org ChromeOS uses a GPT partition table to partition the disk. However, Windows will refuse to install on a GPT partitioned disk if there is no EFI available (Even if there is an MBR, too) To hide the GPT partition table from Windows, we need to write it with a header magic other than EFI PART. To support old and new systems, Check for the magic string CHROMEOS too. Surely if you wanted to install Windows on a disk containing ChromeOS, you would just wipe the disk and re-partition it? I suppose perhaps you're talking about dual-boot though? Yes, this is only required if we're dual-booting on Windows and ChromeOS on the same disk. Either way, it doesn't see like a good idea to be using non-standard EFI signatures - especially if the idea is to hide the GPT from Windows, and presumably then have Windows use the MBR partitions, since that will end up with a decidedly non-standard partition setup; some partitions will only be represented in the MBR (those Windows creates) and some in GPT (presumably whatever ChromeOS created before). Yes, you will have to create a hybrid partition setup to make this work. It is unfortunate that Windows enforces this and there is no real way around it. This is a workaround specific to ChromeOS machines, and should be fixed differently in the long run (e.g. by using Tiano Core as a payload instead of SeaBIOS for booting Windows) Stefan ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] README : Rename CONFIG_DRIVER_SMC91111 to CONFIG_SMC91111, CONFIG_DRIVER_LAN91C96 to CONFIG_LAN91C96
On Mon, Oct 15, 2012 at 09:50:47PM +0530, Ashok Kumar Reddy wrote: Rename CONFIG_DRIVER_SMC9 to CONFIG_SMC9, CONFIG_DRIVER_LAN91C96 to CONFIG_LAN91C96 Signed-off-by: Ashok Kumar Reddy ashokkourla2...@gmail.com This is fine, they were missed in the conversion of the variables that happened in 2009. Reviewed-by: Tom Rini tr...@ti.com -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v1] ARM : Remove unused CONFIG_DRIVER_SMC91111, CONFIG_DRIVER_LAN91C96
On Mon, Oct 15, 2012 at 10:30:14PM +0530, Ashok Kumar Reddy wrote: Remove unused CONFIG_DRIVER_SMC9,CONFIG_DRIVER_LAN91C96, if required implement smc_set_mac_addr() in board init. Signed-off-by: Ashok Kumar Reddy ashokkourla2...@gmail.com --- Changes from v1: - Fixed typo Note that you should change the subject to say 'v2' now. You don't need to resend, just please keep this in mind for future patches. Acked-by: Tom Rini tr...@ti.com -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH V3 2/4] FAT: make use of disk_partition_t.part
On Monday 15 of October 2012 10:40:25 Stephen Warren wrote: On 10/13/2012 01:38 PM, Pavel Herrmann wrote: Hi On Wednesday 10 October 2012 12:14:00 Stephen Warren wrote: From: Stephen Warren swar...@nvidia.com This removes the standalone cur_part_nr variable, opening the way to replacing fat_register_device() with fat_set_blk_dev(). Note that when get_partition_info() fails and we use the entire disk, the correct partition number is 0 (whole disk) not 1 (first partition), so that change is also made here. An alternative to this (and the previous) patch might be to simply remove the partition number from the printf(). I don't know how attached people are to it. Signed-off-by: Stephen Warren swar...@nvidia.com Just as a heads up, in the DM any difference between a partition and a whole block device (also between different interfaces for disks) is hidden from any user code (code other than the one keeping track of partitions/disks, that only uses such information to determine whether to scan for partitions), you only get some object that can read/write blocks if you ask it nicely, and you have to make do with that (if you need more then you're probably doing something wrong). As a result, there is no notion of partition number, and the string you are patching up here (along with many others, due to unification of disk interfaces) is changed. OK, so do you think it'd be better right now to drop patches 1 and 2 in this series, and just remove the partition number from fat.c's printf() call? That'd certainly be simple to do. Well, in my case I have done a broader abstraction, that could be used for non-continuous partitions as well (think LVM) with minimal effort (think extend identifier structure used for searching to more than interface:number:partnumber, no changes in FS code), and partition number loses any meaning in that context. Whether dropping the number now is an acceptable change would be up to Tom Rini, I would vote for it though, if that meant anything around here. Pavel Herrmann ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] Add support for eco5-pk ARM board
On Mon, Jul 16, 2012 at 09:31:36AM -, Raphael Assenat wrote: This patch adds support for the 8D Technologies ECO5-PK board which is based on the TI AM3505 ARM SOC. Signed-off-by: Raphael Assenat r...@8d.com Sorry for the late reply, please add a MAINTAINERS entry. -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH V6] [RESEND] ARM: prevent misaligned array inits
On Tue, Oct 09, 2012 at 09:28:15PM +0200, Albert ARIBAUD wrote: Under option -munaligned-access, gcc can perform local char or 16-bit array initializations using misaligned native accesses which will throw a data abort exception. Fix files where these array initializations were unneeded, and for files known to contain such initializations, enforce gcc option -mno-unaligned-access. Signed-off-by: Albert ARIBAUD albert.u.b...@aribaud.net --- V6: Make sure that gcc does not silently drop -mno-unaligned-access if it does not support it. OK, you were correct. We need to use cc-option since older compilers which were not causing issues don't support it either, making this workable. I will just fix this in-line rather than make you do a v7. -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [STATUS] v2012.10 released, Merge Window is OPEN
Dear Tom, In message 20121015153045.GA25082@bill-the-cat you wrote: U-Boot v2012.10 has been released and uploaded to git. I expect to see it on the ftp server soon. Done. I don't have Wolfgang's stats tools, so I hope he is able to reply to this message with that kind of information soon. In lieu of that, looking over the git log I see: Here is the usual statistics (see also [1]): Changes since release v2012.07: Processed 925 csets from 135 developers 22 employers found A total of 88011 lines added, 36373 removed (delta 51638) Developers with the most changesets Benoît Thébaudeau 69 (7.5%) Tom Rini66 (7.1%) Marek Vasut 51 (5.5%) Troy Kisky 31 (3.4%) Joe Hershberger 30 (3.2%) Nobuhiro Iwamatsu 30 (3.2%) Stephen Warren 28 (3.0%) Michal Simek27 (2.9%) Otavio Salvador 26 (2.8%) Stefano Babic 20 (2.2%) ... Developers with the most changed lines Charles Manning 13828 (13.8%) Nobuhiro Iwamatsu 9443 (9.4%) Uma Shankar 5463 (5.4%) Jorgen Lundman4750 (4.7%) Lei Wen 3816 (3.8%) Donghwa Lee 3597 (3.6%) Marek Vasut 3186 (3.2%) Wolfgang Denk 3185 (3.2%) Rajeshwari Shinde 2433 (2.4%) Mathieu J. Poirier2179 (2.2%) ... Developers with the most lines removed Wolfgang Denk 2612 (7.2%) Timur Tabi1845 (5.1%) Rob Herring 1394 (3.8%) Mike Frysinger 338 (0.9%) Marek Vasut129 (0.4%) Fabio Estevam 90 (0.2%) Matt Sealey 53 (0.1%) Linus Walleij 45 (0.1%) Kaspter Ju 29 (0.1%) Vikram Narayanan14 (0.0%) ... Developers with the most signoffs (total 369) Andy Fleming70 (19.0%) Tom Warren 31 (8.4%) Kyungmin Park 28 (7.6%) Andreas Bießmann27 (7.3%) Minkyu Kang 24 (6.5%) Tom Rini21 (5.7%) Scott Wood 18 (4.9%) Nobuhiro Iwamatsu 15 (4.1%) John Rigby 10 (2.7%) Mike Frysinger 9 (2.4%) ... Developers with the most reviews (total 15) Marek Vasut 14 (93.3%) Matthew Gerlach 1 (6.7%) Developers with the most test credits (total 51) Thierry Reding 14 (27.5%) Christian Riesch12 (23.5%) Fabio Estevam3 (5.9%) Michal Simek 2 (3.9%) Albert ARIBAUD 2 (3.9%) Sughosh Ganu 2 (3.9%) Stefano Babic2 (3.9%) Allen Martin 2 (3.9%) Andreas Bießmann 1 (2.0%) Tom Rini 1 (2.0%) ... Developers who gave the most tested-by credits (total 51) Allen Martin14 (27.5%) Prabhakar Lad7 (13.7%) Mikhail Kshevetskiy 4 (7.8%) Tom Rini 3 (5.9%) Luka Perkov 3 (5.9%) Stefano Babic2 (3.9%) Marek Vasut 2 (3.9%) Rajashekhara, Sudhakar 2 (3.9%) Stefan Roese 2 (3.9%) Anatolij Gustschin 2 (3.9%) ... Developers with the most report credits (total 8) Albert ARIBAUD 3 (37.5%) Prabhakar Lad2 (25.0%) Igor Grinberg1 (12.5%) Rafael Beims 1 (12.5%) James Miller 1 (12.5%) Developers who gave the most report credits (total 8) Nobuhiro Iwamatsu2 (25.0%) Stephen Warren 2 (25.0%) Marek Vasut 1 (12.5%) Anatolij Gustschin 1 (12.5%) Matthieu CASTET 1 (12.5%) Joe Hershberger 1 (12.5%) Top changeset contributors by employer (Unknown) 392 (42.4%) Freescale 92 (9.9%) DENX Software Engineering 92 (9.9%) Texas Instruments 83 (9.0%) Samsung 49 (5.3%) NVidia 46 (5.0%) Renesas Technology 37 (4.0%) Boundary Devices33 (3.6%) Keymile 32 (3.5%) Atmel 19 (2.1%) ... Top lines changed by employer (Unknown) 43590 (43.3%) Samsung 13459 (13.4%) DENX Software Engineering 12210 (12.1%) Renesas Technology10389 (10.3%) Freescale 6846 (6.8%) Texas Instruments 3515 (3.5%) NVidia 3482 (3.5%) Atmel 2053 (2.0%) Keymile1451 (1.4%) Boundary Devices 1178 (1.2%) ... Employers with the most signoffs (total 369) Freescale 104 (28.2%) Samsung 72 (19.5%) (Unknown) 65 (17.6%) Texas Instruments 41 (11.1%) NVidia 31 (8.4%) Nobuhiro Iwamatsu 14 (3.8%) DENX Software Engineering 11 (3.0%) Analog Devices 9 (2.4%)
Re: [U-Boot] U-Boot git usage model
Dear Stephen Warren, In message 507c3aa4.6050...@wwwdotorg.org you wrote: Irrespective of the documentation (which I obviously read the way I describe anyway...), the kernel practice is that everyone who writes or commits a patch adds their S-o-b line, and everyone who simply merges a I'm aware of this. branch from someone else checks that the provider of the branch added their S-o-b to patches they applied (rather than merged themselves) but does not add their own S-o-b (because it's impossible). Is such checking really taking place? Are there any tools to support this? I have often wondered why the merge commits themselves were not signed off by the person performing the merge (which would then logically cover all the commits that got merged). I haven't investigated to find out why though. Doing so would seem to solve your objection about merges. I'm not only concerned about merges from custodian (or maintainer's, in Linux terminology) trees. For me it also seems reasonable to pull from any other repository instead of using git-am or similar to apply patches from a mailbox file. Herer I also have no way to add any new SoBs. 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: can't find / ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [STATUS] v2012.10 released, Merge Window is OPEN
Dear Stefano Babic, In message 507c3b70.4060...@denx.de you wrote: Hopefully I do nid run Jonathan Corbet's gitdm in a wrong way (git log -p -M v2012.07..v2012.10 | gitdm -u -s -a -o /tmp/results -h /tmp/results.html) Processed 925 csets from 135 developers 14 employers found A total of 88011 lines added, 36373 removed (delta 51638) Basicly this is what I'm doing as well, except that I have a custom configuration which knows about a few more employers, so I get instead: Processed 925 csets from 135 developers 22 employers found A total of 88011 lines added, 36373 removed (delta 51638) All the rest should be the same. 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 Die meisten Menschen pflegen im Kindesalter vom Zeigen auf Gegenstän- de (Mausbewegung) und ga sagen (Mausklick) abzukommen, zugunsten eines mächtigeren und langwierig zu erlernenden Tools (Sprache). -- Achim Linder in de.comp.os.linux.misc ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] U-Boot git usage model
Dear Tom Rini, In message 507c4e37.8000...@ti.com you wrote: I will not claim the kernel practice to be 100% consistent, but yes. git am --signoff, git pull/merge and no -s in merge commits seems to be the practice. Perhaps we should stop saying we follow the kernel process, link to it as useful background, but then document what we actually want / do which is only require new S-O-B on code modification, and allow custodians to add their own they want for tracking or otherwise ease of not having to remember a different workflow for kernel vs U-Boot? I'm fine with that. We could (should?) also ask the Linux PTBs about their opinion on this (and the observed inconsistency). 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 Infidels in all ages have battled for the rights of man, and have at all times been the fearless advocates of liberty and justice. - Robert Green Ingersoll ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] USB Host driver for ISP1362?
Dear Steve Strobel, In message CAGrmWbzCR=2sfmj56b45fnju78dkefq+9-lpnh09bxgkwvv...@mail.gmail.com you wrote: I am working on a embedded board that uses a BF537 (Blackfin) and ISP1362 USB controller. I want to access a USB flash drive from U-Boot. But I haven't been able to find the drivers for the ISP1362. I have found two other U-Boot target platforms that at least reference the ISP1362: In include/configs/NSCU.h, I found this: #define CONFIG_ISP1362_USB /* ISP1362 USB OTG controller */ ... The first of those certainly appears to be setting up a driver for the ISP1362, but I haven't been able to find that driver. Any pointers would be greatly appreciated. IIRC these boards use only the host mode of the ISP1362, and this is using just the normal EHCI driver. Best regards, Wolfgang Denk -- DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de Time is a drug. Too much of it kills you. - Terry Pratchett, _Small Gods_ ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [STATUS] v2012.10 released, Merge Window is OPEN
Hi Wolfgang, On Mon, Oct 15, 2012 at 1:57 PM, Wolfgang Denk w...@denx.de wrote: Dear Stefano Babic, In message 507c3b70.4060...@denx.de you wrote: Hopefully I do nid run Jonathan Corbet's gitdm in a wrong way (git log -p -M v2012.07..v2012.10 | gitdm -u -s -a -o /tmp/results -h /tmp/results.html) Processed 925 csets from 135 developers 14 employers found A total of 88011 lines added, 36373 removed (delta 51638) Basicly this is what I'm doing as well, except that I have a custom configuration which knows about a few more employers, so I get instead: Processed 925 csets from 135 developers 22 employers found A total of 88011 lines added, 36373 removed (delta 51638) Can you also add National Instruments (ni.com) to your list of employers? Thanks, -Joe ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [STATUS] v2012.10 released, Merge Window is OPEN
On Mon, Oct 15, 2012 at 4:18 PM, Joe Hershberger joe.hershber...@gmail.com wrote: Hi Wolfgang, Can you also add National Instruments (ni.com) to your list of employers? Please add O.S. Systems (ossystems.com.br) too. -- Otavio Salvador O.S. Systems E-mail: ota...@ossystems.com.br http://www.ossystems.com.br Mobile: +55 53 9981-7854 http://projetos.ossystems.com.br ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [STATUS] v2012.10 released, Merge Window is OPEN
Dear Wolfgang Denk, On Monday, October 15, 2012 9:28:13 PM, Otavio Salvador wrote: On Mon, Oct 15, 2012 at 4:18 PM, Joe Hershberger joe.hershber...@gmail.com wrote: Hi Wolfgang, Can you also add National Instruments (ni.com) to your list of employers? Please add O.S. Systems (ossystems.com.br) too. Please add ADVANSEE (advansee.com) too. Best regards, Benoît ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v2] patman: force git log commands to not use color
Colored logs confuse patman when analyzing logs. Add --no-color option in git log commands in case the default config has color. Signed-off-by: Albert ARIBAUD albert.u.b...@aribaud.net --- Changes in v2: - fixed line longer than 80 characters tools/patman/gitutil.py |2 +- tools/patman/patchstream.py |3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/tools/patman/gitutil.py b/tools/patman/gitutil.py index 59eca99..72d37a0 100644 --- a/tools/patman/gitutil.py +++ b/tools/patman/gitutil.py @@ -38,7 +38,7 @@ def CountCommitsToBranch(): Return: Number of patches that exist on top of the branch -pipe = [['git', 'log', '--oneline', '@{upstream}..'], +pipe = [['git', 'log', '--no-color', '--oneline', '@{upstream}..'], ['wc', '-l']] stdout = command.RunPipe(pipe, capture=True, oneline=True) patch_count = int(stdout) diff --git a/tools/patman/patchstream.py b/tools/patman/patchstream.py index 0503bac..ad280cc 100644 --- a/tools/patman/patchstream.py +++ b/tools/patman/patchstream.py @@ -344,7 +344,8 @@ def GetMetaData(start, count): start: Commit to start from: 0=HEAD, 1=next one, etc. count: Number of commits to list -pipe = [['git', 'log', '--reverse', 'HEAD~%d' % start, '-n%d' % count]] +pipe = [['git', 'log', '--no-color', '--reverse', 'HEAD~%d' % start, + '-n%d' % count]] stdout = command.RunPipe(pipe, capture=True) series = Series() ps = PatchStream(series, is_log=True) -- 1.7.9.5 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] patman: force git log commands to not use color
Hi Simon, On Mon, 15 Oct 2012 10:20:59 -0700, Simon Glass s...@chromium.org wrote: Hi Albert, On Sun, Oct 14, 2012 at 10:47 PM, Albert ARIBAUD albert.u.b...@aribaud.net wrote: Colored logs confuse patman when analyzing logs. Add --no-color option in git log commands in case the default config has color. Signed-off-by: Albert ARIBAUD albert.u.b...@aribaud.net --- tools/patman/gitutil.py |2 +- tools/patman/patchstream.py |2 +- 2 files changed, 2 insertions(+), 2 deletions(-) Thanks for the patch, it's good to find this problem. diff --git a/tools/patman/gitutil.py b/tools/patman/gitutil.py index 59eca99..72d37a0 100644 --- a/tools/patman/gitutil.py +++ b/tools/patman/gitutil.py @@ -38,7 +38,7 @@ def CountCommitsToBranch(): Return: Number of patches that exist on top of the branch -pipe = [['git', 'log', '--oneline', '@{upstream}..'], +pipe = [['git', 'log', '--no-color', '--oneline', '@{upstream}..'], ['wc', '-l']] stdout = command.RunPipe(pipe, capture=True, oneline=True) patch_count = int(stdout) diff --git a/tools/patman/patchstream.py b/tools/patman/patchstream.py index 0503bac..4314537 100644 --- a/tools/patman/patchstream.py +++ b/tools/patman/patchstream.py @@ -344,7 +344,7 @@ def GetMetaData(start, count): start: Commit to start from: 0=HEAD, 1=next one, etc. count: Number of commits to list -pipe = [['git', 'log', '--reverse', 'HEAD~%d' % start, '-n%d' % count]] +pipe = [['git', 'log', '--no-color', '--reverse', 'HEAD~%d' % start, '-n%d' % count]] The functionality is good, but can I ask for 80 columns on this one please? Done. :) stdout = command.RunPipe(pipe, capture=True) series = Series() ps = PatchStream(series, is_log=True) -- 1.7.9.5 Regards, Simon Amicalement, -- Albert. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [STATUS] v2012.10 released, Merge Window is OPEN
Hi all, On Mon, 15 Oct 2012 08:30:45 -0700, Tom Rini tr...@ti.com wrote: Hey all, U-Boot v2012.10 has been released and uploaded to git. I expect to see it on the ftp server soon. The merge window is now open until November 3rd and the next release, v2013.01 is scheduled for release on January 15th 2013. I don't have Wolfgang's stats tools, so I hope he is able to reply to this message with that kind of information soon. In lieu of that, looking over the git log I see: - Lots of cleanups everywhere - ZFS, ext4 support has been added - Improved support for a number of platforms on almost all arches that we support. Finally, if you look around, your favorite community-oriented development board just might be supported now (I count at least 3 being added). Thanks for all of your hard work everyone! All: note that I have fast-forwarded arm/master onto current u-boot/master for the moment. When u-boot/next becomes master, I will ff again. Then I will take pull any requests in. Amicalement, -- Albert. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v2] patman: force git log commands to not use color
On Mon, Oct 15, 2012 at 12:55 PM, Albert ARIBAUD albert.u.b...@aribaud.net wrote: Colored logs confuse patman when analyzing logs. Add --no-color option in git log commands in case the default config has color. Signed-off-by: Albert ARIBAUD albert.u.b...@aribaud.net Acked-by: Simon Glass s...@chromium.org Thanks for the fix. --- Changes in v2: - fixed line longer than 80 characters tools/patman/gitutil.py |2 +- tools/patman/patchstream.py |3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/tools/patman/gitutil.py b/tools/patman/gitutil.py index 59eca99..72d37a0 100644 --- a/tools/patman/gitutil.py +++ b/tools/patman/gitutil.py @@ -38,7 +38,7 @@ def CountCommitsToBranch(): Return: Number of patches that exist on top of the branch -pipe = [['git', 'log', '--oneline', '@{upstream}..'], +pipe = [['git', 'log', '--no-color', '--oneline', '@{upstream}..'], ['wc', '-l']] stdout = command.RunPipe(pipe, capture=True, oneline=True) patch_count = int(stdout) diff --git a/tools/patman/patchstream.py b/tools/patman/patchstream.py index 0503bac..ad280cc 100644 --- a/tools/patman/patchstream.py +++ b/tools/patman/patchstream.py @@ -344,7 +344,8 @@ def GetMetaData(start, count): start: Commit to start from: 0=HEAD, 1=next one, etc. count: Number of commits to list -pipe = [['git', 'log', '--reverse', 'HEAD~%d' % start, '-n%d' % count]] +pipe = [['git', 'log', '--no-color', '--reverse', 'HEAD~%d' % start, + '-n%d' % count]] stdout = command.RunPipe(pipe, capture=True) series = Series() ps = PatchStream(series, is_log=True) -- 1.7.9.5 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v2] tegra: nand: make ONFI detection work
On 10/14/2012 10:32:52 AM, Lucas Stach wrote: Scott, can I have your Acked-by for this, so Tom can take it through the Tegra tree? Thanks, Lucas Am Sonntag, den 07.10.2012, 23:29 +0200 schrieb Lucas Stach: Add the missing bits to the Tegra NAND driver to make ONFI detection work properly. Also add it to the Tegra default config, as it seems to be a reasonable thing to have it available on all boards that use any kind of NAND. Signed-off-by: Lucas Stach d...@lynxeye.de --- v2: use puts instead of printf --- drivers/mtd/nand/tegra_nand.c| 36 include/configs/tegra20-common.h | 1 + 2 Dateien geändert, 37 Zeilen hinzugefügt(+) Acked-by: Scott Wood scottw...@freescale.com -Scott ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 1/2] mmc: pxa: Flip over the remaining boards to pxa_mmc_generic
On Sun, Sep 30, 2012 at 3:09 PM, Marek Vasut ma...@denx.de wrote: Some of the boards still used the old PXA_MMC driver instead of the new generic one. Use the new one instead so the old can be removed and the generic MMC framework can be properly used. Signed-off-by: Marek Vasut ma...@denx.de Cc: Andy Fleming aflem...@freescale.com --- board/lubbock/lubbock.c |9 + board/palmtc/palmtc.c|9 + board/pxa255_idp/pxa_idp.c |9 + board/trizepsiv/conxs.c |9 + include/configs/lubbock.h|3 ++- include/configs/palmtc.h |3 ++- include/configs/pxa255_idp.h |3 ++- include/configs/trizepsiv.h |3 ++- 8 files changed, 44 insertions(+), 4 deletions(-) diff --git a/board/lubbock/lubbock.c b/board/lubbock/lubbock.c index 3527b38..ef2cc24 100644 --- a/board/lubbock/lubbock.c +++ b/board/lubbock/lubbock.c @@ -29,6 +29,7 @@ #include netdev.h #include asm/arch/pxa.h #include asm/arch/pxa-regs.h +#include asm/arch/regs-mmc.h #include asm/io.h DECLARE_GLOBAL_DATA_PTR; @@ -56,6 +57,14 @@ int board_init (void) return 0; } +#ifdef CONFIG_CMD_MMC Do we want to use CONFIG_CMD_MMC for this? That technically just means that the mmc *command* exists, but there are other reasons to enable the MMC driver (such as storing the environment or other behind-the-scenes mmc uses). It looks like this was done a handful of other places. I'm thinking we should use CONFIG_MMC, instead. If you update your patch, I'll submit a patch which fixes the others. Andy ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 1/2] mmc: pxa: Flip over the remaining boards to pxa_mmc_generic
Dear Andy Fleming, On Sun, Sep 30, 2012 at 3:09 PM, Marek Vasut ma...@denx.de wrote: Some of the boards still used the old PXA_MMC driver instead of the new generic one. Use the new one instead so the old can be removed and the generic MMC framework can be properly used. Signed-off-by: Marek Vasut ma...@denx.de Cc: Andy Fleming aflem...@freescale.com --- board/lubbock/lubbock.c |9 + board/palmtc/palmtc.c|9 + board/pxa255_idp/pxa_idp.c |9 + board/trizepsiv/conxs.c |9 + include/configs/lubbock.h|3 ++- include/configs/palmtc.h |3 ++- include/configs/pxa255_idp.h |3 ++- include/configs/trizepsiv.h |3 ++- 8 files changed, 44 insertions(+), 4 deletions(-) diff --git a/board/lubbock/lubbock.c b/board/lubbock/lubbock.c index 3527b38..ef2cc24 100644 --- a/board/lubbock/lubbock.c +++ b/board/lubbock/lubbock.c @@ -29,6 +29,7 @@ #include netdev.h #include asm/arch/pxa.h #include asm/arch/pxa-regs.h +#include asm/arch/regs-mmc.h #include asm/io.h DECLARE_GLOBAL_DATA_PTR; @@ -56,6 +57,14 @@ int board_init (void) return 0; } +#ifdef CONFIG_CMD_MMC Do we want to use CONFIG_CMD_MMC for this? No we don't ... but that's what other boards do use, so ... That technically just means that the mmc *command* exists, but there are other reasons to enable the MMC driver (such as storing the environment or other behind-the-scenes mmc uses). Agreed. It looks like this was done a handful of other places. I'm thinking we should use CONFIG_MMC, instead. If you update your patch, I'll submit a patch which fixes the others. Can you just apply this and then fix them all please? Andy Best regards, Marek Vasut ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [STATUS] v2012.10 released, Merge Window is OPEN
Dear Joe Hershberger, In message CANr=Z=ZGdbyHk=8Zjw6Gdi_BY6Ho2=Otq=_-xker3jbebvx...@mail.gmail.com you wrote: Processed 925 csets from 135 developers 22 employers found A total of 88011 lines added, 36373 removed (delta 51638) Can you also add National Instruments (ni.com) to your list of employers? Sure I can. This makes it: Processed 925 csets from 135 developers 23 employers found A total of 88011 lines added, 36373 removed (delta 51638) I think I wait a day or two for more such updates, and then will update the statistics page. OK? 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 one who says it cannot be done should never interrupt the one who is doing it. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [STATUS] v2012.10 released, Merge Window is OPEN
Dear Otavio Salvador, In message CAP9ODKo4y2U0pm4QZjy9ynD0_Hc0ieYUAxwKo6cgF=zwijc...@mail.gmail.com you wrote: Can you also add National Instruments (ni.com) to your list of employers? Please add O.S. Systems (ossystems.com.br) too. Done: 24 employers found 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 complexity of software is an essential property, not an acciden- tal one. Hence, descriptions of a software entity that abstract away its complexity often abstract away its essence.- Fred Brooks, Jr. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [STATUS] v2012.10 released, Merge Window is OPEN
Dear Benoît Thébaudeau, In message 950821917.6855188.1350329929641.javamail.r...@advansee.com you wrote: Can you also add National Instruments (ni.com) to your list of employers? Please add O.S. Systems (ossystems.com.br) too. Please add ADVANSEE (advansee.com) too. Done: 25 employers found Any others? 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 How does a project get to be a year late? ... One day at a time. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] U-Boot git usage model
On 10/15/2012 12:55 PM, Wolfgang Denk wrote: Dear Stephen Warren, In message 507c3aa4.6050...@wwwdotorg.org you wrote: Irrespective of the documentation (which I obviously read the way I describe anyway...), the kernel practice is that everyone who writes or commits a patch adds their S-o-b line, and everyone who simply merges a I'm aware of this. branch from someone else checks that the provider of the branch added their S-o-b to patches they applied (rather than merged themselves) but does not add their own S-o-b (because it's impossible). Is such checking really taking place? Are there any tools to support this? I've certainly seen people give feedback on patches that the appropriate S-o-b lines aren't present. I don't recall if I've explicitly seen anyone called out for not doing this during a merge (which most likely means there was never an issue, not that people weren't checking), so I can't say for 100% certain that everyone is doing this, but they certainly should be. git log is probably what I would use to validate this. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] arm: arm925t: remove SX1 board
SX1 does not build properly by itself, is not built as part of MAKEALL arm or MAKEALL -a arm, and is only present in Makefile, not boards.cfg. As it also has no entry in MAINTAINERS, it is orphan and non-functional. Remove it. Signed-off-by: Albert ARIBAUD albert.u.b...@aribaud.net --- Makefile | 14 -- board/sx1/Makefile| 45 - board/sx1/config.mk | 19 --- board/sx1/lowlevel_init.S | 397 - board/sx1/sx1.c | 123 -- include/configs/SX1.h | 189 - 6 files changed, 787 deletions(-) delete mode 100644 board/sx1/Makefile delete mode 100644 board/sx1/config.mk delete mode 100644 board/sx1/lowlevel_init.S delete mode 100644 board/sx1/sx1.c delete mode 100644 include/configs/SX1.h diff --git a/Makefile b/Makefile index 09456e0..a3b44c9 100644 --- a/Makefile +++ b/Makefile @@ -725,20 +725,6 @@ $(obj).boards.depend: boards.cfg lcname = $(shell echo $(1) | sed -e 's/\(.*\)_config/\L\1/') ucname = $(shell echo $(1) | sed -e 's/\(.*\)_config/\U\1/') -# -# ARM -# - -SX1_stdout_serial_config \ -SX1_config:unconfig - @mkdir -p $(obj)include - @if [ $(findstring _stdout_serial_, $@) ] ; then \ - echo #undef CONFIG_STDOUT_USBTTY $(obj)include/config.h ; \ - else \ - echo #define CONFIG_STDOUT_USBTTY $(obj)include/config.h ; \ - fi; - @$(MKCONFIG) -n $@ SX1 arm arm925t sx1 - # ## ARM1176 Systems # diff --git a/board/sx1/Makefile b/board/sx1/Makefile deleted file mode 100644 index 292459f..000 --- a/board/sx1/Makefile +++ /dev/null @@ -1,45 +0,0 @@ -# -# (C) Copyright 2004-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$(BOARD).o - -COBJS := sx1.o -SOBJS := lowlevel_init.o - -SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c) -OBJS := $(addprefix $(obj),$(COBJS)) -SOBJS := $(addprefix $(obj),$(SOBJS)) - -$(LIB):$(obj).depend $(OBJS) $(SOBJS) - $(call cmd_link_o_target, $(OBJS) $(SOBJS)) - -# - -# defines $(obj).depend target -include $(SRCTREE)/rules.mk - -sinclude $(obj).depend - -# diff --git a/board/sx1/config.mk b/board/sx1/config.mk deleted file mode 100644 index 441bea2..000 --- a/board/sx1/config.mk +++ /dev/null @@ -1,19 +0,0 @@ -# -# (C) Copyright 2004 -# Wolfgang Denk, DENX Software Engineering, w...@denx.de -# -# SX1 board with OMAP1510 (ARM925T) cpu -# see http://www.ti.com/ for more information on Texas Insturments -# -# SX1 has 1 bank of 256 MB SDRAM -# Physical Address: -# 1000' to 2000' -# -# -# Linux-Kernel is expected to be at 1000'8000, entry 1000'8000 (mem base + reserved) -# -# we load ourself to 1108' -# -# - -CONFIG_SYS_TEXT_BASE = 0x1108 diff --git a/board/sx1/lowlevel_init.S b/board/sx1/lowlevel_init.S deleted file mode 100644 index c1a811a..000 --- a/board/sx1/lowlevel_init.S +++ /dev/null @@ -1,397 +0,0 @@ -/* - * Board specific setup info - * - * (C) Copyright 2003 - * Texas Instruments, www.ti.com - * - * -- Some bits of code used from rrload's head_OMAP1510.s -- - * Copyright (C) 2002 RidgeRun, Inc. - * - * 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
Re: [U-Boot] [PATCH] arm: arm925t: remove SX1 board
Hi Albert, On Mon, 15 Oct 2012 23:53:03 +0200 Albert ARIBAUD albert.u.b...@aribaud.net wrote: SX1 does not build properly by itself, is not built as part of MAKEALL arm or MAKEALL -a arm, and is only present in Makefile, not boards.cfg. As it also has no entry in MAINTAINERS, it is orphan and non-functional. Remove it. Signed-off-by: Albert ARIBAUD albert.u.b...@aribaud.net --- Makefile | 14 -- board/sx1/Makefile| 45 - board/sx1/config.mk | 19 --- board/sx1/lowlevel_init.S | 397 - board/sx1/sx1.c | 123 -- include/configs/SX1.h | 189 - I think this patch also should add an entry about this removed board to doc/README.scrapyard. Thanks, Anatolij ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] arm: arm925t: remove SX1 board
Hi Anatolij, On Tue, 16 Oct 2012 00:00:12 +0200, Anatolij Gustschin ag...@denx.de wrote: Hi Albert, On Mon, 15 Oct 2012 23:53:03 +0200 Albert ARIBAUD albert.u.b...@aribaud.net wrote: SX1 does not build properly by itself, is not built as part of MAKEALL arm or MAKEALL -a arm, and is only present in Makefile, not boards.cfg. As it also has no entry in MAINTAINERS, it is orphan and non-functional. Remove it. Signed-off-by: Albert ARIBAUD albert.u.b...@aribaud.net --- Makefile | 14 -- board/sx1/Makefile| 45 - board/sx1/config.mk | 19 --- board/sx1/lowlevel_init.S | 397 - board/sx1/sx1.c | 123 -- include/configs/SX1.h | 189 - I think this patch also should add an entry about this removed board to doc/README.scrapyard. Thanks for pointing this out. Will be in V2. Thanks, Anatolij Amicalement, -- Albert. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [STATUS] next moved into master
Subject says it all. -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] Pull request: u-boot-staging/next
On Thu, Oct 11, 2012 at 09:34:47PM +0200, Anatolij Gustschin wrote: Hi Tom, The following changes since commit 221953d41dea8dce027b9ce6beee700d97ac2c83: Prepare v2012.10-rc2 (2012-10-01 09:41:10 -0700) are available in the git repository at: git://git.denx.de/u-boot-staging.git ag...@denx.de-next Simon Glass (6): bootstage: Export bootstage_add_record() function bootstage: Add time accumulation feature bootstage: Store boot timings in device tree bootstage: Add feature to stash/unstash bootstage info bootstage: Add bootstage command bootstage: Add new bootstage IDs for board, LCD README | 25 arch/arm/lib/bootm.c |3 + common/Makefile|1 + common/bootstage.c | 306 +--- common/cmd_bootstage.c | 116 ++ include/bootstage.h| 85 + 6 files changed, 517 insertions(+), 19 deletions(-) create mode 100644 common/cmd_bootstage.c Please pull. Thanks! Pulled to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] tools/env: Fix build failure from missing header include
On Fri, Oct 12, 2012 at 10:23:37AM -, Joe Hershberger wrote: This was introduced in: 8679d0ffdcc0beafea8e6942c0c67cf859afa18e - COMMON: Use __stringify() instead of MK_STR() The header is now needed since common.h is not included in this tool. Signed-off-by: Joe Hershberger joe.hershber...@ni.com Applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] config.mk:Update DBGFLAGS with dwarf information
On Tue, Feb 14, 2012 at 10:55:31PM -, Prabhakar Kushwaha wrote: Built u-boot elf file does not contain any dwarf informations by default. This information is required for debugging. Add dwarf ver 2 flag in DBGFLAGS. Signed-off-by: Radu Lazarescu radu.lazare...@freescale.com Signed-off-by: Prabhakar Kushwaha prabha...@freescale.com For posterity, with any recent enough toolchain, this shouldn't be needed. -g picks the best available debug format and that will be DWARF v2 symbols (which gdb happily uses). -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v2] tegra: nand: make ONFI detection work
Lucas/Scott, -Original Message- From: Scott Wood [mailto:scottw...@freescale.com] Sent: Monday, October 15, 2012 1:06 PM To: Lucas Stach Cc: u-boot@lists.denx.de; Tom Warren Subject: Re: [U-Boot] [PATCH v2] tegra: nand: make ONFI detection work On 10/14/2012 10:32:52 AM, Lucas Stach wrote: Scott, can I have your Acked-by for this, so Tom can take it through the Tegra tree? Thanks, Lucas Am Sonntag, den 07.10.2012, 23:29 +0200 schrieb Lucas Stach: Add the missing bits to the Tegra NAND driver to make ONFI detection work properly. Also add it to the Tegra default config, as it seems to be a reasonable thing to have it available on all boards that use any kind of NAND. Signed-off-by: Lucas Stach d...@lynxeye.de --- v2: use puts instead of printf --- drivers/mtd/nand/tegra_nand.c| 36 include/configs/tegra20-common.h | 1 + 2 Dateien geändert, 37 Zeilen hinzugefügt(+) Acked-by: Scott Wood scottw...@freescale.com Applied to u-boot-tegra/next and pushed to denx.de. Tom -Scott -- nvpublic ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v2 1/5] mx25pdk: Include CONFIG_MX25
From: Fabio Estevam fabio.este...@freescale.com It is necessary to include CONFIG_MX25 as several i.mx drivers handle the SoC differences based on the this config option. Signed-off-by: Fabio Estevam fabio.este...@freescale.com --- Changes since v1: - No changes include/configs/mx25pdk.h |1 + 1 file changed, 1 insertion(+) diff --git a/include/configs/mx25pdk.h b/include/configs/mx25pdk.h index 96c143e..2087502 100644 --- a/include/configs/mx25pdk.h +++ b/include/configs/mx25pdk.h @@ -17,6 +17,7 @@ /* High Level Configuration Options */ +#define CONFIG_MX25 #define CONFIG_SYS_HZ 1000 #define CONFIG_SYS_TEXT_BASE 0x8120 -- 1.7.9.5 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v2 2/5] mx25pdk: Add esdhc support
From: Fabio Estevam fabio.este...@freescale.com mx25pdk has a SD/MMC slot connected to esdhc1. Add support for it and allow the environment variables to be saved into SD/MMC. Signed-off-by: Fabio Estevam fabio.este...@freescale.com --- Changes since v2: - Use esdhc_cfg[0].sdhc_clk board/freescale/mx25pdk/mx25pdk.c | 53 + include/configs/mx25pdk.h | 16 ++- 2 files changed, 68 insertions(+), 1 deletion(-) diff --git a/board/freescale/mx25pdk/mx25pdk.c b/board/freescale/mx25pdk/mx25pdk.c index 4a8352f..5f7c982 100644 --- a/board/freescale/mx25pdk/mx25pdk.c +++ b/board/freescale/mx25pdk/mx25pdk.c @@ -19,12 +19,24 @@ #include common.h #include asm/io.h +#include asm/gpio.h #include asm/arch/imx-regs.h #include asm/arch/imx25-pinmux.h #include asm/arch/sys_proto.h +#include asm/arch/clock.h +#include mmc.h +#include fsl_esdhc.h + +#define CARD_DETECTIMX_GPIO_NR(2, 1) DECLARE_GLOBAL_DATA_PTR; +#ifdef CONFIG_FSL_ESDHC +struct fsl_esdhc_cfg esdhc_cfg[1] = { + {IMX_MMC_SDHC1_BASE}, +}; +#endif + int dram_init(void) { /* dram_init must store complete ramsize in gd-ram_size */ @@ -48,6 +60,47 @@ int board_init(void) return 0; } +#ifdef CONFIG_FSL_ESDHC +int board_mmc_getcd(struct mmc *mmc) +{ + struct iomuxc_mux_ctl *muxctl; + struct iomuxc_pad_ctl *padctl; + u32 gpio_mux_mode = MX25_PIN_MUX_MODE(5); + + /* +* Set up the Card Detect pin. +* +* SD1_GPIO_CD: gpio2_1 is ALT 5 mode of pin A15 +* +*/ + muxctl = (struct iomuxc_mux_ctl *)IMX_IOPADMUX_BASE; + padctl = (struct iomuxc_pad_ctl *)IMX_IOPADCTL_BASE; + + writel(gpio_mux_mode, muxctl-pad_a15); + writel(0x0, padctl-pad_a15); + + gpio_direction_input(CARD_DETECT); + return !gpio_get_value(CARD_DETECT); +} + +int board_mmc_init(bd_t *bis) +{ + struct iomuxc_mux_ctl *muxctl; + u32 sdhc1_mux_mode = MX25_PIN_MUX_MODE(0) | MX25_PIN_MUX_SION; + + muxctl = (struct iomuxc_mux_ctl *)IMX_IOPADMUX_BASE; + writel(sdhc1_mux_mode, muxctl-pad_sd1_cmd); + writel(sdhc1_mux_mode, muxctl-pad_sd1_clk); + writel(sdhc1_mux_mode, muxctl-pad_sd1_data0); + writel(sdhc1_mux_mode, muxctl-pad_sd1_data1); + writel(sdhc1_mux_mode, muxctl-pad_sd1_data2); + writel(sdhc1_mux_mode, muxctl-pad_sd1_data3); + + esdhc_cfg[0].sdhc_clk = mxc_get_clock(MXC_ESDHC1_CLK); + return fsl_esdhc_initialize(bis, esdhc_cfg[0]); +} +#endif + int checkboard(void) { puts(Board: MX25PDK\n); diff --git a/include/configs/mx25pdk.h b/include/configs/mx25pdk.h index 2087502..1770521 100644 --- a/include/configs/mx25pdk.h +++ b/include/configs/mx25pdk.h @@ -20,6 +20,7 @@ #define CONFIG_MX25 #define CONFIG_SYS_HZ 1000 #define CONFIG_SYS_TEXT_BASE 0x8120 +#define CONFIG_MXC_GPIO #define CONFIG_DISPLAY_CPUINFO #define CONFIG_DISPLAY_BOARDINFO @@ -58,9 +59,10 @@ /* No NOR flash present */ #define CONFIG_ENV_OFFSET (6 * 64 * 1024) #define CONFIG_ENV_SIZE(8 * 1024) -#define CONFIG_ENV_IS_NOWHERE #define CONFIG_SYS_NO_FLASH +#define CONFIG_ENV_IS_IN_MMC +#define CONFIG_SYS_MMC_ENV_DEV 0 /* U-Boot general configuration */ #define CONFIG_SYS_PROMPT MX25PDK U-Boot @@ -78,6 +80,9 @@ /* U-Boot commands */ #include config_cmd_default.h #define CONFIG_CMD_CACHE +#define CONFIG_CMD_MMC +#define CONFIG_CMD_EXT2 +#define CONFIG_CMD_FAT /* Ethernet */ #define CONFIG_FEC_MXC @@ -86,6 +91,15 @@ #define CONFIG_CMD_NET #define CONFIG_ENV_OVERWRITE +/* ESDHC driver */ +#define CONFIG_MMC +#define CONFIG_GENERIC_MMC +#define CONFIG_FSL_ESDHC +#define CONFIG_SYS_FSL_ESDHC_ADDR 0 +#define CONFIG_SYS_FSL_ESDHC_NUM 1 + +#define CONFIG_DOS_PARTITION + #define CONFIG_BOOTDELAY 3 #define CONFIG_LOADADDR0x8100 /* loadaddr env var */ -- 1.7.9.5 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v2 4/5] pmic: Add support for mc34704
From: Fabio Estevam fabio.este...@freescale.com Add the register layout for the MC34704 PMIC from Freescale. Signed-off-by: Fabio Estevam fabio.este...@freescale.com --- Changes since v2: - No changes. Newly introduced in this series include/mc34704.h | 49 + 1 file changed, 49 insertions(+) create mode 100644 include/mc34704.h diff --git a/include/mc34704.h b/include/mc34704.h new file mode 100644 index 000..a0bb91a --- /dev/null +++ b/include/mc34704.h @@ -0,0 +1,49 @@ +/* + * (C) Copyright 2012 Freescale Semiconductor, Inc. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + */ + +#ifndef __MC34704_H__ +#define __MC34704_H__ + +enum { + MC34704_RESERVED0_REG = 0, /* 0x00 */ + MC34704_GENERAL1_REG, /* 0x01 */ + MC34704_GENERAL2_REG, /* 0x02 */ + MC34704_GENERAL3_REG, /* 0x03 */ + MC34704_RESERVED4_REG, /* 0x04 */ + MC34704_VGSET2_REG, /* 0x05 */ + MC34704_REG2SET1_REG, /* 0x06 */ + MC34704_REG2SET2_REG, /* 0x07 */ + MC34704_REG3SET1_REG, /* 0x08 */ + MC34704_REG3SET2_REG, /* 0x09 */ + MC34704_REG4SET1_REG, /* 0x0a */ + MC34704_REG4SET2_REG, /* 0x0b */ + MC34704_REG5SET1_REG, /* 0x0c */ + MC34704_REG5SET2_REG, /* 0x0d */ + MC34704_REG5SET3_REG, /* 0x0e */ + MC34704_RESERVEDF_REG, /* 0x0f */ + MC34704_RESERVED10_REG, /* 0x10 */ + MC34704_RESERVED11_REG, /* 0x11 */ + MC34704_RESERVED12_REG, /* 0x12 */ + MC34704_FSW2SET_REG,/* 0x13 */ + MC34704_RESERVED14_REG, /* 0x14 */ + MC34704_REG8SET1_REG, /* 0x15 */ + MC34704_REG8SET2_REG, /* 0x16 */ + MC34704_REG8SET3_REG, /* 0x17 */ + MC34704_FAULTS_REG, /* 0x18 */ + MC34704_I2CSET1,/* 0x19 */ + MC34704_NUM_OF_REGS, +}; + +/* GENERAL2 register fields */ +#define ONOFFE (1 0) +#define ONOFFD (1 1) +#define ALLOFF (1 4) + +#endif /* __MC34704_H__ */ -- 1.7.9.5 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v2 3/5] pmic_fsl: Introduce CONFIG_SYS_FSL_PMIC_I2C_LENGTH
From: Fabio Estevam fabio.este...@freescale.com Introduce CONFIG_SYS_FSL_PMIC_I2C_LENGTH to configure the number of bytes that are used to communicate with the PMIC via I2C. Instead of hardcoding the value, pass the number via a config option. This will be useful for adding support for PMIC MC34704 from Freescale, which uses only one byte in its I2C protocol. Signed-off-by: Fabio Estevam fabio.este...@freescale.com --- Changes since v2: - No changes. Newly introduced in this series drivers/misc/pmic_fsl.c|2 +- include/configs/mx35pdk.h |1 + include/configs/mx53evk.h |1 + include/configs/mx53loco.h |1 + 4 files changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/misc/pmic_fsl.c b/drivers/misc/pmic_fsl.c index 0ff75ed..40c448b 100644 --- a/drivers/misc/pmic_fsl.c +++ b/drivers/misc/pmic_fsl.c @@ -53,7 +53,7 @@ int pmic_init(void) #elif defined(CONFIG_PMIC_I2C) p-interface = PMIC_I2C; p-hw.i2c.addr = CONFIG_SYS_FSL_PMIC_I2C_ADDR; - p-hw.i2c.tx_num = 3; + p-hw.i2c.tx_num = CONFIG_SYS_FSL_PMIC_I2C_LENGTH; p-bus = I2C_PMIC; #else #error You must select CONFIG_PMIC_SPI or CONFIG_PMIC_I2C diff --git a/include/configs/mx35pdk.h b/include/configs/mx35pdk.h index 69bd654..3998d76 100644 --- a/include/configs/mx35pdk.h +++ b/include/configs/mx35pdk.h @@ -69,6 +69,7 @@ #define CONFIG_PMIC_I2C #define CONFIG_PMIC_FSL #define CONFIG_SYS_FSL_PMIC_I2C_ADDR 0x08 +#define CONFIG_SYS_FSL_PMIC_I2C_LENGTH 3 #define CONFIG_RTC_MC13XXX /* diff --git a/include/configs/mx53evk.h b/include/configs/mx53evk.h index 832050e..f7b11c0 100644 --- a/include/configs/mx53evk.h +++ b/include/configs/mx53evk.h @@ -59,6 +59,7 @@ #define CONFIG_PMIC_I2C #define CONFIG_PMIC_FSL #define CONFIG_SYS_FSL_PMIC_I2C_ADDR8 +#define CONFIG_SYS_FSL_PMIC_I2C_LENGTH 3 #define CONFIG_RTC_MC13XXX /* MMC Configs */ diff --git a/include/configs/mx53loco.h b/include/configs/mx53loco.h index 6a6aaa1..fd454d5 100644 --- a/include/configs/mx53loco.h +++ b/include/configs/mx53loco.h @@ -96,6 +96,7 @@ #define CONFIG_PMIC_FSL #define CONFIG_SYS_DIALOG_PMIC_I2C_ADDR0x48 #define CONFIG_SYS_FSL_PMIC_I2C_ADDR 0x8 +#define CONFIG_SYS_FSL_PMIC_I2C_LENGTH 3 /* allow to overwrite serial and ethaddr */ #define CONFIG_ENV_OVERWRITE -- 1.7.9.5 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v2 5/5] mx25pdk: Add Ethernet support
From: Fabio Estevam fabio.este...@freescale.com mx25pdk has a Ethernet port that is connected to its internal FEC controller. In order to power up the Ethernet PHY (DP83640) it is necessary to communicate with the MC34704 PMIC via I2C. Make the FEC ethernet port functional. Signed-off-by: Fabio Estevam fabio.este...@freescale.com --- Changes since v1: - Use pmic api board/freescale/mx25pdk/mx25pdk.c | 61 + include/configs/mx25pdk.h | 22 + 2 files changed, 83 insertions(+) diff --git a/board/freescale/mx25pdk/mx25pdk.c b/board/freescale/mx25pdk/mx25pdk.c index 5f7c982..c63b96f 100644 --- a/board/freescale/mx25pdk/mx25pdk.c +++ b/board/freescale/mx25pdk/mx25pdk.c @@ -26,7 +26,13 @@ #include asm/arch/clock.h #include mmc.h #include fsl_esdhc.h +#include i2c.h +#include pmic.h +#include fsl_pmic.h +#include mc34704.h +#define FEC_RESET_BIMX_GPIO_NR(2, 3) +#define FEC_ENABLE_B IMX_GPIO_NR(4, 8) #define CARD_DETECTIMX_GPIO_NR(2, 1) DECLARE_GLOBAL_DATA_PTR; @@ -37,6 +43,47 @@ struct fsl_esdhc_cfg esdhc_cfg[1] = { }; #endif +static void mx25pdk_fec_init(void) +{ + struct iomuxc_mux_ctl *muxctl; + struct iomuxc_pad_ctl *padctl; + u32 gpio_mux_mode = MX25_PIN_MUX_MODE(5); + u32 gpio_mux_mode0_sion = MX25_PIN_MUX_MODE(0) | MX25_PIN_MUX_SION; + + /* FEC pin init is generic */ + mx25_fec_init_pins(); + + muxctl = (struct iomuxc_mux_ctl *)IMX_IOPADMUX_BASE; + padctl = (struct iomuxc_pad_ctl *)IMX_IOPADCTL_BASE; + /* +* Set up FEC_RESET_B and FEC_ENABLE_B +* +* FEC_RESET_B: gpio2_3 is ALT 5 mode of pin D12 +* FEC_ENABLE_B: gpio4_8 is ALT 5 mode of pin A17 +*/ + writel(gpio_mux_mode, muxctl-pad_d12); + writel(gpio_mux_mode, muxctl-pad_a17); + + writel(0x0, padctl-pad_d12); + writel(0x0, padctl-pad_a17); + + /* Assert RESET and ENABLE low */ + gpio_direction_output(FEC_RESET_B, 0); + gpio_direction_output(FEC_ENABLE_B, 0); + + udelay(10); + + /* Deassert RESET and ENABLE */ + gpio_set_value(FEC_RESET_B, 1); + gpio_set_value(FEC_ENABLE_B, 1); + + /* Setup I2C pins so that PMIC can turn on PHY supply */ + writel(gpio_mux_mode0_sion, muxctl-pad_i2c1_clk); + writel(gpio_mux_mode0_sion, muxctl-pad_i2c1_dat); + writel(0x1E8, padctl-pad_i2c1_clk); + writel(0x1E8, padctl-pad_i2c1_dat); +} + int dram_init(void) { /* dram_init must store complete ramsize in gd-ram_size */ @@ -60,6 +107,20 @@ int board_init(void) return 0; } +int board_late_init(void) +{ + struct pmic *p; + + mx25pdk_fec_init(); + + pmic_init(); + p = get_pmic(); + /* Turn on Ethernet PHY supply */ + pmic_reg_write(p, MC34704_GENERAL2_REG, ONOFFE); + + return 0; +} + #ifdef CONFIG_FSL_ESDHC int board_mmc_getcd(struct mmc *mmc) { diff --git a/include/configs/mx25pdk.h b/include/configs/mx25pdk.h index 1770521..8d0ea7f 100644 --- a/include/configs/mx25pdk.h +++ b/include/configs/mx25pdk.h @@ -41,6 +41,7 @@ #define PHYS_SDRAM_1_SIZE (64 * 1024 * 1024) #define CONFIG_BOARD_EARLY_INIT_F +#define CONFIG_BOARD_LATE_INIT #define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM_1 #define CONFIG_SYS_INIT_SP_ADDR(CONFIG_SYS_SDRAM_BASE + 0x1000 - \ @@ -98,8 +99,29 @@ #define CONFIG_SYS_FSL_ESDHC_ADDR 0 #define CONFIG_SYS_FSL_ESDHC_NUM 1 +/* PMIC Configs */ +#define CONFIG_PMIC +#define CONFIG_PMIC_I2C +#define CONFIG_PMIC_FSL +#define CONFIG_SYS_FSL_PMIC_I2C_ADDR 0x54 +#define CONFIG_SYS_FSL_PMIC_I2C_LENGTH 1 + #define CONFIG_DOS_PARTITION +/* I2C Configs */ +#define CONFIG_CMD_I2C +#define CONFIG_HARD_I2C +#define CONFIG_I2C_MXC +#define CONFIG_SYS_I2C_BASEIMX_I2C_BASE +#define CONFIG_SYS_I2C_SPEED 10 + +/* Ethernet Configs */ + +#define CONFIG_CMD_PING +#define CONFIG_CMD_DHCP +#define CONFIG_CMD_MII +#define CONFIG_CMD_NET + #define CONFIG_BOOTDELAY 3 #define CONFIG_LOADADDR0x8100 /* loadaddr env var */ -- 1.7.9.5 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] ZFS: fix some warnings, cleanup
On Wed, Sep 19, 2012 at 05:32:36PM +0200, Pavel Herrmann wrote: Fix warnings about type mismatch in cmd_zfs. Dont use a global block_dev_desc, instead use a local one in each cmd. Signed-off-by: Pavel Herrmann morpheus.i...@gmail.com [snip] -static int do_zfs_load(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]) +static int do_zfs_load(cmd_tbl_t *cmdtp, int flag, int argc, + char * const argv[]) That's a checkpatch warning, please fix. -static int do_zfs_ls(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]) +static int do_zfs_ls(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) Same. -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v4] tools/env: add posibility to inject configuration
Hi Andreas, On Tue, Jan 24, 2012 at 3:10 AM, Andreas Bießmann andreas.de...@googlemail.com wrote: From: Andreas Bießmann biessm...@corscience.de If one want to use fw_printenv/fw_setenv in special variants (eg compiled in MTD parameters without configuration file) he need 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. Therefore no need to patch the sources for special environment which fits better into automated build environments. Signed-off-by: Andreas Bießmann biessm...@corscience.de --- total: 0 errors, 0 warnings, 164 lines checked NOTE: Ignored message types: COMPLEX_MACRO CONSIDER_KSTRTO MINMAX MULTISTATEMENT_MACRO_USE_DO_WHILE 0001-tools-env-add-posibility-to-inject-configuration.patch has no obvious style problems and is ready for submission. changes since v1: - use ?= style in Makefile as suggested by Mike - remove c++ style comments in header changes since v2: - place copied/generated fw_env_config.h in include/generated - adopt tools/env/Makefile to new placement of fw_env_config.h changes since v3: - add (C) header - generate empty config.h for unconfigured U-Boot tree - rebase tools/env/Makefile | 29 +++--- tools/env/fw_env.h | 32 +++- tools/env/fw_env_config.h.in | 66 ++ 3 files changed, 95 insertions(+), 32 deletions(-) create mode 100644 tools/env/fw_env_config.h.in diff --git a/tools/env/Makefile b/tools/env/Makefile index 28b73da..4a0b2b0 100644 --- a/tools/env/Makefile +++ b/tools/env/Makefile @@ -2,6 +2,9 @@ # (C) Copyright 2002-2006 # Wolfgang Denk, DENX Software Engineering, w...@denx.de. # +# (C) Copyright 2012 +# Andreas Bießmann, Corscience GmbHCo.KG, biessm...@corscience.de +# # See file CREDITS for list of people who contributed to this # project. # @@ -24,26 +27,42 @@ include $(TOPDIR)/config.mk HOSTSRCS := $(SRCTREE)/lib/crc32.c fw_env.c fw_env_main.c -HEADERS:= fw_env.h +HEADERS := fw_env.h $(OBJTREE)/include/generated/fw_env_config.h +FW_ENV_CONFIG ?= fw_env_config.h.in # Compile for a hosted environment on the target HOSTCPPFLAGS = -idirafter $(SRCTREE)/include \ - -idirafter $(OBJTREE)/include2 \ -idirafter $(OBJTREE)/include \ + -idirafter $(OBJTREE)/include/generated \ -DUSE_HOSTCC ifeq ($(MTD_VERSION),old) HOSTCPPFLAGS += -DMTD_OLD endif -all: $(obj)fw_printenv +all: $(obj)fw_printenv # Some files complain if compiled with -pedantic, use HOSTCFLAGS_NOPED -$(obj)fw_printenv: $(HOSTSRCS) $(HEADERS) +$(obj)fw_printenv: $(HOSTSRCS) $(HEADERS) $(HOSTCC) $(HOSTCFLAGS_NOPED) $(HOSTLDFLAGS) -o $@ $(HOSTSRCS) +$(OBJTREE)/include/generated/fw_env_config.h: $(FW_ENV_CONFIG) + @cp -f $ $@ + +# add additional dependency for .depend +$(obj).depend: $(OBJTREE)/include/generated/fw_env_config.h + +ifneq ($(OBJTREE)/include/config.mk,$(wildcard $(OBJTREE)/include/config.mk)) +# our U-Boot tree is not configured, generate fake config.h +$(OBJTREE)/include/config.h: + @cat /dev/null $@ + +# add additional dependency for .depend +$(obj).depend: $(OBJTREE)/include/config.h +endif + clean: - rm -f $(obj)fw_printenv + rm -f $(obj)fw_printenv $(obj)fw_env_config.h # diff --git a/tools/env/fw_env.h b/tools/env/fw_env.h index 2dcb373..c237154 100644 --- a/tools/env/fw_env.h +++ b/tools/env/fw_env.h @@ -20,34 +20,10 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, * MA 02111-1307 USA */ +#ifndef _FW_ENV_H_ +#define _FW_ENV_H_ -/* - * To build the utility with the run-time configuration - * uncomment the next line. - * See included fw_env.config sample file - * for notes on configuration. - */ -#define CONFIG_FILE /etc/fw_env.config - -#define HAVE_REDUND /* For systems with 2 env sectors */ -#define DEVICE1_NAME /dev/mtd1 -#define DEVICE2_NAME /dev/mtd2 -#define DEVICE1_OFFSET0x -#define ENV1_SIZE 0x4000 -#define DEVICE1_ESIZE 0x4000 -#define DEVICE1_ENVSECTORS 2 -#define DEVICE2_OFFSET0x -#define ENV2_SIZE 0x4000 -#define DEVICE2_ESIZE 0x4000 -#define DEVICE2_ENVSECTORS 2 Why not just have these settings directly be #define'd in the board config file? You can still leave the one default here that is actually used (CONFIG_FILE /etc/fw_env.config) and make it overridable. The rest just need to be documented in the README. This new scheme seems overly complicated and I don't know what it buys you over the normal place for configuration. [...] -Joe ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v2] Add support for MMC to fw_printenv/setenv
Hi Christian, On Thu, Jan 5, 2012 at 6:30 PM, Christian Daudt cs...@daudt.org wrote: Changes from previous: - Changed // to /* */ - Ran through checkpatch.pl, cleaned up a number of line-too-big and extra space in the code that was shifted due to being in the new 'if'. Your patch appears to be corrupt. Patchwork doesn't even find all the hunks. http://patchwork.ozlabs.org/patch/134561/ Please resend directly from git send-email or preferably with tools/patman. Thanks, -Joe ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] Patchwork status
Hey all, I spent much of today reading patchwork patches and updating status of things that seemed obvious to me. I've also taken a first stab at assigning patches to folks. If you've registered with patchwork and are a custodian you probably have a TODO list now. If you can please take a look at it and either change things I missed or download and comment older patches, or apply them, I'd appreciate it. Thanks! [Aside: Yes, I know we've talked about a patchwork replacement but we haven't acted on it yet. The smaller the patchwork queue, and honestly it's looking better now, we have, the easier a future transition will be] -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v2] Add support for MMC to fw_printenv/setenv
Hi Christian, On Thu, Jan 5, 2012 at 6:30 PM, Christian Daudt cs...@daudt.org wrote: Changes from previous: - Changed // to /* */ - Ran through checkpatch.pl, cleaned up a number of line-too-big and extra space in the code that was shifted due to being in the new 'if'. Thanks, csd Subject: [PATCH] Add support for MMC to fw_printenv/setenv This patch checks if the fd is MTD and if not (using an MTD-specific IOCTL) and skips the flash unlock/erase/lock sequence if it is not MTD. - fd_is_mtd function added to determine MTD/MMC - flash_write_block made to not try MTD operations if mtd_type == MTD_ABSENT - flash_read works with MMC devices now. Signed-off-by: Christian Daudt c...@broadcom.com --- tools/env/fw_env.c | 103 1 files changed, 71 insertions(+), 32 deletions(-) diff --git a/tools/env/fw_env.c b/tools/env/fw_env.c index 996682e..c760429 100644 --- a/tools/env/fw_env.c +++ b/tools/env/fw_env.c @@ -211,6 +211,27 @@ static int flash_io (int mode); static char *envmatch (char * s1, char * s2); static int parse_config (void); + +/* + * Returns 1 if it is MTD and 0 if it is not MTD + */ +static int fd_is_mtd(int fd) +{ + struct mtd_info_user mtdinfo; + int rc; + + rc = ioctl(fd, MEMGETINFO, mtdinfo); + if (rc 0) { + /* Failed MEMGETINFO, not MTD */ + return 0; + } else { + /* Succeeded, MTD */ + return 1; + } +} + + + #if defined(CONFIG_FILE) static int get_config (char *); #endif @@ -836,31 +857,35 @@ static int flash_write_buf (int dev, int fd, void *buf, size_t count, /* This only runs once on NOR flash and SPI-dataflash */ while (processed write_total) { - rc = flash_bad_block (fd, mtd_type, blockstart); - if (rc 0) /* block test failed */ - return rc; + if (mtd_type != MTD_ABSENT) { It would be really great if you organize this so as not to fully add another level of indentation here. It would be better to include all the accesses that need to check for mtd_type to functions (like flash_bad_block() and do the tests in them. Use a case structure in them where it makes sense (checking multiple states). Then you can simply call the functions and they may not do anything for a given flash type. So maybe add a flash_unlock(), flash_lock(), and flash_erase(). + rc = flash_bad_block(fd, mtd_type, blockstart); + if (rc 0) /* block test failed */ + return rc; - if (blockstart + erasesize top_of_range) { - fprintf (stderr, End of range reached, aborting\n); - return -1; - } + if (blockstart + erasesize top_of_range) { + fprintf(stderr, + End of range reached, aborting\n); + return -1; + } - if (rc) { /* block is bad */ - blockstart += blocklen; - continue; - } + if (rc) { /* block is bad */ + blockstart += blocklen; + continue; + } - erase.start = blockstart; - ioctl (fd, MEMUNLOCK, erase); + erase.start = blockstart; + ioctl(fd, MEMUNLOCK, erase); - /* Dataflash does not need an explicit erase cycle */ - if (mtd_type != MTD_DATAFLASH) - if (ioctl (fd, MEMERASE, erase) != 0) { - fprintf (stderr, MTD erase error on %s: %s\n, -DEVNAME (dev), -strerror (errno)); - return -1; - } + /* Dataflash does not need an explicit erase cycle */ + if (mtd_type != MTD_DATAFLASH) + if (ioctl(fd, MEMERASE, erase) != 0) { + fprintf(stderr, + MTD erase error on %s: %s\n, + DEVNAME(dev), + strerror(errno)); + return -1; + } + } if (lseek (fd, blockstart, SEEK_SET) == -1) { fprintf (stderr, @@ -878,7 +903,8 @@ static int flash_write_buf (int dev, int fd, void *buf, size_t count, return -1;
[U-Boot] [PATCH 1/2] tools/env: Fix variable delete operation
Fix crash introduced by a073d63a36524453a817ab029fad5b188f46127e when attempting to delete a variable. Signed-off-by: Joe Hershberger joe.hershber...@ni.com --- tools/env/fw_env.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/tools/env/fw_env.c b/tools/env/fw_env.c index 520ce3f..906ccbf 100644 --- a/tools/env/fw_env.c +++ b/tools/env/fw_env.c @@ -493,6 +493,8 @@ int fw_setenv(int argc, char *argv[]) char *val = argv[i]; size_t val_len = strlen(val); + if (value) + value[len - 1] = ' '; value = realloc(value, len + val_len + 1); if (!value) { fprintf(stderr, @@ -503,9 +505,8 @@ int fw_setenv(int argc, char *argv[]) memcpy(value + len, val, val_len); len += val_len; - value[len++] = ' '; + value[len++] = '\0'; } - value[len - 1] = '\0'; fw_env_write(name, value); -- 1.7.11.5 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 2/2] tools/env: Improve debug prints
Provide more information when using redundant environments Consistently print debug info to stderr Signed-off-by: Joe Hershberger joe.hershber...@ni.com --- tools/env/fw_env.c | 27 ++- 1 file changed, 22 insertions(+), 5 deletions(-) diff --git a/tools/env/fw_env.c b/tools/env/fw_env.c index 906ccbf..fecb077 100644 --- a/tools/env/fw_env.c +++ b/tools/env/fw_env.c @@ -738,8 +738,8 @@ static int flash_read_buf (int dev, int fd, void *buf, size_t count, return -1; } #ifdef DEBUG - fprintf (stderr, Read 0x%x bytes at 0x%llx\n, -rc, blockstart + block_seek); + fprintf(stderr, Read 0x%x bytes at 0x%llx on %s\n, +rc, blockstart + block_seek, DEVNAME(dev)); #endif processed += readlen; readlen = min (blocklen, count - processed); @@ -818,6 +818,18 @@ static int flash_write_buf (int dev, int fd, void *buf, size_t count, if (write_total != rc) return -1; +#ifdef DEBUG + fprintf(stderr, Preserving data ); + if (block_seek != 0) + fprintf(stderr, 0x%x - 0x%lx, 0, block_seek - 1); + if (block_seek + count != write_total) { + if (block_seek != 0) + fprintf(stderr, and ); + fprintf(stderr, 0x%lx - 0x%x, + block_seek + count, write_total - 1); + } + fprintf(stderr, \n); +#endif /* Overwrite the old environment */ memcpy (data + block_seek, buf, count); } else { @@ -876,7 +888,8 @@ static int flash_write_buf (int dev, int fd, void *buf, size_t count, } #ifdef DEBUG - printf (Write 0x%x bytes at 0x%llx\n, erasesize, blockstart); + fprintf(stderr, Write 0x%x bytes at 0x%llx\n, erasesize, + blockstart); #endif if (write (fd, data + processed, erasesize) != erasesize) { fprintf (stderr, Write error on %s: %s\n, @@ -943,7 +956,7 @@ static int flash_write (int fd_current, int fd_target, int dev_target) } #ifdef DEBUG - printf (Writing new environment at 0x%lx on %s\n, + fprintf(stderr, Writing new environment at 0x%lx on %s\n, DEVOFFSET (dev_target), DEVNAME (dev_target)); #endif rc = flash_write_buf(dev_target, fd_target, environment.image, @@ -957,7 +970,8 @@ static int flash_write (int fd_current, int fd_target, int dev_target) off_t offset = DEVOFFSET (dev_current) + offsetof (struct env_image_redundant, flags); #ifdef DEBUG - printf (Setting obsolete flag in environment at 0x%lx on %s\n, + fprintf(stderr, + Setting obsolete flag in environment at 0x%lx on %s\n, DEVOFFSET (dev_current), DEVNAME (dev_current)); #endif flash_flag_obsolete (dev_current, fd_current, offset); @@ -1224,6 +1238,9 @@ int fw_env_open(void) /* Other pointers are already set */ free (addr1); } +#ifdef DEBUG + fprintf(stderr, Selected env in %s\n, DEVNAME(dev_current)); +#endif } return 0; } -- 1.7.11.5 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] Pull request: u-boot-arm/master to u-boot/master
On 15 October 2012 16:04, Albert ARIBAUD albert.u.b...@aribaud.net wrote: On Mon, 15 Oct 2012 07:58:38 +0200, Albert ARIBAUD albert.u.b...@aribaud.net wrote: Hi Minkyu, On Mon, 15 Oct 2012 10:10:33 +0900, Minkyu Kang proms...@gmail.com wrote: Hi Albert, The following changes since commit 28e5ac2d974547bde0c72aa0c1d66fd22c6ef3ad: arm: armv7: temporarily set -mno-unaligned-access (2012-10-05 21:24:22 +0200) are available in the git repository at: git://git.denx.de/u-boot-samsung master for you to fetch changes up to 3ae30b97ff49d34c81bc8c9c2c6e23adf9cba31c: arm: trats: Power down core 1 (2012-10-10 18:53:58 +0900) Chander Kashyap (1): Exynos5250: Enable PXE Support Piotr Wilczek (7): arm:exynos4:trats: Correct SDRAM configuration for trats arm:exynos4:trats: Fix SDRAM size arm:exynos4:pinmux: Modify the gpio function for mmc arm:exynos4:trats: Use pinmux for mmc configuration arm:exynos4:universal: Use pinmux for mmc configuration arm:exynos4:universal: Eliminated low level init arm: trats: Power down core 1 Łukasz Majewski (1): gpio:fix: Proper handling of GPIO subsystem parts at Samsung devices arch/arm/cpu/armv7/exynos/pinmux.c | 58 arch/arm/include/asm/arch-exynos/gpio.h | 19 ++ arch/arm/include/asm/arch-exynos/periph.h|1 + arch/arm/include/asm/arch-s5pc1xx/gpio.h |7 +- board/samsung/trats/trats.c | 80 ++ board/samsung/universal_c210/Makefile|1 - board/samsung/universal_c210/lowlevel_init.S | 395 -- board/samsung/universal_c210/universal.c | 82 ++ drivers/gpio/s5p_gpio.c |6 +- include/configs/s5pc210_universal.h |2 + include/configs/smdk5250.h |6 + include/configs/trats.h | 17 +- 12 files changed, 153 insertions(+), 521 deletions(-) delete mode 100644 board/samsung/universal_c210/lowlevel_init.S Going through ARM regression builds for this now. Unless Tom decides otherwise, will go into u-boot-arm/master once the release is out, not before. Update: Build from u-boot/master and from a merge of u-boot-samsung/master yield similar results, i.e. all 271 ARM targets buuilding clean in each case. But seeing as there were later issues with Tom's tests, and as the patch comes within hours of the release, the choice remains Tom's. Since 2012.10 is released, this request is canceled. I'll send new pull request soon. Thanks. Minkyu Kang. -- from. prom. www.promsoft.net ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH - resend due to bounce] libfdt: Add fdt functionality for more intuitive
Hi Peter, On 05/07/2012 09:52 AM, Peter Feuerer wrote: libfdt: Add fdt functionality for more intuitive fdt handling New functions: fdt_read - retrieve the value of a property by full path fdt_write - create or change a property with full path and create subnodes if needed fdt_create_path - create subnode path with parents Signed-off-by: Peter Feuerer peter.feue...@sysgo.com CC: David Gibson da...@gibson.dropbear.id.au CC: Gerald Van Baren g...@unssw.com As David pointed out, this needs to go through the upstream libfdt (dtc) library so that we stay in sync. http://git.jdl.com/gitweb/?p=dtc.git;a=summary Thanks, gvb ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [STATUS] v2012.10 released, Merge Window is OPEN
Hi Wolfgang, On Mon, Oct 15, 2012 at 2:08 PM, Wolfgang Denk w...@denx.de wrote: Dear Benoît Thébaudeau, In message 950821917.6855188.1350329929641.javamail.r...@advansee.com you wrote: Can you also add National Instruments (ni.com) to your list of employers? Please add O.S. Systems (ossystems.com.br) too. Please add ADVANSEE (advansee.com) too. Done: 25 employers found Any others? Since you ask, Google, Inc (chromium.org). 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 How does a project get to be a year late? ... One day at a time. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v3 00/10] i2c for R-mobile
Hello Tetsuyuki Kobayashi, On 14.09.2012 07:07, Tetsuyuki Kobayashi wrote: Iwamatu-san, thank you for review. This is v3 patch for sh_i2c. Changes for v3: - call i2c_finish before returning i2c_probe, i2c_read, i2c_write even if error occured. Without this, it fails to boot Linux kernel after using i2c probe command. - use setbits/clrbits macro as Iwamatsu-san pointed. Please check patch 5,6 and 10. The rest is not changed. This patch set is based on arm/rmobile branch of u-boot-sh.git. Tetsuyuki Kobayashi (10): i2c: sh_i2c.c: support iccl and icch extension i2c: sh_i2c.c: correct BUSY bit define in ICSR i2c: sh_i2c.c: adjust for SH73A0 i2c: sh_i2c.c: support I2C2, I2C3 and I2C4 i2c: sh_i2c: enable i2c_probe i2c: sh_i2c.c: check error in i2c_read and i2c_write i2c: sh_i2c.c: remove unused function arm: rmobile: kzm9g: enable I2C1 arm: rmobile: kzm9g: enable I2C2 i2c: sh_i2c: use setbits/clrbits macro board/kmc/kzm9g/kzm9g.c |7 ++- drivers/i2c/sh_i2c.c| 139 --- include/configs/kzm9g.h |8 ++- 3 files changed, 107 insertions(+), 47 deletions(-) Applied this patchset (exept patch i2c: sh_i2c.c: remove unused function, as this patch is already in mainline) to u-boot-i2c master Thanks! bye, Heiko -- DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] common/i2c: Add i2c write command
Hello York Sun, On 16.09.2012 20:02, York Sun wrote: Add i2c write command to write data from memory to i2c devices. Signed-off-by: York Sunyork...@freescale.com --- common/cmd_i2c.c | 50 ++ 1 file changed, 50 insertions(+) Applied to u-boot-i2c master Thanks! bye, Heiko -- DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] i2c_probe: update for use in scripting
Hello Eric Nelson, On 23.09.2012 22:12, Eric Nelson wrote: Allow the use of an I2C address to test and return success if one or more devices is found. This allows device presence to alter the flow of a script. e.g. if i2c probe 0x04 ; then echo found Hannstar touch ; fi Signed-off-by: Eric Nelsoneric.nel...@boundarydevices.com --- common/cmd_i2c.c | 20 1 files changed, 16 insertions(+), 4 deletions(-) Applied to u-boot-i2c master Thanks! bye, Heiko -- DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 2/2] ARM: rpi_b: use bcm2835 mbox driver to get memory size
The firmware running on the bcm2835 SoC's VideoCore CPU determines how much of the system RAM is available for use by the ARM CPU. Previously, U-Boot assumed that only 128MB was available, since this was the smallest value configured by any public firmware. However, we can now query the actual value at run-time from the firmware using the mbox property protocol. Signed-off-by: Stephen Warren swar...@wwwdotorg.org --- board/raspberrypi/rpi_b/rpi_b.c | 20 +++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/board/raspberrypi/rpi_b/rpi_b.c b/board/raspberrypi/rpi_b/rpi_b.c index 688b0aa..88f8c58 100644 --- a/board/raspberrypi/rpi_b/rpi_b.c +++ b/board/raspberrypi/rpi_b/rpi_b.c @@ -15,13 +15,31 @@ */ #include common.h +#include asm/arch/mbox.h #include asm/global_data.h DECLARE_GLOBAL_DATA_PTR; int dram_init(void) { - gd-ram_size = CONFIG_SYS_SDRAM_SIZE; + ALLOC_ALIGN_BUFFER(struct bcm2835_mbox_buf_get_arm_mem, buf, 1, 16); + + memset(buf, 0, sizeof(*buf)); + buf-hdr.buf_size = sizeof(*buf); + buf-hdr.code = BCM2835_MBOX_REQ_CODE; + buf-tag_hdr.tag = BCM2835_MBOX_TAG_GET_ARM_MEMORY; + buf-tag_hdr.val_buf_size = sizeof(buf-body); + buf-tag_hdr.val_len = sizeof(buf-body.req); + + bcm2835_mbox_call_prop(BCM2835_MBOX_PROP_CHAN, buf-hdr); + + if ((buf-hdr.code != BCM2835_MBOX_RESP_CODE_SUCCESS) || + (!(buf-tag_hdr.val_len BCM2835_MBOX_TAG_VAL_LEN_RESPONSE))) { + printf(BCM2835_MBOX_TAG_GET_ARM_MEMORY failed\n); + return -1; + } + + gd-ram_size = buf-body.resp.mem_size; return 0; } -- 1.7.9.5 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 1/2] ARM: bcm2835: add mailbox driver
The BCM2835 SoC contains (at least) two CPUs; the VideoCore (a/k/a GPU) and the ARM CPU. The ARM CPU is often thought of as the main CPU. However, the VideoCore actually controls the initial SoC boot, and hides much of the hardware behind a protocol. This protocol is transported using the SoC's mailbox hardware module. The mailbox supports two forms of communication: Raw 28-bit values, and a so-called property interface, where the 28-bit value is a physical pointer to a memory buffer that contains various tags. Here, we add a very simplistic driver for the mailbox module, and define a few structures for the property messages. Signed-off-by: Stephen Warren swar...@wwwdotorg.org --- arch/arm/cpu/arm1176/bcm2835/Makefile|2 +- arch/arm/cpu/arm1176/bcm2835/mbox.c | 92 ++ arch/arm/include/asm/arch-bcm2835/mbox.h | 87 3 files changed, 180 insertions(+), 1 deletion(-) create mode 100644 arch/arm/cpu/arm1176/bcm2835/mbox.c create mode 100644 arch/arm/include/asm/arch-bcm2835/mbox.h diff --git a/arch/arm/cpu/arm1176/bcm2835/Makefile b/arch/arm/cpu/arm1176/bcm2835/Makefile index 95da6a8..135de42 100644 --- a/arch/arm/cpu/arm1176/bcm2835/Makefile +++ b/arch/arm/cpu/arm1176/bcm2835/Makefile @@ -17,7 +17,7 @@ include $(TOPDIR)/config.mk LIB= $(obj)lib$(SOC).o SOBJS := lowlevel_init.o -COBJS := init.o reset.o timer.o +COBJS := init.o reset.o timer.o mbox.o SRCS := $(SOBJS:.o=.c) $(COBJS:.o=.c) OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS)) diff --git a/arch/arm/cpu/arm1176/bcm2835/mbox.c b/arch/arm/cpu/arm1176/bcm2835/mbox.c new file mode 100644 index 000..f5c060b --- /dev/null +++ b/arch/arm/cpu/arm1176/bcm2835/mbox.c @@ -0,0 +1,92 @@ +/* + * (C) Copyright 2012 Stephen Warren + * + * 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 + * version 2 as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#include common.h +#include asm/io.h +#include asm/arch/mbox.h + +#define TIMEOUT (100 * 1000) /* 100mS in uS */ + +int bcm2835_mbox_call_raw(u32 chan, u32 send, u32 *recv) +{ + struct bcm2835_mbox_regs *regs = + (struct bcm2835_mbox_regs *)BCM2835_MBOX_PHYSADDR; + ulong endtime = get_timer(0) + TIMEOUT; + u32 val; + + if (send BCM2835_CHAN_MASK) + return -1; + + /* Drain any stale responses */ + + for (;;) { + val = readl(regs-status); + if (val BCM2835_MBOX_STATUS_RD_EMPTY) + break; + if (get_timer(0) = endtime) + return -1; + val = readl(regs-read); + } + + /* Send the request */ + + /* FIXME: timeout */ + for (;;) { + val = readl(regs-status); + if (!(val BCM2835_MBOX_STATUS_WR_FULL)) + break; + if (get_timer(0) = endtime) + return -1; + } + + writel(BCM2835_MBOX_PACK(chan, send), regs-write); + + /* Wait for the response */ + + /* FIXME: timeout */ + for (;;) { + val = readl(regs-status); + if (!(val BCM2835_MBOX_STATUS_RD_EMPTY)) + break; + if (get_timer(0) = endtime) + return -1; + } + + val = readl(regs-read); + + /* Validate the response */ + + if (BCM2835_MBOX_UNPACK_CHAN(val) != chan) + return -1; + + *recv = BCM2835_MBOX_UNPACK_DATA(val); + + return 0; +} + +int bcm2835_mbox_call_prop(u32 chan, struct bcm2835_mbox_prop_hdr *buffer) +{ + int ret; + u32 rbuffer; + + ret = bcm2835_mbox_call_raw(chan, (u32)buffer, rbuffer); + if (ret) + return ret; + if (rbuffer != (u32)buffer) + return -1; + + return 0; +} diff --git a/arch/arm/include/asm/arch-bcm2835/mbox.h b/arch/arm/include/asm/arch-bcm2835/mbox.h new file mode 100644 index 000..907fabd --- /dev/null +++ b/arch/arm/include/asm/arch-bcm2835/mbox.h @@ -0,0 +1,87 @@ +/* + * (C) Copyright 2012 Stephen Warren + * + * 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 + * version 2 as published by the Free Software Foundation. + * + * 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
[U-Boot] [PATCH v3 2/2] EXYNOS: mmc: support DesignWare Controller for Samsung-SoC
Support DesignWare MMC Controller for Samsung Specific. Signed-off-by: Jaehoon Chung jh80.ch...@samsung.com Signed-off-by: Kyungmin Park kyungmin.p...@samsung.com Signed-off-by: Rajeshawari Shinde rajeshwar...@samsung.com --- Changelog V3: - Removed the unnecessary code. Changelog V2: - Nothing --- arch/arm/include/asm/arch-exynos/dwmmc.h | 36 +++ drivers/mmc/Makefile |1 + drivers/mmc/exynos_dw_mmc.c | 57 ++ 3 files changed, 94 insertions(+), 0 deletions(-) create mode 100644 arch/arm/include/asm/arch-exynos/dwmmc.h create mode 100644 drivers/mmc/exynos_dw_mmc.c diff --git a/arch/arm/include/asm/arch-exynos/dwmmc.h b/arch/arm/include/asm/arch-exynos/dwmmc.h new file mode 100644 index 000..8acdf9b --- /dev/null +++ b/arch/arm/include/asm/arch-exynos/dwmmc.h @@ -0,0 +1,36 @@ +/* + * (C) Copyright 2012 SAMSUNG Electronics + * Jaehoon Chung jh80.ch...@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 + * + */ + +#define DWMCI_CLKSEL 0x09C +#define DWMCI_SHIFT_0 0x0 +#define DWMCI_SHIFT_1 0x1 +#define DWMCI_SHIFT_2 0x2 +#define DWMCI_SHIFT_3 0x3 +#define DWMCI_SET_SAMPLE_CLK(x)(x) +#define DWMCI_SET_DRV_CLK(x) ((x) 16) +#define DWMCI_SET_DIV_RATIO(x) ((x) 24) + +int exynos_dwmci_init(u32 regbase, int bus_width, int index); + +static inline unsigned int exynos_dwmmc_init(int index, int bus_width) +{ + unsigned int base = samsung_get_base_mmc() + (0x1 * index); + return exynos_dwmci_init(base, bus_width, index); +} diff --git a/drivers/mmc/Makefile b/drivers/mmc/Makefile index 9ef82a6..cb7c7f6 100644 --- a/drivers/mmc/Makefile +++ b/drivers/mmc/Makefile @@ -48,6 +48,7 @@ COBJS-$(CONFIG_S5P_SDHCI) += s5p_sdhci.o COBJS-$(CONFIG_SH_MMCIF) += sh_mmcif.o COBJS-$(CONFIG_TEGRA_MMC) += tegra_mmc.o COBJS-$(CONFIG_DWMMC) += dw_mmc.o +COBJS-$(CONFIG_EXYNOS_DWMMC) += exynos_dw_mmc.o COBJS := $(COBJS-y) SRCS := $(COBJS:.o=.c) diff --git a/drivers/mmc/exynos_dw_mmc.c b/drivers/mmc/exynos_dw_mmc.c new file mode 100644 index 000..72a31b7 --- /dev/null +++ b/drivers/mmc/exynos_dw_mmc.c @@ -0,0 +1,57 @@ +/* + * (C) Copyright 2012 SAMSUNG Electronics + * Jaehoon Chung jh80.ch...@samsung.com + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + */ + +#include common.h +#include malloc.h +#include dwmmc.h +#include asm/arch/dwmmc.h +#include asm/arch/clk.h + +static char *EXYNOS_NAME = EXYNOS DWMMC; + +static void exynos_dwmci_clksel(struct dwmci_host *host) +{ + u32 val; + val = DWMCI_SET_SAMPLE_CLK(DWMCI_SHIFT_0) | + DWMCI_SET_DRV_CLK(DWMCI_SHIFT_0) | DWMCI_SET_DIV_RATIO(0); + + dwmci_writel(host, DWMCI_CLKSEL, val); +} + +int exynos_dwmci_init(u32 regbase, int bus_width, int index) +{ + struct dwmci_host *host = NULL; + host = malloc(sizeof(struct dwmci_host)); + if (!host) { + printf(dwmci_host malloc fail!\n); + return 1; + } + + host-name = EXYNOS_NAME; + host-ioaddr = (void *)regbase; + host-buswidth = bus_width; + host-clksel = exynos_dwmci_clksel; + host-dev_index = index; + + add_dwmci(host, 5200, 40); + + return 0; +} + -- 1.7.4.1 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v3 1/2] mmc: dw-mmc: support DesignWare MMC Controller
Support the DesginWare MMC Controller. Signed-off-by: Jaehoon Chung jh80.ch...@samsung.com Signed-off-by: Kyungmin Park kyungmin.p...@samsung.com Signed-off-by: Rajeshawari Shinde rajeshwar...@samsung.com --- Changelog V3: - Modified the code with Andy's comments. - Use the Label for descriptor - Not include the board specific patch --- drivers/mmc/Makefile |1 + drivers/mmc/dw_mmc.c | 385 ++ include/dwmmc.h | 191 + 3 files changed, 577 insertions(+), 0 deletions(-) create mode 100644 drivers/mmc/dw_mmc.c create mode 100644 include/dwmmc.h diff --git a/drivers/mmc/Makefile b/drivers/mmc/Makefile index 2b96cdc..9ef82a6 100644 --- a/drivers/mmc/Makefile +++ b/drivers/mmc/Makefile @@ -47,6 +47,7 @@ COBJS-$(CONFIG_SDHCI) += sdhci.o COBJS-$(CONFIG_S5P_SDHCI) += s5p_sdhci.o COBJS-$(CONFIG_SH_MMCIF) += sh_mmcif.o COBJS-$(CONFIG_TEGRA_MMC) += tegra_mmc.o +COBJS-$(CONFIG_DWMMC) += dw_mmc.o COBJS := $(COBJS-y) SRCS := $(COBJS:.o=.c) diff --git a/drivers/mmc/dw_mmc.c b/drivers/mmc/dw_mmc.c new file mode 100644 index 000..4070d4e --- /dev/null +++ b/drivers/mmc/dw_mmc.c @@ -0,0 +1,385 @@ +/* + * (C) Copyright 2012 SAMSUNG Electronics + * Jaehoon Chung jh80.ch...@samsung.com + * Rajeshawari Shinde rajeshwar...@samsung.com + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + */ + +#include common.h +#include malloc.h +#include mmc.h +#include dwmmc.h +#include asm/arch/clk.h +#include asm-generic/errno.h + +#define PAGE_SIZE 4096 + +static int dwmci_wait_reset(struct dwmci_host *host, u32 value) +{ + unsigned long timeout = 1000; + u32 ctrl; + + dwmci_writel(host, DWMCI_CTRL, value); + + while (timeout--) { + ctrl = dwmci_readl(host, DWMCI_CTRL); + if (!(ctrl DWMCI_RESET_ALL)) + return 1; + } + return 0; +} + +static void dwmci_set_idma_desc(struct dwmci_idmac *idmac, + u32 desc0, u32 desc1, u32 desc2) +{ + struct dwmci_idmac *desc = idmac; + + desc-flags = desc0; + desc-cnt = desc1; + desc-addr = desc2; + desc-next_addr = (unsigned int)desc + sizeof(struct dwmci_idmac); +} + +static void dwmci_prepare_data(struct dwmci_host *host, + struct mmc_data *data) +{ + unsigned long ctrl; + unsigned int i = 0, flags, cnt, blk_cnt; + ulong data_start, data_end, start_addr; + ALLOC_CACHE_ALIGN_BUFFER(struct dwmci_idmac, cur_idmac, data-blocks); + + + blk_cnt = data-blocks; + + dwmci_wait_reset(host, DWMCI_CTRL_FIFO_RESET); + + data_start = (ulong)cur_idmac; + dwmci_writel(host, DWMCI_DBADDR, (unsigned int)cur_idmac); + + if (data-flags == MMC_DATA_READ) + start_addr = (unsigned int)data-dest; + else + start_addr = (unsigned int)data-src; + + do { + flags = DWMCI_IDMAC_OWN | DWMCI_IDMAC_CH ; + flags |= (i == 0) ? DWMCI_IDMAC_FS : 0; + if (blk_cnt = 8) { + flags |= DWMCI_IDMAC_LD; + cnt = data-blocksize * blk_cnt; + } else + cnt = data-blocksize * 8; + + dwmci_set_idma_desc(cur_idmac, flags, cnt, + start_addr + (i * PAGE_SIZE)); + + if(blk_cnt 8) + break; + blk_cnt -= 8; + cur_idmac++; + i++; + } while(1); + + data_end = (ulong)cur_idmac; + flush_dcache_range(data_start, data_end + ARCH_DMA_MINALIGN); + + ctrl = dwmci_readl(host, DWMCI_CTRL); + ctrl |= DWMCI_IDMAC_EN | DWMCI_DMA_EN; + dwmci_writel(host, DWMCI_CTRL, ctrl); + + ctrl = dwmci_readl(host, DWMCI_BMOD); + ctrl |= DWMCI_BMOD_IDMAC_FB | DWMCI_BMOD_IDMAC_EN; + dwmci_writel(host, DWMCI_BMOD, ctrl); + + dwmci_writel(host, DWMCI_BLKSIZ, data-blocksize); + dwmci_writel(host, DWMCI_BYTCNT, data-blocksize * data-blocks); +} + +static int dwmci_set_transfer_mode(struct dwmci_host *host, + struct mmc_data *data) +{ + unsigned long mode; + + mode = DWMCI_CMD_DATA_EXP; + if (data-flags MMC_DATA_WRITE) +
[U-Boot] [PULL] u-boot-pxa/master
The following changes since commit bd23b22badadcdc414a900828253961fc5ec6c39: Merge branch 'ag...@denx.de-next' of git://git.denx.de/u-boot-staging (2012-10-15 13:37:22 -0700) are available in the git repository at: git://git.denx.de/u-boot-pxa.git master for you to fetch changes up to 34cda7a0d89297e450106951d554b56ed4c1fd3b: h2200: Add support for iPAQ h2200 palmtop (2012-10-16 07:14:55 +0200) Łukasz Dałek (1): h2200: Add support for iPAQ h2200 palmtop MAINTAINERS|4 +++ board/h2200/Makefile | 49 + board/h2200/h2200-header.S | 27 board/h2200/h2200.c| 53 boards.cfg |1 + include/configs/h2200.h| 157 + 6 files changed, 291 insertions(+) create mode 100644 board/h2200/Makefile create mode 100644 board/h2200/h2200-header.S create mode 100644 board/h2200/h2200.c create mode 100644 include/configs/h2200.h ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v4 3/3] musb_udc : Fix compile warning.
Dear Harman Sohanpal, Fix the compile warning : implicit declaration of musb_platform_init when CONFIG_MUSB_UDC is defined. The extern musb_platform_init was declared in musb_hcd.h but no such extern function was declared for musb_udc. So a common function has been declared in musb_core.h which can be used for both host mode and device mode. Signed-off-by: Harman Sohanpal harman_sohan...@ti.com [...] Tom, what's the status? I dont see the warning. Best regards, Marek Vasut ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot