All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v6 2/5] board/qemu/riscv32-virt: Simplify the linux config
  2019-03-20 23:05 [Buildroot] [PATCH v6 1/5] board/qemu/riscv32-virt: Convert defconfig into a fragment Alistair Francis
  2019-03-20 23:05 ` [Buildroot] [PATCH v6 3/5] boot/opensbi: new package Alistair Francis
  2019-03-20 23:05 ` [Buildroot] [PATCH v6 4/5] configs: qemu_riscv*_virt: Use OpenSBI by default Alistair Francis
@ 2019-03-20 23:05 ` Alistair Francis
  2019-03-26 12:31   ` Thomas Petazzoni
  2019-03-20 23:05 ` [Buildroot] [PATCH v6 5/5] boot/riscv-pk: Deprecate riscv-pk and BBL Alistair Francis
  2019-03-26 12:31 ` [Buildroot] [PATCH v6 1/5] board/qemu/riscv32-virt: Convert defconfig into a fragment Thomas Petazzoni
  4 siblings, 1 reply; 11+ messages in thread
From: Alistair Francis @ 2019-03-20 23:05 UTC (permalink / raw)
  To: buildroot

Reduce the config fragment to the bare minimum to enable 32-bit
support. This means we are as close as possible to the arch
defconfig.

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
---
 board/qemu/riscv32-virt/linux.config.fragment | 100 +-----------------
 1 file changed, 4 insertions(+), 96 deletions(-)

diff --git a/board/qemu/riscv32-virt/linux.config.fragment b/board/qemu/riscv32-virt/linux.config.fragment
index 2ecc83c8e1..bca9aa61c7 100644
--- a/board/qemu/riscv32-virt/linux.config.fragment
+++ b/board/qemu/riscv32-virt/linux.config.fragment
@@ -1,104 +1,12 @@
+CONFIG_32BIT=y
 CONFIG_ARCH_RV32I=y
 # CONFIG_ARCH_RV64I is not set
-# CONFIG_ATA is not set
-# CONFIG_AUTOFS4_FS is not set
-# CONFIG_AUTOFS_FS is not set
-# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
-# CONFIG_BLK_DEV_INITRD is not set
-# CONFIG_BLK_DEV_LOOP is not set
-# CONFIG_BPF_SYSCALL is not set
-# CONFIG_CGROUPS is not set
-# CONFIG_CHECKPOINT_RESTORE is not set
-# CONFIG_CMODEL_MEDANY is not set
-CONFIG_CMODEL_MEDLOW=y
-CONFIG_CRYPTO_AEAD=y
-CONFIG_CRYPTO_BLKCIPHER=y
-CONFIG_CRYPTO_DEV_VIRTIO=y
-CONFIG_CRYPTO_DRBG=y
-CONFIG_CRYPTO_DRBG_MENU=y
-CONFIG_CRYPTO_ECHAINIV=y
-CONFIG_CRYPTO_ENGINE=y
-CONFIG_CRYPTO_HMAC=y
-CONFIG_CRYPTO_JITTERENTROPY=y
-CONFIG_CRYPTO_MANAGER=y
-CONFIG_CRYPTO_NULL=y
-CONFIG_CRYPTO_RNG=y
-CONFIG_CRYPTO_RNG_DEFAULT=y
-CONFIG_CRYPTO_SHA256=y
-# CONFIG_CRYPTO_USER_API_HASH is not set
-# CONFIG_DEBUG_KERNEL is not set
-CONFIG_DEBUG_MEMORY_INIT=y
-# CONFIG_DRM is not set
-# CONFIG_ETHERNET is not set
-# CONFIG_EXPERT is not set
-CONFIG_EXT2_FS=y
-# CONFIG_EXT4_FS_POSIX_ACL is not set
-# CONFIG_FB is not set
-CONFIG_FRAME_WARN=1024
-# CONFIG_FTRACE is not set
-CONFIG_HID_A4TECH=y
-CONFIG_HID_APPLE=y
-CONFIG_HID_BELKIN=y
-CONFIG_HID_CHERRY=y
-CONFIG_HID_CHICONY=y
-CONFIG_HID_CYPRESS=y
-CONFIG_HID_EZKEY=y
-CONFIG_HID_ITE=y
-CONFIG_HID_KENSINGTON=y
-CONFIG_HID_LOGITECH=y
-CONFIG_HID_MICROSOFT=y
-CONFIG_HID_MONTEREY=y
-CONFIG_HID_REDRAGON=y
-# CONFIG_HVC_RISCV_SBI is not set
-CONFIG_HW_RANDOM=y
-# CONFIG_I2C is not set
-# CONFIG_IKCONFIG is not set
-CONFIG_INPUT_FF_MEMLESS=y
-# CONFIG_INPUT_MOUSEDEV is not set
-# CONFIG_IP_ADVANCED_ROUTER is not set
-# CONFIG_IP_MULTICAST is not set
-# CONFIG_IP_PNP is not set
-# CONFIG_KEYS is not set
 CONFIG_MAXPHYSMEM_2GB=y
