Skip to content

Commit

Permalink
buildroot: Import all buildroot & kernel config
Browse files Browse the repository at this point in the history
Signed-off-by: Sylvain Munaut <[email protected]>
  • Loading branch information
smunaut committed Aug 21, 2021
1 parent 41fe140 commit 53aab03
Show file tree
Hide file tree
Showing 7 changed files with 262 additions and 0 deletions.
Empty file added buildroot/Config.in
Empty file.
145 changes: 145 additions & 0 deletions buildroot/board/ice40linux_vexriscv/linux.config
Original file line number Diff line number Diff line change
@@ -0,0 +1,145 @@
CONFIG_SECTION_MISMATCH_WARN_ONLY=y

# Architecture
CONFIG_ARCH_DEFCONFIG="arch/riscv/configs/defconfig"
CONFIG_ARCH_RV32I=y
CONFIG_RISCV_ISA_M=n
CONFIG_RISCV_ISA_A=y
CONFIG_RISCV_ISA_C=n
CONFIG_FPU=n
CONFIG_SMP=n
CONFIG_STRICT_KERNEL_RWX=n
CONFIG_EFI=n
CONFIG_HVC_RISCV_SBI=y

CONFIG_HZ_100=y
CONFIG_HZ_250=n
CONFIG_HZ=100

CONFIG_BLK_DEV_INITRD=y
CONFIG_INITRAMFS_SOURCE=""
CONFIG_RD_GZIP=y
CONFIG_RD_BZIP2=y
CONFIG_RD_LZMA=y
CONFIG_RD_XZ=y
CONFIG_RD_LZO=y
CONFIG_RD_LZ4=y

# IO
CONFIG_MQ_IOSCHED_KYBER=n

# Time
CONFIG_PRINTK_TIME=y

# Clocking
CONFIG_COMMON_CLK=y

# Interrupts
CONFIG_IRQCHIP=y
CONFIG_OF_IRQ=y
CONFIG_HANDLE_DOMAIN_IRQ=y
CONFIG_LITEX_VEXRISCV_INTC=y

# No network
CONFIG_NET=n

# Serial
CONFIG_SERIAL_EARLYCON_RISCV_SBI=y
CONFIG_SERIAL_NO2UART=y
CONFIG_SERIAL_NO2UART_CONSOLE=y

# GPIO
CONFIG_GPIO_SYSFS=y
CONFIG_GPIOLIB=y

# PWM
CONFIG_PWM=y

# LEDs
CONFIG_NEW_LEDS=y

CONFIG_LEDS_CLASS=y
CONFIG_LEDS_CLASS_FLASH=y
CONFIG_LEDS_CLASS_MULTICOLOR=y

CONFIG_LEDS_BLINK=y
CONFIG_LEDS_PWM=y
CONFIG_LEDS_USER=y
CONFIG_LEDS_NO2ICE40_RGB=y

CONFIG_LEDS_TRIGGERS=y
CONFIG_LEDS_TRIGGER_TIMER=y
CONFIG_LEDS_TRIGGER_ONESHOT=y
CONFIG_LEDS_TRIGGER_MTD=y
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
CONFIG_LEDS_TRIGGER_BACKLIGHT=y
CONFIG_LEDS_TRIGGER_CPU=y
CONFIG_LEDS_TRIGGER_ACTIVITY=y
CONFIG_LEDS_TRIGGER_GPIO=y
CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
CONFIG_LEDS_TRIGGER_TRANSIENT=y
CONFIG_LEDS_TRIGGER_PANIC=y
CONFIG_LEDS_TRIGGER_PATTERN=y
CONFIG_LEDS_TRIGGER_AUDIO=y
CONFIG_LEDS_TRIGGER_TTY=y

# SPI
CONFIG_SPI=y
CONFIG_SPI_LITESPI=n
CONFIG_SPI_SPIDEV=y
CONFIG_SPI_NO2SPI_SIMPLE=y

# I2C
CONFIG_I2C=y
CONFIG_I2C_CHARDEV=y

# Hardware monitoring
CONFIG_HWMON=n

# Framebuffer
CONFIG_FB=n

# Flash
CONFIG_MTD=y
CONFIG_MTD_SPI_NOR=y
CONFIG_MTD_SPI_NOR_USE_4K_SECTORS=n

CONFIG_MTD_BLKDEVS=y
CONFIG_MTD_BLOCK=y
CONFIG_MTD_PARTITIONED_MASTER=y

CONFIG_MTD_UBI=y
CONFIG_MTD_UBI_WL_THRESHOLD=4096
CONFIG_MTD_UBI_BEB_LIMIT=20

# MMC
CONFIG_MMC=y
CONFIG_MMC_SPI=y

# Input
CONFIG_INPUT_KEYBOARD=n
CONFIG_INPUT_MOUSE=n

CONFIG_SERIO_LIBPS2=n

# No USB
CONFIG_USB_SUPPORT=n

# .config in kernel
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y

# Filesystem
CONFIG_TMPFS=y

CONFIG_UBIFS_FS=y
CONFIG_UBIFS_FS_LZO=y
CONFIG_UBIFS_FS_ZLIB=y
CONFIG_UBIFS_FS_ZSTD=y
CONFIG_UBIFS_FS_XATTR=y
CONFIG_UBIFS_FS_SECURITY=y

