Quellcode durchsuchen

Merge branch 'starfive-kirkstone' into 'starfive-kirkstone'

starfive-kirkstone: NFS update

See merge request yang.lee/meta-starfive!1
Yang Lee vor 1 Jahr
Ursprung
Commit
c83849bd7f

+ 1 - 1
recipes-images/dubhe-image-minimal/dubhe-image-essential.inc → recipes-images/qspi-nfs-image/qspi-nfs-essential.inc

@@ -10,4 +10,4 @@ IMAGE_ROOTFS_SIZE ?= "8192"
 IMAGE_FEATURES += "allow-empty-password empty-root-password"
 IMAGE_FEATURES:remove = "dbg-pkgs"
 
-IMAGE_INSTALL += "mtd-utils helloworld coremark dhrystone perf"
+IMAGE_INSTALL += "mtd-utils helloworld coremark dhrystone perf dhcpcd networkmanager iproute2 nfs-utils gdb gdbserver "

+ 12 - 12
recipes-images/dubhe-image-minimal/dubhe-image-minimal_0.1.bb → recipes-images/qspi-nfs-image/qspi-nfs-image_0.1.bb

@@ -1,5 +1,5 @@
-SUMMARY = "Dubhe Image Minimal Creator"
-DESCRIPTION = "Recipe to create a Core Image"
+SUMMARY = "Dubhe NFS Image Creator"
+DESCRIPTION = "Recipe to create a NFS Image"
 LICENSE = "CLOSED" 
 
 inherit core-image
@@ -8,7 +8,7 @@ DEPENDS += "opensbi deploy-bootfiles quilt quilt-native"
 
 LIC_FILES_CHKSUM = ""
 
-require dubhe-image-essential.inc
+require qspi-nfs-essential.inc
 
 #DEPENDS = "opensbi deploy-bootfiles"
 #IMAGE_INSTALL += "tools-sdk dev-pkgs"
@@ -17,7 +17,7 @@ require dubhe-image-essential.inc
 #IMAGE_INSTALL += "packagegroup-core-ssh-openssh"
 
 #export IMAGE_BASENAME = "${PN}"
-export IMAGE_BASENAME = "console-image-minimal"
+export IMAGE_BASENAME = "nfs-rootfs"
 
 # NFS workaround
 #ROOTFS_POSTPROCESS_COMMAND += "nfs_rootfs ; lighttpd_rootfs ;"
