【Milk-V Duo 开发板免费体验】开启SPI设备

由于milk-v的SDK默认没有开启SPI设备,需要修改以下文件来开启

  1. 修改设备树文件
    /build/boards/cv180x/cv1800b_sophpi_duo_sd/dts_riscv/cv1800b_sophpi_duo_sd.dts
    在该文件添加以下内容

     &spi2 {
     	status = "okay";
     	cs-gpios = <&porta 18 0>;
     	spidev@0{
     		status = "okay";
     	};
     };
    
  2. 修改配置文件
    /build/boards/cv180x/cv1800b_sophpi_duo_sd/linux/cvitek_cv1800b_sophpi_duo_sd_defconfig
    添加以下内容

     CONFIG_SPI_MASTER=y
     CONFIG_SPI_SPIDEV=y
     CONFIG_SPI_DESIGNWARE=y
     CONFIG_SPI_DW_MMIO=y
    
  3. 修改板子启动文件,初始化SPI设备和引脚
    /build/board/cvitek/cv180x/board.c b/board/cvitek/cv180x/board.c
    添加以下内容, 也可以把pinmux_config(PINMUX_SPI2);这一行的注释取消

     pinmux_config(PINMUX_SPI2);
     	PINMUX_CONFIG(SPINOR_CS_X, XGPIOA_24);
     	PINMUX_CONFIG(SPINOR_MISO, XGPIOA_23);
      	cvi_board_init();
      
      	return 0;
    

重新编译和打包系统

输入一下命令,编译SDK

source build/cvisetup.sh
defconfig cv1800b_sophpi_duo_sd
build_all

然后输入以下命令打包镜像

pack_sd_image

烧录镜像,放到板子上运行

然后查看spi设备是否已启动,可以看到spi设备在/dev目录出现了

本文转载自:https://bbs.elecfans.com/jishu_2366919_1_1.html,作者:
李隆