# Other
CONFIG_VIRTIO_MENU=n
CONFIG_VHOST_MENU=n
CONFIG_IOMMU_SUPPORT=n
15 changes: 15 additions & 0 deletions buildroot/board/ice40linux_vexriscv/rootfs_overlay/etc/motd
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
_ ______________ __ ____
(_) ____/ ____/ // / / __ \
/ / / / __/ / // /_/ / / /
/ / /___/ /___/__ __/ /_/ /
/_/\____/_____/ /_/ \____/
/ / (_)___ __ ___ __
/ / / / __ \/ / / / |/_/
/ /___/ / / / / /_/ /> <
/_____/_/_/ /_/\__,_/_/|_|

32-bit RISC-V Linux running on iCE40
- CPU : VexRiscv
- SoC : no2soc
- Board : iCEbreaker + Quad-HyperRAM PMOD

20 changes: 20 additions & 0 deletions buildroot/board/ice40linux_vexriscv/rootfs_overlay/etc/profile
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
export PATH="/bin:/sbin:/usr/bin:/usr/sbin"

if [ "$PS1" ]; then
if [ "`id -u`" -eq 0 ]; then
export PS1='\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\# '
else
export PS1='\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
fi
fi

export PAGER='/bin/more'
export EDITOR='/bin/vi'

# Source configuration files from /etc/profile.d
for i in /etc/profile.d/*.sh ; do
if [ -r "$i" ]; then
. $i
fi
done
unset i
80 changes: 80 additions & 0 deletions buildroot/configs/ice40linux_vexriscv_defconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
# Target options
BR2_riscv=y
BR2_RISCV_32=y

# Instruction Set Extensions
BR2_riscv_custom=y
BR2_RISCV_ISA_CUSTOM_RVM=n
BR2_RISCV_ISA_CUSTOM_RVA=y
BR2_RISCV_ISA_CUSTOM_RVC=n
#BR2_RISCV_ISA_CUSTOM_RVF=y # Uncomment to enable FPU
#BR2_RISCV_ISA_CUSTOM_RVD=y # Uncomment to enable FPU
BR2_RISCV_ABI_ILP32=y

# GCC
BR2_GCC_VERSION_10_X=y

# System
BR2_TARGET_GENERIC_GETTY=y
BR2_TARGET_GENERIC_GETTY_PORT="console"

# Filesystem
BR2_TARGET_ROOTFS_CPIO=y

# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_GIT=y
BR2_LINUX_KERNEL_CUSTOM_REPO_URL="git://github.com/smunaut/iCE40linux-kernel.git"
BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="5f5c810dfa05a0dc45cb6c11ca1468d32d019de0"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_ICE40LINUX_VEXRISCV_PATH)/board/ice40linux_vexriscv/linux.config"
BR2_LINUX_KERNEL_IMAGE=y

BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_12=y

# Target
BR2_TARGET_GENERIC_HOSTNAME="ice40"
BR2_TARGET_GENERIC_ISSUE="Welcome to iCE40linux"
BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW=n

# Rootfs customisation
BR2_ROOTFS_OVERLAY="$(BR2_EXTERNAL_ICE40LINUX_VEXRISCV_PATH)/board/ice40linux_vexriscv/rootfs_overlay"

# Games
BR2_PACKAGE_ASCII_INVADERS=y
BR2_PACKAGE_XORCURSES=y

# Micropython
BR2_PACKAGE_MICROPYTHON=y
BR2_PACKAGE_MICROPYTHON_LIB=y

# No need for random stuff slowing boot
BR2_PACKAGE_URANDOM_SCRIPTS=n

# Extra packages
#BR2_PACKAGE_DHRYSTONE=y
#BR2_PACKAGE_MICROPYTHON=y
#BR2_PACKAGE_SPIDEV_TEST=y
#BR2_PACKAGE_MTD=y
#BR2_PACKAGE_MTD_JFFS_UTILS=y

# Crypto
#BR2_PACKAGE_LIBATOMIC_OPS_ARCH_SUPPORTS=y
#BR2_PACKAGE_LIBATOMIC_OPS=y
#BR2_PACKAGE_OPENSSL=y
#BR2_PACKAGE_LIBRESSL=y
#BR2_PACKAGE_LIBRESSL_BIN=y
#BR2_PACKAGE_HAVEGED=y

# Generate UBIFS Root
BR2_TARGET_ROOTFS_UBI=y
BR2_TARGET_ROOTFS_UBI_PEBSIZE=0x10000
BR2_TARGET_ROOTFS_UBI_SUBSIZE=0
BR2_TARGET_ROOTFS_UBI_OPTS=""
BR2_TARGET_ROOTFS_UBIFS=y
BR2_TARGET_ROOTFS_UBIFS_LEBSIZE=0xff80
BR2_TARGET_ROOTFS_UBIFS_MINIOSIZE=0x1
BR2_TARGET_ROOTFS_UBIFS_MAXLEBCNT=256
BR2_TARGET_ROOTFS_UBIFS_RT_LZO=y
BR2_TARGET_ROOTFS_UBIFS_NONE=y
BR2_TARGET_ROOTFS_UBIFS_OPTS=""
1 change: 1 addition & 0 deletions buildroot/external.desc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
name: ICE40LINUX_VEXRISCV
1 change: 1 addition & 0 deletions buildroot/external.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
include $(sort $(wildcard $(BR2_EXTERNAL_ICE40LINUX_VEXRISCV_PATH)/package/*/*.mk))

0 comments on commit 53aab03

Please sign in to comment.