- Nov 26, 2018
-
-
Rick Chen authored
Separate ax25-ae350 from one to two for 32 and 64 bit individually. And also select different dts for 32 and 64 bit. Signed-off-by:
Rick Chen <rick@andestech.com> Cc: Greentime Hu <greentime@andestech.com>
-
Rick Chen authored
Use same dts to boot U-Boot and Kernel. Following are the change notes : 1 Remove early printk bootargs. 2 Timer frequency are changed to 60MHz. 3 Add dma, snd, lcd, virtio nodes which are used in kernel drivers. They does not been used by U-Boot. 4 Change spi irq from 3 to 4. Signed-off-by:
Rick Chen <rick@andestech.com> Cc: Greentime Hu <greentime@andestech.com>
-
Lukas Auer authored
QEMU specifies the location of Linux (supplied with the -kernel argument) in the device tree using the riscv,kernel-start and riscv,kernel-end properties. We currently rely on the SBI implementation of BBL to run Linux and therefore embed Linux as payload in BBL. This causes an issue, because BBL detects the kernel properties in the device tree and ignores the Linux payload as a result. Work around this issue by clearing the kernel properties in the device tree before booting Linux. Signed-off-by:
Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com>
-
Lukas Auer authored
QEMU embeds the location of the kernel image in the device tree. Store this address in the environment as variable kernel_start. It is used in the board-local distro boot command QEMU to boot the kernel with the U-Boot device tree. The QEMU boot command is added as the first boot target device. Signed-off-by:
Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com> Reviewed-by:
Alexander Graf <agraf@suse.de>
-
Lukas Auer authored
Signed-off-by:
Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com> Reviewed-by:
Simon Glass <sjg@chromium.org>
-
Lukas Auer authored
Enable distro boot on the qemu-riscv32/64 boards. Supported boot target devices are VirtIO and DHCP. Signed-off-by:
Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com> Reviewed-by:
Alexander Graf <agraf@suse.de>
-
Lukas Auer authored
Add a boot command to distro boot to support disks connected over the VirtIO bus. The boot command uses the shared block environment. Signed-off-by:
Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com> Reviewed-by:
Alexander Graf <agraf@suse.de>
-
Lukas Auer authored
The bootm implementation of RISC-V diverges from that of other architectures. Update it to match the implementation of other architectures. The ARM implementation is used as a reference. This adds the following features and changes to RISC-V. * Add support for the BOOTM_STATE_OS_FAKE_GO command * Call the remove function on devices with the removal flag set before booting Linux * Force disconnect USB devices from the host before booting Linux * Print and add bootstage information to the device tree before booting Linux Signed-off-by:
Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com>
-
Lukas Auer authored
Support booting Linux (as payload of BBL) from FIT images. For this, the default CONFIG_SYS_BOOTM_LEN is increased to 16 MB, and the environment variables fdt_high and initrd_high are set to mark the device tree and initrd as in-place. Signed-off-by:
Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com>
-
Lukas Auer authored
QEMU provides a device tree, which is passed to U-Boot using register a1. We are now able to directly select the device tree with the configuration CONFIG_OF_PRIOR_STAGE. Replace the hard-coded address in qemu-riscv with it. Signed-off-by:
Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com> Reviewed-by:
Rick Chen <rick@andestech.com>
-
Lukas Auer authored
Store the hart ID and device tree passed by the prior boot stage (in a0 and a1) in registers s0 and s1. Replace one use of s1 in start.S to avoid overwriting it. The device tree is also stored in memory to make it available to U-Boot with the configuration CONFIG_OF_PRIOR_STAGE. Signed-off-by:
Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com> Reviewed-by:
Rick Chen <rick@andestech.com>
-
Lukas Auer authored
The mstatus CSR includes WPRI (writes preserve values, reads ignore values) fields and must therefore not be set to zero without preserving these fields. It is not apparent why mstatus is set to zero here since it is not required for U-Boot to run. Remove it. This instruction and others encode zero as an immediate. RISC-V has the zero register for this purpose. Replace the immediates with the zero register. Signed-off-by:
Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com> Reviewed-by:
Rick Chen <rick@andestech.com>
-
Lukas Auer authored
The labels nmi_vector, trap_vector and handle_reset in start.S are not used for RISC-V. Remove them. Signed-off-by:
Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com>
-
Bin Meng authored
This is now deprecated and no board is using it. Drop it. Signed-off-by:
Bin Meng <bmeng.cn@gmail.com> Signed-off-by:
Lukas Auer <lukas.auer@aisec.fraunhofer.de>
-
Lukas Auer authored
The machine trap-vector base address (mtvec) must be aligned on a 4-byte boundary. Add the necessary align directive to trap_entry. This patch also removes the global directive for trap_entry, which is not required. Signed-off-by:
Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com>
-
Lukas Auer authored
start.S uses both tabs and spaces after instructions. Fix this by only using tabs after instructions. Signed-off-by:
Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com> Reviewed-by:
Rick Chen <rick@andestech.com>
-
Lukas Auer authored
Implement the functions invalidate_icache_range() and invalidate_icache_all(). RISC-V does not have instructions for explicit cache-control. The functions in this patch are implemented with the memory ordering instruction for synchronizing the instruction and data streams. This may be implemented as a cache flush or invalidate on simple processors, others may only invalidate the relevant cache lines. Signed-off-by:
Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com> Reviewed-by:
Rick Chen <rick@andestech.com>
-
Lukas Auer authored
Hang on unhandled exceptions to prevent execution in a faulty state. Signed-off-by:
Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com> Reviewed-by:
Rick Chen <rick@andestech.com>
-
Lukas Auer authored
Undefined exception codes currently lead to an out-of-bounds array access. Prevent this by treating undefined exception codes as "reserved". Signed-off-by:
Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com> Reviewed-by:
Rick Chen <rick@andestech.com>
-
Lukas Auer authored
Only the first four exception codes are defined. Add the missing exception codes from the definition in RISC-V Privileged Architecture Version 1.10. Signed-off-by:
Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com> Reviewed-by:
Rick Chen <rick@andestech.com>
-
Lukas Auer authored
RISC-V U-Boot reimplements the generic io functions from asm-generic/io.h. Remove the redundant implementation and include the generic io.h instead. Signed-off-by:
Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com> Reviewed-by:
Rick Chen <rick@andestech.com>
-
Lukas Auer authored
Replace the barrier functions in arch/riscv/include/asm/io.h with those defined in barrier.h, which is imported from Linux. This version is modified to remove the include statement of asm-generic/barrier.h, which is not available in U-Boot or required. Signed-off-by:
Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com> Reviewed-by:
Rick Chen <rick@andestech.com>
-
Lukas Auer authored
The RISC-V arch incorrectly uses 32-bit instead of 64-bit variables in several places. Fix this. In addition, BITS_PER_LONG is set to 64 on RV64I systems. Signed-off-by:
Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com>
-
Lukas Auer authored
Enable the -fdata-sections compiler option for RISC-V. Buildman reports the binary size decrease from this as 8365.3 bytes. Signed-off-by:
Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com> Reviewed-by:
Rick Chen <rick@andestech.com>
-
Lukas Auer authored
Use the new Kconfig entries to construct the ISA string for the -march compiler flag. The -mabi compiler flag is selected based on the base integer instruction set. With this change, the C (compressed instructions) ISA extension is now enabled for all boards with CONFIG_RISCV_ISA_C set. Buildman reports a decrease in binary size of 71590 bytes. Signed-off-by:
Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com>
-
Lukas Auer authored
Add Kconfig entries for the C (compressed instructions) and A (atomic instructions) ISA extensions. Only the C ISA extension is selectable. This matches the configuration in Linux. The Kconfig entries are not used yet. A follow-up patch will select the appropriate compiler flags based on the Kconfig configuration. Signed-off-by:
Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com>
-
Lukas Auer authored
CONFIG_PHYS_64BIT should be enabled on RV64I systems. Select it. Signed-off-by:
Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com> Reviewed-by:
Rick Chen <rick@andestech.com>
-
Lukas Auer authored
RISC-V defines the base integer instruction sets as RV32I and RV64I. Rename CPU_RISCV_32 and CPU_RISCV_64 to ARCH_RV32I and ARCH_RV64I to match this convention. Signed-off-by:
Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com> Reviewed-by:
Rick Chen <rick@andestech.com>
-
Lukas Auer authored
Signed-off-by:
Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com> Reviewed-by:
Rick Chen <rick@andestech.com>
-
Lukas Auer authored
Ignore tools/prelink-riscv. Signed-off-by:
Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com> Reviewed-by:
Rick Chen <rick@andestech.com>
-
- Nov 23, 2018
-
-
git://git.denx.de/u-boot-dmTom Rini authored
Various minor sandbox improvements Better buildman warning handling Misc other things
-
- Nov 21, 2018
-
-
Simon Glass authored
It is useful to obtain the block-protect setting of the SPI flash, so we know whether it is fully open or (perhaps partially) write-protected. Add a method for this. Update the sandbox driver to process this operation and add a test. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
The current test is a functional test, covering all the way from the command line to the sandbox SPI driver. This is useful, but it is easier to diagnose failures with a smaller test. Add a simple test which reads and writes data and checks that it is stored and retrieved correctly. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
At present these functions return 0 on success. For some devices we want to know how many bytes were transferred. It seems useful to adjust the API to be more like the POSIX read() and write() functions. Update these two methods, a test and all users. Signed-off-by:
Simon Glass <sjg@chromium.org> Reviewed-by:
Patrick Delaunay <patrick.delaunay@st.com>
-
Simon Glass authored
At present the config header is not included in this file, but it does use a CONFIG option. Fix it. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
It is useful to be able to invert the colours in some cases so that the text matches the background colour. Add a parameter to the function to support this. It is strange that function takes a private data structure from another driver as an argument. It seems better to pass the device and have the function internally work out how to find its required information. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
At present, stripped files don't have the right pathname which means that blob compression cannot be used. Fix this. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
This comma is not needed. Drop it. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
When the build fails due to something wrong in binman it is sometimes useful to get a full backtrace showing the location of the failure. Add a BINMAN_DEBUG environment variable to support this along with some documentation. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
In some cases U-Boot is compressed and it is useful to be able to decompress it in SPL. Add a Kconfig and Makefile change to allow this. Note that this does not actually implement decompression. Signed-off-by:
Simon Glass <sjg@chromium.org>
-