-# CONFIG_MDIO_DEVICE is not set
-# CONFIG_MODULES is not set
-# CONFIG_MSDOS_FS is not set
-# CONFIG_NETLINK_DIAG is not set
-# CONFIG_NFS_FS is not set
-# CONFIG_NLS is not set
-CONFIG_PAGE_OFFSET=0xC0000000
-# CONFIG_PCIE_XILINX is not set
-CONFIG_PGTABLE_LEVELS=2
-# CONFIG_PHYLIB is not set
-# CONFIG_POSIX_MQUEUE is not set
-# CONFIG_POWER_SUPPLY is not set
-# CONFIG_PRINTK_TIME is not set
-# CONFIG_PROC_CHILDREN is not set
-# CONFIG_RAS is not set
-# CONFIG_SCSI is not set
-# CONFIG_SIFIVE_PLIC is not set
-# CONFIG_SYNC_FILE is not set
-# CONFIG_TMPFS_POSIX_ACL is not set
-# CONFIG_TMPFS_XATTR is not set
-# CONFIG_USB is not set
-# CONFIG_USER_NS is not set
-# CONFIG_VFAT_FS is not set
-CONFIG_VIRT_DRIVERS=y
-# CONFIG_VT_HW_CONSOLE_BINDING is not set
-# CONFIG_WIRELESS is not set
-# CONFIG_WLAN is not set
-# CONFIG_XZ_DEC is not set
-CONFIG_32BIT=y
-# CONFIG_EXT2_FS_XATTR is not set
+CONFIG_LBDAF=y
+# CONFIG_SCSI_NSP32 is not set
 CONFIG_GENERIC_ATOMIC64=y
 CONFIG_GENERIC_LIB_ASHLDI3=y
 CONFIG_GENERIC_LIB_ASHRDI3=y
 CONFIG_GENERIC_LIB_LSHRDI3=y
 CONFIG_GENERIC_LIB_UCMPDI2=y
-# CONFIG_HID_LOGITECH_HIDPP is not set
-CONFIG_LBDAF=y
-# CONFIG_LOGIG940_FF is not set
-# CONFIG_LOGIRUMBLEPAD2_FF is not set
-# CONFIG_LOGITECH_FF is not set
-# CONFIG_LOGIWHEELS_FF is not set
-
+CONFIG_GENERIC_LIB_UMODDI3=y
-- 
2.21.0

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH v6 3/5] boot/opensbi: new package
  2019-03-20 23:05 [Buildroot] [PATCH v6 1/5] board/qemu/riscv32-virt: Convert defconfig into a fragment Alistair Francis
@ 2019-03-20 23:05 ` Alistair Francis
  2019-03-26 13:57   ` Thomas Petazzoni
  2019-03-20 23:05 ` [Buildroot] [PATCH v6 4/5] configs: qemu_riscv*_virt: Use OpenSBI by default Alistair Francis
                   ` (3 subsequent siblings)
  4 siblings, 1 reply; 11+ messages in thread
From: Alistair Francis @ 2019-03-20 23:05 UTC (permalink / raw)
  To: buildroot

OpenSBI is a much improved alternative to BBL (riscv-pk). Add OpenSBI
support to buildroot.

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
---
 DEVELOPERS              |  1 +
 boot/Config.in          |  1 +
 boot/opensbi/Config.in  | 25 +++++++++++++++++++++++++
 boot/opensbi/opensbi.mk | 37 +++++++++++++++++++++++++++++++++++++
 4 files changed, 64 insertions(+)
 create mode 100644 boot/opensbi/Config.in
 create mode 100644 boot/opensbi/opensbi.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index 3e0ac08e11..91eda42949 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -122,6 +122,7 @@ F:	package/kvazaar/
 F:	package/v4l2loopback/
 
 N:	Alistair Francis <alistair@alistair23.me>
+F:	boot/opensbi/
 F:	package/xen/
 
 N:	Alvaro G. M <alvaro.gamez@hazent.com>
diff --git a/boot/Config.in b/boot/Config.in
index 74481e7545..97bd3de6e9 100644
--- a/boot/Config.in
+++ b/boot/Config.in
@@ -14,6 +14,7 @@ source "boot/lpc32xxcdl/Config.in"
 source "boot/mv-ddr-marvell/Config.in"
 source "boot/mxs-bootlets/Config.in"
 source "boot/optee-os/Config.in"
+source "boot/opensbi/Config.in"
 source "boot/riscv-pk/Config.in"
 source "boot/s500-bootloader/Config.in"
 source "boot/shim/Config.in"
