Tiny4412

出自 百问网嵌入式Linux wiki
前往: 導覽搜尋

構建工具

  • 嵌入式Linux構建工具

Buildroot

 項目地址: https://github.com/zczjx/buildroot-es_udk
 提交权限申请: 火哥(QQ: 287334895)

已經支持的構建配置:

     tiny4412_linux_k4_4_defconfig --> tiny4412 linux-4.4.38嵌入式版
     raspberrypi3b_aarch32_eabihf_defconfig --> 树莓派3B 嵌入式Linux QT发行版
 Buildroot相關教程: https://blog.csdn.net/zhou_chenz/article/category/6019071

Yocto

  • Android構建工具
  • Ubuntu / Debian構建工具

發行版系統

  • ubuntu
  • debian

編譯器與工具鏈下載地址


  • arm-linux-gcc-4.9.4 eabi 硬浮點兼容版
 - Linux系統 32bit版; https://releases.linaro.org/components/toolchain/binaries/latest-4/arm-linux-gnueabi/gcc-linaro-4.9.4-2017.01-i686_arm-linux-gnueabi.tar.xz
 - Linux系統 64bit版: https://releases.linaro.org/components/toolchain/binaries/latest-4/arm-linux-gnueabi/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabi.tar.xz
  • arm-linux-gcc-4.9.4 eabihf 真硬浮點版
 - Linux系統 32bit版; https://releases.linaro.org/components/toolchain/binaries/latest-4/arm-linux-gnueabihf/gcc-linaro-4.9.4-2017.01-i686_arm-linux-gnueabihf.tar.xz
 - Linux系統 64bit版: https://releases.linaro.org/components/toolchain/binaries/latest-4/arm-linux-gnueabihf/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz

應用測試用例

   我们辛辛苦苦写好的驱动不就是为了让应用拿来用的吗? -- 韦东山老师
  • BSP應用測試用例(除glib2之外或者OMX,OpenGL等不開源庫,儘量不依賴第三方庫)
   用途: 最底層的應用,用於測試驗證寫好的驅動是否正常工作
   項目地址: https://github.com/zczjx/arm-linux-bsp-tests
   提交權限申請: 火哥(QQ: 287334895)
  • Linux第三方庫測試用例
  用途: 調用tslib, libv4l, ffmpeg等第三方庫,測試驗證更加高級的驅動功能
  項目地址: https://github.com/zczjx/linux-3rd-lib-tests
  提交權限申請: 火哥(QQ: 287334895)
   

uboot項目

火哥官方修改版

 地址: https://github.com/zczjx/uboot_tiny4412
 配置文件 tiny4412_config
 提交权限申请: 火哥(QQ: 287334895)
 特點: 
 * 基於友善官方uboot-2010.12修改,版本比較舊
 * 支持Linux-3.x zImage 和 Linux4.x uImage + dtb 雙內核可選擇啟動,
 以便大家移植新內核驅動可以切換內核進行對比
 * 支持雙文件系統切換啟動,以便大家對比自己製作的文件系統和官方文件系統功能差異
 
 Tiny4412刷機參考鏈接:
 https://github.com/zczjx/linux-4.4.38-for-tiny4412/blob/master/README.md

uboot_2018_07

 地址: https://github.com/TinyWindzz/tiny4412_uboot_2018_07
 提交权限申请: 2304083234

Tiny4412板子與芯片相關的啟動腳本與固件

  地址: https://github.com/zczjx/tiny4412-userland
  提交權限申請: 火哥(QQ: 287334895)

說明:

  里面包含tiny4412的一些开机必备的启动脚本,以及一些官方提供的驱动需要加载的固件,比如isp的固件,mfc的固件

Linux內核與驅動

linux-4.4.38


 提交权限申请: 火哥(QQ: 287334895) 
 源碼地址: https://github.com/zczjx/linux-4.4.38-for-tiny4412
 设备树dts:  exynos4412-tiny4412.dts
 默认config: tiny4412_linux_4_4_defconfig

編譯參考

 下载并设置 arm-linux-gcc version 4.9.4 
 cp tiny4412_linux_4_4_defconfig .config
 make LOADADDR=0x40008000 uImage
 make dtbs  

已經移植好的核心驅動:

 * RGB显示屏fimd驱动 s3c-fb.c (无DRM功能)
 * FIMC capture DVP摄像头采集驱动 exynos4-is/fimc-capture.c
 * FIMC m2m pixel coversion 像素格式硬件转换
 * ov5640自动聚焦摄像头sensor, ov5640.c
 * s5p-jpeg jpeg 硬件编解码驱动(encode连续编码开源驱动有bug, 应用代码做了workaround)
 * s5p-mfc codecs h264等相关视频格式硬件编解码驱动

已經移植好的非核心驅動:

 * spidev通用SPI驱动
 * i2cdev 通用I2C驱动
 * leds 点灯驱动
 * tiny4412_ts_backlight tiny4412_1wire 屏幕背光与亮度驱动(单总线协议接口)
 * hc-sr04 超声测距驱动
 * pwm-buzzer pwm蜂鸣器驱动
 * at24c08 eeprom驱动
 * ft5406 触屏驱动(i2c接口读写)
 * mma7660 g-sensor重力传感器驱动
 * nfc-mfrc522 rc522 NFC卡读卡器驱动
 * mshc_0 emmc/sd卡驱动
 * tmu 温度计thermal驱动
 * adc 模数转换驱动(使用hwmon框架)
 * watchdog驱动
 * rtc 驱动
 * usb4604 以太网卡复位驱动

linux-4.9

  地址:
  提交权限申请: 
 
  设备树dts: 
  默认config: 
  已经移植好的核心驱动:
  已经移植好的非核心驱动:

linux-4.14

  地址:
  提交权限申请: 
 
  设备树dts: 
  默认config: 
  已经移植好的核心驱动:
  已经移植好的非核心驱动:

linux-4.19

  地址:
  提交权限申请: 
 
  设备树dts: 
  默认config: 
  已经移植好的核心驱动:
  已经移植好的非核心驱动:

linux-4.20

  地址:https://github.com/TinyWindzz/linux-4.20
  提交权限申请: 2304083234
 
  设备树dts: exynos4412-tiny4412.dts
  默认config: 
  已经移植好的核心驱动:
  已经移植好的非核心驱动:

repo管理

  考虑uboot/kernel等代码仓库较多,不方便进行配置切换,故而使用repo进行管理。
  xml地址: https://github.com/tinylaker/manifest
  
  首先根據您的辦公網絡情況,獲取repo工具。在構建和諧社會的大前提下,需要修改REPO_URL,可參考以下修改 
  ## REPO_URL = 'https://gerrit-googlesource.proxy.ustclug.org/git-repo'
  REPO_URL = https://mirrors.tuna.tsinghua.edu.cn/git/git-repo/
  拉取代碼倉庫
  $ mkdir -p tiny4412
  $ cd tiny4412
  $ repo init -u https://github.com/tinylaker/manifest -m default.xml --no-repo-verify
  $ repo sync -j4
  查看源码目录
  $ ls 
  buildroot  firmware  kernel  test  uboot
  $ ls kernel/
  linux-4.20  linux-4.4.38
  $ ls test/
  bsp  lib
  $ ls uboot/
  uboot-2010.12  uboot-2018.07
  

系統燒寫方式

刷機參考指南 https://github.com/zczjx/linux-4.4.38-for-tiny4412/blob/master/README.md

SD卡啟動

eMMC啟動

交流群

QQ群: 149827797