【RV1103】如何新增一个新板级配置

文章目录

新建一个板级配置文件

我的目标

通过./build.sh lunch 来选择我的板子配置。

在目录sdk/project/cfg目录下新建一个xxxx.mk文件,文件名字格式如下:

bash 复制代码
BoardConfig-"启动介质"-"电源方案"-"硬件版本"-"应用场景".mk
bash 复制代码
----------------------------------------------------------------
0. BoardConfig_IPC/BoardConfig-EMMC-NONE-RV1103_Luckfox_Pico-IPC.mk
                             boot medium(启动介质): EMMC
                          power solution(电源方案): NONE
                        hardware version(硬件版本): RV1103_Luckfox_Pico
                              applicaton(应用场景): IPC
----------------------------------------------------------------

----------------------------------------------------------------
1. BoardConfig_IPC/BoardConfig-SPI_NAND-NONE-RV1103_Luckfox_Pico_Plus-IPC.mk
                             boot medium(启动介质): SPI_NAND
                          power solution(电源方案): NONE
                        hardware version(硬件版本): RV1103_Luckfox_Pico_Plus
                              applicaton(应用场景): IPC
----------------------------------------------------------------
  • BoardConfig-EMMC-NONE-RV1103_Luckfox_Pico-IPC.mk
  • BoardConfig-SPI_NAND-NONE-RV1103_Luckfox_Pico_Plus-IPC.mk

- 作为大区分
_作为字符串内部的区分

而我的目标是,在板子RV1103_Luckfox_Pico的基础上加入了,sd卡、sdio-wifi卡和spi-nand Flash,故我取了一个名字

  • BoardConfig-SPI_NAND-NONE-RV1103_Luckfox_Pico_Pro-SD_WIFI_IPC.mk

脚本解析出来是:

bash 复制代码
----------------------------------------------------------------
2. BoardConfig_IPC/BoardConfig-SPI_NAND-NONE-RV1103_Luckfox_Pico_Pro-SD_WIFI_IPC.mk
                             boot medium(启动介质): SPI_NAND
                          power solution(电源方案): NONE
                        hardware version(硬件版本): RV1103_Luckfox_Pico_Pro
                              applicaton(应用场景): SD_WIFI_IPC
----------------------------------------------------------------

它的主要内容

bash 复制代码
#!/bin/bash

# Target arch
export RK_ARCH=arm

# Target CHIP
export RK_CHIP=rv1106

# Target Toolchain Cross Compile
export RK_TOOLCHAIN_CROSS=arm-rockchip830-linux-uclibcgnueabihf

# Target boot medium: emmc/spi_nor/spi_nand
export RK_BOOT_MEDIUM=spi_nand

# Uboot defconfig
export RK_UBOOT_DEFCONFIG=rv1106_defconfig

# Uboot defconfig fragment
export RK_UBOOT_DEFCONFIG_FRAGMENT=rk-sfc.config

# Kernel defconfig
export RK_KERNEL_DEFCONFIG=luckfox_sd_wifi_rv1106_linux_defconfig

# Kernel dts
export RK_KERNEL_DTS=rv1103g-luckfox-pico-pro.dts
...

plus板设备树的继承关系:
rv1103.dtsi rv1103g-luckfox-pico-plus.dts rv1106-evb.dtsi rv1103-luckfox-pico-plus-ipc.dtsi rv1106.dtsi rv1106-amp.dtsi rv1106-amp.dtsi dt-bindings/input/input.h

我的板设备树的继承关系:
rv1103.dtsi rv1103g-luckfox-pico-pro.dts rv1106-evb.dtsi rv1103-luckfox-pico-pro-ipc.dtsi rv1106.dtsi rv1106-amp.dtsi rv1106-amp.dtsi dt-bindings/input/input.h

rv1103g-luckfox-pico-pro.dts相对于rv1103g-luckfox-pico-plus.dts的主要修改:

c 复制代码
/**********spi nand flash**********/
&sfc {
	status = "okay";

	flash@0 {
		compatible = "spi-nand";
		reg = <0>;
		spi-max-frequency = <75000000>;
		spi-rx-bus-width = <4>;
		spi-tx-bus-width = <1>;
	};
};
/**********mmc interface for sd card**********/
&sdmmc {
	max-frequency = <50000000>;
	no-sdio;
	no-mmc;
	bus-width = <4>;
	cap-mmc-highspeed;
	cap-sd-highspeed;
	disable-wp;
	pinctrl-names = "default";
	pinctrl-0 = <&sdmmc0_clk &sdmmc0_cmd &sdmmc0_det &sdmmc0_bus4>;
	status = "okay";
};
/***********mmc interface for wifi**********/
&emmc {
	max-frequency = <50000000>;
	no-sdio;
	no-mmc;
	bus-width = <4>;
	cap-mmc-highspeed;
	cap-sd-highspeed;
	disable-wp;
	pinctrl-names = "default";
	pinctrl-0 = <&sdmmc1_clk &sdmmc1_cmd &sdmmc1_det &sdmmc1_bus4>;
	status = "okay";
};

/**********ETH**********/
//&gmac {
//	status = "okay";
//};
相关推荐
螺丝钉的扭矩一瞬间产生高能蛋白8 天前
QT的C++接口基础用法
c++·qt·嵌入式软件·嵌入式linux·linux应用
Bruce_kaizy8 天前
c++ linux环境编程——从应用层到linux内核深入了解文件io的调用机制(爆肝)
linux·c++·c·嵌入式linux·文件io
Joseph Cooper18 天前
Linux Power Management 子系统:从 suspend/resume 到 Runtime PM、PM QoS
linux·驱动开发·linux kernel·嵌入式linux·电源管理
Z文的博客20 天前
【避坑实录】Qt 4.8.6 + Paho MQTT C客户端 + OpenSSL静态链接的血泪史
c语言·开发语言·qt·嵌入式linux
charlie1145141911 个月前
嵌入式Linux模块学习——insmod 底层全流程解剖:从用户命令到内核内存
linux·c·嵌入式linux
Z文的博客1 个月前
嵌入式 ARM 设备交叉编译 mosquitto 2.0.20 (完整 TLS 支持) 详细教程 TRAE全程辅助,没敲一行代码
qt·mqtt·嵌入式·ai编程·mosquitto·嵌入式linux·trae
三万棵雪松1 个月前
【Linux 物联网网关主控系统-Web部分(四)】
linux·前端·物联网·嵌入式linux
三万棵雪松1 个月前
【Linux 物联网网关主控系统-Web部分(一)】
linux·前端·嵌入式linux
三万棵雪松1 个月前
【Linux 物联网网关主控系统-Linux主控部分(三)】
linux·物联网·嵌入式linux
三万棵雪松2 个月前
【Linux 物联网网关主控系统-Linux主控部分(六)】
linux·物联网·嵌入式linux