diff --git a/boot/opensbi/Config.in b/boot/opensbi/Config.in
new file mode 100644
index 0000000000..5f3cc13312
--- /dev/null
+++ b/boot/opensbi/Config.in
@@ -0,0 +1,25 @@
+config BR2_TARGET_OPENSBI
+	bool "opensbi"
+	depends on BR2_riscv
+	help
+	  OpenSBI aims to provide an open-source and extensible
+	  implementation of the RISC-V SBI specification for a platform
+	  specific firmware (M-mode) and a general purpose OS,
+	  hypervisor or bootloader (S-mode or HS-mode). OpenSBI
+	  implementation can be easily extended by RISC-V platform or
+	  System-on-Chip vendors to fit a particular hadware
+	  configuration.
+
+	  https://github.com/riscv/opensbi.git
+
+if BR2_TARGET_OPENSBI
+config BR2_TARGET_OPENSBI_PLAT
+	string "OpenSBI Platform"
+	default ""
+	help
+	  Specifies the OpenSBI platform to build. If no platform is
+	  specified only the OpenSBI platform independent static
+	  library libsbi.a is built. If a platform is specified then
+	  the platform specific static library libplatsbi.a and firmware
+	  examples are built.
+endif
diff --git a/boot/opensbi/opensbi.mk b/boot/opensbi/opensbi.mk
new file mode 100644
index 0000000000..ba4ff06c28
--- /dev/null
+++ b/boot/opensbi/opensbi.mk
@@ -0,0 +1,37 @@
+################################################################################
+#
+# opensbi
+#
+################################################################################
+
+OPENSBI_VERSION = v0.3
+OPENSBI_SITE = $(call github,riscv,opensbi,$(OPENSBI_VERSION))
+OPENSBI_LICENSE = BSD-2-Clause
+OPENSBI_LICENSE_FILES = COPYING.BSD
+OPENSBI_INSTALL_IMAGES = YES
+
+OPENSBI_MAKE_ENV = \
+	CROSS_COMPILE=$(TARGET_CROSS)
+
+OPENSBI_PLAT = $(call qstrip,$(BR2_TARGET_OPENSBI_PLAT))
+ifneq ($(OPENSBI_PLAT),)
+OPENSBI_MAKE_ENV += PLATFORM=$(OPENSBI_PLAT)
+endif
+
+define OPENSBI_BUILD_CMDS
+	$(TARGET_MAKE_ENV) $(OPENSBI_MAKE_ENV) $(MAKE) -C $(@D)
+endef
+
+ifneq ($(OPENSBI_PLAT),)
+define OPENSBI_INSTALL_IMAGES_CMDS
+	$(INSTALL) -m 0644 -D $(@D)/build/platform/$(OPENSBI_PLAT)/firmware/fw_jump.bin $(BINARIES_DIR)/fw_jump.bin
+	$(INSTALL) -m 0644 -D $(@D)/build/platform/$(OPENSBI_PLAT)/firmware/fw_jump.elf $(BINARIES_DIR)/fw_jump.elf
+endef
+endif
+
+# Install libsbi.a in the host lib dir so it can be linked in the future.
+define OPENSBI_INSTALL_STAGING_CMDS
+	$(INSTALL) -m 0644 -D $(@D)/build/lib/libsbi.a $(STAGING_DIR)/usr/share/opensbi/libsbi.a
+endef
+
+$(eval $(generic-package))
-- 
2.21.0

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH v6 4/5] configs: qemu_riscv*_virt: Use OpenSBI by default
  2019-03-20 23:05 [Buildroot] [PATCH v6 1/5] board/qemu/riscv32-virt: Convert defconfig into a fragment Alistair Francis
  2019-03-20 23:05 ` [Buildroot] [PATCH v6 3/5] boot/opensbi: new package Alistair Francis
@ 2019-03-20 23:05 ` Alistair Francis
  2019-03-26 14:01   ` Thomas Petazzoni
  2019-03-20 23:05 ` [Buildroot] [PATCH v6 2/5] board/qemu/riscv32-virt: Simplify the linux config Alistair Francis
                   ` (2 subsequent siblings)
  4 siblings, 1 reply; 11+ messages in thread
From: Alistair Francis @ 2019-03-20 23:05 UTC (permalink / raw)
  To: buildroot

Use OpenSBI by default instead of riscv-pk (BBL).

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
---
 board/qemu/riscv32-virt/readme.txt  | 6 +++---
 board/qemu/riscv64-virt/readme.txt  | 6 +++---
 configs/qemu_riscv32_virt_defconfig | 5 ++++-
 configs/qemu_riscv64_virt_defconfig | 5 ++++-
 4 files changed, 14 insertions(+), 8 deletions(-)

diff --git a/board/qemu/riscv32-virt/readme.txt b/board/qemu/riscv32-virt/readme.txt
index 2da99580e5..b984e47105 100644
--- a/board/qemu/riscv32-virt/readme.txt
+++ b/board/qemu/riscv32-virt/readme.txt
@@ -1,7 +1,7 @@
-Run the emulation with:
+Run Linux in emulation with:
 
-  qemu-system-riscv32 -M virt -kernel output/images/bbl -append "root=/dev/vda ro console=ttyS0" -drive file=output/images/rootfs.ext2,format=raw,id=hd0 -device virtio-blk-device,drive=hd0 -netdev user,id=net0 -device virtio-net-device,netdev=net0 -nographic
+  qemu-system-riscv32 -M virt -kernel output/images/fw_jump.elf -device loader,file=output/images/Image,addr=0x80400000 -append "root=/dev/vda ro" -drive file=output/images/rootfs.ext2,format=raw,id=hd0 -device virtio-blk-device,drive=hd0 -netdev user,id=net0 -device virtio-net-device,netdev=net0 -nographic
 
 The login prompt will appear in the terminal that started Qemu.
 
-Tested with QEMU 2.12.1
+Tested with QEMU 3.1
diff --git a/board/qemu/riscv64-virt/readme.txt b/board/qemu/riscv64-virt/readme.txt
index 9f6e35c867..84c7ab3221 100644
--- a/board/qemu/riscv64-virt/readme.txt
+++ b/board/qemu/riscv64-virt/readme.txt
@@ -1,7 +1,7 @@
-Run the emulation with:
+Run Linux in emulation with:
 
-  qemu-system-riscv64 -M virt -kernel output/images/bbl -append "root=/dev/vda ro console=ttyS0" -drive file=output/images/rootfs.ext2,format=raw,id=hd0 -device virtio-blk-device,drive=hd0 -netdev user,id=net0 -device virtio-net-device,netdev=net0 -nographic
+  qemu-system-riscv64 -M virt -kernel output/images/fw_jump.elf -device loader,file=output/images/Image,addr=0x80200000 -append "root=/dev/vda ro" -drive file=output/images/rootfs.ext2,format=raw,id=hd0 -device virtio-blk-device,drive=hd0 -netdev user,id=net0 -device virtio-net-device,netdev=net0 -nographic
 
 The login prompt will appear in the terminal that started Qemu.
 
-Tested with QEMU 2.12.1
+Tested with QEMU 3.1
diff --git a/configs/qemu_riscv32_virt_defconfig b/configs/qemu_riscv32_virt_defconfig
index fab152e50a..5d3e06bf3c 100644
--- a/configs/qemu_riscv32_virt_defconfig
+++ b/configs/qemu_riscv32_virt_defconfig
@@ -20,6 +20,9 @@ BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/riscv/riscv-linux.git"
 BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="8fe28cb58bcb235034b64cbbb7550a8a43fd88be"
 BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
 BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/qemu/riscv32-virt/linux.config.fragment"
+BR2_LINUX_KERNEL_IMAGE=y
 
 # Bootloader
-BR2_TARGET_RISCV_PK=y
+BR2_TARGET_OPENSBI=y
+BR2_TARGET_OPENSBI_USE_PLAT=y
+BR2_TARGET_OPENSBI_PLAT="qemu/virt"
diff --git a/configs/qemu_riscv64_virt_defconfig b/configs/qemu_riscv64_virt_defconfig
index 596edf2fcd..05d2764003 100644
--- a/configs/qemu_riscv64_virt_defconfig
+++ b/configs/qemu_riscv64_virt_defconfig
@@ -19,6 +19,9 @@ BR2_LINUX_KERNEL_CUSTOM_GIT=y
 BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/riscv/riscv-linux.git"
 BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="8fe28cb58bcb235034b64cbbb7550a8a43fd88be"
 BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
+BR2_LINUX_KERNEL_IMAGE=y
 
 # Bootloader
-BR2_TARGET_RISCV_PK=y
+BR2_TARGET_OPENSBI=y
+BR2_TARGET_OPENSBI_USE_PLAT=y
+BR2_TARGET_OPENSBI_PLAT="qemu/virt"
-- 
2.21.0

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH v6 1/5] board/qemu/riscv32-virt: Convert defconfig into a fragment
@ 2019-03-20 23:05 Alistair Francis
  2019-03-20 23:05 ` [Buildroot] [PATCH v6 3/5] boot/opensbi: new package Alistair Francis
                   ` (4 more replies)
  0 siblings, 5 replies; 11+ messages in thread
From: Alistair Francis @ 2019-03-20 23:05 UTC (permalink / raw)
  To: buildroot

Convert the config to the arch defconfig plus a fragment. When this
fragment is applied we will generate the same config as we previously
did.

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
---
 board/qemu/riscv32-virt/linux.config          |  23 ----
 board/qemu/riscv32-virt/linux.config.fragment | 104 ++++++++++++++++++
 configs/qemu_riscv32_virt_defconfig           |   4 +-
 3 files changed, 106 insertions(+), 25 deletions(-)
 delete mode 100644 board/qemu/riscv32-virt/linux.config
 create mode 100644 board/qemu/riscv32-virt/linux.config.fragment

diff --git a/board/qemu/riscv32-virt/linux.config b/board/qemu/riscv32-virt/linux.config
deleted file mode 100644
index c25583f768..0000000000
--- a/board/qemu/riscv32-virt/linux.config
+++ /dev/null
@@ -1,23 +0,0 @@
-CONFIG_ARCH_RV32I=y
-CONFIG_SMP=y
-CONFIG_NR_CPUS=8
-CONFIG_PCI=y
-CONFIG_SYSVIPC=y
-CONFIG_NET=y
-CONFIG_PACKET=y
-CONFIG_UNIX=y
-CONFIG_INET=y
-# CONFIG_WIRELESS is not set
-CONFIG_VIRTIO_BLK=y
-CONFIG_NETDEVICES=y
-CONFIG_VIRTIO_NET=y
-# CONFIG_ETHERNET is not set
-# CONFIG_WLAN is not set
-CONFIG_SERIAL_8250=y
-CONFIG_SERIAL_8250_CONSOLE=y
-CONFIG_SERIAL_OF_PLATFORM=y
-CONFIG_VIRT_DRIVERS=y
-CONFIG_VIRTIO_MMIO=y
-CONFIG_EXT2_FS=y
-CONFIG_EXT4_FS=y
-CONFIG_TMPFS=y
diff --git a/board/qemu/riscv32-virt/linux.config.fragment b/board/qemu/riscv32-virt/linux.config.fragment
new file mode 100644
index 0000000000..2ecc83c8e1
--- /dev/null
+++ b/board/qemu/riscv32-virt/linux.config.fragment
@@ -0,0 +1,104 @@
+CONFIG_ARCH_RV32I=y
+# CONFIG_ARCH_RV64I is not set
+# CONFIG_ATA is not set
+# CONFIG_AUTOFS4_FS is not set
+# CONFIG_AUTOFS_FS is not set
+# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
+# CONFIG_BLK_DEV_INITRD is not set
+# CONFIG_BLK_DEV_LOOP is not set
+# CONFIG_BPF_SYSCALL is not set
+# CONFIG_CGROUPS is not set
+# CONFIG_CHECKPOINT_RESTORE is not set
+# CONFIG_CMODEL_MEDANY is not set
+CONFIG_CMODEL_MEDLOW=y
+CONFIG_CRYPTO_AEAD=y
+CONFIG_CRYPTO_BLKCIPHER=y
+CONFIG_CRYPTO_DEV_VIRTIO=y
+CONFIG_CRYPTO_DRBG=y
+CONFIG_CRYPTO_DRBG_MENU=y
+CONFIG_CRYPTO_ECHAINIV=y
+CONFIG_CRYPTO_ENGINE=y
+CONFIG_CRYPTO_HMAC=y
+CONFIG_CRYPTO_JITTERENTROPY=y
+CONFIG_CRYPTO_MANAGER=y
+CONFIG_CRYPTO_NULL=y
+CONFIG_CRYPTO_RNG=y
+CONFIG_CRYPTO_RNG_DEFAULT=y
+CONFIG_CRYPTO_SHA256=y
+# CONFIG_CRYPTO_USER_API_HASH is not set
+# CONFIG_DEBUG_KERNEL is not set
+CONFIG_DEBUG_MEMORY_INIT=y
+# CONFIG_DRM is not set
+# CONFIG_ETHERNET is not set
+# CONFIG_EXPERT is not set
+CONFIG_EXT2_FS=y
+# CONFIG_EXT4_FS_POSIX_ACL is not set
+# CONFIG_FB is not set
+CONFIG_FRAME_WARN=1024
+# CONFIG_FTRACE is not set
+CONFIG_HID_A4TECH=y
+CONFIG_HID_APPLE=y
+CONFIG_HID_BELKIN=y
+CONFIG_HID_CHERRY=y
+CONFIG_HID_CHICONY=y
+CONFIG_HID_CYPRESS=y
+CONFIG_HID_EZKEY=y
+CONFIG_HID_ITE=y
+CONFIG_HID_KENSINGTON=y
+CONFIG_HID_LOGITECH=y
+CONFIG_HID_MICROSOFT=y
+CONFIG_HID_MONTEREY=y
+CONFIG_HID_REDRAGON=y
+# CONFIG_HVC_RISCV_SBI is not set
+CONFIG_HW_RANDOM=y
+# CONFIG_I2C is not set
+# CONFIG_IKCONFIG is not set
+CONFIG_INPUT_FF_MEMLESS=y
+# CONFIG_INPUT_MOUSEDEV is not set
+# CONFIG_IP_ADVANCED_ROUTER is not set
+# CONFIG_IP_MULTICAST is not set
+# CONFIG_IP_PNP is not set
+# CONFIG_KEYS is not set
+CONFIG_MAXPHYSMEM_2GB=y
+# CONFIG_MDIO_DEVICE is not set
+# CONFIG_MODULES is not set
+# CONFIG_MSDOS_FS is not set
+# CONFIG_NETLINK_DIAG is not set
+# CONFIG_NFS_FS is not set
+# CONFIG_NLS is not set
+CONFIG_PAGE_OFFSET=0xC0000000
+# CONFIG_PCIE_XILINX is not set
+CONFIG_PGTABLE_LEVELS=2
+# CONFIG_PHYLIB is not set
+# CONFIG_POSIX_MQUEUE is not set
+# CONFIG_POWER_SUPPLY is not set
+# CONFIG_PRINTK_TIME is not set
+# CONFIG_PROC_CHILDREN is not set
+# CONFIG_RAS is not set
+# CONFIG_SCSI is not set
+# CONFIG_SIFIVE_PLIC is not set
+# CONFIG_SYNC_FILE is not set
+# CONFIG_TMPFS_POSIX_ACL is not set
+# CONFIG_TMPFS_XATTR is not set
+# CONFIG_USB is not set
+# CONFIG_USER_NS is not set
+# CONFIG_VFAT_FS is not set
+CONFIG_VIRT_DRIVERS=y
+# CONFIG_VT_HW_CONSOLE_BINDING is not set
+# CONFIG_WIRELESS is not set
+# CONFIG_WLAN is not set
+# CONFIG_XZ_DEC is not set
+CONFIG_32BIT=y
+# CONFIG_EXT2_FS_XATTR is not set
+CONFIG_GENERIC_ATOMIC64=y
+CONFIG_GENERIC_LIB_ASHLDI3=y
+CONFIG_GENERIC_LIB_ASHRDI3=y
+CONFIG_GENERIC_LIB_LSHRDI3=y
+CONFIG_GENERIC_LIB_UCMPDI2=y
+# CONFIG_HID_LOGITECH_HIDPP is not set
+CONFIG_LBDAF=y
+# CONFIG_LOGIG940_FF is not set
+# CONFIG_LOGIRUMBLEPAD2_FF is not set
+# CONFIG_LOGITECH_FF is not set
+# CONFIG_LOGIWHEELS_FF is not set
+
diff --git a/configs/qemu_riscv32_virt_defconfig b/configs/qemu_riscv32_virt_defconfig
index 6f9a61b11c..fab152e50a 100644
--- a/configs/qemu_riscv32_virt_defconfig
+++ b/configs/qemu_riscv32_virt_defconfig
@@ -18,8 +18,8 @@ BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_GIT=y
 BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/riscv/riscv-linux.git"
 BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="8fe28cb58bcb235034b64cbbb7550a8a43fd88be"
-BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
-BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/riscv32-virt/linux.config"
+BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
+BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/qemu/riscv32-virt/linux.config.fragment"
 
 # Bootloader
 BR2_TARGET_RISCV_PK=y
-- 
2.21.0

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH v6 5/5] boot/riscv-pk: Deprecate riscv-pk and BBL
  2019-03-20 23:05 [Buildroot] [PATCH v6 1/5] board/qemu/riscv32-virt: Convert defconfig into a fragment Alistair Francis
                   ` (2 preceding siblings ...)
  2019-03-20 23:05 ` [Buildroot] [PATCH v6 2/5] board/qemu/riscv32-virt: Simplify the linux config Alistair Francis
@ 2019-03-20 23:05 ` Alistair Francis
  2019-03-26 14:01   ` Thomas Petazzoni
  2019-03-26 12:31 ` [Buildroot] [PATCH v6 1/5] board/qemu/riscv32-virt: Convert defconfig into a fragment Thomas Petazzoni
  4 siblings, 1 reply; 11+ messages in thread
From: Alistair Francis @ 2019-03-20 23:05 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
---
 boot/riscv-pk/Config.in | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/boot/riscv-pk/Config.in b/boot/riscv-pk/Config.in
index b4fe36590f..cf9c5cd8ee 100644
--- a/boot/riscv-pk/Config.in
+++ b/boot/riscv-pk/Config.in
@@ -3,10 +3,13 @@ comment "riscv-pk needs a Linux kernel to be built"
 	depends on !BR2_LINUX_KERNEL
 
 config BR2_TARGET_RISCV_PK
-	bool "riscv-pk"
+	bool "riscv-pk (deprecated)"
 	depends on BR2_riscv
 	depends on BR2_LINUX_KERNEL
 	help
+	  The RISC-V Proxy Kernel (pk) and Boot Loader (BBL) have
+	  been deprecated. Please use OpenSBI instead.
+
 	  The RISC-V Proxy Kernel (pk) package contains the Berkeley
 	  Boot Loader (BBL) which has been designed to boot a Linux
 	  kernel on a RISC-V processor.
-- 
2.21.0

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH v6 1/5] board/qemu/riscv32-virt: Convert defconfig into a fragment
  2019-03-20 23:05 [Buildroot] [PATCH v6 1/5] board/qemu/riscv32-virt: Convert defconfig into a fragment Alistair Francis
                   ` (3 preceding siblings ...)
  2019-03-20 23:05 ` [Buildroot] [PATCH v6 5/5] boot/riscv-pk: Deprecate riscv-pk and BBL Alistair Francis
