Commit Graph

144 Commits

Author SHA1 Message Date
Andy Hu d02c4a78f0 arch: add _zicsr_zifencei_zba_zbb as default march for gcc toolchain
Signed-off-by: Andy Hu <andy.hu@starfivetech.com>
2023-05-19 00:02:18 +08:00
Andy Hu cce9841ee9 toolchain: update toolchain setting from offical tag 2022.11.3
Signed-off-by: Andy Hu <andy.hu@starfivetech.com>
2023-05-19 00:02:14 +08:00
Andy Hu 389dc57182 gcc: update to support gcc 11.3.0 and 12.2.0 from offical tag 2022.11.3
Signed-off-by: Andy Hu <andy.hu@starfivetech.com>
2023-05-19 00:02:09 +08:00
Andy Hu 650e638627 glibc: update to support 2.36 from offical tag 2022.11.3
Signed-off-by: Andy Hu <andy.hu@starfivetech.com>
2023-05-19 00:01:41 +08:00
Andy Hu 687ac0c040 binutils: update to support 2.38 and 2.39 from offical tag 2022.11.3
Signed-off-by: Andy Hu <andy.hu@starfivetech.com>
2023-05-18 23:44:40 +08:00
Romain Naour 134149d57f arch/Config.in.riscv: enable Zicsr and Zifencei standalone extensions with gcc >= 12
Since gcc 12, the default RISC-V ISA spec version was bump to 20191213 [1].

This bump introduces a major compatibility issue: support for the csr read/write
(csrr*/csrw*) instructions and fence.i instruction has been separated
from the "I" extension, becoming two standalone extensions: Zicsr and
Zifencei. gcc now has specific -march suffixes to enable those
extensions (_zicsr and _zifencei). If they are not used and code that
uses these instructions is built, one would get errors such as
unrecognized opcode "csrr" (or "fence.i").

For example, without Zifencei we can't build the opensbi
bootloader[2]:

opensbi-1.0/lib/sbi/sbi_tlb.c: Assembler messages:
opensbi-1.0/lib/sbi/sbi_tlb.c:190: Error: unrecognized opcode `fence.i', extension `zifencei' required

As a workaround, the opensbi build system has been patched [3] to use
-march=rv64imafdc_zicsr_zifencei when needed.  This workaround doesn't
work in Buildroot due to the local patch
0001-Makefile-Don-t-specify-mabi-or-march.patch which removes -march
from CFLAGS.

In the context of Buildroot, we have decided for now to assume that
all RISC-V cores that are Linux capable will implement the Zicsr and
Zifencei extensions: it is in fact the case today ase these extensions
were part of the I extension, that all cores support. OpenSBI and
Linux are making the same assumption (see [5]).

Therefore, when gcc >= 12, the -march value gets appended with
_zicsr_zifencei.

[1] https://gcc.gnu.org/gcc-12/changes.html
[2] https://github.com/riscv-software-src/opensbi/blob/v0.9/lib/sbi/sbi_tlb.c#L173
[3] https://github.com/riscv-software-src/opensbi/commit/5d53b55aa77ffeefd4012445dfa6ad3535e1ff2c
[4] https://groups.google.com/a/groups.riscv.org/g/sw-dev/c/aE1ZeHHCYf4
[5] http://lists.busybox.net/pipermail/buildroot/2022-July/646698.html

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Mark Corbin <mark@dibsco.co.uk>
[Thomas: add comment in .mk file, rework commit log]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2023-05-18 23:24:35 +08:00
andy.hu c4695ba8d8 Merge branch 'CR_4951_memcpy_optimization_mason.huo' into 'jh7110-devel'
CR_4951 package: glibc: Add optimization memory copy with aligned version

See merge request sdk/buildroot!97
2023-04-26 09:52:46 +00:00
andy.hu 5ec8f6854a Merge branch 'CR_5160_Reduce_release_IP_time_samin.guo' into 'jh7110-devel'
CR_5160:ifplugd: Reduce the IP release time

