Age | Commit message (Collapse) | Author |
|
Add an explicit cast to avoid the following build warning:
colibri_vf.c:225:23: warning: initialization makes pointer from integer
without a cast [enabled by default]
|
|
Now as the colibri_vf61 configuration supports memory size as well as
module type auto detection actually rename it to colibri_vf to be
universally used for Colibri VF50 as well as VF61.
|
|
Implement module type (e.g. VF50 vs. VF61) auto detection based on L2
cache availability. Set specific ARM core clock (e.g. 400 vs. 500 MHz)
as well as Linux machine id number.
While at it actually use memargs instead of hard-coded mem= value.
While at it fix sdboot command if initially booting U-Boot from NAND by
doing an explicit mmc part 0.
|
|
Implement memory size auto detection including memargs generation
analogous to how it was done for Apalis/Colibri T20/T30.
While at it make our board file checkpatch compliant.
|
|
Add initial Colibri VF61 support based off Timesys' implementation for
Freescale's Vybrid Tower System TWR-VF65GS10:
- New machine ID.
- Default UART_A on SCI0.
- ESDHC2 only.
- 8-bit NAND.
- No quad SPI.
- FEC1 only.
- Enabled command line editing.
- PLL5 based RMII clocking (e.g. no external crystal).
- UART_A, UART_B and UART_C I/O muxing.
- Increase the available space for the U-Boot binary to half a megabyte
by booting from gfxRAM rather than sysRAM0.
- Integrate factory configuration block handling for hardware version,
MAC address and serial number to be passed to Linux.
- The U-Boot environment is stored in NAND flash.
- Fix long standing boot hang issue introduced by Freescale's Vybrid
1.1 silicon.
- Proper 256 MB Nanya DDR3 RAM timings.
Tested on early Colibri VF61 prototypes V1.0b and V1.0c using SD card
(mandatory for initial loading) as well as NAND boot.
|
|
Fix long standing boot hang issue introduced by Freescale's Vybrid 1.1
silicon.
https://community.freescale.com/message/336513#336513
Correct Answer
by Ioseph Martinez Pelayo on Jul 17, 2013 5:33 PM
For the record:
DDRMC_CR154 needs to be 0x682C0000
before was: 0x68200000
There was a change from Si 1.0 to 1.1. So this only affects Si 1.1 and
this version requires writing this value to the register.
|
|
Fix possible uninitialised array member issue in serial number to
hexadecimal coded decimal conversion routine.
|
|
Migrate to default NAND boot configuration (e.g. colibri_vf50_config)
and SD card boot on request (e.g. colibri_vf50_sdboot_config).
Automatically do the padding required for NAND boot image
(e.g. u-boot.nand).
This is also more in-line with how we did stuff back on the Colibri
T20.
|
|
Integrate factory configuration block handling for hardware version,
MAC address and serial number to be passed to Linux.
The U-Boot environment is stored in NAND flash.
Default is to boot out of NAND flash using the UBI abstraction.
Optional NFS as well as MMC/SD boot variants are also available.
This brings the configuration more in-line with our Tegra based
versions.
While at it enable board size limit check set to 512 KB related to the
gfxRAM area of the OCRAM.
Please note that a boot delay of zero did not quite work the same way
as on the Tegras where one was still able to interrupt the boot process
by continuously hitting a key. Therefore set it to one second for now.
|
|
Fix the following compile time warning:
colibri_vf50.c:392:32: warning: ‘index’ is used uninitialized in this
function [-Wuninitialized]
|
|
Add initial Colibri VF50 support based off Timesys' implementation for
Freescale's Vybrid Tower System TWR-VF65GS10:
- New machine ID.
- Default UART_A on SCI0.
- ESDHC2 only.
- 8-bit NAND.
- No quad SPI.
- FEC1 only.
- Enabled command line editing.
- PLL5 based RMII clocking (e.g. no external crystal).
- UART_A, UART_B and UART_C I/O muxing.
Tested on early Colibri VF50 prototypes V1.0a using SD card (mandatory
for initial loading) as well as NAND boot.
|
|
- nb_update tool in fsl_nfc driver rewritten to write FCB, BBT, and
image to NAND.
- vybrid_nand board config added.
- NAND read commands added to DCD that force NFC controller to read
NAND page twice to prevent NFC hang.
|
|
We must enable the external 32kHz oscillator in order to work
around a known clock drift issue with the internal 32kHz oscillator.
This fixes the Linux kernel system clock drift.
Signed-off-by: Anthony Huereca <B04178@freescale.com>
Signed-off-by: Jiri Kotzian <B36968@freescale.com>
Signed-off-by: Justin Waters <justin.waters@timesys.com>
|
|
Signed-off-by: Jason Jin <Jason.jin@freescale.com>
|
|
Signed-off-by: TsiChung Liew <tsicliew@gmail.com>
Signed-off-by: Jason Jin <Jason.jin@freescale.com>
|
|
Common code has a mdelay() func, so use that instead of the usb-specific
wait_ms() func. This also fixes the build errors:
ohci-hcd.c: In function 'submit_common_msg':
/usr/local/src/u-boot/blackfin/include/usb.h:202:44: sorry, unimplemented: inlining failed in call to 'wait_ms': function body not available
ohci-hcd.c:1519:9: sorry, unimplemented: called from here
/usr/local/src/u-boot/blackfin/include/usb.h:202:44: sorry, unimplemented: inlining failed in call to 'wait_ms': function body not available
ohci-hcd.c:1816:10: sorry, unimplemented: called from here
/usr/local/src/u-boot/blackfin/include/usb.h:202:44: sorry, unimplemented: inlining failed in call to 'wait_ms': function body not available
ohci-hcd.c:1827:10: sorry, unimplemented: called from here
/usr/local/src/u-boot/blackfin/include/usb.h:202:44: sorry, unimplemented: inlining failed in call to 'wait_ms': function body not available
ohci-hcd.c:1844:10: sorry, unimplemented: called from here
/usr/local/src/u-boot/blackfin/include/usb.h:202:44: sorry, unimplemented: inlining failed in call to 'wait_ms': function body not available
ohci-hcd.c:1563:11: sorry, unimplemented: called from here
/usr/local/src/u-boot/blackfin/include/usb.h:202:44: sorry, unimplemented: inlining failed in call to 'wait_ms': function body not available
ohci-hcd.c:1583:9: sorry, unimplemented: called from here
make[1]: *** [ohci-hcd.o] Error 1
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Acked-by: Marek Vasut <marex@denx.de>
|
|
These calls should not be made directly any more, since bootstage
will call the show_boot_...() functions as needed.
Signed-off-by: Simon Glass <sjg@chromium.org>
|
|
This changes over the network-related progress numbers to use enums
from bootstage.h.
Signed-off-by: Simon Glass <sjg@chromium.org>
|
|
Signed-off-by: Simon Glass <sjg@chromium.org>
|
|
Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Mike Frysinger <vapier@gentoo.org>
|
|
Signed-off-by: Simon Glass <sjg@chromium.org>
|
|
This changes the number 15 as used in boot_stage_progress() to use the
new name provided for it. This is a separate patch because it touches
so many files.
Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Mike Frysinger <vapier@gentoo.org>
|
|
A few subsystems are using the same define "NAMESIZE". This has been
working so far because they define it to the same number. However, I
want to change the size of eth_device's NAMESIZE, so rather than tweak
the define names, simply drop references to it. Almost no one does,
and the handful that do can easily be changed to a sizeof().
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
This patch adds support for the esd CPCI-HD/2 board to u-boot for CPCI-CPU/750.
As the primary devices on the CPCI-HD/2 board are connected to device 1 and 3,
the device must be swapped.
Signed-off-by: Reinhard Arlt <reinhard.arlt@esd.eu>
|
|
Fixes building after recent readline updates with timeouts.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
This function was defined as an extern in net/eth.c, drop that and use
standard means of calling it.
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Stefan Roese <sr@denx.de>
|
|
This function was defined as an extern in net/eth.c, drop that and use
standard means of calling it.
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Reinhard Arlt <reinhard.arlt@esd-electronics.com>
|
|
Boards can select either the 'built-in' parser or the hush parser. We
should not call builtin_run_command() if we are using the hush parser.
We use run_command() instead, since it knows how to call the correct
parser.
Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Mike Frysinger <vapier@gentoo.org>
|
|
The current run_command() is only one of the parsing options - the other
is hush. We should not call run_command() when the hush parser is being
used. So we rename this function to better explain its purpose.
Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Mike Frysinger <vapier@gentoo.org>
|
|
The reference implementation of the PCI initialization code almost
everywhere contain this fragile loop of "a few usecs", and its
use of volatile variables to delay a number of bus cycles is indeed
uncertain.
Reading the manual "Integrator/AP Users Guide", page 5-15 it is
clearly stated:
"Wait until 230ms after the end of the reset period before
accessing V360EPC internal registers. The V360EPC supports the
use of a serial configuration PROM and the software must wait for
the device to detect the absence of this PROM before accessing any
registers. The required delay is a function of the PCI Clock, but
at the lower frequency (25MHz) is 230ms".
So let's simply wait 230ms per the spec.
This solves the compilation error that looked like this:
pci.c: In function ‘pci_init_board’:
pci.c:286:18: warning: variable ‘j’ set but not used
Reported-by: Wolfgang Denk <wd@denx.de>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
|
|
Fixing build regressions for the Integrator I get find that a few
boards try to work around the missing declaration of
pciauto_config_init() by declaring it in the local scope. This
does not make sense when the sibling functions are in <pci.h>
so move the function to the header, ridding the build error
in the Integrator and getting rid of the local declarations
here and there.
Reported-by: Wolfgang Denk <wd@denx.de>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
|
|
Fix build error for ethernut5 board due to prototype change
for function board_mmc_getcd().
ethernut5.c:238: error: conflicting types for 'board_mmc_getcd'
u-boot/include/mmc.h:318: note: previous declaration of 'board_mmc_getcd'
was here
make[2]: *** [ethernut5.o] Error 1
Signed-off-by: Prabhakar Lad <prabhakar.csengg@gmail.com>
Cc: Tim Schendekehl <tim.schendekehl@egnite.de>
Cc: Thierry Reding <thierry.reding@avionic-design.de>
Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
Cc: egnite GmbH <info@egnite.de>
|
|
Signed-off-by: Daniel Gorsulowski <Daniel.Gorsulowski@esd.eu>
|
|
Signed-off-by: Daniel Gorsulowski <Daniel.Gorsulowski@esd.eu>
|
|
The video setup for the Epson display is provided. Addtionally
some extra info is displayed next to the Linux logo.
Make get_cpu_rev() publicly available (added to sys_proto.h).
Signed-off-by: Helmut Raiger <helmut.raiger@hale.at>
|
|
Define CONFIG_PHY_MICREL, and
minimize the tx clock delay.
There is an issue with 1000 baseTx mode on early revs
of the SabreLite boards. The center tap pin 9 of the mag RJ45
USB combo was connected to the 3.3 filtered supply. Letting
this pin float solved the problem. Symptoms of the problem
were packets with many extra zeroes tacked on the end, and random
bit flips causing a high rate of CRC errors. 10/100 baseTx worked
fine on all revs. To disable 1000 baseTx for these boards, simply
define the environment variable disable_giga. ie.
setenv disable_giga 1
Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com>
Acked-by: Dirk Behme <dirk.behme@de.bosch.com>
|
|
Boards may have things they want done before or after normal phy config.
Letting the boards call drv->config allows them more flexibilty.
Boards affected by this change are corenet_ds and mpc8544ds.
Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com>
Acked-by: Dirk Behme <dirk.behme@de.bosch.com>
|
|
The PCI support for the Integrator AP has apparently never
been finished and I strongly suspect that it has never worked,
so let's fix it. This is a list of the more or less
un-splittable changes done in this driver rewrite:
- Replace the register definitions stashed into the config
file (!) with a copy if the register file from the Linux
kernels arch/arm/include/asm/hardware/pci_v3.h
- Delete the unreadable gigantic macros that perform the
config accesses and replace them with copyedited code from
Linux arch/arm/mach-integrator/pci_v3.c
- Rewrite the rest of the setup code to use the
v3_[read|write][lwb]() accessors.
- Enable PCI by default in the AP board configuration.
- Fix checkpatch warnings and make code more conformant.
Tested-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
|
|
The U-Boot startup infrastructure already makes sure pci_init() is
called at a proper time, calling it again from within the board
setup code will not make things better.
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
|
|
davinci_dm6467Tevm
In commit 2d575e46859dd9127a9cec731ace77523e6ea2ab a separate header
file was introduced for the DM6467T EVM, include/configs/davinci_dm6467Tevm.h.
The substantial difference between the davinci_dm6467evm and the
davinci_dm6467Tevm configuration is a single bit in the hardware revision
that is passed to the Linux kernel and davinci_dm6467evm has
REFCLK_FREQ = 27000000 where as davinci_dm6467Tevm.h has a
REFCLK_FREQ = 33000000.
This patch removes include/configs/davinci_dm6467Tevm.h. Instead the
include/configs/davinci_dm6467evm.h configuration is used for DM6467T EVMs and
renamed CFG_REFCLK_FREQ to CONFIG_REFCLK_FREQ and CONFIG_REFCLK_FREQ is defined
in boards.cfg.
Signed-off-by: Prabhakar Lad <prabhakar.csengg@gmail.com>
Cc: Tom Rini <trini@ti.com>
|
|
add support to read mac address for AM18x EVM manufactured from
Spectrum digital which have mac address stored in I2C EEPROM manufactured
by WINBOND. This patch reads mac address from I2C EEPROM and sets the
environment variable if not set, If mac address is already present in
environment compare it with the mac address in EEPROM and warn on
mismatch.Introduced a config option CONFIG_MAC_ADDR_IN_EEPROM to where
to look for the mac address.
Signed-off-by: Manjunath Hadli <manjunath.hadli@ti.com>
Cc: Tom Rini <trini@ti.com>
Cc: Mike Frysinger <vapier@gentoo.org>
Cc: Wolfgang Denk <wd@denx.de>
|
|
add support to read mac address for da850/L138 evm manufactured by
Logic PD which store mac address in SPI flash manufactured by ST
Microelectronics. This patch adds support to read mac address from
SPI flash and set the mac address if it hasn't been set in environment,
If it has been set in the environment it compares the value one with
SPI flash and warns on mismatch. Introduced a config option
CONFIG_MAC_ADDR_IN_SPIFLASH indicating where to look mac address for.
Signed-off-by: Manjunath Hadli <manjunath.hadli@ti.com>
Cc: Tom Rini <trini@ti.com>
Cc: Mike Frysinger <vapier@gentoo.org>
Cc: Wolfgang Denk <wd@denx.de>
|
|
this patch addresses the issue that there is no DVI output on beagleboard-xm in
u-boot; the TFP410 is not powered on, DVI_PUP needs to be set high
this is done differently on beagleboard-xm rev. B/C versus earlier boards:
beagleboard-xm B/C need to set GPIO2 of the TWL4030
earlier boards need to set GPIO170
note that the change occured somewhere inbetween beagleboard-xm rev. A2 and A3
note that beagleboard-xm rev. A and rev. B cannot be distinguished using
get_board_revision(), REVISION_XM_A/REVISION_XM_B is bogus
due to this glitch, the patch cannot work correctly on some beagleboard-xm
rev A/B boards
tested on beagleboard-xm rev. C (you should see orange color on a monitor)
note that the framebuffer is NOT yet set up, this could be done along the
lines below (for 800x480 resolution and RGB24) before calling omap3_dss_enable()
static void configure_frame_buffer() {
writel(0x80500000, (uint *) 0x48050480); // address
writel(0x80500000, (uint *) 0x48050484);
writel(0x01df031f, (uint *) 0x4805048c); // size
writel(0x00000091, (uint *) 0x480504a0); // RGB24
}
Signed-off-by: Peter Meerwald <p.meerwald@bct-electronic.com>
|
|
MX35PDK board does not need to print CPU revision and reset cause in board file
because this is printed by common code when CONFIG_DISPLAY_CPUINFO is selected
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
|
|
Use gpio_direction_input prior to gpio_get_value.
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
|
|
Use gpio_direction_input prior to gpio_get_value.
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
|
|
Use gpio_direction_input prior to gpio_get_value.
Cc: Jason Liu <r64343@freescale.com>
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Jason Liu <r64343@freescale.com>
|
|
Use gpio_direction_input prior to gpio_get_value.
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
|
|
Use gpio_direction_input prior to gpio_get_value.
Cc: Jason Liu <r64343@freescale.com>
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Stefano Babic <sbabic@denx.de>
Acked-by: Jason Liu <r64343@freescale.com>
|
|
Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
Acked-by: Dirk Behme <dirk.behme@de.bosch.com>
Acked-by: Stefano Babic <sbabic@denx.de>
Acked-by: Jason Liu <jason.hui@linaro.org>
Tested-by: Jason Liu <jason.hui@linaro.org>
|