@@ -34,14 +34,14 @@ do_qspi[depends] += " opensbi:do_deploy"
 do_qspi[depends] += " virtual/kernel:do_deploy"
 
 do_qspi (){
-	dd if=${DEPLOY_DIR_IMAGE}/bootcode_min.bin of=${DEPLOY_DIR_IMAGE}/QSPI-EXT4-Image.bin bs=32 seek=0 count=128
-        dd if=${DEPLOY_DIR_IMAGE}/bootjump.bin of=${DEPLOY_DIR_IMAGE}/QSPI-EXT4-Image.bin bs=32 seek=128 count=1
-        dd if=${DEPLOY_DIR_IMAGE}/dubhe_fpga.dtb of=${DEPLOY_DIR_IMAGE}/QSPI-EXT4-Image.bin bs=32 seek=129 count=255
-        dd if=${DEPLOY_DIR_IMAGE}/fw_payload.bin of=${DEPLOY_DIR_IMAGE}/QSPI-EXT4-Image.bin bs=32 seek=384
-	dd if=${DEPLOY_DIR_IMAGE}/bootcode_min.bin of=${DEPLOY_DIR_IMAGE}/QSPI-EXT4-Image-Dual.bin bs=32 seek=0 count=128
-	dd if=${DEPLOY_DIR_IMAGE}/bootjump.bin of=${DEPLOY_DIR_IMAGE}/QSPI-EXT4-Image-Dual.bin bs=32 seek=128 count=1
-	dd if=${DEPLOY_DIR_IMAGE}/dubhe_fpga.dtb of=${DEPLOY_DIR_IMAGE}/QSPI-EXT4-Image-Dual.bin bs=32 seek=129 count=255
-	dd if=${DEPLOY_DIR_IMAGE}/fw_payload.bin of=${DEPLOY_DIR_IMAGE}/QSPI-EXT4-Image-Dual.bin bs=32 seek=384
+	dd if=${DEPLOY_DIR_IMAGE}/bootcode_min.bin of=${DEPLOY_DIR_IMAGE}/QSPI-NFS-Image.bin bs=32 seek=0 count=128
+        dd if=${DEPLOY_DIR_IMAGE}/bootjump.bin of=${DEPLOY_DIR_IMAGE}/QSPI-NFS-Image.bin bs=32 seek=128 count=1
+        dd if=${DEPLOY_DIR_IMAGE}/dubhe_fpga.dtb of=${DEPLOY_DIR_IMAGE}/QSPI-NFS-Image.bin bs=32 seek=129 count=255
+        dd if=${DEPLOY_DIR_IMAGE}/fw_payload.bin of=${DEPLOY_DIR_IMAGE}/QSPI-NFS-Image.bin bs=32 seek=384
+	dd if=${DEPLOY_DIR_IMAGE}/bootcode_min.bin of=${DEPLOY_DIR_IMAGE}/QSPI-NFS-Image-Dual.bin bs=32 seek=0 count=128
+	dd if=${DEPLOY_DIR_IMAGE}/bootjump.bin of=${DEPLOY_DIR_IMAGE}/QSPI-NFS-Image-Dual.bin bs=32 seek=128 count=1
+	dd if=${DEPLOY_DIR_IMAGE}/dubhe_fpga.dtb of=${DEPLOY_DIR_IMAGE}/QSPI-NFS-Image-Dual.bin bs=32 seek=129 count=255
+	dd if=${DEPLOY_DIR_IMAGE}/fw_payload.bin of=${DEPLOY_DIR_IMAGE}/QSPI-NFS-Image-Dual.bin bs=32 seek=384
 }
 
 do_sd (){

+ 45 - 0
recipes-kernel/linux/files/defconfig

@@ -144,3 +144,48 @@ CONFIG_KGDB=y
 CONFIG_KGDB_SERIAL_CONSOLE=y
 CONFIG_KGDB_KDB=y
 CONFIG_KDB_KEYBOARD=y
+
+# For NFS to work
+CONFIG_FILE_LOCKING=y
+CONFIG_MULTIUSER=y
+CONFIG_NETWORK_FILESYSTEMS=y
+CONFIG_NFSD=y
+
+# Added config based on the gmac dma v2 linux branch's defconfig
+CONFIG_RISCV_UNCACHED_OFFSET=0x400000000
+CONFIG_NETFILTER=y
+CONFIG_NETFILTER_NETLINK_ACCT=y
+CONFIG_NETFILTER_NETLINK_QUEUE=y
+CONFIG_NF_CONNTRACK=y
+CONFIG_NF_TABLES=y
+CONFIG_NFT_CT=y
+CONFIG_NFT_COMPAT=y
+CONFIG_NETFILTER_XT_MATCH_CONNTRACK=y
+CONFIG_NETFILTER_XT_MATCH_IPCOMP=y
+CONFIG_NETFILTER_XT_MATCH_IPRANGE=y
+CONFIG_NETFILTER_XT_MATCH_MAC=y
+CONFIG_NETFILTER_XT_MATCH_MARK=y
+CONFIG_NETFILTER_XT_MATCH_MULTIPORT=y
+CONFIG_NETFILTER_XT_MATCH_SOCKET=y
+CONFIG_NETFILTER_XT_MATCH_STATE=y
+CONFIG_NETFILTER_XT_MATCH_STRING=y
+CONFIG_NETFILTER_XT_MATCH_U32=y
+CONFIG_NF_TABLES_IPV4=y
+CONFIG_NFT_DUP_IPV4=y
+CONFIG_NFT_FIB_IPV4=y
+CONFIG_IP_NF_IPTABLES=y
+CONFIG_IP_NF_FILTER=y
+CONFIG_IP_NF_TARGET_REJECT=y
+CONFIG_IP_NF_NAT=y
+CONFIG_IP_NF_TARGET_MASQUERADE=y
+CONFIG_IP_NF_TARGET_NETMAP=y
+CONFIG_IP_NF_TARGET_REDIRECT=y
+CONFIG_STMMAC_ETH=y
+CONFIG_STMMAC_SELFTESTS=y
+CONFIG_DWMAC_STARFIVE_PLAT=y
+CONFIG_MARVELL_PHY=y
+CONFIG_CRC16=y
+CONFIG_DYNAMIC_DEBUG=y
+CONFIG_DEBUG_INFO=y
+CONFIG_DEBUG_INFO_DWARF4=y
+CONFIG_RCU_CPU_STALL_TIMEOUT=300

+ 13 - 0
recipes-kernel/linux/files/ext4-ba.patch

@@ -0,0 +1,13 @@
+diff --git a/arch/riscv/boot/dts/starfive/dubhe_fpga.dts b/arch/riscv/boot/dts/starfive/dubhe_fpga.dts
+index 89098aab24d9..0d43a18bd446 100644
+--- a/arch/riscv/boot/dts/starfive/dubhe_fpga.dts
++++ b/arch/riscv/boot/dts/starfive/dubhe_fpga.dts
+@@ -12,7 +12,7 @@ aliases {
+ 	};
+ 
+ 	chosen {
+-		bootargs = "console=ttySIF0,115200 earlycon=sbi";
++		bootargs = "console=ttySIF0,115200 earlycon=sbi root=/dev/mmcblk0p2 rw rootfstype=ext4 rootwait";
+ 	};
+ 
+ 	cpus {

+ 13 - 0
recipes-kernel/linux/files/ext4-nfs.patch

@@ -0,0 +1,13 @@
+diff --git a/arch/riscv/boot/dts/starfive/dubhe_fpga.dts b/arch/riscv/boot/dts/starfive/dubhe_fpga.dts
+index 89098aab24d9..0d43a18bd446 100644
+--- a/arch/riscv/boot/dts/starfive/dubhe_fpga.dts
++++ b/arch/riscv/boot/dts/starfive/dubhe_fpga.dts
+@@ -12,7 +12,7 @@ aliases {
+ 	};
+ 
+ 	chosen {
+-		bootargs = "console=ttySIF0,115200 earlycon=sbi";
++		bootargs = "console=ttySIF0,115200 earlycon=sbi root=/dev/nfs rw nfsroot=192.168.153.221:/home/weiheng.cheng/nfsroot,rw,tcp,vers=3  ip=192.168.152.100:192.168.153.221:192.168.152.1:255.255.255.0::eth0:off rootfstype=ext4 rootwait";
+ 	};
+ 
+ 	cpus {

+ 5 - 5
recipes-kernel/linux/linux-starfive-dev.bbappend

@@ -1,19 +1,19 @@
 FORK = "starfive-tech"
-BRANCH = "starfive-5.15-dubhe"
-SRCREV = "2450e7aab40813ceb06e1dfa3112cdf73c5aa519"
+BRANCH = "starfive-5.15-dubhe-gmac-dma-v2"
+SRCREV = "1a0171abd28293e21d3b7f2bbbd521b7fff61dbc"
 
 LINUX_VERSION = "5.15.0"
 LINUX_VERSION_EXTENSION:append = "-starlight"
 
 FILESEXTRAPATHS:prepend := "${THISDIR}/files:"
 
-SRC_TMP_B = "git://git@192.168.110.45/starfive-tech/linux.git;protocol=ssh;branch=${BRANCH} \
+SRC_TMP_B = "git://git@192.168.110.45/leyfoon.tan/linux.git;protocol=ssh;branch=${BRANCH} \
 	   file://defconfig \
-           file://ext4.patch \
+           file://ext4-nfs.patch \
 	   file://ext4_dual_bootargs.patch \
 	   "
 
-SRC_TMP_A = "git://git@192.168.110.45/starfive-tech/linux.git;protocol=ssh;branch=${BRANCH} \
+SRC_TMP_A = "git://git@192.168.110.45/leyfoon.tan/linux.git;protocol=ssh;branch=${BRANCH} \
            file://defconfig \
 	   file://ubifs-single-core.patch \
 	   file://ubifs-dual-core.patch \

+ 3 - 19
setup.sh

@@ -149,7 +149,7 @@ echo -e "     QSPI-Image-Dual.bin for multicore vector.${NC}";
 echo "";
 
 PS3="Select your action : "
-options=("Build qspi-image" "Quit")
+options=("Build qspi-image" "Build qspi-nfs-image" "Quit")
 
 select opt in "${options[@]}" 
 do
@@ -168,7 +168,7 @@ do
                 runprog dubhe-image-initramfs;
             else echo -e "\U000274C ${RED}Build Failed${NC}"
             fi;;
-        "Build dubhe-image-minimal")
+        "Build qspi-nfs-image")
  #           cd ../build || { echo "Run setup.sh before building images."; cd meta-starfive; break; };
             if ! grep -q "ENABLE_EXT4" ./conf/local.conf; then
                 echo 'ENABLE_EXT4="1"' >> ./conf/local.conf;
@@ -176,28 +176,12 @@ do
 		 sed -i 's/ENABLE_UBI="1"/ENABLE_UBI="0"/g'  ./conf/local.conf;
             fi;
             cur_ter=$(tty);
-            output_min=$(MACHINE=starfive-dubhe bitbake dubhe-image-minimal | tee $cur_ter);
+            output_min=$(MACHINE=starfive-dubhe bitbake qspi-nfs-image | tee $cur_ter);
             if [[ $output_min != *"ERROR"* ]]; then
                 echo -e "\U0002705 ${GREEN}Build Complete${NC}"
                 runprog console-image-minimal;
             else echo -e "\U000274C ${RED}Build Failed${NC}"
             fi;;
-	"Build qspi-ubifs-image")
-#            cd ../build || { echo "Run setup.sh before building images."; cd meta-starfive; break; };
-            if ! grep -q "ENABLE_EXT4" ./conf/local.conf; then
-                echo 'ENABLE_EXT4="1"' >> ./conf/local.conf;
-            else sed -i 's/ENABLE_EXT4="0"/ENABLE_EXT4="1"/g'  ./conf/local.conf;
-            fi;
-	    if ! grep -q "ENABLE_UBI" ./conf/local.conf; then
-                echo 'ENABLE_UBI="1"' >> ./conf/local.conf;
-            else sed -i 's/ENABLE_UBI="0"/ENABLE_UBI="1"/g'  ./conf/local.conf;
-            fi;
-            cur_ter=$(tty);
-            output=$(MACHINE=starfive-dubhe bitbake qspi-ubifs-image | tee $cur_ter);
-            if [[ $output != *"ERROR"* ]]; then
-                echo -e "\U0002705 ${GREEN}Build Complete${NC}"
-            else echo -e "\U000274C ${RED}Build Failed${NC}"
-            fi;;
 	"Quit")
             break;;
         *)