EB-SS928开箱操作
来一张图片,镇贴。
一,环境准备
1,开机启动
硬件启动,SS928支持spi,nand,emmc启动。当前开发板使用的是spi-nand的启动方式,如果需要支持板载emmc启动,那么需要修硬件,具体寻求开发板厂商支持
emmc在板载功能上可以作为存储单元,具体使用参考 (8.1 emmc使用)
2,拿到SDK后,环境搭建
解压如下文件
cc-riscv32-cfg5-musl-20211008-elf.tar.gz
aarch64-mix210-linux.tgz
tar xvf aarch64-mix210-linux.tgz
tar xvf cc-riscv32-cfg5-musl-20211008-elf.tar.gz
cd aarch64-mix210-linux
source ./aarch64-mix210-linux.install #默认安装到 /opt/linux/x86-arm.
#source ./aarch64-mix210-linux.install dirname dirname为指定的目录内
cd cc-riscv32-cfg5-musl-20211008-elf
./install.sh
mkdir /opt/linux/x86-riscv32/
mv cc-riscv32-cfg5-musl-20211008-elf /opt/linux/x86-riscv32/
修改~/.profile
添加PATH
PATH="/opt/linux/x86-arm/aarch64-mix210-linux/bin:$PATH"
#cc-riscv32-cfg5-musl-20211008-elf
PATH="/opt/linux/x86-riscv32/cc-riscv32-cfg5-musl-20211008-elf/bin:$PATH"
二,解压SDK
SS928V100_REF_V2.0.X.X.tgz作为补丁包,可以将此补丁包打到SS928V100_SDK_V2.0.X.X.tgz包中,具体操作步骤如下:
1、将SS928V100_SDK_V2.0.X.X.tgz和SS928V100_REF_V2.0.X.X.tgz包放置到同一个文件夹下并解压,
tar zxvf SS928V100_SDK_V2.0.X.X.tgz
tar zxvf SS928V100_REF_V2.0.X.X.tgz
2、执行SS928V100_SDK_V2.0.X.X文件夹内部解压,
./sdk.unpack
3、执行打补丁操作,
./ref_patch.sh
执行后,SS928V100_SDK_V2.0.X.X为打上REF补丁后的完整包。
4、一键编译
make all
默认编译:
make BOOT_MEDIA=spi all
参数说明:
BOOT_MEDIA:spi nor或spi nand启动选择spi;并口nand启动选择nand;emmc启动选择emmc。
如下是编译成功画面。
三,Uboot编译与配置
1,uboot编译
tar xf boot.tar.gz
cd boot/gsl/
make CHIP=ss928v100
cd ../image_map/
cp ../gsl/pub/gsl.bin ./
cp ../../../../open_source/u-boot/u-boot-2020.01/u-boot-ss928v100.bin ./u-boot-original.bin
cp ../../../../open_source/u-boot/u-boot-2020.01/.reg ./
python3 oem/oem_quick_build.py
osdrv/components/boot/image_map/image/oem/下生成的boot_image.bin即为“非安全启动”使用的Boot Image。
cp osdrv/components/boot/image_map/image/oem/boot_image.bin ../../../../open_source/u-boot/u-boot-2020.01/
2,kernel编译
tar xf linux-4.19.90.tar.gz
mv linux-4.19.90 linux-4.19.y
cd linux-4.19.y
patch -p1 < ../linux-4.19.90.patch
cp arch/arm64/configs/ss928v100_defconfig .config
(emmc启动时执行如下操作: cp arch/arm64/configs/ss928v100_emmc_defconfig .config)
(并口 nand 启动时执行如下操作:cp arch/arm64/configs/ss928v100_nand_defconfig .config)
make ARCH=arm64 CROSS_COMPILE=aarch64-mix210-linux- menuconfig
make ARCH=arm64 CROSS_COMPILE=aarch64-mix210-linux- uImage -j 20
3,文件系统编译
在osdrv/pub/中有已经编译好的文件系统,因此无需再重复编译文件系统,只需要根据单板上启动介质的规格型号制作文件系统镜像即可。
spi flash使用jffs2格式的镜像,制作jffs2镜像时,需要用到spi flash的块大小。这些信息会在uboot启动时会打印出来。建议使用时先直接运行mkfs.jffs2工具,根据打印信息填写相关参数。下面以块大小为64KB为例:
osdrv/pub/bin/pc/mkfs.jffs2 -d osdrv/pub/rootfs_glibc_xxx -l -e 0x10000 -o osdrv/pub/rootfs_ss928v100_64k.jffs2
nand flash使用ubifs格式的镜像,制作ubifs镜像时,需要用到nand flash的pagesize和blocksize。这些信息会在uboot启动时会打印出来。
./osdrv/pub/bin/pc/mkfs.ext4 osdrv/pub/ss928v100_image_glibc/rootfs_ss928v100_96M.ext4
cd open_source/e2fsprogs/out/pc/contrib
./populate-extfs.sh ../../../../../osdrv/pub/rootfs_glibc_arm64 ../../../../../osdrv/pub/ss928v100_image_glibc/rootfs_ss928v100_96M.ext4
四,问题解决
问题一: make all编译时报错:/bin/sh: 1 pushd:not found
执行sudo dpkg-reconfigure dash 命令,将dash设置为No
问题二:ImportError: No module named kconfiglib
pip install kconfiglib
问题三:configure: error: missing one or more dependencies
问题四:在使用osdrv/tools/pc/uboot_tools/目录下的excel工具无法"Generate reg bin file"
有如上情况,将excel文件拷贝到windows目录中去,然后再打开。
问题五:烧写失败
可能是串口占用导致,关掉外面的串口工具即可。
- 分享
- 举报
-
hpj 2023-03-06 20:43:37回复 举报给力,期待持续输出~
-
浏览量:1287次2023-03-10 16:37:14
-
浏览量:4904次2022-09-20 15:23:26
-
浏览量:5859次2022-09-21 14:30:18
-
浏览量:3732次2022-09-22 11:37:57
-
浏览量:303次2024-09-13 17:34:13
-
浏览量:1618次2022-12-13 16:47:02
-
浏览量:1117次2024-06-06 10:17:20
-
浏览量:2690次2024-03-14 14:15:25
-
浏览量:1299次2023-10-28 16:08:09
-
浏览量:10179次2022-11-10 18:07:40
-
浏览量:2948次2023-04-01 13:01:00
-
浏览量:722次2023-09-09 13:40:42
-
浏览量:2144次2022-12-13 16:59:00
-
浏览量:6031次2023-03-17 19:33:35
-
浏览量:5827次2022-09-19 14:17:36
-
浏览量:3923次2023-04-12 16:05:14
-
浏览量:14071次2022-09-15 15:54:04
-
浏览量:2622次2024-05-23 13:45:40
-
浏览量:791次2023-12-13 14:01:46
-
广告/SPAM
-
恶意灌水
-
违规内容
-
文不对题
-
重复发帖
艾编程的鲁小班
感谢您的打赏,如若您也想被打赏,可前往 发表专栏 哦~
举报类型
- 内容涉黄/赌/毒
- 内容侵权/抄袭
- 政治相关
- 涉嫌广告
- 侮辱谩骂
- 其他
详细说明