@ 2019-03-26 12:31 ` Thomas Petazzoni
  4 siblings, 0 replies; 11+ messages in thread
From: Thomas Petazzoni @ 2019-03-26 12:31 UTC (permalink / raw)
  To: buildroot

On Wed, 20 Mar 2019 23:05:21 +0000
Alistair Francis <Alistair.Francis@wdc.com> wrote:

> Convert the config to the arch defconfig plus a fragment. When this
> fragment is applied we will generate the same config as we previously
> did.
> 
> Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
> ---
>  board/qemu/riscv32-virt/linux.config          |  23 ----
>  board/qemu/riscv32-virt/linux.config.fragment | 104 ++++++++++++++++++
>  configs/qemu_riscv32_virt_defconfig           |   4 +-
>  3 files changed, 106 insertions(+), 25 deletions(-)
>  delete mode 100644 board/qemu/riscv32-virt/linux.config
>  create mode 100644 board/qemu/riscv32-virt/linux.config.fragment

Applied to master, thanks.

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH v6 2/5] board/qemu/riscv32-virt: Simplify the linux config
  2019-03-20 23:05 ` [Buildroot] [PATCH v6 2/5] board/qemu/riscv32-virt: Simplify the linux config Alistair Francis
@ 2019-03-26 12:31   ` Thomas Petazzoni
  0 siblings, 0 replies; 11+ messages in thread
From: Thomas Petazzoni @ 2019-03-26 12:31 UTC (permalink / raw)
  To: buildroot

On Wed, 20 Mar 2019 23:05:21 +0000
Alistair Francis <Alistair.Francis@wdc.com> wrote:

> Reduce the config fragment to the bare minimum to enable 32-bit
> support. This means we are as close as possible to the arch
> defconfig.
> 
> Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
> ---
>  board/qemu/riscv32-virt/linux.config.fragment | 100 +-----------------
>  1 file changed, 4 insertions(+), 96 deletions(-)

Applied to master, thanks.

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH v6 3/5] boot/opensbi: new package
  2019-03-20 23:05 ` [Buildroot] [PATCH v6 3/5] boot/opensbi: new package Alistair Francis
@ 2019-03-26 13:57   ` Thomas Petazzoni
  2019-03-26 22:21     ` Alistair Francis
  0 siblings, 1 reply; 11+ messages in thread
From: Thomas Petazzoni @ 2019-03-26 13:57 UTC (permalink / raw)
  To: buildroot

Hello,

On Wed, 20 Mar 2019 23:05:21 +0000
Alistair Francis <Alistair.Francis@wdc.com> wrote:

> OpenSBI is a much improved alternative to BBL (riscv-pk). Add OpenSBI
> support to buildroot.
> 
> Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

I have applied, but after doing a few changes for things that were not
completely correct. See below.

> +OPENSBI_VERSION = v0.3
> +OPENSBI_SITE = $(call github,riscv,opensbi,$(OPENSBI_VERSION))
> +OPENSBI_LICENSE = BSD-2-Clause
> +OPENSBI_LICENSE_FILES = COPYING.BSD
> +OPENSBI_INSTALL_IMAGES = YES

This is only really needed when OPENSBI_PLAT != "", so I've moved this
statement inside the appropriate condition.

I've added OPENSBI_INSTALL_TARGET = NO, because we're not installing
anything to target.

But more importantly, I've added OPENSBI_INSTALL_STAGING = YES, without
which your OPENSBI_INSTALL_STAGING_CMDS is never called. I'm not sure
how you tested this, but it clearly couldn't work as is.

> +# Install libsbi.a in the host lib dir so it can be linked in the future.

The library is not installed in host dir. So I've changed this to
rather explain why we install in usr/share/opensbi and not in usr/lib.

Applied with those issues fixed. Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH v6 4/5] configs: qemu_riscv*_virt: Use OpenSBI by default
  2019-03-20 23:05 ` [Buildroot] [PATCH v6 4/5] configs: qemu_riscv*_virt: Use OpenSBI by default Alistair Francis
@ 2019-03-26 14:01   ` Thomas Petazzoni
  0 siblings, 0 replies; 11+ messages in thread
From: Thomas Petazzoni @ 2019-03-26 14:01 UTC (permalink / raw)
  To: buildroot

On Wed, 20 Mar 2019 23:05:21 +0000
Alistair Francis <Alistair.Francis@wdc.com> wrote:

> Use OpenSBI by default instead of riscv-pk (BBL).
> 
> Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
> ---
>  board/qemu/riscv32-virt/readme.txt  | 6 +++---
>  board/qemu/riscv64-virt/readme.txt  | 6 +++---
>  configs/qemu_riscv32_virt_defconfig | 5 ++++-
>  configs/qemu_riscv64_virt_defconfig | 5 ++++-
>  4 files changed, 14 insertions(+), 8 deletions(-)

