Re: [U-Boot] [PATCH] DM9000: fix build when debugging is enabled
On Monday 05 April 2010 01:22:39 Ben Warren wrote: On 3/24/2010 3:21 PM, Mike Frysinger wrote: From: Brent Kandetzkibre...@teleco.com The debug code uses the gcc __func__ define, but tries to use it as a static const string which no longer works. So treat it like a normal printf string argument. Signed-off-by: Brent Kandetzkibre...@teleco.com Signed-off-by: Mike Frysingervap...@gentoo.org --- drivers/net/dm9000x.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/drivers/net/dm9000x.c b/drivers/net/dm9000x.c index 73dd335..a7fef56 100644 --- a/drivers/net/dm9000x.c +++ b/drivers/net/dm9000x.c @@ -75,7 +75,7 @@ TODO: external MII is not functional, only internal at the moment. #define DM9000_DMP_PACKET(func,packet,length) \ do { \ int i; \ - printf(func : length: %d\n, length); \ + printf(%s: length: %d\n, func, length); \ for (i = 0; i length; i++) { \ if (i % 8 == 0) \ printf(\n%s: %02x: , func, i);\ An identical patch was applied in December (commit 076cd24cb4278c125c8f36df386852dc0fcfefae). Am I missing something? nope ... i was looking at the 2009.11 release apparently -mike signature.asc Description: This is a digitally signed message part. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] i2c: Move PPC4xx I2C driver into drivers/i2c directory
Hello Stefan, Stefan Roese wrote: This patch moves the PPC4xx specific I2C device driver into the I2C drivers directory. All 4xx config headers are updated to include this driver. Applied to 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] [i2c] Pull Request
Hello Wolfgang, The following changes since commit ffa37fc98d71ef930bccd4e9eed37f6ce6b4d6af: Wolfgang Denk (1): Merge branch 'next' are available in the git repository at: git://git.denx.de/u-boot-i2c.git master Stefan Roese (1): i2c: Move PPC4xx I2C driver into drivers/i2c directory cpu/ppc4xx/Makefile |1 - drivers/i2c/Makefile |1 + cpu/ppc4xx/i2c.c = drivers/i2c/ppc4xx_i2c.c |0 include/configs/ASH405.h |1 + include/configs/CANBT.h |1 + include/configs/CMS700.h |1 + include/configs/CPCI2DP.h|1 + include/configs/CPCI405.h|1 + include/configs/CPCI4052.h |1 + include/configs/CPCI405AB.h |1 + include/configs/CPCI405DT.h |1 + include/configs/CPCIISER4.h |1 + include/configs/CRAYL1.h |1 + include/configs/DP405.h |1 + include/configs/DU405.h |1 + include/configs/DU440.h |1 + include/configs/ERIC.h |1 + include/configs/G2000.h |1 + include/configs/HH405.h |1 + include/configs/HUB405.h |1 + include/configs/JSE.h|1 + include/configs/KAREF.h |1 + include/configs/METROBOX.h |1 + include/configs/MIP405.h |1 + include/configs/OCRTC.h |1 + include/configs/ORSG.h |1 + include/configs/PCI405.h |1 + include/configs/PIP405.h |1 + include/configs/PLU405.h |1 + include/configs/PMC405.h |1 + include/configs/PMC405DE.h |1 + include/configs/PMC440.h |1 + include/configs/PPChameleonEVB.h |1 + include/configs/VOH405.h |1 + include/configs/VOM405.h |1 + include/configs/W7OLMC.h |1 + include/configs/W7OLMG.h |1 + include/configs/WUH405.h |1 + include/configs/XPEDITE1000.h|1 + include/configs/alpr.h |1 + include/configs/amcc-common.h|1 + include/configs/csb272.h |1 + include/configs/csb472.h |1 + include/configs/korat.h |1 + include/configs/lwmon5.h |1 + include/configs/netstal-common.h |1 + include/configs/p3p440.h |1 + include/configs/pcs440ep.h |1 + include/configs/quad100hd.h |1 + include/configs/sbc405.h |1 + include/configs/sc3.h|1 + include/configs/zeus.h |1 + 52 files changed, 50 insertions(+), 1 deletions(-) rename cpu/ppc4xx/i2c.c = drivers/i2c/ppc4xx_i2c.c (100%) -- 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] [RFC] Program net device MAC addresses after initializing
Hello Ben, Ben Warren wrote: Add a new function to the eth_device struct for programming a network controller's hardware address. After all network devices have been initialized and the proper MAC address for each has been determined, make a device driver call to program the address into the device. Only device instances with valid unicast addresses will be programmed. This is a significant departure from existing U-boot behavior, but costs very little in startup time and addresses a very common complaint among developers. Signed-off-by: Ben Warren biggerbadder...@gmail.com Acked-by: Heiko Schocher h...@denx.de 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] support of SMDK2450
Hi all. Is the SMDK2450 supported by u-boot? It isn't a listed board, but it should be quite similar to others smdk24xx. If not, I have one of those by hand, and I have to port u-boot to this, so any help is appreciated (I've seen someone else is doing this, we can work together). BTW, what is this linux-s3c-u-boot-1.1.6? http://lxr.e2g.org/source/?v=s3c-u-boot-1.1.6 It seems a version of u-boot with patches for this boards. But on the official version there is nothing about it. Can someone explain me what is? Thank you a lot. Ilario Gottardello Sintesi s.r.l. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [RFC] Program net device MAC addresses after initializing
-Original Message- From: u-boot-boun...@lists.denx.de [mailto:u-boot-boun...@lists.denx.de] On Behalf Of Heiko Schocher Sent: Tuesday, April 06, 2010 12:49 PM To: Ben Warren Cc: u-boot@lists.denx.de Subject: Re: [U-Boot] [RFC] Program net device MAC addresses after initializing Hello Ben, Ben Warren wrote: Add a new function to the eth_device struct for programming a network controller's hardware address. After all network devices have been initialized and the proper MAC address for each has been determined, make a device driver call to program the address into the device. Only device instances with valid unicast addresses will be programmed. This is a significant departure from existing U-boot behavior, but costs very little in startup time and addresses a very common complaint among developers. Signed-off-by: Ben Warren biggerbadder...@gmail.com Acked-by: Heiko Schocher h...@denx.de Acked-by: Prafulla Wadaskar prafu...@marvell.com Regards.. Prafulla . . 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 mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] fix lockup in mcfmii/mii_discover_phy() in case communication fails
Hi Ben, On 4 Apr 2010 at 22:44, Ben Warren wrote: Hi Wolfgang, On 3/30/2010 10:19 AM, Wolfgang Wegner wrote: Signed-off-by: Wolfgang Wegnerw.weg...@astro-kom.de --- drivers/net/mcfmii.c |6 +- 1 files changed, 5 insertions(+), 1 deletions(-) diff --git a/drivers/net/mcfmii.c b/drivers/net/mcfmii.c index 4acc29e..83c0873 100644 --- a/drivers/net/mcfmii.c +++ b/drivers/net/mcfmii.c @@ -185,7 +185,11 @@ int mii_discover_phy(struct eth_device *dev) printf(PHY @ 0x%x pass %d\n, phyno, pass); #endif - for (i = 0; i (sizeof(phyinfo) / sizeof(phy_info_t)); i++) { + for (i = 0; + (i (sizeof(phyinfo) + / sizeof(phy_info_t))) + (phyinfo[i].phyid != 0); + i++) { if (phyinfo[i].phyid == phytype) { #ifdef ET_DEBUG printf(phyid %x - %s\n, This is brutal. Using 8-space tabs really does a good job of highlighting deep nesting of conditionals. If you're unable to make the driver easier to read (and I understand if that's the case), my preference would be to keep the sizeof()s on one line and combine the second term and the i++ on another. This makes lines 80 chars, but it was already that way. I agree, but was worried if the 80 char line would be a reason to reject the patch and wanted to have it as non-intrusive as possible. If there are no objections, I am happy to supply a second version with formatting as you suggested. Regards, Wolfgang ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v2 RFC] fix lockup in mcfmii/mii_discover_phy() in case communication fails
Signed-off-by: Wolfgang Wegner w.weg...@astro-kom.de --- modified formatting of inner for() loop and changed if(cond){...} to if(!cond) continue; to avoid deep indentation. drivers/net/mcfmii.c | 45 +++-- 1 files changed, 23 insertions(+), 22 deletions(-) diff --git a/drivers/net/mcfmii.c b/drivers/net/mcfmii.c index 4acc29e..060bdd7 100644 --- a/drivers/net/mcfmii.c +++ b/drivers/net/mcfmii.c @@ -175,38 +175,39 @@ int mii_discover_phy(struct eth_device *dev) #ifdef ET_DEBUG printf(PHY type 0x%x pass %d type\n, phytype, pass); #endif - if (phytype != 0x) { - phyaddr = phyno; - phytype = 16; - phytype |= - mii_send(mk_mii_read(phyno, PHY_PHYIDR2)); + if (phytype == 0x) + continue; + phyaddr = phyno; + phytype = 16; + phytype |= + mii_send(mk_mii_read(phyno, PHY_PHYIDR2)); #ifdef ET_DEBUG - printf(PHY @ 0x%x pass %d\n, phyno, pass); + printf(PHY @ 0x%x pass %d\n, phyno, pass); #endif - for (i = 0; i (sizeof(phyinfo) / sizeof(phy_info_t)); i++) { - if (phyinfo[i].phyid == phytype) { + for (i = 0; (i (sizeof(phyinfo) / sizeof(phy_info_t))) +(phyinfo[i].phyid != 0); i++) { + if (phyinfo[i].phyid == phytype) { #ifdef ET_DEBUG - printf(phyid %x - %s\n, - phyinfo[i].phyid, - phyinfo[i].strid); + printf(phyid %x - %s\n, + phyinfo[i].phyid, + phyinfo[i].strid); #endif - strcpy(info-phy_name, phyinfo[i].strid); - info-phyname_init = 1; - found = 1; - break; - } + strcpy(info-phy_name, phyinfo[i].strid); + info-phyname_init = 1; + found = 1; + break; } + } - if (!found) { + if (!found) { #ifdef ET_DEBUG - printf(0x%08x\n, phytype); + printf(0x%08x\n, phytype); #endif - strcpy(info-phy_name, unknown); - info-phyname_init = 1; - break; - } + strcpy(info-phy_name, unknown); + info-phyname_init = 1; + break; } } } -- 1.5.6.5 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] fix lockup in mcfmii/mii_discover_phy() in case communication fails
Hi, I just sent another proposal having the for(...) in only two lines by replacing the outer indentation level if (phytype != 0x) {... } to if (phytype == 0x) continue; Any comments on this? Regards, Wolfgang ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] POST: Added ECC memory test for mpc83xx.
On Sat, Apr 3, 2010 at 3:22 AM, Timur Tabi timur.t...@gmail.com wrote: On Fri, Apr 2, 2010 at 8:49 AM, Michael Zaidman michael.zaid...@gmail.com wrote: +inline static void ecc_clear(volatile ddr83xx_t *ddr) Please use I/O accessors instead of volatile. -- Timur Tabi Linux kernel developer at Freescale I do not question the rationale behind the requirement to use the I/O accessors. My question is - if there are any exceptions to the rule? Just for curiosity I compared the assembly code generated by both versions of ecc_clear routine - original and using I/O accessors. The original is of 0x3C size while accessors version has 0x74 size. Rewriting code to use accessors API added 56 bytes or 14 opcodes. It doubled the routine's execution time. The routine is called in the loop per each ecc word, that significantly increased execution time of the ECC POST test and consequently board startup time. -michael ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [GIT PULL] Pull request: u-boot-imx
Hi Tom, in the pull request there are also two patches by Heiko that were already included in the late pull, but they generated warnings and are not yet in mainline. The patch to remove these warnings was already merged by Wolfgang and it is in mainline. The following changes since commit ffa37fc98d71ef930bccd4e9eed37f6ce6b4d6af: Wolfgang Denk (1): Merge branch 'next' are available in the git repository at: git.denx.de/u-boot-imx.git master Fabio Estevam (1): MX51EVK: Remove CPLD related code Heiko Schocher (2): arm, mx27: add support for SDHC1 pin init arm, i.mx27: add support for magnesium board from projectiondesign Stefano Babic (1): Moved board specific values in config file MAINTAINERS |4 + MAKEALL |1 + Makefile |1 + board/freescale/mx51evk/mx51evk.c | 67 - board/freescale/mx51evk/mx51evk.h |1 - board/logicpd/imx27lite/imx27lite.c | 18 +++- cpu/arm926ejs/mx27/generic.c | 17 +++ cpu/arm_cortexa8/mx51/lowlevel_init.S |5 +- include/asm-arm/arch-mx27/imx-regs.h |1 + include/configs/imx27lite-common.h| 237 + include/configs/imx27lite.h | 200 +--- include/configs/magnesium.h | 71 ++ include/configs/mx51evk.h |3 + 13 files changed, 360 insertions(+), 266 deletions(-) create mode 100644 include/configs/imx27lite-common.h create mode 100644 include/configs/magnesium.h -- = DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: off...@denx.de = ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] at91sam9g45ekes SDHC/MMC
Henry Súcart skrev: Hi, I've been trying to get an SD card working with an at91sam9g45ek-es board. I read a couple of threads in the archive and ended up doing this: I have booted the AT91SAM9G45EKES (Actually the AT91SAM9M10EKES, but it is almost the same) from SD-Card for the last month. The patchset for 2009.11 is available for testing in my private git branch on www.openembedded.org: origin/ulf/linux-2.6.30-20100317 I came to the conclusion that the atmel MCI driver (written for the big endian AVR32) has significant byte sex problems. BR Ulf Samuelsson. I applied these patches: http://lists.denx.de/pipermail/u-boot/2009-August/059595.html http://lists.denx.de/pipermail/u-boot/2009-September/060053.html http://lists.denx.de/pipermail/u-boot/2009-September/060243.html Added these #define's to include/configs/at91sam9m10g45ek.h: #define CONFIG_CMD_EXT2 1 #define CONFIG_CMD_FAT 1 #define CONFIG_CMD_MMC 1 #define CONFIG_MMC1 #define CONFIG_ATMEL_MCI 1 Finally, I added this to the board init function: #ifdef CONFIG_ATMEL_MCI at91_mci0_hw_init(0, 4); #endif When I try it out this is what I get: U-Boot mmc init 0 mmc: clock 15 too low; setting CLKDIV to 255 mmc: command 1 failed (status: 0x0c100025) No MMC card found Am I doing something wrong? Any help is appreciated, Henry ___ 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 1/8] Nomadik: move timer code to drivers/misc
On Sun, Mar 28, 2010 at 07:30:01PM +0200, Tom wrote: Rabin Vincent wrote: The Nomadik MTU driver will also be used on the U8500 SoC, so move it out of platform-specific code. Acked-by: Alessandro Rubini rub...@unipv.it Acked-by: Michael Brandt michael.bra...@stericsson.com Signed-off-by: Rabin Vincent rabin.vinc...@stericsson.com --- cpu/arm926ejs/nomadik/Makefile |2 +- drivers/misc/Makefile |1 + .../nomadik/timer.c = drivers/misc/nomadik_mtu.c |2 +- include/configs/nhk8815.h |1 + .../{asm-arm/arch-nomadik/mtu.h = nomadik_mtu.h} |0 Move the nomadik_gpio.h and nomadik_mtu.h into nomadik.h Just to have 1 nomadik *.h nomadik.h is currently used for 8815-specific addresses. If Alessandro has no objections, I will move it to, say, nmdk8815.h and then combine the common peripheral headers into nomadik.h. Rabin ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 2/8] Nomadik: move gpio driver to drivers/gpio
On Sun, Mar 28, 2010 at 07:32:17PM +0200, Tom wrote: Rabin Vincent wrote: diff --git a/include/configs/nhk8815.h b/include/configs/nhk8815.h [...] #ifndef __ASSEMBLY__ -#include asm/arch/gpio.h +#include nomadik_gpio.h It would be better if the #include was not in config file. Can this be moved to the C files that need it ? I believe it's here because this is used by soft_i2c.c. I'll leave it to Alessandro to decide if he wants to move it out, because this is 8815-specific. Rabin ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v2] Marvell GuruPlug Board Support
-Original Message- From: Wolfgang Denk [mailto:w...@denx.de] Sent: Monday, March 22, 2010 1:16 AM To: Tom; Prafulla Wadaskar Cc: Siddarth Gore; u-boot@lists.denx.de; Ashish Karkare; Prabhanjan Sarnaik Subject: Re: [U-Boot] [PATCH v2] Marvell GuruPlug Board Support Dear Tom, dear Prafulla, In message 1268898134-10793-1-git-send-email-go...@marvell.com you wrote: GuruPlug Standard: 1 Gb Ethernet, 2 USB 2.0 GuruPlug Plus: 2 Gb Ethernet, 2 USB 2.0, 1 eSATA, 1 uSD slot References: http://www.globalscaletechnologies.com/t-guruplugdetails.aspx http://plugcomputer.org This patch is for GuruPlug Plus, but it supports Standard version as well. Signed-off-by: Siddarth Gore go...@marvell.com --- Changes compared to the previous version (messaage-id: 1268660568-23022-1-git-send-email-go...@marvell.com) - maintainers entry sorted according to last name - removed trailing comment from board/Marvell/guruplug/config.mk - removed CONFIG_CMD_AUTOSCRIPT from include/configs/guruplug.h - removed word 'minimal' from comment in include/configs/guruplug.h MAINTAINERS |4 + MAKEALL |1 + Makefile|3 + board/Marvell/guruplug/Makefile | 51 + board/Marvell/guruplug/config.mk| 27 + board/Marvell/guruplug/guruplug.c | 167 + board/Marvell/guruplug/guruplug.h | 39 +++ board/Marvell/guruplug/kwbimage.cfg | 162 include/configs/guruplug.h | 198 +++ 9 files changed, 652 insertions(+), 0 deletions(-) create mode 100644 board/Marvell/guruplug/Makefile create mode 100644 board/Marvell/guruplug/config.mk create mode 100644 board/Marvell/guruplug/guruplug.c create mode 100644 board/Marvell/guruplug/guruplug.h create mode 100644 board/Marvell/guruplug/kwbimage.cfg create mode 100644 include/configs/guruplug.h Reviewed-by: Wolfgang Denk w...@denx.de Applied to u-boot-marvell.git master branch Regards.. Prafulla . . ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 1/8] Nomadik: move timer code to drivers/misc
.../{asm-arm/arch-nomadik/mtu.h = nomadik_mtu.h} |0 Move the nomadik_gpio.h and nomadik_mtu.h into nomadik.h Just to have 1 nomadik *.h nomadik.h is currently used for 8815-specific addresses. If Alessandro has no objections, I will move it to, say, nmdk8815.h and then combine the common peripheral headers into nomadik.h. While I preferred the original patch (each peripheral has an header file, usually), I have no problem with this approach. Actually, now that nomadik is the name of common code (not the individual cpu), it's correct for nomadik.h to have 8815 in the name. /alessandro ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] net: Kirkwood_egiga.c bugfixes for rx path
Cosmetic changes: Few comments updated Functionality: Rx packet frame size is programming should be done when port is in disabled state. this is corrected Signed-off-by: Prafulla Wadaskar prafu...@marvell.com --- drivers/net/kirkwood_egiga.c |9 + 1 files changed, 5 insertions(+), 4 deletions(-) diff --git a/drivers/net/kirkwood_egiga.c b/drivers/net/kirkwood_egiga.c index 25c72df..dd711e4 100644 --- a/drivers/net/kirkwood_egiga.c +++ b/drivers/net/kirkwood_egiga.c @@ -424,8 +424,6 @@ static int kwgbe_init(struct eth_device *dev) KWGBEREG_WR(regs-pxc, PRT_CFG_VAL); KWGBEREG_WR(regs-pxcx, PORT_CFG_EXTEND_VALUE); KWGBEREG_WR(regs-psc0, PORT_SERIAL_CONTROL_VALUE); - /* Disable port initially */ - KWGBEREG_BITS_SET(regs-psc0, KWGBE_SERIAL_PORT_EN); /* Assign port SDMA configuration */ KWGBEREG_WR(regs-sdc, PORT_SDMA_CFG_VALUE); @@ -438,6 +436,9 @@ static int kwgbe_init(struct eth_device *dev) KWGBEREG_WR(regs-psc0, KWGBE_MAX_RX_PACKET_9700BYTE | (KWGBEREG_RD(regs-psc0) MRU_MASK)); + /* Enable port initially */ + KWGBEREG_BITS_SET(regs-psc0, KWGBE_SERIAL_PORT_EN); + /* * Set ethernet MTU for leaky bucket mechanism to 0 - this will * disable the leaky bucket mechanism . @@ -480,7 +481,7 @@ static int kwgbe_halt(struct eth_device *dev) stop_queue(regs-tqc); stop_queue(regs-rqc); - /* Enable port */ + /* Disable port */ KWGBEREG_BITS_RESET(regs-psc0, KWGBE_SERIAL_PORT_EN); /* Set port is not reset */ KWGBEREG_BITS_RESET(regs-psc1, 1 4); @@ -525,7 +526,7 @@ static int kwgbe_send(struct eth_device *dev, volatile void *dataptr, p_txdesc-buf_ptr = (u8 *) p; p_txdesc-byte_cnt = datasize; - /* Apply send command using zeroth RXUQ */ + /* Apply send command using zeroth TXUQ */ KWGBEREG_WR(regs-tcqdp[TXUQ], (u32) p_txdesc); KWGBEREG_WR(regs-tqc, (1 TXUQ)); -- 1.5.3.3 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] net:kirkwood_egiga.c: MAC addresses programming using write_hwaddr
This patch depends upon a patch http://lists.denx.de/pipermail/u-boot/2010-April/069478.html Added a new function kwgbe_write_hwaddr for programming egiga controller's hardware address. This function will be called for each egiga port being used This is a significant improvement and better solution for Kirkwood based boards for MAC address issues that we were facing Signed-off-by: Prafulla Wadaskar prafu...@marvell.com --- drivers/net/kirkwood_egiga.c | 12 +++- 1 files changed, 11 insertions(+), 1 deletions(-) diff --git a/drivers/net/kirkwood_egiga.c b/drivers/net/kirkwood_egiga.c index dd711e4..70dedb1 100644 --- a/drivers/net/kirkwood_egiga.c +++ b/drivers/net/kirkwood_egiga.c @@ -418,7 +418,6 @@ static int kwgbe_init(struct eth_device *dev) set_dram_access(regs); port_init_mac_tables(regs); - port_uc_addr_set(regs, dkwgbe-dev.enetaddr); /* Assign port configuration and command. */ KWGBEREG_WR(regs-pxc, PRT_CFG_VAL); @@ -498,6 +497,16 @@ static int kwgbe_halt(struct eth_device *dev) return 0; } +static int kwgbe_write_hwaddr(struct eth_device *dev) +{ + struct kwgbe_device *dkwgbe = to_dkwgbe(dev); + struct kwgbe_registers *regs = dkwgbe-regs; + + /* Programms net device MAC address after initialization */ + port_uc_addr_set(regs, dkwgbe-dev.enetaddr); + return 0; +} + static int kwgbe_send(struct eth_device *dev, volatile void *dataptr, int datasize) { @@ -694,6 +703,7 @@ int kirkwood_egiga_initialize(bd_t * bis) dev-halt = (void *)kwgbe_halt; dev-send = (void *)kwgbe_send; dev-recv = (void *)kwgbe_recv; + dev-write_hwaddr = (void *)kwgbe_write_hwaddr; eth_register(dev); -- 1.5.3.3 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] LinkedIn Messages, 4/06/2010
LinkedIn REMINDERS: Invitation Reminders: * View Invitation from Christopher McNamara http://www.linkedin.com/e/YhLefj14Y3m-0E8v1ZCDgtixJP5Kn9_7/blk/I1908441891_2/39vcjAUcjgQe30VckALqnpPbOYWrSlI/svi/ PENDING MESSAGES: There are a total of 12 messages awaiting your response. Visit your InBox now: http://www.linkedin.com/e/YhLefj14Y3m-0E8v1ZCDgtixJP5Kn9_7/inb/ -- Don't want to receive email notifications? Adjust your message settings: https://www.linkedin.com/e/YhLefj14Y3m-0E8v1ZCDgtixJP5Kn9_7/prv/ LinkedIn values your privacy. At no time has LinkedIn made your email address available to any other LinkedIn user without your permission. (c) 2010, LinkedIn Corporation. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v2] net:kirkwood_egiga.c: MAC addresses programming using write_hwaddr
This patch depends upon a patch http://lists.denx.de/pipermail/u-boot/2010-April/069478.html Added a new function kwgbe_write_hwaddr for programming egiga controller's hardware address. This function will be called for each egiga port being used This is a significant improvement and better solution for Kirkwood based boards for MAC address issues that we were facing Signed-off-by: Prafulla Wadaskar prafu...@marvell.com --- changelog: v2: 1. cosmetic spelling correction 2. port_uc_addr_set retained in init function call drivers/net/kirkwood_egiga.c | 11 +++ 1 files changed, 11 insertions(+), 0 deletions(-) diff --git a/drivers/net/kirkwood_egiga.c b/drivers/net/kirkwood_egiga.c index dd711e4..932792e 100644 --- a/drivers/net/kirkwood_egiga.c +++ b/drivers/net/kirkwood_egiga.c @@ -498,6 +498,16 @@ static int kwgbe_halt(struct eth_device *dev) return 0; } +static int kwgbe_write_hwaddr(struct eth_device *dev) +{ + struct kwgbe_device *dkwgbe = to_dkwgbe(dev); + struct kwgbe_registers *regs = dkwgbe-regs; + + /* Programs net device MAC address after initialization */ + port_uc_addr_set(regs, dkwgbe-dev.enetaddr); + return 0; +} + static int kwgbe_send(struct eth_device *dev, volatile void *dataptr, int datasize) { @@ -694,6 +704,7 @@ int kirkwood_egiga_initialize(bd_t * bis) dev-halt = (void *)kwgbe_halt; dev-send = (void *)kwgbe_send; dev-recv = (void *)kwgbe_recv; + dev-write_hwaddr = (void *)kwgbe_write_hwaddr; eth_register(dev); -- 1.5.3.3 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [RFC] Program net device MAC addresses after initializing
Dear Ben Warren, In message 1270450929-17004-1-git-send-email-biggerbadder...@gmail.com you wrote: Add a new function to the eth_device struct for programming a network controller's hardware address. After all network devices have been initialized and the proper MAC address for each has been determined, make a device driver call to program the address into the device. Only device instances with valid unicast addresses will be programmed. This is a significant departure from existing U-boot behavior, but costs very little in startup time and addresses a very common complaint among developers. The thing is that this _is_ a violation of the design rules, and we should not make assumptions that such an initialization is harmless for all systems. From the patch it is not clear to me who is supposed to implement write_hwaddr() - it should be made clear that this should be be done only when absolutely necessary, and then best in board specific code, The patch should add such a description to the documentation. Also, we should remove / adapt existing code that performs basicly the same action. Thanks. Best regards, Wolfgang Denk -- DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de That's their goal, remember, a goal that's really contrary to that of the programmer or administrator. We just want to get our jobs done. $Bill just wants to become $$Bill. These aren't even marginallly congruent. -- Tom Christiansen in 6jhtqk$ql...@csnews.cs.colorado.edu ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] pm9261: remove CONFIG_CMD_AUTOSCRIPT
Signed-off-by: Asen Dimov di...@ronetix.at --- include/configs/pm9261.h |1 - 1 files changed, 0 insertions(+), 1 deletions(-) diff --git a/include/configs/pm9261.h b/include/configs/pm9261.h index 47bb8c0..41e28d3 100644 --- a/include/configs/pm9261.h +++ b/include/configs/pm9261.h @@ -200,7 +200,6 @@ #include config_cmd_default.h #undef CONFIG_CMD_BDI #undef CONFIG_CMD_IMI -#undef CONFIG_CMD_AUTOSCRIPT #undef CONFIG_CMD_FPGA #undef CONFIG_CMD_LOADS #undef CONFIG_CMD_IMLS -- 1.5.5.6 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] pm9261 converted to at91 soc access
Signed-off-by: Asen Dimov di...@ronetix.at --- board/ronetix/pm9261/led.c| 18 +++-- board/ronetix/pm9261/pm9261.c | 152 +++- include/configs/pm9261.h | 68 +-- 3 files changed, 130 insertions(+), 108 deletions(-) diff --git a/board/ronetix/pm9261/led.c b/board/ronetix/pm9261/led.c index 396c3e7..ff21ce6 100644 --- a/board/ronetix/pm9261/led.c +++ b/board/ronetix/pm9261/led.c @@ -26,19 +26,21 @@ #include common.h #include asm/arch/at91sam9261.h #include asm/arch/at91_pmc.h -#include asm/arch/gpio.h +#include asm/arch/at91_pio.h #include asm/arch/io.h void coloured_LED_init(void) { + at91_pmc_t *pmc= (at91_pmc_t *) AT91_PMC_BASE; + /* Enable clock */ - at91_sys_write(AT91_PMC_PCER, 1 AT91SAM9261_ID_PIOC); + writel(1 AT91SAM9261_ID_PIOC, pmc-pcer); - at91_set_gpio_output(CONFIG_RED_LED, 1); - at91_set_gpio_output(CONFIG_GREEN_LED, 1); - at91_set_gpio_output(CONFIG_YELLOW_LED, 1); + at91_set_pio_output(CONFIG_RED_LED, 1); + at91_set_pio_output(CONFIG_GREEN_LED, 1); + at91_set_pio_output(CONFIG_YELLOW_LED, 1); - at91_set_gpio_value(CONFIG_RED_LED, 0); - at91_set_gpio_value(CONFIG_GREEN_LED, 1); - at91_set_gpio_value(CONFIG_YELLOW_LED, 1); + at91_set_pio_value(CONFIG_RED_LED, 0); + at91_set_pio_value(CONFIG_GREEN_LED, 1); + at91_set_pio_value(CONFIG_YELLOW_LED, 1); } diff --git a/board/ronetix/pm9261/pm9261.c b/board/ronetix/pm9261/pm9261.c index 8662339..53d8c48 100644 --- a/board/ronetix/pm9261/pm9261.c +++ b/board/ronetix/pm9261/pm9261.c @@ -27,13 +27,14 @@ #include common.h #include asm/sizes.h #include asm/arch/at91sam9261.h -#include asm/arch/at91sam9261_matrix.h #include asm/arch/at91sam9_smc.h #include asm/arch/at91_common.h #include asm/arch/at91_pmc.h #include asm/arch/at91_rstc.h +#include asm/arch/at91_matrix.h +#include asm/arch/at91_pio.h #include asm/arch/clk.h -#include asm/arch/gpio.h +#include asm/arch/at91_pio.h #include asm/arch/io.h #include asm/arch/hardware.h #include lcd.h @@ -55,39 +56,48 @@ DECLARE_GLOBAL_DATA_PTR; static void pm9261_nand_hw_init(void) { unsigned long csa; + at91_smc_t *smc= (at91_smc_t *) AT91_SMC_BASE; + at91_matrix_t *matrix = (at91_matrix_t *) AT91_MATRIX_BASE; + at91_pmc_t *pmc= (at91_pmc_t *) AT91_PMC_BASE; /* Enable CS3 */ - csa = at91_sys_read(AT91_MATRIX_EBICSA); - at91_sys_write(AT91_MATRIX_EBICSA, - csa | AT91_MATRIX_CS3A_SMC_SMARTMEDIA); + csa = readl(matrix-csa) | AT91_MATRIX_CSA_EBI_CS3A; + writel(csa, matrix-csa); /* Configure SMC CS3 for NAND/SmartMedia */ - at91_sys_write(AT91_SMC_SETUP(3), - AT91_SMC_NWESETUP_(1) | AT91_SMC_NCS_WRSETUP_(0) | - AT91_SMC_NRDSETUP_(1) | AT91_SMC_NCS_RDSETUP_(0)); - at91_sys_write(AT91_SMC_PULSE(3), - AT91_SMC_NWEPULSE_(3) | AT91_SMC_NCS_WRPULSE_(3) | - AT91_SMC_NRDPULSE_(3) | AT91_SMC_NCS_RDPULSE_(3)); - at91_sys_write(AT91_SMC_CYCLE(3), - AT91_SMC_NWECYCLE_(5) | AT91_SMC_NRDCYCLE_(5)); - at91_sys_write(AT91_SMC_MODE(3), - AT91_SMC_READMODE | AT91_SMC_WRITEMODE | - AT91_SMC_EXNWMODE_DISABLE | + writel(AT91_SMC_SETUP_NWE(1) | AT91_SMC_SETUP_NCS_WR(0) | + AT91_SMC_SETUP_NRD(1) | AT91_SMC_SETUP_NCS_RD(0), + smc-cs[3].setup); + + writel(AT91_SMC_PULSE_NWE(3) | AT91_SMC_PULSE_NCS_WR(3) | + AT91_SMC_PULSE_NRD(3) | AT91_SMC_PULSE_NCS_RD(3), + smc-cs[3].pulse); + + writel(AT91_SMC_CYCLE_NWE(5) | AT91_SMC_CYCLE_NRD(5), + smc-cs[3].cycle); + + writel(AT91_SMC_MODE_RM_NRD | AT91_SMC_MODE_WM_NWE | + AT91_SMC_MODE_EXNW_DISABLE | #ifdef CONFIG_SYS_NAND_DBW_16 - AT91_SMC_DBW_16 | + AT91_SMC_MODE_DBW_16 | #else /* CONFIG_SYS_NAND_DBW_8 */ - AT91_SMC_DBW_8 | + AT91_SMC_MODE_DBW_8 | #endif - AT91_SMC_TDF_(2)); + AT91_SMC_MODE_TDF_CYCLE(2), + smc-cs[3].mode); + + writel(1 AT91SAM9261_ID_PIOA | + 1 AT91SAM9261_ID_PIOC, + pmc-pcer); /* Configure RDY/BSY */ - at91_set_gpio_input(AT91_PIN_PA16, 1); + at91_set_pio_input(CONFIG_SYS_NAND_READY_PIN, 1); /* Enable NandFlash */ - at91_set_gpio_output(AT91_PIN_PC14, 1); + at91_set_pio_output(CONFIG_SYS_NAND_ENABLE_PIN, 1); - at91_set_A_periph(AT91_PIN_PC0, 0); /* NANDOE */ - at91_set_A_periph(AT91_PIN_PC1, 0); /* NANDWE */ + at91_set_a_periph(AT91_PIO_PORTC, 0, 0);/* NANDOE */ + at91_set_a_periph(AT91_PIO_PORTC, 1, 0);/* NANDWE */ } #endif @@ -95,23 +105,30 @@
[U-Boot] [OT] initrd problem with m68k linux
Dear all, I know it is a little off-topic for this list, but maybe it is somewhat related to U-Boot. I really do not know at which stage I am making a mistake here. I have a MCF54455 board running U-Boot and a slightly modified kernel from Freescale (linux 2.6.25). I can boot the system using initramfs by including the (initial) root fs into the kernel via CONFIG_INITRAMFS_SOURCE. CONFIG_SYS_BOOTMAPSZ is set to 64MB: #define CONFIG_SYS_BOOTMAPSZ(CONFIG_SYS_SDRAM_BASE + (64 20)) Now I wanted to split the images and load the initrd as a seperate image. So I made a cramfs image: /usr/sbin/mkcramfs rootfs rootfs.cramfs /usr/local/bin/mkimage -n 'Test Ramdisk Image' -A m68k -O linux -T ramdisk -C none -d rootfs.cramfs rootfs.img Then I load both images via tftp: - tftp 0x4200 192.168.1.100:rootfs.img [...] - tftp 0x4400 192.168.1.100:uImage [...] - setenv bootargs initrd=/dev/ram rw root=ram0 - setenv initrd_high 0x4400 - bootm 0x4400 0x4200 ## Booting kernel from Legacy Image at 4400 ... Image Name: Linux-2.6.25 Created: 2010-04-06 13:14:42 UTC Image Type: M68K Linux Kernel Image (gzip compressed) Data Size:1318376 Bytes = 1.3 MB Load Address: 4002 Entry Point: 4002 Verifying Checksum ... OK ## Loading init Ramdisk from Legacy Image at 4200 ... Image Name: Test Ramdisk Image Created: 2010-04-06 11:23:36 UTC Image Type: M68K Linux RAMDisk Image (uncompressed) Data Size:6213632 Bytes = 5.9 MB Load Address: Entry Point: Verifying Checksum ... OK Uncompressing Kernel Image ... OK Loading Ramdisk to 43a13000, end 4400 ... OK Linux version 2.6.25 (rou...@labor2.local) (gcc version 4.3.3 (Sourcery G++ Lite 4.3-209) ) #46 Tue Apr 6 15:14:31 CEST 2010 starting up linux startmem 0x402f, endmem 0x4800, size 125 MB console [ttyS0] enabled ** availmem=0x402f2000 pa(am)=0x402f2000 ** mstart=0x402f mend=0x47ffe000 bpfn=0x2 minpfn=0x20178 maxpfn=0x23fff dma: phys base=0x402f2000 phys end=0x40ff virt base=0xef00 mda=0xefff pa(mda)=0x40ff Built 1 zonelists in Zone order, mobility grouping on. Total pages: 16312 Kernel command line: initrd=/dev/ram rw root=/dev/ram [...] prepare_namespace rd_load_image 1, from = /initrd.image List of all partitions: 0100 32767 ram0 (driver?) 0101 32767 ram1 (driver?) 0102 32767 ram2 (driver?) 0103 32767 ram3 (driver?) No filesystem could mount root, tried: ext3 ext2 cramfs minix msdos vfat romfs Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(1,0) As can be seen, I added some printks to see what is going on at all. rd_load_image() fails at in_fd = sys_open(from, O_RDONLY, 0); because from is set to /initrd.image, which is not available. But where should it come from if there is no root fs yet? Could anybody point me to where I should look for the mistake? Can it be a problem in my U-Boot configuration, or is it definitely a problem with the kernel [configuration]? Thanks for any comments! Regards, Wolfgang ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v3 0/3] TI: tnetv107x patch series
TNETV107X is a Texas Instruments SoC based on an ARM1176 core, and with a bunch on on-chip integrated peripherals. This patch series generalizes current ARM1176 code to allow for the addition of new ARM1176 SOCs. The remaining patches in this series add arch and board support. The contents of this series are identical to the v2 patch series posted earlier, with the exception of an added comment in tnetv107x_evm.h indicating the reasoning behind reusing the davinci_nand MTDID. Cyril Chemparathy (3): ARM1176: Coexist with other ARM1176 platforms ARM1176: TI: TNETV107X soc initial support TI: TNETV107X EVM initial support MAINTAINERS|4 + MAKEALL|1 + Makefile |3 + board/ti/tnetv107xevm/Makefile | 49 +++ board/ti/tnetv107xevm/config.mk| 20 + board/ti/tnetv107xevm/sdb_board.c | 66 cpu/arm1176/cpu.c |1 - cpu/arm1176/start.S| 60 +++- cpu/arm1176/tnetv107x/Makefile | 44 +++ cpu/arm1176/tnetv107x/aemif.c | 151 cpu/arm1176/tnetv107x/clock.c | 542 cpu/arm1176/tnetv107x/init.c | 41 ++ cpu/arm1176/tnetv107x/lowlevel_init.S | 25 ++ cpu/arm1176/tnetv107x/mux.c| 463 cpu/arm1176/tnetv107x/timer.c | 125 +++ cpu/arm1176/tnetv107x/wdt.c| 172 + include/asm-arm/arch-tnetv107x/clock.h | 50 +++ include/asm-arm/arch-tnetv107x/emif_defs.h |1 + include/asm-arm/arch-tnetv107x/hardware.h | 184 ++ include/asm-arm/arch-tnetv107x/mux.h | 307 include/asm-arm/arch-tnetv107x/nand_defs.h | 38 ++ include/configs/smdk6400.h |6 + include/configs/tnetv107x_evm.h| 214 +++ 23 files changed, 2558 insertions(+), 9 deletions(-) create mode 100644 board/ti/tnetv107xevm/Makefile create mode 100644 board/ti/tnetv107xevm/config.mk create mode 100644 board/ti/tnetv107xevm/sdb_board.c create mode 100644 cpu/arm1176/tnetv107x/Makefile create mode 100644 cpu/arm1176/tnetv107x/aemif.c create mode 100644 cpu/arm1176/tnetv107x/clock.c create mode 100644 cpu/arm1176/tnetv107x/init.c create mode 100644 cpu/arm1176/tnetv107x/lowlevel_init.S create mode 100644 cpu/arm1176/tnetv107x/mux.c create mode 100644 cpu/arm1176/tnetv107x/timer.c create mode 100644 cpu/arm1176/tnetv107x/wdt.c create mode 100644 include/asm-arm/arch-tnetv107x/clock.h create mode 100644 include/asm-arm/arch-tnetv107x/emif_defs.h create mode 100644 include/asm-arm/arch-tnetv107x/hardware.h create mode 100644 include/asm-arm/arch-tnetv107x/mux.h create mode 100644 include/asm-arm/arch-tnetv107x/nand_defs.h create mode 100644 include/configs/tnetv107x_evm.h ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v3 1/3] ARM1176: Coexist with other ARM1176 platforms
The current ARM1176 CPU specific code is too specific to the SMDK6400 architecture. The following changes were necessary prerequisites for the addition of other SoCs based on ARM1176. Existing board's (SMDK6400) configuration has been modified to keep behavior unchanged despite these changes. 1. Peripheral port remap configurability The earlier code had hardcoded remap values specific to s3c64xx in start.S. This change makes the peripheral port remap addresses and sizes configurable. 2. Skip low level initialization Ability to skip low level initialization if necessary. Many other platforms have a similar capability, and this is quite useful during debug/bring-up. 3. U-Boot code relocation support Most architectures allow u-boot code to run initially at a different address (possibly in NOR) and then get relocated to its final resting place in RAM. Added support for this capability in ARM1176 architecture. 4. Disable TCM if necessary If a ROM based bootloader happened to have initialized TCM, we disable it here to keep things sane. 5. Remove unnecessary SoC specific includes ARM1176 code does not really need this SoC specific include. The presence of this include prevents builds on other ARM1176 archs. 6. ARM926 style MMU disable when !CONFIG_ENABLE_MMU The original MMU disable code masks out too many bits from the load address when it tries to figure out the physical address of the jump target label. Consequently, it ends up branching to the wrong address after disabling the MMU. Signed-off-by: Cyril Chemparathy cy...@ti.com --- v3: unchanged from v2 v2: unchanged from v1 cpu/arm1176/cpu.c |1 - cpu/arm1176/start.S| 60 ++-- include/configs/smdk6400.h |6 3 files changed, 58 insertions(+), 9 deletions(-) diff --git a/cpu/arm1176/cpu.c b/cpu/arm1176/cpu.c index 2c0014f..c0fd114 100644 --- a/cpu/arm1176/cpu.c +++ b/cpu/arm1176/cpu.c @@ -33,7 +33,6 @@ #include common.h #include command.h -#include asm/arch/s3c6400.h #include asm/system.h static void cache_flush (void); diff --git a/cpu/arm1176/start.S b/cpu/arm1176/start.S index 68a356d..beec574 100644 --- a/cpu/arm1176/start.S +++ b/cpu/arm1176/start.S @@ -1,5 +1,5 @@ /* - * armboot - Startup Code for S3C6400/ARM1176 CPU-core + * armboot - Startup Code for ARM1176 CPU-core * * Copyright (c) 2007 Samsung Electronics * @@ -35,7 +35,6 @@ #ifdef CONFIG_ENABLE_MMU #include asm/proc/domain.h #endif -#include asm/arch/s3c6400.h #if !defined(CONFIG_ENABLE_MMU) !defined(CONFIG_SYS_PHY_UBOOT_BASE) #define CONFIG_SYS_PHY_UBOOT_BASE CONFIG_SYS_UBOOT_BASE @@ -145,6 +144,7 @@ reset: * * */ +#ifndef CONFIG_SKIP_LOWLEVEL_INIT /* * we do sys-critical inits only at reboot, * not when booting from ram! @@ -170,6 +170,8 @@ cpu_init_crit: bic r0, r0, #0x0087 @ clear bits 7, 2:0 (B--- -CAM) orr r0, r0, #0x0002 @ set bit 2 (A) Align orr r0, r0, #0x1000 @ set bit 12 (I) I-Cache + +#ifdef CONFIG_ENABLE_MMU /* Prepare to disable the MMU */ adr r1, mmu_disable_phys /* We presume we're within the first 1024 bytes */ @@ -187,20 +189,60 @@ mmu_disable: nop nop mov pc, r2 +mmu_disable_phys: +#else + mcr p15, 0, r0, c1, c0, 0 #endif -mmu_disable_phys: +#ifdef CONFIG_DISABLE_TCM + /* +* Disable the TCMs +*/ + mrc p15, 0, r0, c0, c0, 2 /* Return TCM details */ + cmp r0, #0 + beq skip_tcmdisable + mov r1, #0 + mov r2, #1 + tst r0, r2 + mcrne p15, 0, r1, c9, c1, 1 /* Disable Instruction TCM if present*/ + tst r0, r2, LSL #16 + mcrne p15, 0, r1, c9, c1, 0 /* Disable Data TCM if present*/ +skip_tcmdisable: +#endif +#endif + +#ifdef CONFIG_PERIPORT_REMAP /* Peri port setup */ - ldr r0, =0x7000 - orr r0, r0, #0x13 + ldr r0, =CONFIG_PERIPORT_BASE + orr r0, r0, #CONFIG_PERIPORT_SIZE mcr p15,0,r0,c15,c2,4 @ 256M (0x7000 - 0x7fff) +#endif /* * Go setup Memory and board specific bits prior to relocation. */ bl lowlevel_init /* go setup pll,mux,memory */ +#endif /* CONFIG_SKIP_LOWLEVEL_INIT */ + +#ifndef CONFIG_SKIP_RELOCATE_UBOOT +relocate: /* relocate U-Boot to RAM */ + adr r0, _start /* r0 - current position of code */ + ldr r1, _TEXT_BASE /* test if we run from flash or RAM */ + cmp r0, r1 /* don't reloc during debug */ + beq stack_setup + + ldr r2, _armboot_start + ldr r3, _bss_start + sub r2, r3, r2 /* r2 - size of armboot*/ +
[U-Boot] [PATCH v3 3/3] TI: TNETV107X EVM initial support
TNETV107X is a Texas Instruments SoC based on an ARM1176 core, and with a bunch on on-chip integrated peripherals. This patch adds support for the TNETV107X EVM board. Signed-off-by: Cyril Chemparathy cy...@ti.com --- v3: Added NAND MTDID comment in board config v2: Added maintainers entry v2: Fixed sort order in main makefile v2: Remove board specific linker script v2: Style fixes - multiline comments v2: Replaced clk_get() with clk_get_rate() MAINTAINERS |4 + MAKEALL |1 + Makefile |3 + board/ti/tnetv107xevm/Makefile| 49 + board/ti/tnetv107xevm/config.mk | 20 board/ti/tnetv107xevm/sdb_board.c | 66 +++ include/configs/tnetv107x_evm.h | 214 + 7 files changed, 357 insertions(+), 0 deletions(-) create mode 100644 board/ti/tnetv107xevm/Makefile create mode 100644 board/ti/tnetv107xevm/config.mk create mode 100644 board/ti/tnetv107xevm/sdb_board.c create mode 100644 include/configs/tnetv107x_evm.h diff --git a/MAINTAINERS b/MAINTAINERS index bb03f17..daa074c 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -62,6 +62,10 @@ Oliver Brown obr...@adventnetworks.com gw8260 MPC8260 +Cyril Chemparathy cy...@ti.com + + tnetv107x_evm tnetv107x + Conn Clark cl...@esteem.com ESTEEM192E MPC8xx diff --git a/MAKEALL b/MAKEALL index a88c31e..63d8d16 100755 --- a/MAKEALL +++ b/MAKEALL @@ -623,6 +623,7 @@ LIST_ARM11=\ mx31pdk_nand\ qong\ smdk6400\ + tnetv107x_evm \ # diff --git a/Makefile b/Makefile index 4532550..d0ef39d 100644 --- a/Makefile +++ b/Makefile @@ -3313,6 +3313,9 @@ smdk6400_config : unconfig fi @echo CONFIG_NAND_U_BOOT = y $(obj)include/config.mk +tnetv107x_evm_config: unconfig + @$(MKCONFIG) $(@:_config=) arm arm1176 tnetv107xevm ti tnetv107x + # # i386 # diff --git a/board/ti/tnetv107xevm/Makefile b/board/ti/tnetv107xevm/Makefile new file mode 100644 index 000..2446c2a --- /dev/null +++ b/board/ti/tnetv107xevm/Makefile @@ -0,0 +1,49 @@ +# +# 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., 675 Mass Ave, Cambridge, MA 02139, USA. +# + +include $(TOPDIR)/config.mk + +LIB= $(obj)lib$(BOARD).a + +COBJS += sdb_board.o + +SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c) +OBJS := $(addprefix $(obj),$(COBJS)) +SOBJS := $(addprefix $(obj),$(SOBJS)) + +.PHONY: all + +all: $(LIB) + +$(LIB):$(obj).depend $(OBJS) $(SOBJS) + $(AR) $(ARFLAGS) $@ $(OBJS) $(SOBJS) + +clean: + rm -f $(SOBJS) $(OBJS) + +distclean: clean + rm -f $(LIB) core *.bak *~ .depend + +# +# This is for $(obj).depend target +include $(SRCTREE)/rules.mk + +sinclude $(obj).depend + +# diff --git a/board/ti/tnetv107xevm/config.mk b/board/ti/tnetv107xevm/config.mk new file mode 100644 index 000..d24d49a --- /dev/null +++ b/board/ti/tnetv107xevm/config.mk @@ -0,0 +1,20 @@ +# +# 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., 675 Mass Ave, Cambridge, MA 02139, USA. +# + +TEXT_BASE = 0x83FC diff --git a/board/ti/tnetv107xevm/sdb_board.c
[U-Boot] [PATCH] remove myself as a maintainer of several ARM boards
Since I haven't been actively maintaining these boards for a long while, keeping myself as their maintainer makes no sense. Signed-off-by: Guennadi Liakhovetski g.liakhovet...@gmx.de --- I've submitted my last patch to U-Boot almost a year ago and haven't been following U-Boot development since then. This, the general lack of time and limited access to affected hardware make me unsuitable for the role of a maintainer of these boards. This patch just confirms in writing the de-facto situation. I'm also listed as the maintainer of the PPC Linkstation board, we can try to keep myself for that role for a while and see if I can be of any use at all. At least I have the hardware (although it is currently in use, and jtag access to it hasn't been exercised for a few years) and I have contact to other developers for this platform, so, maybe I'll still be able to help with it. diff --git a/MAINTAINERS b/MAINTAINERS index bb03f17..146d98d 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -645,12 +645,6 @@ Sergey Lapin sla...@ossfans.org afeb9260ARM926EJS (AT91SAM9260 SoC) -Guennadi Liakhovetski g.liakhovet...@gmx.de - - imx31_phycore_eet i.MX31 - mx31ads i.MX31 - SMDK6400S3C6400 - Nishanth Menon n...@ti.com omap3_sdp3430 ARM CORTEX-A8 (OMAP3xx SoC) ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] POST: Added ECC memory test for mpc83xx.
On Tue, Apr 6, 2010 at 4:28 AM, Michael Zaidman michael.zaid...@gmail.com wrote: I do not question the rationale behind the requirement to use the I/O accessors. My question is - if there are any exceptions to the rule? Not really. The problem is that volatile does not take the PowerPC execution ordering into account. So even if you use volatile, the read write might not actually be performed when you think it should be performed. Just for curiosity I compared the assembly code generated by both versions of ecc_clear routine - original and using I/O accessors. The original is of 0x3C size while accessors version has 0x74 size. That's not surprising. The I/O accessors are not very efficient, since they sync after ever write. Rewriting code to use accessors API added 56 bytes or 14 opcodes. It doubled the routine's execution time. The routine is called in the loop per each ecc word, that significantly increased execution time of the ECC POST test and consequently board startup time. If this is really a problem, you can modify the code to perform the writes without the I/O accessors, and then terminate the block with a sync. You should add a comment explaining why you're not using I/O accessors. At this point, I'm not 100% clear whether the use of volatile is okay. -- Timur Tabi Linux kernel developer at Freescale ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] POST: Added ECC memory test for mpc83xx.
Rewriting code to use accessors API added 56 bytes or 14 opcodes. It doubled the routine's execution time. The routine is called in the loop per each ecc word, that significantly increased execution time of the ECC POST test and consequently board startup time. If this is really a problem, you can modify the code to perform the writes without the I/O accessors, and then terminate the block with a sync. I thought that is what I actually do in this patch... You should add a comment explaining why you're not using I/O accessors. Ok, I will add the explanation. Thanks for your comments. -michael ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] How to add multiple serial port support fort MPC8379 ?
Hi All, I have an evaluation board with MPC8379. It has couple of serial ports. Can anyone please let me know the detailed steps to bringup the two serial ports and communicate over it simultaneously? -- Thanks Regards Harsh ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] POST: Added ECC memory test for mpc83xx.
On Tue, Apr 6, 2010 at 10:29 AM, Michael Zaidman michael.zaid...@gmail.com wrote: I thought that is what I actually do in this patch... Not quite. You're missing the memory barrier that the sync() function includes. You're doing this: __asm__ __volatile__(sync); But the sync() macros does this: static inline void sync(void) { __asm__ __volatile__ (sync : : : memory); } The memory tells the compiler that this function is a memory barrier, which means it won't try to reorder any reads/writes *after* the sync. -- Timur Tabi Linux kernel developer at Freescale ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [RFC] Program net device MAC addresses after initializing
Hi Wolfgang, On 4/6/2010 5:57 AM, Wolfgang Denk wrote: Dear Ben Warren, In message1270450929-17004-1-git-send-email-biggerbadder...@gmail.com you wrote: Add a new function to the eth_device struct for programming a network controller's hardware address. After all network devices have been initialized and the proper MAC address for each has been determined, make a device driver call to program the address into the device. Only device instances with valid unicast addresses will be programmed. This is a significant departure from existing U-boot behavior, but costs very little in startup time and addresses a very common complaint among developers. The thing is that this _is_ a violation of the design rules, and we should not make assumptions that such an initialization is harmless for all systems. I know this differs from the existing design rules. I'm not trying to be subtle or create a loophole, I'm trying to change policy. You'll notice that by itself, this patch does nothing other than chew up a few CPU cycles and bytes of flash. From the patch it is not clear to me who is supposed to implement write_hwaddr() - it should be made clear that this should be be done only when absolutely necessary, and then best in board specific code, The new function is part of the 'eth_device struct', so will be implemented in the network drivers. As designed, MAC addresses will be programmed on all controllers that have a valid entry either in their NVRAM or the environment. If somebody goes to the effort of putting a valid address in one of these places, we should assume that he or she wanted it to be used. If there is no such entry or the driver doesn't implement this method, nothing happens. I have an idea for providing a board-level 'opt-out' ability, but doubt that it would be used much. I'm interested in knowing use cases where programming a MAC address is harmful, keeping in mind that this new code only programs valid MAC addresses. The patch should add such a description to the documentation. Absolutely. This is an RFC and if we can reach agreement that it's a good thing, all the appropriate documentation will be revised. Also, we should remove / adapt existing code that performs basicly the same action. Most if not all drivers currently have a private function for programming MAC addresses. We can either modify them as time goes by, or I'll take on the effort of fixing them all up with the obvious caveat that very little testing will be performed by me. Thanks. Best regards, Wolfgang Denk regards, Ben ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v2 RFC] fix lockup in mcfmii/mii_discover_phy() in case communication fails
Hi Wolfgang, On 4/6/2010 2:13 AM, Wolfgang Wegner wrote: Signed-off-by: Wolfgang Wegnerw.weg...@astro-kom.de --- modified formatting of inner for() loop and changed if(cond){...} to if(!cond) continue; to avoid deep indentation. drivers/net/mcfmii.c | 45 +++-- 1 files changed, 23 insertions(+), 22 deletions(-) Much better. Applied to net repo. thanks, Ben ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] malloc: sbrk() should return MORECORE_FAILURE instead of NULL on failure
Signed-off-by: Karl Beldan karl.bel...@gmail.com --- common/dlmalloc.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/common/dlmalloc.c b/common/dlmalloc.c index 205fc40..2276532 100644 --- a/common/dlmalloc.c +++ b/common/dlmalloc.c @@ -1515,7 +1515,7 @@ void *sbrk(ptrdiff_t increment) ulong new = old + increment; if ((new mem_malloc_start) || (new mem_malloc_end)) - return NULL; + return (void *)MORECORE_FAILURE; mem_malloc_brk = new; -- 1.7.0.2.323.g0d092 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] Using initramfs instead of an initrd image ?
Greetings, Is there a way making uboot use initramfs images instead of initrd ? I have a glacier AMCC460GT PPC board. I generate my initramfs image from my rootfs directory as: $ cd rootfs $ find . | cpio -o -H newc | gzip ../rootfs.img so I tried first to use the initramfs image directly = tftp 190 glacier/rootfs.img .. done = tftp 100 glacier/uImage .. done = tftp 180 glacier/glacier.dtb .. done = bootm 100 190 180 ## Booting kernel from Legacy Image at 0100 ... Image Name: Linux-2.6.32 Created: 2010-04-06 20:10:00 UTC Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size:1846014 Bytes = 1.8 MB Load Address: Entry Point: Verifying Checksum ... OK Wrong Ramdisk Image Format Ramdisk image is corrupt or invalid OK so this doesn't work then i tried packing the initramfs into a ramdisk image format $ mkimage -A ppc -O linux -T ramdisk -a 0x190 -n ramdisk -d rootfs.img rootfs2.img Image Name: ramdisk Created: Tue Apr 6 17:33:56 2010 Image Type: PowerPC Linux RAMDisk Image (gzip compressed) Data Size:3332660 Bytes = 3254.55 kB = 3.18 MB Load Address: 0x0190 Entry Point: 0x0190 = tftp 1900 glacier/rootfs2.img still no luck = iminfo 190 ## Checking Image at 0190 ... Unknown image format! Thanks Chip ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 2/3 v2] drivers/serial/serial.c: code maintainability improvments.
On Fri, 2 Apr 2010 12:10:42 +0300 Michael Zaidman michael.zaid...@gmail.com wrote: Signed-off-by: Michael Zaidman michael.zaid...@gmail.com --- Acked-by: Kim Phillips kim.phill...@freescale.com Kim ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] How to add multiple serial port support fort MPC8379 ?
On Tue, 6 Apr 2010 11:29:30 -0400 harsh poshtiwala hiha...@gmail.com wrote: I have an evaluation board with MPC8379. It has couple of serial ports. Can anyone please let me know the detailed steps to bringup the two serial ports and communicate over it simultaneously? look into defining CONFIG_SERIAL_MULTI in the board config file. Kim ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] POST: Added ECC memory test for mpc83xx.
On Tue, 6 Apr 2010 18:29:08 +0300 Michael Zaidman michael.zaid...@gmail.com wrote: Rewriting code to use accessors API added 56 bytes or 14 opcodes. It doubled the routine's execution time. The routine is called in the loop per each ecc word, that significantly increased execution time of the ECC POST test and consequently board startup time. If this is really a problem, you can modify the code to perform the writes without the I/O accessors, and then terminate the block with a sync. I thought that is what I actually do in this patch... You should add a comment explaining why you're not using I/O accessors. Ok, I will add the explanation. use raw i/o accessors please. oh, and don't forget to sign off your work Thanks, Kim ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] U-boot environment redundancy
Hello, I have some query regarding how the u-boot environment redundancy works. As per my understanding, we need to set the CONFIG_ENV_ADDR_REDUND and CONFIG_ENV_SIZE_REDUND macros in the board config file. The boot loader is supposed to read the both the environments and based on the obsolete/active flag in the environment and CRC check, determine which environment to pick up. And the logic for reading both environments, determining which one to use goes into the medium specific file, like env_nand.c or env_flash.c. 1. Whether this understanding of mine is correct? 2. Everytime when we do saveenv, how does boot loader determine which range to save the env? 3. The env rotation is automatically by boot loader that is the obsolete/active flag change? The active/ obsolete flag is supposed to be part of the env itself? 4. If I need to implement all this for MMC, do I need to add more logic to the MMC patch http://article.gmane.org/gmane.comp.boot-loaders.u-boot/71792/match=environment+mmc submitted in recent past? regards -Nitin Get your preferred Email name! Now you can @ymail.com and @rocketmail.com. http://mail.promotions.yahoo.com/newdomains/aa/ ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 01/28] nios2: add nios2-generic board
On 04/05/2010 01:36 PM, Ben Warren wrote: Hi Thomas, On 3/19/2010 12:43 AM, Thomas Chou wrote: This is a generic approach to port u-boot for nios2 boards. It uses a new set of device drivers, such as the cfi flash, spi lash, nand flash and new ethernet drivers. snip +#ifdef CONFIG_CMD_NET +int board_eth_init(bd_t *bis) +{ +int rc = 0; +#ifdef CONFIG_SMC9 +rc = smc9_initialize(bis, CONFIG_SMC9_BASE); +#endif + +#ifdef CONFIG_DRIVER_DM9000 +rc = dm9000_initialize(bis); +#endif + +#ifdef CONFIG_ALTERA_TSE +altera_tse_init(bis, CONFIG_SYS_NUM_TSE_MACS); +#endif + +#ifdef CONFIG_ETHOC +rc = ethoc_initialize(bis, CONFIG_SYS_ETHOC_BASE); +#endif +return rc; +} Please clean up the return code handling. The drivers are not mutually exclusive. Hi Ben, Does it make sense to return 0 always, as we don't have cpu_eth_init()? snip + +#define CONFIG_ETHADDR08:00:3e:26:0a:5b +#define CONFIG_NETMASK255.255.255.0 +#define CONFIG_IPADDR192.168.2.21 +#define CONFIG_SERVERIP192.168.2.16 + Please remove these definitions OK. Best regards, Thomas ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v2] net: add opencore 10/100 ethernet mac driver
Hi Ben, Thanks. On 04/05/2010 02:31 PM, Ben Warren wrote: Hi Thomas, + */ +struct ethoc { +void *iobase; eth_device struct already has this. If you also want it in the private struct, please don't use void *. OK. I will use eth_device and remove the private iobase. + +unsigned int num_tx; +unsigned int cur_tx; +unsigned int dty_tx; + +unsigned int num_rx; +unsigned int cur_rx; + +u32 msg_enable; Please don't mix types like this. Using 'u32' and friends globally is preferred. OK. I will use u32 and friends globally. + +int ethoc_initialize(bd_t *bis, int base_addr) You don't use 'bis', so don't pass it in. I'd prefer to see you pass in the base address and an index in case somebody wants more than one (mainly useful for debugging) Do you mean adding dev_num as index? int ethoc_initialize(u8 dev_num, int base_addr) Best regards, Thomas ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v4 tabify] net: add altera triple speeds ethernet mac driver
Hi Ben, Thanks. On 04/05/2010 02:19 PM, Ben Warren wrote: + +static int tse_eth_send(struct eth_device *dev, volatile void *packet, +int length); +static int tse_eth_rx(struct eth_device *dev); +static void tse_eth_halt(struct eth_device *dev); +static void tse_eth_reset(struct eth_device *dev); +static int tse_eth_init(struct eth_device *dev, bd_t *bd); + +static int tse_mdio_read(struct altera_tse_priv *priv, unsigned int regnum); +static int tse_mdio_write(struct altera_tse_priv *priv, unsigned int regnum, + unsigned int value); Are these prototypes really needed? If so, please re-order the code so they're not. OK. I will reorder the code so that they will be not needed. +/* This is a generic routine that the SGDMA mode-specific routines + * call to populate a descriptor. + * arg1:pointer to first SGDMA descriptor. + * arg2:pointer to next SGDMA descriptor. + * arg3:Address to where data to be written. + * arg4:Address from where data to be read. + * arg5:no of byte to transaction. + * arg6:variable indicating to generate start of packet or not + * arg7:read fixed + * arg8:write fixed + * arg9:read burst + * arg10:write burst + * arg11:atlantic_channel number + */ 11 arguments??? Seriously??? It might be simpler if I fold this call into the callers. +/* TSE init code */ +int altera_tse_init(bd_t *bis, int num_tses) The naming convention that we use is xxx_initialize(), or xxx_register(), although I prefer the former. If you're not using *bis, don't pass it in. +for (num = 0; num num_tses; num++) { You don't use the 'num' variable. As such, this driver doesn't support more than one instance. Once you add true multi-instance support, the preferred way to do this is to call this function for each instance, passing in the appropriate addressing information. This driver needs several components and several base addresses. Can I pass them in a structure? int altera_tse_initialize(u8 dev_num, void *base_info) +return num_tses; This return value is meaningless, as mentioned above. Will return 0. + +/* Set the MAC address */ +debug(Setting MAC address to 0x%x%x%x%x%x%x\n, + dev-enetaddr[5], dev-enetaddr[4], + dev-enetaddr[3], dev-enetaddr[2], + dev-enetaddr[1], dev-enetaddr[0]); +mac_dev-mac_addr_0 = ((dev-enetaddr[3]) 24 | + (dev-enetaddr[2]) 16 | + (dev-enetaddr[1]) 8 | (dev-enetaddr[0])); + +mac_dev-mac_addr_1 = ((dev-enetaddr[5] 8 | +(dev-enetaddr[4])) 0x); + +/* Set the MAC address */ +mac_dev-supp_mac_addr_0_0 = mac_dev-mac_addr_0; +mac_dev-supp_mac_addr_0_1 = mac_dev-mac_addr_1; + +/* Set the MAC address */ +mac_dev-supp_mac_addr_1_0 = mac_dev-mac_addr_0; +mac_dev-supp_mac_addr_1_1 = mac_dev-mac_addr_1; + +/* Set the MAC address */ +mac_dev-supp_mac_addr_2_0 = mac_dev-mac_addr_0; +mac_dev-supp_mac_addr_2_1 = mac_dev-mac_addr_1; + +/* Set the MAC address */ +mac_dev-supp_mac_addr_3_0 = mac_dev-mac_addr_0; +mac_dev-supp_mac_addr_3_1 = mac_dev-mac_addr_1; + Please put the MAC address programming code in a separate function, taking a eth_dev * as parameter. It may save you work later. OK. /* Driver initialization prototypes */ int au1x00_enet_initialize(bd_t*); +int altera_tse_init(bd_t *bis, int num_tses); Alphabetical order, please. OK. int at91emac_register(bd_t *bis, unsigned long iobase); int bfin_EMAC_initialize(bd_t *bis); int cs8900_initialize(u8 dev_num, int base_addr); Best regards, Thomas ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] 85xx: Set HID1[mbdd] on e500v2 rev5.0 or greater
On Mar 31, 2010, at 12:18 AM, Kumar Gala wrote: From: Sandeep Gopalpet sandeep.ku...@freescale.com The HID1[MBDD] bit is new on rev5.0 or greater cores and will optimize the performance of mbar/eieio instructions. Signed-off-by: Sandeep Gopalpet sandeep.ku...@freescale.com --- cpu/mpc85xx/release.S |7 +++ cpu/mpc85xx/start.S |7 +++ include/asm-ppc/processor.h |1 + 3 files changed, 15 insertions(+), 0 deletions(-) applied to 85xx - k ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] [v2] p2020ds: add alternate boot bank support using the ngPIXIS FPGA
On Apr 1, 2010, at 10:49 AM, Timur Tabi wrote: The Freescale P2020DS board uses a new type of PIXIS FPGA, called the ngPIXIS. The ngPIXIS has one distinct new feature: the values of the on-board switches can be selectively overridden with shadow registers. This feature is used to boot from a different NOR flash bank, instead of having a register dedicated for this purpose. Because the ngPIXIS is so different from the previous PIXIS, a new file is introduced: ngpixis.c. Also update the P2020DS checkboard() function to use the new macros defined in the header file. Signed-off-by: Timur Tabi ti...@freescale.com --- board/freescale/common/Makefile |1 + board/freescale/common/ngpixis.c | 136 + board/freescale/common/ngpixis.h | 57 +++ board/freescale/p2020ds/p2020ds.c | 55 ++-- include/configs/P2020DS.h | 62 ++--- 5 files changed, 222 insertions(+), 89 deletions(-) create mode 100644 board/freescale/common/ngpixis.c create mode 100644 board/freescale/common/ngpixis.h applied to 85xx - k ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] [v2] fsl: improve the PIXIS code and fix a few bugs
On Mar 31, 2010, at 5:44 PM, Timur Tabi wrote: Refactor and document the Freescale PIXIS code, used on most 85xx and 86xx boards. This makes the code easier to read and more flexible. Delete pixis.h, because none of the exported functions were actually being used by any other file. Make all of the functions in pixis.c 'static'. Remove #include pixis.h from every file that has it. Remove some unnecessary #includes. Make 'pixis_base' into a macro, so that we don't need to define it in every function. Add while(1); loops at the end of functions that reset the board, so that execution doesn't continue while the reset is in progress. Replace in_8/out_8 calls with clrbits_8, setbits_8, or clrsetbits_8, where appropriate. Replace ulong/uint with their spelled-out equivalents. Remove unnecessary typecasts, changing the types of some variables if necessary. Add CONFIG_SYS_PIXIS_VCFGEN0_ENABLE and CONFIG_SYS_PIXIS_VBOOT_ENABLE to make it easier for specific boards to support variations in the PIXIS registers sets. No current boards appears to need this feature. Fix the definition of CONFIG_SYS_PIXIS_VBOOT_MASK for the MPC8610 HPCD. Apparently, pixis_reset altbank has never worked on this board. Signed-off-by: Timur Tabi ti...@freescale.com --- board/freescale/common/pixis.c| 254 - board/freescale/common/pixis.h| 31 --- board/freescale/mpc8536ds/mpc8536ds.c |1 - board/freescale/mpc8544ds/mpc8544ds.c |1 - board/freescale/mpc8572ds/mpc8572ds.c |1 - board/freescale/mpc8610hpcd/mpc8610hpcd.c |2 - board/freescale/mpc8610hpcd/mpc8610hpcd_diu.c |1 - board/freescale/mpc8641hpcn/mpc8641hpcn.c |2 - board/freescale/p2020ds/p2020ds.c |1 - cpu/mpc512x/diu.c |1 - include/configs/MPC8610HPCD.h |2 +- 11 files changed, 127 insertions(+), 170 deletions(-) delete mode 100644 board/freescale/common/pixis.h applied to 85xx - k ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 01/10] Blackfin: disable NetBSD bootm support by default
There is no Blackfin/NetBSD port, so enabling support for it by default doesn't make any sense. Signed-off-by: Mike Frysinger vap...@gentoo.org --- include/asm-blackfin/config-pre.h |3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) diff --git a/include/asm-blackfin/config-pre.h b/include/asm-blackfin/config-pre.h index 1170a2a..4531519 100644 --- a/include/asm-blackfin/config-pre.h +++ b/include/asm-blackfin/config-pre.h @@ -71,6 +71,9 @@ static inline const char *get_bfin_boot_mode(int bfin_boot) # define BFIN_BOOT_SPI_SSEL 1 #endif +/* There is no Blackfin/NetBSD port */ +#undef CONFIG_BOOTM_NETBSD + /* We rarely use interrupts, so favor throughput over latency */ #define CONFIG_BFIN_INS_LOWOVERHEAD -- 1.7.0.4 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 03/10] Blackfin: relax .data alignment
The strictest alignment on Blackfin systems is 32bits (since that is the largest load instruction), so don't force 256byte alignment here. Signed-off-by: Mike Frysinger vap...@gentoo.org --- lib_blackfin/u-boot.lds.S |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/lib_blackfin/u-boot.lds.S b/lib_blackfin/u-boot.lds.S index 3be341f..9a757c6 100644 --- a/lib_blackfin/u-boot.lds.S +++ b/lib_blackfin/u-boot.lds.S @@ -100,7 +100,7 @@ SECTIONS .data : { - . = ALIGN(256); + . = ALIGN(4); *(.data .data.*) *(.data1) *(.sdata) -- 1.7.0.4 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 04/10] Blackfin: bf537-stamp: add board test defines
We tweak the configs a little when doing automated hardware tests. Signed-off-by: Mike Frysinger vap...@gentoo.org --- include/configs/bf537-stamp.h |9 + 1 files changed, 9 insertions(+), 0 deletions(-) diff --git a/include/configs/bf537-stamp.h b/include/configs/bf537-stamp.h index de2add7..d3159e5 100644 --- a/include/configs/bf537-stamp.h +++ b/include/configs/bf537-stamp.h @@ -277,6 +277,15 @@ #define FLASH_END_POST_BLOCK 71 /* Should = 71 */ #endif +/* These are for board tests */ +#if 0 +#define CONFIG_BOOTCOMMAND bootldr 0x203f0100 +#define CONFIG_AUTOBOOT_KEYED +#define CONFIG_AUTOBOOT_PROMPT \ + autoboot in %d seconds: press space to stop\n, bootdelay +#define CONFIG_AUTOBOOT_STOP_STR +#endif + /* * Pull in common ADI header for remaining command/environment setup -- 1.7.0.4 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 02/10] Blackfin: drop reference to gd-reloc_off
The reloc_off member no longer exists, so drop it. Also change this function so that it is always compiled and prevents latent issues like this in the future. Reported-by: Peter Meerwald pme...@pmeerw.net Signed-off-by: Mike Frysinger vap...@gentoo.org --- lib_blackfin/board.c |8 +--- 1 files changed, 5 insertions(+), 3 deletions(-) diff --git a/lib_blackfin/board.c b/lib_blackfin/board.c index 21fff33..b0b52b2 100644 --- a/lib_blackfin/board.c +++ b/lib_blackfin/board.c @@ -73,8 +73,12 @@ static int init_baudrate(void) static void display_global_data(void) { -#ifdef CONFIG_DEBUG_EARLY_SERIAL bd_t *bd; + +#ifndef CONFIG_DEBUG_EARLY_SERIAL + return; +#endif + bd = gd-bd; printf( gd: %p\n, gd); printf( |-flags: %lx\n, gd-flags); @@ -82,7 +86,6 @@ static void display_global_data(void) printf( |-baudrate: %lu\n, gd-baudrate); printf( |-have_console: %lx\n, gd-have_console); printf( |-ram_size: %lx\n, gd-ram_size); - printf( |-reloc_off: %lx\n, gd-reloc_off); printf( |-env_addr: %lx\n, gd-env_addr); printf( |-env_valid: %lx\n, gd-env_valid); printf( |-jt(%p): %p\n, gd-jt, *(gd-jt)); @@ -95,7 +98,6 @@ static void display_global_data(void) printf( |-bi_flashstart: %lx\n, bd-bi_flashstart); printf( |-bi_flashsize: %lx\n, bd-bi_flashsize); printf( \\-bi_flashoffset: %lx\n, bd-bi_flashoffset); -#endif } #define CPLB_PAGE_SIZE (4 * 1024 * 1024) -- 1.7.0.4 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 07/10] Blackfin: link with normal ABI target
If someone uses the FDPIC toolchain to compile U-Boot, make sure the linker knows to use the normal ABI target rather than the FDPIC one. This wasn't needed with older toolchains, but when we fixed the linker such that the default target changed based on tuple, this broke. Signed-off-by: Mike Frysinger vap...@gentoo.org --- lib_blackfin/config.mk |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lib_blackfin/config.mk b/lib_blackfin/config.mk index 323d28f..1b5cbba 100644 --- a/lib_blackfin/config.mk +++ b/lib_blackfin/config.mk @@ -23,7 +23,7 @@ CROSS_COMPILE ?= bfin-uclinux- -STANDALONE_LOAD_ADDR = 0x1000 +STANDALONE_LOAD_ADDR = 0x1000 -m elf32bfin CONFIG_BFIN_CPU := $(strip $(subst ,,$(CONFIG_BFIN_CPU))) CONFIG_BFIN_BOOT_MODE := $(strip $(subst ,,$(CONFIG_BFIN_BOOT_MODE))) @@ -33,7 +33,7 @@ CONFIG_ENV_SIZE := $(strip $(subst ,,$(CONFIG_ENV_SIZE))) PLATFORM_RELFLAGS += -ffixed-P3 -fomit-frame-pointer -mno-fdpic PLATFORM_CPPFLAGS += -DCONFIG_BLACKFIN -LDFLAGS += --gc-sections +LDFLAGS += --gc-sections -m elf32bfin PLATFORM_RELFLAGS += -ffunction-sections -fdata-sections ifneq (,$(CONFIG_BFIN_CPU)) -- 1.7.0.4 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 05/10] Blackfin: cm-bf561: update network/env settings
From: Harald Krapfenbauer harald.krapfenba...@bluetechnix.at Switch to the SMC911X driver by default now, and fix LDR env settings. Signed-off-by: Harald Krapfenbauer harald.krapfenba...@bluetechnix.at Signed-off-by: Mike Frysinger vap...@gentoo.org --- board/cm-bf561/cm-bf561.c |4 ++-- include/configs/cm-bf561.h | 11 --- 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/board/cm-bf561/cm-bf561.c b/board/cm-bf561/cm-bf561.c index 80cfff7..5741f64 100644 --- a/board/cm-bf561/cm-bf561.c +++ b/board/cm-bf561/cm-bf561.c @@ -18,9 +18,9 @@ int checkboard(void) return 0; } -#ifdef CONFIG_SMC9 +#ifdef CONFIG_SMC911X int board_eth_init(bd_t *bis) { - return smc9_initialize(0, CONFIG_SMC9_BASE); + return smc911x_initialize(0, CONFIG_SMC911X_BASE); } #endif diff --git a/include/configs/cm-bf561.h b/include/configs/cm-bf561.h index 1741ed4..c60401c 100644 --- a/include/configs/cm-bf561.h +++ b/include/configs/cm-bf561.h @@ -63,14 +63,10 @@ * Network Settings */ #define ADI_CMDS_NETWORK 1 -/* The next 2 lines are for use with DEV-BF5xx */ #define CONFIG_NET_MULTI -#define CONFIG_SMC91 -#define CONFIG_SMC9_BASE 0x28000300 -/* The next 3 lines are for use with EXT-BF5xx-USB-ETH2 */ -/* #define CONFIG_DRIVER_SMC911X 1 */ -/* #define CONFIG_DRIVER_SMC911X_BASE 0x2408 /! AMS1 */ -/* #define CONFIG_DRIVER_SMC911X_32_BIT 1 */ +#define CONFIG_SMC911X 1 +#define CONFIG_SMC911X_BASE0x24008000 /* AMS1 */ +#define CONFIG_SMC911X_16_BIT #define CONFIG_HOSTNAMEcm-bf561 /* Uncomment next line to use fixed MAC address */ /* #define CONFIG_ETHADDR 02:80:ad:20:31:cf */ @@ -94,6 +90,7 @@ #define CONFIG_ENV_OFFSET 0x2 #define CONFIG_ENV_SECT_SIZE 0x2 #define CONFIG_ENV_SIZE0x1 +#define CONFIG_ENV_IS_EMBEDDED_IN_LDR /* -- 1.7.0.4 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 08/10] Blackfin: call watchdog_init() for external watchdogs
Signed-off-by: Mike Frysinger vap...@gentoo.org --- lib_blackfin/board.c |6 ++ 1 files changed, 6 insertions(+), 0 deletions(-) diff --git a/lib_blackfin/board.c b/lib_blackfin/board.c index b0b52b2..4e9bb19 100644 --- a/lib_blackfin/board.c +++ b/lib_blackfin/board.c @@ -199,6 +199,7 @@ void init_cplbtables(void) * continue and != 0 means fatal error, hang the system. */ +extern int watchdog_init(void); extern int exception_init(void); extern int irq_init(void); extern int timer_init(void); @@ -229,6 +230,11 @@ void board_init_f(ulong bootflag) dcache_enable(); #endif +#ifdef CONFIG_WATCHDOG + serial_early_puts(Setting up external watchdog\n); + watchdog_init(); +#endif + #ifdef DEBUG if (CONFIG_SYS_GBL_DATA_SIZE sizeof(*gd)) hang(); -- 1.7.0.4 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 00/10] Blackfin updates for 2010.06
New board port and a few random updates. Nothing crazy here. Brent Kandetzki (1): Blackfin: IP04: new board port Harald Krapfenbauer (1): Blackfin: cm-bf561: update network/env settings Mike Frysinger (8): Blackfin: disable NetBSD bootm support by default Blackfin: drop reference to gd-reloc_off Blackfin: relax .data alignment Blackfin: bf537-stamp: add board test defines Blackfin: sync ptrace headers with linux Blackfin: link with normal ABI target Blackfin: call watchdog_init() for external watchdogs Blackfin: drop bfin #undef in linker script MAINTAINERS |4 + MAKEALL |1 + Makefile |2 +- board/cm-bf561/cm-bf561.c |4 +- board/ip04/Makefile | 54 +++ board/ip04/config.mk | 35 + board/ip04/ip04.c | 42 + include/asm-blackfin/config-pre.h |3 + include/asm-blackfin/ptrace.h | 297 ++--- include/asm-blackfin/traps.h | 62 ++-- include/configs/bf537-stamp.h |9 + include/configs/cm-bf561.h| 11 +- include/configs/ip04.h| 157 +++ lib_blackfin/board.c | 14 ++- lib_blackfin/config.mk|4 +- lib_blackfin/u-boot.lds.S |5 +- 16 files changed, 453 insertions(+), 251 deletions(-) create mode 100644 board/ip04/Makefile create mode 100644 board/ip04/config.mk create mode 100644 board/ip04/ip04.c create mode 100644 include/configs/ip04.h ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 06/10] Blackfin: sync ptrace headers with linux
Scrub a lot of dead cruft in the process. Signed-off-by: Mike Frysinger vap...@gentoo.org --- include/asm-blackfin/ptrace.h | 297 - include/asm-blackfin/traps.h | 62 ++--- 2 files changed, 126 insertions(+), 233 deletions(-) diff --git a/include/asm-blackfin/ptrace.h b/include/asm-blackfin/ptrace.h index f1b7d00..251d5e6 100644 --- a/include/asm-blackfin/ptrace.h +++ b/include/asm-blackfin/ptrace.h @@ -1,31 +1,11 @@ /* - * U-boot - ptrace.h + * Copyright 2004-2008 Analog Devices Inc. * - * Copyright (c) 2005-2007 Analog Devices 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 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., 51 Franklin St, Fifth Floor, Boston, - * MA 02110-1301 USA + * Licensed under the GPL-2 or later. */ -#ifndef _BLACKFIN_PTRACE_H -#define _BLACKFIN_PTRACE_H - -#define NEW_PT_REGS +#ifndef _BFIN_PTRACE_H +#define _BFIN_PTRACE_H /* * GCC defines register number like this: @@ -35,128 +15,30 @@ * 16 - 31 dsp registers I/B/L0 -- I/B/L3 M0--M3 * 32 - 33 A registers A0 A1 * 34 -status register + * - * * We follows above, except: * 32-33 --- Low 32-bit of A01 * 34-35 --- High 8-bit of A01 */ -#if defined(NEW_PT_REGS) - -#define PT_IPEND 0 -#define PT_SYSCFG (PT_IPEND+4) -#define PT_SEQSTAT (PT_SYSCFG+4) -#define PT_RETE(PT_SEQSTAT+4) -#define PT_RETN(PT_RETE+4) -#define PT_RETX(PT_RETN+4) -#define PT_RETI(PT_RETX+4) -#define PT_PC PT_RETI -#define PT_RETS(PT_RETI+4) -#define PT_RESERVED(PT_RETS+4) -#define PT_ASTAT (PT_RESERVED+4) -#define PT_LB1 (PT_ASTAT+4) -#define PT_LB0 (PT_LB1+4) -#define PT_LT1 (PT_LB0+4) -#define PT_LT0 (PT_LT1+4) -#define PT_LC1 (PT_LT0+4) -#define PT_LC0 (PT_LC1+4) -#define PT_A1W (PT_LC0+4) -#define PT_A1X (PT_A1W+4) -#define PT_A0W (PT_A1X+4) -#define PT_A0X (PT_A0W+4) -#define PT_B3 (PT_A0X+4) -#define PT_B2 (PT_B3+4) -#define PT_B1 (PT_B2+4) -#define PT_B0 (PT_B1+4) -#define PT_L3 (PT_B0+4) -#define PT_L2 (PT_L3+4) -#define PT_L1 (PT_L2+4) -#define PT_L0 (PT_L1+4) -#define PT_M3 (PT_L0+4) -#define PT_M2 (PT_M3+4) -#define PT_M1 (PT_M2+4) -#define PT_M0 (PT_M1+4) -#define PT_I3 (PT_M0+4) -#define PT_I2 (PT_I3+4) -#define PT_I1 (PT_I2+4) -#define PT_I0 (PT_I1+4) -#define PT_USP (PT_I0+4) -#define PT_FP (PT_USP+4) -#define PT_P5 (PT_FP+4) -#define PT_P4 (PT_P5+4) -#define PT_P3 (PT_P4+4) -#define PT_P2 (PT_P3+4) -#define PT_P1 (PT_P2+4) -#define PT_P0 (PT_P1+4) -#define PT_R7 (PT_P0+4) -#define PT_R6 (PT_R7+4) -#define PT_R5 (PT_R6+4) -#define PT_R4 (PT_R5+4) -#define PT_R3 (PT_R4+4) -#define PT_R2 (PT_R3+4) -#define PT_R1 (PT_R2+4) -#define PT_R0 (PT_R1+4) -#define PT_ORIG_R0 (PT_R0+4) -#define PT_SR PT_SEQSTAT - -#else -/* - * Here utilize blackfin : dpregs = [pregs + imm16s4] - * [pregs + imm16s4] = dpregs - * to access defferent saved reg in stack - */ -#define PT_R3 0 -#define PT_R4 4 -#define PT_R2 8 -#define PT_R1 12 -#define PT_P5 16 -#define PT_P4 20 -#define PT_P3 24 -#define PT_P2 28 -#define PT_P1 32 -#define PT_P0 36 -#define PT_R7 40 -#define PT_R6 44 -#define PT_R5 48 -#define PT_PC 52 -#define PT_SEQSTAT 56 /* so-called SR reg */ -#define PT_SR PT_SEQSTAT -#define PT_ASTAT 60 -#define PT_RETS64 -#define PT_A1w 68 -#define PT_A0w 72 -#define PT_A1x 76 -#define PT_A0x 80 -#define PT_ORIG_R0 84 -#define PT_R0 88 -#define PT_USP 92 -#define PT_FP 96 -#define PT_SP 100 - -/* Added by HuTao, May26 2003 3:18PM */ -#define PT_IPEND 100 - -/* Add SYSCFG register for single stepping support */ -#define PT_SYSCFG 104 -
[U-Boot] [PATCH 09/10] Blackfin: drop bfin #undef in linker script
Now that the linker script is preprocessed with -ansi, there is no need to manually undef the bfin define. Signed-off-by: Mike Frysinger vap...@gentoo.org --- lib_blackfin/u-boot.lds.S |3 +-- 1 files changed, 1 insertions(+), 2 deletions(-) diff --git a/lib_blackfin/u-boot.lds.S b/lib_blackfin/u-boot.lds.S index 9a757c6..2b23d8b 100644 --- a/lib_blackfin/u-boot.lds.S +++ b/lib_blackfin/u-boot.lds.S @@ -1,7 +1,7 @@ /* * U-boot - u-boot.lds.S * - * Copyright (c) 2005-2008 Analog Device Inc. + * Copyright (c) 2005-2010 Analog Device Inc. * * (C) Copyright 2000-2004 * Wolfgang Denk, DENX Software Engineering, w...@denx.de. @@ -29,7 +29,6 @@ #include asm/blackfin.h #undef ALIGN #undef ENTRY -#undef bfin #ifndef LDS_BOARD_TEXT # define LDS_BOARD_TEXT -- 1.7.0.4 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 10/10] Blackfin: IP04: new board port
From: Brent Kandetzki bre...@teleco.com A low cost 4 port IP-PBX board. Signed-off-by: Brent Kandetzki bre...@teleco.com Signed-off-by: Mike Frysinger vap...@gentoo.org --- MAINTAINERS|4 + MAKEALL|1 + Makefile |2 +- board/ip04/Makefile| 54 board/ip04/config.mk | 35 +++ board/ip04/ip04.c | 42 + include/configs/ip04.h | 157 7 files changed, 294 insertions(+), 1 deletions(-) create mode 100644 board/ip04/Makefile create mode 100644 board/ip04/config.mk create mode 100644 board/ip04/ip04.c create mode 100644 include/configs/ip04.h diff --git a/MAINTAINERS b/MAINTAINERS index bb03f17..b617953 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -1008,6 +1008,10 @@ Anton Shurpin shurpin...@niistt.ru BF561-ACVILON BF561 +Brent Kandetzki bre...@teleco.com + + IP04BF532 + # # End of MAINTAINERS list # # diff --git a/MAKEALL b/MAKEALL index a88c31e..3e64748 100755 --- a/MAKEALL +++ b/MAKEALL @@ -905,6 +905,7 @@ LIST_blackfin= \ cm-bf548\ cm-bf561\ ibf-dsp561 \ + ip04\ tcm-bf518 \ tcm-bf537 \ diff --git a/Makefile b/Makefile index 4532550..0ab67bb 100644 --- a/Makefile +++ b/Makefile @@ -3554,7 +3554,7 @@ BFIN_BOARDS += cm-bf527 cm-bf533 cm-bf537e cm-bf537u cm-bf548 cm-bf561 \ tcm-bf518 tcm-bf537 # Misc third party boards -BFIN_BOARDS += bf537-minotaur bf537-srv1 bf561-acvilon blackstamp +BFIN_BOARDS += bf537-minotaur bf537-srv1 bf561-acvilon blackstamp ip04 # I-SYST Micromodule BFIN_BOARDS += ibf-dsp561 diff --git a/board/ip04/Makefile b/board/ip04/Makefile new file mode 100644 index 000..e7ce304 --- /dev/null +++ b/board/ip04/Makefile @@ -0,0 +1,54 @@ +# +# U-boot - Makefile +# +# Copyright (c) 2005-2010 Analog Device Inc. +# +# (C) Copyright 2000-2006 +# Wolfgang Denk, DENX Software Engineering, w...@denx.de. +# +# See file CREDITS for list of people who contributed to this +# project. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation; either version 2 of +# the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, +# MA 02111-1307 USA +# + +include $(TOPDIR)/config.mk + +LIB= $(obj)lib$(BOARD).a + +COBJS-y:= $(BOARD).o + +SRCS := $(SOBJS-y:.o=.S) $(COBJS-y:.o=.c) +OBJS := $(addprefix $(obj),$(COBJS-y)) +SOBJS := $(addprefix $(obj),$(SOBJS-y)) + +$(LIB):$(obj).depend $(OBJS) $(SOBJS) + $(AR) $(ARFLAGS) $@ $(OBJS) $(SOBJS) + +clean: + rm -f $(SOBJS) $(OBJS) + +distclean: clean + rm -f $(LIB) core *.bak $(obj).depend + +# + +# defines $(obj).depend target +include $(SRCTREE)/rules.mk + +sinclude $(obj).depend + +# diff --git a/board/ip04/config.mk b/board/ip04/config.mk new file mode 100644 index 000..bc14257 --- /dev/null +++ b/board/ip04/config.mk @@ -0,0 +1,35 @@ +# +# Copyright (c) 2005-2008 Analog Device Inc. +# +# (C) Copyright 2001 +# 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 +# + +# This is not actually used for Blackfin boards so do not change it +#TEXT_BASE = do-not-use-me + +CFLAGS_lib_generic += -O2 +CFLAGS_lzma += -O2 + +# Set some default LDR flags based on
[U-Boot] maintainer for Socrates board port?
Is anyone maintaining this port? With some recent changes post v2010.03 it no longer builds for me because we exceed image size. ld: section .bootpg [f000 - f1e3] overlaps section .u_boot_cmd [eb0c - f0f3] ld: u-boot: section .bootpg vma 0xf000 overlaps previous sections make: *** [u-boot] Error 1 - k ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot