Age | Commit message (Collapse) | Author |
|
The exynos5250 chip is affected by the errata
773022 (disable loop buffer)
774769 (refrain streaming-write to ever allocate into the L2 cache)
and needs to get the respective fixes as mentioned above applied.
This is done in the Samsung downstream kernel within Linux. However, that
approach fails to work when we run the guest kernel in HYP mode, as in
now Linux's errata fixup code runs without privileges to access the
aux control register.
So instead, let's patch up u-boot (where CPU errata fixes belong to
anyways), so that we can happily run a kernel.
This fixes random segmentation faults on Arndale for me, that mostly
occured because of the broken loop buffer.
Signed-off-by: Alexander Graf <agraf@suse.de>
|
|
In case a function argument is known/fixed size array in C, the argument is
still decoyed as pointer instead ( T f(U n[k]) ~= T fn(U *n) ) and therefore
calling sizeof on the function argument will result in the size of the pointer,
not the size of the array.
The VFAT code contains such a bug, this patch fixes it.
Reported-by: Aaron Williams <Aaron.Williams@cavium.com>
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Tom Rini <tom.rini@gmail.com>
Cc: Aaron Williams <Aaron.Williams@cavium.com>
Tested-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
|
|
There are a couple of GUID (Global Unique Identifier) registers within
EXYNOS5250 SoC. The values of these GUID registers are set as board
MAC address.
Signed-off-by: Tushar Behera <tushar.behera@linaro.org>
|
|
Signed-off-by: Tushar Behera <tushar.behera@linaro.org>
|
|
Signed-off-by: Tushar Behera <tushar.behera@linaro.org>
|
|
Signed-off-by: Inderpal Singh <inderpal.singh@linaro.org>
|
|
Signed-off-by: Inderpal Singh <inderpal.singh@linaro.org>
|
|
It also defines macros for boot configuration.
Signed-off-by: Inderpal Singh <inderpal.singh@linaro.org>
|
|
fifoth register does not have the fifo_size. For emmc to work,
fifo_size should be set 0x80.
Signed-off-by: Inderpal Singh <inderpal.singh@linaro.org>
|
|
Signed-off-by: Inderpal Singh <inderpal.singh@linaro.org>
|
|
preboot is used to start usb so that ethernet device could be found
automatically.
Signed-off-by: Inderpal Singh <inderpal.singh@linaro.org>
|
|
First, to boot in Hyp mode we need to change to non-secure mode, which
involves configuring the frequency of the arch. timers and setting all
interrupts on the gic to group 1 (this code was inspired by the boot
wrapper code).
Second, signal the secondary CPU while still in secure mode and have the
secondary CPU run the SPL. The SPL checks the hardware cpu id, and if
it's a secondary CPU, it will initialize non-secure mode inside the SPL,
enter Hyp mode, and finally enter a new SMP pen with the same poking stick
interface as the regular kernel uses.
Third, on CPU0 we wait until u-boot is fully up to actually enter the
non-secure mode on CPU0, and stay in non-secure svc mode right up until
we actually load the kernel, where the last thing we do is enter Hyp
mode.
Let it roll...
Signed-off-by: Jeremy C. Andrus <jeremya@cs.columbia.edu>
Signed-off-by: Christoffer Dall <cdall@cs.columbia.edu>
|
|
Fixes https://bugs.launchpad.net/u-boot-linaro/+bug/1103004
Signed-off-by: John Rigby <john.rigby@linaro.org>
|
|
Signed-off-by: John Rigby <john.rigby@linaro.org>
|
|
Only boot from specified device and don't fallback to default boot devices
on failure.
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
|
|
Signed-off-by: Mark Langsdorf <mark.langsdorf@calxeda.com>
|
|
The ECME puts a copy of the opp table in SysRam. Copy it from SysRam
and add it to the dtb.
Signed-off-by: Mark Langsdorf <mark.langsdorf@calxeda.com>
|
|
If the pl011 is connected to another device which has hardware
flow-control on, characters are never received by the pl011.
Asserting RTS when flow-control is off will have no effect.
Signed-off-by: Joshua Housh <joshua.housh@calxeda.com>
|
|
Add CONFIG_SYS_64BIT_LBA to the highbank config. This change, along with
the previous 5 commits, enables support for 2+ TB drives.
These patches were all cherry-picked from u-boot upstream and should be
dropped on the next merge.
|
|
Need a extra byte for the null termination.
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
|
|
Add ipappend support to pass network device information to the kernel.
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
|
|
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
|
|
A pxelinux server setup for "default" menu is typically an x86 binary.
This does not work well with a mixed architecture setup. Extend the default
search to look for default-<arch>-<soc> and then default-<arch> before
falling back to just "default".
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
|
|
Convert a bunch of string parameters to be const.
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
|
|
Accessing powered down peripherals will hang the bus, so check power domain
status before initializing SATA and fixup the FDT to disable unused
peripherals.
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
|
|
Allow board specific FDT fixups on ARM using the ft_board_setup function.
This is enabled using CONFIG_OF_BOARD_SETUP define.
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
|
|
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
Signed-off-by: Jason Hobbs <jason.hobbs@calxeda.com>
|
|
Enable resetting when no command is entered within 60 seconds.
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
|
|
The readline_from_buffer timeout functionality is broken in multiple ways.
If CONFIG_CMDLINE_EDITING is not enabled, the timeout value was never
used. If CONFIG_BOOT_RETRY_TIME is enabled, then that time is always used
and the specified timeout has no effect. The same (or what should be the
same) timeout code is duplicated in multiple places.
The new behavior is this: The user specified timeout passed to
readline_from_buffer is the timeout to get the 1st character. After that
the endtime value is used if enabled. For example, if 20 seconds is passed
in and the retry_time is 60 seconds, the user has 20 seconds to enter the
first character and 60 seconds to complete the input.
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
|
|
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
|
|
Some SATA 1.5G drives don't work with UDMA mode 6, so use mode 5 instead.
As this is SATA, the UDMA mode doesn't really matter.
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
|
|
The xgmac receiver will only have buffer if we are doing a network
command, so we want to just drop frames rather than send pause frames.
Also, enable rx cut-thru for better performance.
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
|
|
Older compilers don't recognize v7 wfi instruction, so just hard-code the
machine code and revert compiling with armv7.
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
|
|
The 150MHz clock rate gives u-boot time functions problems and there's no
benefit to a fast clock, so lower the rate.
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
|
|
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
|
|
ontimeout is similar to default, but is the selection on menu timeout.
This is how cobbler sets a default. The label default is supposed to be
the default selection when <enter> is pressed. If both default and
ontimeout are set, last one parsed wins.
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
|
|
Changing to numeric entries broke the default label.
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
|
|
Menus with lots of entries and long append lines are hard to read.
Just show a numbered list using the label or name and make the choice
by entering the number.
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
|
|
Add support for value of -1 For localboot. A value of -1 means return to
u-boot prompt.
localboot value is often 0, so we need to distinguish the value from
localboot being selected. A value of greater than or equal to 0 means
attempt local boot command.
If localboot is selected, we don't want to try other entries.
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
|
|
The prompt flag is for displaying a "boot:" prompt in pxelinux. This
doesn't make sense for u-boot as we don't support the pxelinux command
interface. So we should just ignore prompt statements and always show the
menu if a menu is present.
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
|
|
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
|
|
bootz is needed for sysboot command.
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
|
|
enable EFI partitions and FAT filesystem
enable bootz command and raw initrd
increase cmd and print buffer size to 1K
change serial baudrate to 115200
enable hush shell
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
|
|
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
|
|
Signed-off-by: John Rigby <john.rigby@linaro.org>
|
|
|
|
|
|
Arndale board has AX88760, which is USB 2.0 Hub & USB 2.0 Ethernet Combo
controller, connected to HSIC Phy of USB host controller via USB3503 hub.
This patch initializes the HSIC PHYs, performs reset sequence for USB3503
hub and enables the relevant config options for network to work.
Signed-off-by: Inderpal Singh <inderpal.singh@linaro.org>
|
|
the vendor specific region of the dwmmc core (CLK_SEL), and second is part of the dwmmc generic registers (CLK_DIV). The goal of this patch is to maintain a 100MHz clock output before dividing it further by using the CLK_DIV. Depending on the card enumeration, it can be further divided by writing a correct divider in the dwmmc CLK_DIV register.
Signed-off-by: Girish K S <ks.giri@samsung.com>
|
|
The exynos dwmmc Ip has 2 stage divider. The first divider
Register is in the vendor specific region of the dwmmc core
(CLK_SEL), and second is part of the dwmmc generic registers
(CLK_DIV).
The goal of this patch is to maintain a 100MHz clock output
before dividing it further by using the CLK_DIV.
Depending on the card enumeration, it can be further divided
by writing a correct divider in the dwmmc CLK_DIV register.
Signed-off-by: Girish K S <ks.giri@samsung.com>
|