mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-25 06:00:43 +00:00
5764acb261
This RISC-V ACLINT specification [1] defines a set of memory mapped devices which provide inter-processor interrupts (IPI) and timer functionalities for each HART on a multi-HART RISC-V platform. The RISC-V ACLINT specification is defined to be backward compatible with the SiFive CLINT specification, however the device tree binding is a new one. This change updates the sifive clint timer driver to support ACLINT mtimer device, using a per-driver data field to hold the mtimer offset to the base address encoded in the mtimer node. [1] https://github.com/riscv/riscv-aclint/blob/main/riscv-aclint.adoc Signed-off-by: Bin Meng <bmeng@tinylab.org> Reviewed-by: Rick Chen <rick@andestech.com>
49 lines
1.1 KiB
C
49 lines
1.1 KiB
C
/* SPDX-License-Identifier: GPL-2.0+ */
|
|
/*
|
|
* Copyright (C) 2018, Bin Meng <bmeng.cn@gmail.com>
|
|
*/
|
|
|
|
#ifndef __CONFIG_H
|
|
#define __CONFIG_H
|
|
|
|
#include <linux/sizes.h>
|
|
|
|
#define CFG_SYS_SDRAM_BASE 0x80000000
|
|
|
|
#define RISCV_MMODE_TIMERBASE 0x2000000
|
|
#define RISCV_MMODE_TIMEROFF 0xbff8
|
|
#define RISCV_MMODE_TIMER_FREQ 1000000
|
|
#define RISCV_SMODE_TIMER_FREQ 1000000
|
|
|
|
/* Environment options */
|
|
|
|
#define BOOT_TARGET_DEVICES(func) \
|
|
func(QEMU, qemu, na) \
|
|
func(VIRTIO, virtio, 0) \
|
|
func(SCSI, scsi, 0) \
|
|
func(DHCP, dhcp, na)
|
|
|
|
#include <config_distro_bootcmd.h>
|
|
|
|
#define BOOTENV_DEV_QEMU(devtypeu, devtypel, instance) \
|
|
"bootcmd_qemu=" \
|
|
"if env exists kernel_start; then " \
|
|
"bootm ${kernel_start} - ${fdtcontroladdr};" \
|
|
"fi;\0"
|
|
|
|
#define BOOTENV_DEV_NAME_QEMU(devtypeu, devtypel, instance) \
|
|
"qemu "
|
|
|
|
#define CFG_EXTRA_ENV_SETTINGS \
|
|
"fdt_high=0xffffffffffffffff\0" \
|
|
"initrd_high=0xffffffffffffffff\0" \
|
|
"kernel_addr_r=0x84000000\0" \
|
|
"kernel_comp_addr_r=0x88000000\0" \
|
|
"kernel_comp_size=0x4000000\0" \
|
|
"fdt_addr_r=0x8c000000\0" \
|
|
"scriptaddr=0x8c100000\0" \
|
|
"pxefile_addr_r=0x8c200000\0" \
|
|
"ramdisk_addr_r=0x8c300000\0" \
|
|
BOOTENV
|
|
|
|
#endif /* __CONFIG_H */
|