See merge request sdk/buildroot!99
2023-04-26 09:52:06 +00:00
andy.hu ec3a6dc4dd Merge branch 'CR_5049_Optimize_swapoff_mason.huo' into 'jh7110-devel'
CR_5049 package: starfive: Optimize the swapoff partition

See merge request sdk/buildroot!98
2023-04-26 09:47:38 +00:00
Samin Guo 910ecaeb5e ifplugd: Reduce the IP release time
IP release time reduced from 10 seconds to 1 second

Signed-off-by: Samin Guo <samin.guo@starfivetech.com>
2023-04-26 15:21:37 +08:00
Mason Huo 8b0d868279 package: starfive: Optimize the swapoff partition
Check if the swap partition ("hibernation") exist or not
before swapoff command.

Signed-off-by: Mason Huo <mason.huo@starfivetech.com>
2023-04-24 11:38:45 +08:00
andy.hu 6d540bf363 Merge branch 'CR_4754_swapon_optimize_mason.huo' into 'jh7110-devel'
CR_4754 package: starfive: Optimize the swapon partition

See merge request sdk/buildroot!96
2023-04-19 11:39:18 +00:00
Mason Huo 013b3a25e8 package: glibc: Add optimization memory copy with aligned version
Port the linux kernel memcpy function for optimizing
the 128 byte align case, this will improve the
performance of large block memcpy.

Here we combine the memcpy of glibc and kernel.

Signed-off-by: Mason Huo <mason.huo@starfivetech.com>
2023-04-17 14:55:09 +08:00
Mason Huo 8d66d14452 package: starfive: Optimize the swapon partition
Check if the swap partition ("hibernation") exist or not
before swapon command.
Since the partlabel appears late, change the script
excution sequence to 99.

Signed-off-by: Mason Huo <mason.huo@starfivetech.com>
2023-04-17 14:50:32 +08:00
andy.hu 868e6d3437 Merge branch 'CR_4174_glibc_optimize_mason.huo' into 'jh7110-devel'
CR_4174 package: glibc: Add optimization memory operations for RISCV

See merge request sdk/buildroot!95
2023-03-30 11:25:43 +00:00
Mason Huo 8ac10aeb41 package: glibc: Add optimization memory operations for RISCV
Port the memcpy & memset implementation from
Linux kerenl to glibc to improve performance of
memory operations in user space.

Signed-off-by: Mason Huo <mason.huo@starfivetech.com>
2023-03-21 16:49:35 +08:00
andy.hu 6e5ff2929a Merge branch 'CR_4142_IMG_GPU_Disable_pdump_Andy.hu' into 'jh7110-devel'
CR_4142: package/starfive/img-gpu-powervr: update sha256 value for new tar ball

See merge request sdk/buildroot!94
2023-03-20 16:47:18 +00:00
Andy Hu 42b8427cca package/starfive/img-gpu-powervr: update sha256 value for new tar ball
disable pdump for v1.17

PDUMP was enabled by default. This causes some performance
issues on GPU. Hence, we would need to disable PDUMP in
kernel space and userspace.

Signed-off-by: Andy Hu <andy.hu@starfivetech.com>
2023-03-21 00:41:35 +08:00
andy.hu 5b3d30734c Merge branch 'CR_3071_add_usb_device_ms_configs_minda' into 'jh7110-devel'
CR_3071 usb:add usb mass storage more config

See merge request sdk/buildroot!92
2023-01-17 11:09:25 +00:00
minda.chen 5e82470c44 usb:add usb mass storage more config
In emmc/sdcard boot case, add more usb device
mass storage configs.

Signed-off-by: minda.chen <minda.chen@starfivetech.com>
2023-01-17 16:06:53 +08:00
andy.hu 0a417a545e Merge branch 'CR_3049_Hibernation_mason.huo' into 'jh7110-devel'
CR_3049 package: starfive: Add hibernation script to pm package

See merge request sdk/buildroot!91
2023-01-06 06:42:27 +00:00
mason.huo 62a97a3582 package: starfive: Add hibernation script to pm package
Signed-off-by: mason.huo <mason.huo@starfivetech.com>
2023-01-05 13:14:34 +08:00
andy.hu 4a361eadcd Merge branch 'CR_2767_ISP_SDK_Kevin.xie' into 'jh7110-devel'
CR 2767 ispsdk: Fix error sc2335 sensor config command on isp daemon.

See merge request sdk/buildroot!90
2022-12-09 04:51:51 +00:00
andy.hu 232d757599 Merge branch 'CR_2809_Net_Status_detection_samin.guo' into 'jh7110-devel'
CR2809: Support IP automatic release

See merge request sdk/buildroot!89
2022-12-09 04:42:57 +00:00
Kevin.xie 540861f360 ispsdk: Fix error sc2335 sensor config command on isp daemon.
Signed-off-by: Kevin.xie <kevin.xie@starfivetech.com>
2022-12-07 15:48:43 +08:00
Samin Guo 9b17acc9aa package/ifplugd: add eth1 support.
Support the automatic IP acquisition/release of eth1.

Signed-off-by: Samin Guo <samin.guo@starfivetech.com>
2022-12-06 17:29:56 +08:00
Samin Guo 4af5f4a913 package/ifupdown-scripts: add hotplug support
When you plug the network cable, you can call ifplugd to automatically
release and obtain the IP

Signed-off-by: Samin Guo <samin.guo@starfivetech.com>
2022-12-06 16:09:08 +08:00
Jianlong Huang c30b506664 ifupdown: Add dual network dhcp
For visionfive2, there are two network interface
Add dual network dhcp for the 2nd interface

Signed-off-by: Jianlong Huang <jianlong.huang@starfivetech.com>
2022-12-06 15:46:34 +08:00
andy.hu d7540d4316 Merge branch 'CR_2727_ISP_SDK_Kevin.xie' into 'jh7110-devel'
CR 2727 ispsdk: Fix conflicting installation of ispsdk daemon script and output files.

See merge request sdk/buildroot!87
2022-11-25 10:49:05 +00:00
Kevin.xie 279154692a ispsdk: Fix conflicting installation of ispsdk daemon script and output files.
Signed-off-by: Kevin.xie <kevin.xie@starfivetech.com>
2022-11-22 16:23:05 +08:00
andy.hu f146fb9672 Merge branch 'CR_2530_ISP_SDK_Kevin.xie' into 'jh7110-devel'
CR_2530_ISP_SDK : Start a daemon for stf_isp_ctrl during bootup

See merge request sdk/buildroot!83
2022-11-17 13:33:36 +00:00
andy.hu e80bf7bdc0 Merge branch 'CR_2593_PM_mason.huo' into 'jh7110-devel'
CR_2593 package: starfive: Add power management package

See merge request sdk/buildroot!85
2022-11-09 13:39:00 +00:00
mason.huo f6e892bda3 package: starfive: Add power management package
The package is for power management.
Currently adjust the cpufreq paramenters.

Signed-off-by: mason.huo <mason.huo@starfivetech.com>
2022-11-09 18:15:20 +08:00
Kevin.xie 5ec4da22b2 ispsdk: Start a daemon for stf_isp_ctrl during bootup
Signed-off-by: Kevin.xie <kevin.xie@starfivetech.com>
2022-11-02 18:40:04 +08:00
andy.hu 5088e2a0cf Merge branch 'CR_2418_AutoloadingVpuDriver_Andy.Hu' into 'jh7110-devel'
CR_2418: vpu/jpu: support automatic building and loading VPU/JPU ko driver

See merge request sdk/buildroot!79
2022-10-28 05:42:15 +00:00
Andy Hu a1c0a0708e vpu/jpu: support automatic building and loading VPU/JPU ko driver
install the vdec.ko, venc.ko, jpu.ko to /lib/modules/5.15.0/extra/
and remove the loading script, support insmod,modprobe,rmmod

Signed-off-by: Andy Hu <andy.hu@starfivetech.com>
2022-10-25 10:19:38 +08:00
andy.hu dc98f12584 Merge branch 'CR_2338_add_pipewire_support_Windsome.Zeng' into 'jh7110-devel'
CR_2338_add_pipewire_support

See merge request sdk/buildroot!74
2022-10-14 08:03:23 +00:00
Windsome Zeng 931da277a0 [pipewire] Add pipewire support. 2022-10-14 11:27:19 +08:00
andy.hu d7910163fa Merge branch 'CR_2037_change_usb_vid_minda' into 'jh7110-devel'
CR_2037 usb:buildroot: change VID and PID to an opensource group id

See merge request sdk/buildroot!68
2022-09-23 06:38:28 +00:00
minda.chen 02abf56dde usb:buildroot: change VID and PID to an opensource group id
changed VID to InterBiometrics opensource group, PID is a
test PID

Signed-off-by: minda.chen <minda.chen@starfivetech.com>
2022-09-19 18:06:12 +08:00
andy.hu 1e366de32c Merge branch 'CR_2035_fix_devpts_lost_in_ramdisk_minda' into 'jh7110-devel'
CR_2035 buildroot: init: fix dev/shm and devpts fs lost in ramdisk rootfs issue.

See merge request sdk/buildroot!64
2022-09-07 02:53:25 +00:00
minda.chen e8b2ed98eb buildroot: init: fix dev/shm and devpts fs lost in ramdisk rootfs issue.
In ramdisk case, dev/shm and devpts not mounted in ramdisk rootfs,
for the mount commands are not executed in ramdisk rootfs,
this will cause adb shell can't work.
move these commands before execute sbin/init.

Signed-off-by: minda.chen <minda.chen@starfivetech.com>
2022-08-31 17:30:03 +08:00
andy.hu e1adcb3c9a Merge branch 'CR_1969_v4lutils_Arvin.Zhu' into 'jh7110-devel'
CR 1969 v4lutils: remove v4lutils

See merge request sdk/buildroot!63
2022-08-31 08:10:47 +00:00
andy.hu 5a3b190155 Merge branch 'CR_1919_modprobe_load_ko_Arvin.Zhu' into 'jh7110-devel'
CR 1919 modprobe:add blacklist.conf

See merge request sdk/buildroot!62
2022-08-31 06:49:40 +00:00
arvin.zhu 7612ab56f5 busybox: add modprobe blacklist.conf
add modprobe blacklist.conf

Signed-off-by: arvin.zhu <arvin.zhu@starfivetech.com>
2022-08-31 14:41:06 +08:00
andy.hu 6c9d4c47e2 Merge branch 'CR_2001_Add_ISP_Andy.hu' into 'jh7110-devel'
CR_2001: ispsdk: add ispsdk v2.0.0 package to buildroot

See merge request sdk/buildroot!59
2022-08-30 04:50:15 +00:00
Andy Hu 5ca8180f8b ispsdk: add ispsdk v2.0.0 package to buildroot
the ispsdk apps will install to /root/ISP/

Signed-off-by: Andy Hu <andy.hu@starfivetech.com>
2022-08-30 10:07:05 +08:00
andy.hu 8ebb316468 Merge branch 'CR_1835_usb_device_script_minda' into 'jh7110-devel'
CR_1835 usb: device: add usb device configfs script

See merge request sdk/buildroot!57
2022-08-26 07:20:40 +00:00
andy.hu 960b8da68d Merge branch 'CR_1932_v4l2test_jianlong' into 'jh7110-devel'
CR_1932 package: starfive: v4l2test: Fix stuck without -C

See merge request sdk/buildroot!56
2022-08-26 02:29:30 +00:00
andy.hu fcc51bb16e Merge branch 'CR_1853_buildroot_drm_test_shengyang.chen' into 'jh7110-devel'
CR_1853_riscv:buildroot:drm-test

See merge request sdk/buildroot!54
2022-08-26 02:09:54 +00:00