nanoPI kernel compile record
我用的nanopi型号为 nanopi NEO,本来想拿来跑一跑需要usb串口读数据的golang程序,NEO居然没有该内核驱动的配置。
官方wiki:http://wiki.friendlyarm.com/wiki/index.php/NanoPi_NEO/zh
# debug port
-
Pin# Name 1 GND 2 VDD_5V 3 UART_TXD0 / GPIOA4 4 UART_RXD0 / GPIOA5 / PWM0
-
# uname -a
Linux NanoPi-NEO 4.11.2 #38 SMP Tue Nov 21 16:45:21 CST 2017 armv7l armv7l armv7l GNU/Linux
# golang 默认1.6,需要升级1.7或以上才能使用go get
# nanopi 缺少 ftdi_sio.ko
# 编译内核(PC端交叉编译)
# Compile lichee code need install package
sudo apt-get install gawk git gnupg flex bison gperf build-essential \ zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \ libx11-dev:i386 libreadline-dev:i386 libgl1-mesa-glx:i386 \ libgl1-mesa-dev g++-multilib tofrodos \ python-markdown libxml2-utils xsltproc zlib1g-dev:i386 sudo apt install mingw-w64
# 备份tf卡,重下镜像run test
df -h
/dev/sdc1 40M 7.2M 33M 18% /media/bear/boot
/dev/sdc2 15G 1.8G 13G 13% /media/bear/rootfs
# TF卡操作
- 备份
- sudo dd if=/dev/sdd of=/home/bear/Desktop/kmtbf/nanopi.img
- 写回
- sudo dd if=/home/bear/Desktop/kmtbf/nanopi.img of=/dev/sdd
- 格式化SD卡
- umount ..
- fdisk /dev/sdc
- /dev/sdd1 49152 131071 81920 40M 83 Linux
- /dev/sdd2 131072 31116287 30985216 14.8G 83 Linux
# 配置内核模块
- depmod 产生模块依赖的映射文件
- insmod 将给定的模块加载到内核中
- modprobe 载入指定的模块
# depmod ftdi_sio.ko
depmod: ERROR: Bad version passed ftdi_sio.ko
# insmod ftdi_sio.ko : /lib/modules/4.11.2
Invalid module format(3.4version != nano pi 4.1verision)
# result
4.11version的内核实在找不到ftdi_sio.ko,只好编译3.4version的来用
Github地址:https://github.com/kumataahh