制作Cubie版OpenWRT(功能齐全,大小仅有11M)
Allwinner Sun4i/5i/6i/7i (sunxi)
Various vendors are offering development boards / single-board computer based on the Allwinner SoCs. These are running various flavors of the A1x/A20 SoCs, with different buildouts. The mach is called "sunxi".
For some specs rather see Allwinner_Technology#A-Series.
Supported Versions
| Model Version | Launch Date | OpenWrt Version Supported | Model Specific Notes |
|---|---|---|---|
| A10 | - | trunk | Single Cortex-A8 |
| A10s | - | trunk | Single Cortex-A8 |
| A13 | - | trunk | Single Cortex-A8 |
| A20 | - | trunk | Dual Cortex-A7 |
| A23 | - | na | Dual Cortex-A7 |
| A31 | - | na | Quad Cortex-A7 |
| A33 | - | na | Quad Cortex-A7 |
| A80 | - | na | 8-core big.LITTLE (4x A15 + 4x A7) |
Hardware Highlights
| Model | SoC | RAM | Storage | Network | USB | Serial | JTAG | UEXT | Other | linux-sunxi page |
|---|---|---|---|---|---|---|---|---|---|---|
| BananaPi | A20 | 1024MiB | μSD | Gigabit Ethernet | 2x USB2 | yes | n/a | n/a | HDMI, SATA, audio, IR, RCA video out, CSI | Page |
| Cubieboard | A10 | 1024MiB | μSD, 4GB NAND | Fast Ethernet | 2x USB2 | yes | n/a | yes | HDMI, SATA, audio | Page |
| Cubieboard2 | A20 | 1024MiB | μSD, 4GB NAND | Fast Ethernet | 2x USB2 | yes | n/a | yes | HDMI, SATA, audio | Page |
| Cubietruck | A20 | 2048MiB | μSD, 8GB NAND | BCM WiFi, Gigabit Ethernet | 2x USB2 | yes | n/a | n/a | HDMI, VGA, SATA, audio, IR, TOSlink | Page |
| Lamobo R1 | A20 | 1024MiB | μSD | RTL8192CU 802.11bgn 2T2R WiFi BCM53125 Gigabit Ethernet switch with 5 ports |
1x USB2 Host, 1x USB2 OTG | yes | n/a | n/a | HDMI, SATA, audio, IR, CSI | Page |
| Olimex A10-OLinuXino-LIME | A10 | 512MiB | μSD | Fast Ethernet | 2x USB2 | yes | n/a | yes | HDMI, SATA | Page |
| Olimex A13-OLinuXino-WIFI | A13 | 512MiB | μSD | RTL WiFi | 3x USB2 | yes | n/a | yes | VGA | Page |
| Olimex A13-SOM | A13 | 256/512MiB | μSD, 4GB NAND | RTL WiFi | n/a | yes | n/a | n/a | n/a | |
| Olimex A20-OLinuXino-MICRO | A20 | 1024GiB | SD, μSD, 4GB NAND | Fast Ethernet | 2x USB2 | yes | n/a | yes | HDMI, SATA, audio | Page |
| pcDuino/pcDuinoV2 | A10 | 1024MiB | μSD, 2GB NAND | Fast Ethernet | 2x USB2 | yes | n/a | n/a | HDMI / Arduino headers | Page |
| pcDuino3 | A20 | 1024MiB | μSD, 4GB NAND | Fast Ethernet, RTL8188EU WiFi | 1x USB2 | yes | n/a | n/a | HDMI / Arduino headers, SATA, IR | Page |
UEXT is an open standard port to provide serial, I²C and SPI expansion ports.
Installation
This section details what is required to install and upgrade OpenWrt. The generic procedure is described here: generic.flashing; this devices don't have a flash chip soldered to the PCB but an SD-Card slot.
Status
Patches have been back-ported from the http://linux-sunxi.org/ community, including device trees, clocks, timers, PIO, ethernet, USB, and, MMC.
These patches are currently being mainlined - eta. Linux 3.14 and 3.15 - by the community.
- SPL: done
- u-boot: done
- kernel: done
- rootfs: done
You have the option to boot the board from initramfs, SD card (recommended), USB storage, or NFS.
Working
- SD/MMC
- USB EHCI/OHCI
- EMAC (10/100 Mbps)
- A20 GMAC (10/100/1000 Mbps)
- SATA
- Clocks
- Timers
- SMP with HYP patches for 2014.04 u-boot
- Various devices, GPIO, IR
Being worked on
- NAND (have some snippets already)
- SPI (need integration)
Not being worked on
- Sound - need bump to 3.18
Installation process
Pre-built SD card images
You can build an SD card image directly from buildroot for your device.
- Check out trunk - https://dev.openwrt.org/wiki/GetSource
- Run make menuconfig
- Select device profile - f.e. BananaPi
- Start the build
- The built SD card images will be in bin/sunxi
- dd if=bin/sunxi/openwrt-sunxi-Bananapi-sdcard-vfat-ext4.img of=/dev/sdc
Assembling the SD card image yourself
OpenWrt trunk images are located in snapshots/trunk/sunxi/ folder.
For example if you have Cubieboard3/Cubietruck then download these files from the server:
SD layout
SD layout with 512 byte blocks:
| NAME | start block | size |
| MBR | 0 | 1 block |
| u-boot-with-spl.bin | 16 (8 KB) | ~250 KB |
| FAT | 2048 (1 MB) | 15 MB |
| EXT4 | 32768 (16 MB) | rest |
SD preparation
We assume /dev/mmcblk0 is the SD card and Cubietruck is the board.
- Partition the SD card. Two partitions are created. The first is the boot partition, /dev/mmcblk0p1. The second is the root partition, /dev/mmcblk0p2.
# fdisk /dev/mmcblk0 Command (m for help): n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-15523839, default 2048): 2048
Last sector, +sectors or +size{K,M,G} (2048-15523839, default 15523839): +15M Command (m for help): n
Partition type:
p primary (1 primary, 0 extended, 3 free)
e extended
Select (default p): p
Partition number (1-4, default 2): 2
First sector (32768-15523839, default 32768): 32768
Last sector, +sectors or +size{K,M,G} (32768-15523839, default 15523839): +240M Command (m for help): p Disk /dev/mmcblk0: 7948 MB, 7948206080 bytes
4 heads, 16 sectors/track, 242560 cylinders, total 15523840 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x17002d14 Device Boot Start End Blocks Id System
/dev/mmcblk0p1 2048 32767 15360 83 Linux
/dev/mmcblk0p2 32768 524287 245760 83 Linux Command (m for help): w
The partition table has been altered! Calling ioctl() to re-read partition table.
- Re-read the new partition table layout (e.g. by removing and re-inserting the SD card).
- Copy the SPL + U-boot image to the card
# dd if=bin/sunxi/uboot-sunxi-Cubietruck/openwrt-sunxi-Cubietruck-u-boot-with-spl.bin of=/dev/mmcblk0 bs=1024 seek=8
- Create a boot (FAT32) partition.
# mkfs.vfat /dev/mmcblk0p1
- Mount the boot partition.
# mount -t vfat /dev/mmcblk0p1 /mnt
- Copy the U-Boot environment file uEnv.txt to the boot partition.
# cp bin/sunxi/uboot-sunxi-Cubietruck/openwrt-sunxi-Cubietruck-uEnv.txt /mnt/uEnv.txt
- Copy the device tree data to the boot partition.
# cp bin/sunxi/sun7i-a20-cubietruck.dtb /mnt/dtb
- Copy the kernel image to the boot partition.
# cp bin/sunxi/openwrt-sunxi-uImage /mnt/uImage
- Resize the root filesystem image to match the partition size.
# resize2fs bin/sunxi/openwrt-sunxi-root.ext4 240M
- Create the root filesystem.
# dd if=bin/sunxi/openwrt-sunxi-root.ext4 of=/dev/mmcblk0p2 bs=128k
- Wrap up (flush buffers and unmount boot partition).
# sync
# umount /mnt
Upgrading OpenWrt
*WiP*
If you have already installed OpenWrt and like to reflash for e.g. upgrading to a new OpenWrt version you can upgrade using the mtd command line tool. It is important that you put the firmware image into the ramdisk (/tmp) before you start flashing.
Links
For further information about the SoCs, go to http://linux-sunxi.org/Main_Page
How can you help
- We're looking for any A31 / A80 hardware at the moment
- Hardware donations - https://dev.openwrt.org/wiki/WantedHardware
- Test GPIOs and peripherals on A13/A20 and provide feedback
制作Cubie版OpenWRT(功能齐全,大小仅有11M)的更多相关文章
- 2017最新修复福运来完整运营中时时彩源码PC+手机版本功能齐全
QQ:1395239152 2017-3.14最新修复福运来完整运营版时时彩源码PC+手机版本功能齐全 使用php+mysql开发,并带有完整数据库.截图!!! 注意哈 带手机版 以下截图均为测 ...
- 创建一个C++制作的包含Opencv功能的dll,供C#程序使用
目的:获取某图片指定位置的颜色. 实现该目的的方法有很多,但为了有助于扩充自己技术广度,所以决定采用标题中的方法来完成. 没有C++编程经验,也没有制作C++版Opencv语法经验,也没有制作dll的 ...
- 用arduino制作具有无限数据传输功能的气象站
本项目是用arduino开源硬件,来快速制作具有无限数据传输功能的气象站,我之前做过一个带数据记录功能的气象站项目,这次算是升级和改进的版本. 第1步:构想 首先,需要增加从气象站到室内接收器的无线数 ...
- LightGallery.js – 功能齐全的 Javascript Lightbox
Lightgallery是一个轻量级的模块化.响应式的灯箱画廊,它允许您创建美丽的图像和视频画廊.借助缩略图插件的帮助,Lightgallery 允许您创建缩略图画廊.它支持触摸屏设备上滑动导航以及桌 ...
- Web Uploader - 功能齐全,完美兼容 IE 的上传组件
文件上传是网站和 Web 应用程序的常用功能,一直没有一款完美的文件上传组件,因此让很多开发人员碰到头疼的浏览器兼容问题. WebUploader 是由 Baidu FEX 团队开发的一款以 HTML ...
- Framework7 – 赞!功能齐全的 iOS7 App 前端框架
Framework7 是一个功能很全的 HTML 框架,用来构建 iOS7 应用程序. Framework7 允许您灵活搭建列表视图(表视图) .你可以让他们作为导航菜单,你可以在列表里面使用图标,输 ...
- 制作便携版 FireFox 火狐浏览器
Firefox是一款可高度自定义的开源浏览器: 你可以访问 火狐DIY 定制自己的Firefox安装包, 此外,你还可以自己动手定制一款可以放在U盘随身携带的便携版Firefox火狐浏览器. 制作便携 ...
- 一个功能齐全的IOS音乐播放器应用源码
该源码是在ios教程网拿过来的,一个不错的IOS音乐播放器应用源码,这个是我当时进公司时 我用了一晚上写的 图片都是在别的地方扒的,主要是歌词同步,及上一曲,下一曲,功能齐全了 ,大家可以学习一下吧 ...
- AndroidStudio制作登录和注册功能的实现,界面的布局介绍
前言 大家好,给大家带来AndroidStudio制作登录和注册功能的实现,界面的布局介绍的概述,希望你们喜欢 每日一句: Success is connecting with the world a ...
随机推荐
- timeline bugs
timeline有个问题巨坑 修了很久 就是一个track控制character的position 另一个track控制同一个character的animaion 拖一段现成的动画进去 这种情况 会有 ...
- JS前端下载文本文件小技巧:1、download属性;2、借助Blob转换成二进制下载
一.HTML download 与文件下载 如果希望在前端侧直接触发某些资源的下载,最方便快捷的方法就是使用HTML5原生的download属性,例如: <a href="large. ...
- 〔原创〕Ubuntu Linux Server 9.04 安装全程图解
关于Ubuntu Linux Server 9.04 版本的安装使用.先声明几点: 1. 整个安装过程,都是全英文的,而且,是文本模式,不像Desktop版本,有Livecd的图形化模式.2. 刚开始 ...
- C#-遍历datatable的几种方法
遍历datatable的方法2009-- :02方法一: DataTable dt = dataSet.Tables[]; ; i < dt.Rows.Count ; i++) { string ...
- You Gotta Care About the Code
You Gotta Care About the Code Pete Goodliffe IT DOESN'T TAKE SHERLOCK HOLMES to work out that good p ...
- jsp页面数据回显(select下拉选择框)
1.静态变量方式: <!-- 实现select标签回显 --> 1.<select name="curStatus" value="${curStatu ...
- redis学习笔记——RDB和AOF持久化二
上一篇对RDB的源码分析是比较多的,但是AOF持久化执行进行了一些理论上的分析和概念的说明.本来想自己偷一些懒,将上篇文章中最后所给链接的AOF实现代码随便过一过算了,后来也就是在过的过程中发现自己这 ...
- 七个你无法忽视的Git使用技巧
与其他技术相比,Git应该拯救了更多开发人员的饭碗.只要你经常使用Git保存自己的工作,你就一直有机会可以将代码退回到之前的状态,因此就可以挽回那些你深夜里迷迷糊糊犯下的错误. 尽管这么说,Git的命 ...
- Android4.4 SystemUI加入Dialog弹窗
此弹窗为开机SystemUI的显示弹窗: 首先.在SystemUI的源代码文件夹加入源代码类文件,文件夹为frameworks/base/packages/SystemUI/src/com/andro ...
- Android Exception 7(attempt to re-open an already-closed object )
07-23 18:16:17.641: W/SQLiteConnectionPool(28390): A SQLiteConnection object for database '/storage/ ...