Applied to master, thanks.

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH v6 5/5] boot/riscv-pk: Deprecate riscv-pk and BBL
  2019-03-20 23:05 ` [Buildroot] [PATCH v6 5/5] boot/riscv-pk: Deprecate riscv-pk and BBL Alistair Francis
@ 2019-03-26 14:01   ` Thomas Petazzoni
  0 siblings, 0 replies; 11+ messages in thread
From: Thomas Petazzoni @ 2019-03-26 14:01 UTC (permalink / raw)
  To: buildroot

On Wed, 20 Mar 2019 23:05:22 +0000
Alistair Francis <Alistair.Francis@wdc.com> wrote:

> Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
> ---
>  boot/riscv-pk/Config.in | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)

Applied to master, thanks.

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH v6 3/5] boot/opensbi: new package
  2019-03-26 13:57   ` Thomas Petazzoni
@ 2019-03-26 22:21     ` Alistair Francis
  0 siblings, 0 replies; 11+ messages in thread
From: Alistair Francis @ 2019-03-26 22:21 UTC (permalink / raw)
  To: buildroot

On Tue, Mar 26, 2019 at 6:57 AM Thomas Petazzoni
<thomas.petazzoni@bootlin.com> wrote:
>
> Hello,
>
> On Wed, 20 Mar 2019 23:05:21 +0000
> Alistair Francis <Alistair.Francis@wdc.com> wrote:
>
> > OpenSBI is a much improved alternative to BBL (riscv-pk). Add OpenSBI
> > support to buildroot.
> >
> > Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
>
> I have applied, but after doing a few changes for things that were not
> completely correct. See below.

Thanks for applying this and the rest of the series.

>
> > +OPENSBI_VERSION = v0.3
> > +OPENSBI_SITE = $(call github,riscv,opensbi,$(OPENSBI_VERSION))
> > +OPENSBI_LICENSE = BSD-2-Clause
> > +OPENSBI_LICENSE_FILES = COPYING.BSD
> > +OPENSBI_INSTALL_IMAGES = YES
>
> This is only really needed when OPENSBI_PLAT != "", so I've moved this
> statement inside the appropriate condition.
>
> I've added OPENSBI_INSTALL_TARGET = NO, because we're not installing
> anything to target.

Thanks

>
> But more importantly, I've added OPENSBI_INSTALL_STAGING = YES, without
> which your OPENSBI_INSTALL_STAGING_CMDS is never called. I'm not sure
> how you tested this, but it clearly couldn't work as is.

Ah, I tested it in the previous version when I was using the Image
install, but must have missed checking it was installed in the latest
version. Sorry about that.

>
> > +# Install libsbi.a in the host lib dir so it can be linked in the future.
>
> The library is not installed in host dir. So I've changed this to
> rather explain why we install in usr/share/opensbi and not in usr/lib.

Thanks for this.

Alistair

>
> Applied with those issues fixed. Thanks!
>
> Thomas
> --
> Thomas Petazzoni, CTO, Bootlin
> Embedded Linux and Kernel engineering
> https://bootlin.com

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2019-03-26 22:21 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-03-20 23:05 [Buildroot] [PATCH v6 1/5] board/qemu/riscv32-virt: Convert defconfig into a fragment Alistair Francis
2019-03-20 23:05 ` [Buildroot] [PATCH v6 3/5] boot/opensbi: new package Alistair Francis
2019-03-26 13:57   ` Thomas Petazzoni
2019-03-26 22:21     ` Alistair Francis
2019-03-20 23:05 ` [Buildroot] [PATCH v6 4/5] configs: qemu_riscv*_virt: Use OpenSBI by default Alistair Francis
2019-03-26 14:01   ` Thomas Petazzoni
2019-03-20 23:05 ` [Buildroot] [PATCH v6 2/5] board/qemu/riscv32-virt: Simplify the linux config Alistair Francis
2019-03-26 12:31   ` Thomas Petazzoni
2019-03-20 23:05 ` [Buildroot] [PATCH v6 5/5] boot/riscv-pk: Deprecate riscv-pk and BBL Alistair Francis
2019-03-26 14:01   ` Thomas Petazzoni
2019-03-26 12:31 ` [Buildroot] [PATCH v6 1/5] board/qemu/riscv32-virt: Convert defconfig into a fragment Thomas Petazzoni

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.