- Dec 21, 2018
-
-
Anup Patel authored
This patch reverts "Fix FDT relocation" because it breaks fw_jump firmware. Signed-off-by:Anup Patel <anup.patel@wdc.com>
-
Anup Patel authored
The sbi_hart_switch_mode() will be used by CPU hotplug. This means if we have prints in sbi_hart_switch_mode() then these prints will mix with Linux prints. Being a runtime firmware, we should be verbose only at coldboot time and error situations. Signed-off-by:Anup Patel <anup.patel@wdc.com>
-
Anup Patel authored
commit d403c70f breaks Linux booting because of fewer exceptions delegated to S-mode. This patch fixes Linux booting by having all required exceptions delegated to S-mode. Signed-off-by:
Anup Patel <anup.patel@wdc.com>
-
Damien Le Moal authored
Avoid getting messages from multiple harts mingled into garbage text with a spinlock serializing calls to sbi_puts() and sbi_printf(). Signed-off-by:Damien Le Moal <damien.lemoal@wdc.com>
-
Damien Le Moal authored
Use functions defined in sbi/riscv_asm.h. Signed-off-by:Damien Le Moal <damien.lemoal@wdc.com>
-
Damien Le Moal authored
Use this helper instead of hardcoding csr_read(mhartid). Signed-off-by:Damien Le Moal <damien.lemoal@wdc.com>
-
Damien Le Moal authored
Cleanup sbi_hart_boot_nexti() code, adding messages for clarity and rename the function to sbi_hart_switch_mode() to reflect what the function actually does. Signed-off-by:Damien Le Moal <damien.lemoal@wdc.com>
-
Damien Le Moal authored
Signed-off-by:Damien Le Moal <damien.lemoal@wdc.com>
-
Damien Le Moal authored
Booting now. Signed-off-by:Damien Le Moal <damien.lemoal@wdc.com>
-
Damien Le Moal authored
When S mode is not supported, simply clear mideleg and medeleg. Otherwise, set delegation from M-mode to S-mode, removing the page fault exceptions as those would not happen in M-mode. Signed-off-by:Damien Le Moal <damien.lemoal@wdc.com>
-
Damien Le Moal authored
Make it clear that the end of the FW execution was reached without the hand being passed to any payload. Signed-off-by:Damien Le Moal <damien.lemoal@wdc.com>
-
Damien Le Moal authored
Signed-off-by:Damien Le Moal <damien.lemoal@wdc.com>
-
Damien Le Moal authored
Also disable interrupts and exceptions delegation when clearing mie and mip. Signed-off-by:Damien Le Moal <damien.lemoal@wdc.com>
-
Damien Le Moal authored
Or rather, disable it if FW_PAYLOAD_FDT_ADDR is not defined. This correspond to cases where the underlying FW that loaded and started opensbi did not provide any FDT. In such case, the platform code will need to prepare one. Signed-off-by:Damien Le Moal <damien.lemoal@wdc.com>
-
Damien Le Moal authored
Allow a platform to report its supported features in more details. The new features defined are: * SBI_PLATFORM_HAS_PMP * SBI_PLATFORM_HAS_SCOUNTEREN * SBI_PLATFORM_HAS_MCOUNTEREN In addition, define the macro SBI_PLATFORM_DEFAULT_FEATURES as the set of features that are generally expected to be supported by a Linux capable platform. Operations touching the features controlled with these falgs are not executed if the platform does not set the corresponding feature flags. Signed-off-by:Damien Le Moal <damien.lemoal@wdc.com>
-
Atish Patra authored
We should not jump to next stage if next mode (S-mode or U-mode) is not supported by HART. Signed-off-by:
Atish Patra <atish.patra@wdc.com> Signed-off-by:
Anup Patel <anup.patel@wdc.com>
-
Anup Patel authored
This patch renames "plat" to "platform" everywhere for better readablility. Signed-off-by:Anup Patel <anup.patel@wdc.com>
-
Anup Patel authored
On QEMU Virt, max supported HARTs are 8 but number of HARTs actually depend on "-smp" command-line parameter passed to QEMU. This creates problems in sbi_hart_wake_coldboot_harts() because when number of HARTs are less than 8. To tackle this, we introduce a bitmap to track HARTs waiting for coldboot to finish. We wake only those HARTs who have set their bit in coldboot bitmap. Signed-off-by:Anup Patel <anup.patel@wdc.com>
-
Anup Patel authored
This patch renames "blob" to "firmware" everywhere for better and intutive naming. Signed-off-by:Anup Patel <anup@brainfault.org>
-
Anup Patel authored
This patch removes unwanted sbi_printf() from sbi_hart_wait_for_coldboot(). Signed-off-by:Anup Patel <anup.patel@wdc.com>
-
Anup Patel authored
This patch adds documentation for fw_jump and fw_payload firmware blobs. Signed-off-by:Anup Patel <anup.patel@wdc.com>
-
Anup Patel authored
This patch adds more details to top-level README.md based on current state of OpenSBI. Signed-off-by:Anup Patel <anup.patel@wdc.com>
-
Anup Patel authored
Various fixes for unleashed board
-
Atish Patra authored
Signed-off-by:Atish Patra <atish.patra@wdc.com>
-
Atish Patra authored
Signed-off-by:Atish Patra <atish.patra@wdc.com>
-
Atish Patra authored
Signed-off-by:Atish Patra <atish.patra@wdc.com>
-
Atish Patra authored
Signed-off-by:Atish Patra <atish.patra@wdc.com>
-
Atish Patra authored
Signed-off-by:Atish Patra <atish.patra@wdc.com>
-
- Dec 20, 2018
-
-
Anup Patel authored
We can only use fw_payload blob on Kendryte K210 board because there is no previous booting stage hence this patch enables fw_payload for Kendryte K210 board. Signed-off-by:Anup Patel <anup.patel@wdc.com>
-
Damien Le Moal authored
Only compiles for now, completely untested. Signed-off-by:Damien Le Moal <damien.lemoal@wdc.com>
-
Damien Le Moal authored
Add comments to assembler (not trivial to follow). Signed-off-by:Damien Le Moal <damien.lemoal@wdc.com>
-
Damien Le Moal authored
Ignore build and install directories Signed-off-by:Damien Le Moal <damien.lemoal@wdc.com>
-
- Dec 19, 2018
-
-
Anup Patel authored
This patch extends fw_payload blob to provide FW_PAYLOAD_FDT_PATH option using which we can embed custom FDT in .text section of fw_payload blob. In other words, FW_PAYLOAD_FDT_PATH is an option to forcefully override FDT passed by previous booting stage in a1 register. Signed-off-by:Anup Patel <anup.patel@wdc.com>
-
Anup Patel authored
Instead of placing FDT (passed by previous booting stage) at a location relative to next address we should have absolute location of placing FDT so that we more freedom of placing FDT. This will be particularly useful for platforms/boards with very less RAM (such as Kendryte board). Due to above motivation, we rename FW_xyz_FDT_OFFSET options to FW_xyz_FDT_ADDR options and use FW_xyz_FDT_ADDR options as absolute address for placing FDT. Signed-off-by:Anup Patel <anup.patel@wdc.com>
-
Anup Patel authored
The PLAT_TEXT_START is only used by our firmware blobs hence rename it to FW_TEXT_START. Signed-off-by:Anup Patel <anup.patel@wdc.com>
-
Anup Patel authored
This patch remove hard-coding of payload location in fw_payload.elf.ldS by adding compile-time option FW_PAYLOAD_OFFSET. With the new compile-time option, payload will be placed at PLAT_TEXT_START + FW_PAYLOAD_OFFSET address. Signed-off-by:Anup Patel <anup.patel@wdc.com>
-
Damien Le Moal authored
Various typos fix. Signed-off-by:Damien Le Moal <damien.lemoal@wdc.com>
-
- Dec 16, 2018
-
-
Anup Patel authored
Currently, we aggresively use atomic operation on CLINT IPI register. This patch simplify CLINT IPI APIs by reducing use of atomic operations. In future, we will gradually increase use of atomic operations for CLINT IPI APIs. Signed-off-by:Anup Patel <anup.patel@wdc.com>
-
Anup Patel authored
The QEMU sifive_u machine is not excatly same as HiFive Unleashed board hence we add separate platform support for QEMU sifive_u machine. Signed-off-by:Anup Patel <anup.patel@wdc.com>
-
Anup Patel authored
Emulation of CSR read for misa and mhartid was a workaround for bootloader accessing these CSRs in S-mode. This patch removes CSR read emulation for misa and mhartid. Signed-off-by:Anup Patel <anup.patel@wdc.com>
-