Drivers Allwinner A80
Previously in thisseries, we investigated building and running a minimal linux server on the Allwinner A80 Optimusboard. While that was a great exercise in learning about the A80 and its SDK, the output of that work was not all that useful. Additionally, we were still missing major hardware components such as ethernet, wi-fi, and NAND. More recently, the pcDuino team released both a Fedora and a Lubuntu beta image for the pcDuino8 board (recently renamed Arches). Their Lubuntu build is made up of two pieces: a kernel image and a rootfs image. The kernel image is 3.4.39, and it simply boots the board and then points over to the rootfs. However, they utilized an older Lubuntu 12.10 image, which also inherently provides the LXDE desktop, neither of which is optimal when looking to deploy a server.
To build an ideal microserver, we really needed a bare minimum Ubuntu LTS system. Thus, we kept the 3.4.39 kernel they provided, but we swapped in a freshly built Ubuntu 14.04 LTS file system created by mk-sbuild. There is no window manager, no video acceleration, and no packages above and beyond what is needed to bring up the system. It is up to the user to install whatever software they want, whether that is a LAMP stack, nodejs, ruby, FTP, DNS, Gnome, VNC, etc, etc.
Generated on 2019-Mar-29 from project linux revision v5.1-rc2 Powered by Code Browser 2.1 Generator usage only permitted with license. Code Browser 2.1 Generator usage only.
Here is how to make use of this image:
- The Crypto Engine is the third generation of Allwinner cryptogaphic offloader. The first generation is the Security System already handled by the sun4i-ss driver. The second is named also Security System and is present on A80 and A83T SoCs, originaly this driver supported it also, but supporting both IP bringing too much complexity and another.
- Touch Driver Banana Pi, Allwinner A20, Armbian. An account on many devices yet. Full text of LeMaker Banana Pi & Pro User Manual v1.0. Linux-hardware tronsmart draco, allwinner a80 octa-core, 4 17 linux-hardware htpc a20 5. Argos Alba 10 ac101cplv2 Flash File MT8163 5 1. Such as memory capacity, and it's armv7. Allwinner a10 firmware download.
First and foremost, you’ll need to download 3 files that we are going to use. One file will be used by LiveSuit, and the other 2 files we are going to place on a microSD card. Here are our downloads:
- optimusboard-a80-ubuntu-kernel-20141008.img (credit for this goes to the pcDuino team)
- update.sh script (credit for this also goes to the pcDuino team)
- ubuntu-trusty-arm-mininodes-20141227.img.gz (our newly built rootfs)
After they are finished downloading, we need to uncompress the ubuntu-trusty-arm-mininodes-20141227.img.gz image file.
gzip -d ubuntu-trusty-arm-mininodes-20141227.img.gz
Next, copy update.sh and ubuntu-trusty-arm-mininodes-20141227.img to a microSD card and then set it aside, we’re going to need it later in the process.
Now, we are ready to start. First, load LiveSuit and select the kernel file so that it is ready to format / flash when the board is powered up.
Next, we need to connect the serial cable to the Optimusboard, open up a screen session (or use Putty if on Windows), and apply power. Quickly press any key to interrupt its boot process and drop to the u-boot shell. Type ‘efex’ (without the quotes) and press Enter.
LiveSuit will now find the board, and flash the kernel to the NAND (/dev/nanda to be exact). It only takes a moment, because we are simply flashing the kernel at this point.
Once finished, the Optimusboard will reboot itself, and attempt to boot, but it fail with an error of “No valid rootfs found”. Now it is time for the micro SD card.
Place the micro SD card in the slot, and the board will recognize that it contains an update.sh file. It will immediately begin copying the contents of ubuntu-trusty-arm-mininodes-20141227.img to the NAND (/dev/nandd).
After approximately 5 minutes it will finish copying the data, and we can safely remove the SD card.
Once it’s removed, press the Reset button on the Optimusboard, and we should now boot up cleanly, and after a moment arrive at an Ubuntu login prompt. The default username / password combo is ubuntu / ubuntu.
The build script only gets us to a minimal working state, so, let’s finish bringing the system all the way up and prepare it for use. First, lets expand the filesystem to use all of the available space on the NAND (roughly 8gb):
resize2fs /dev/nandd
Adobe after effect free download. Jun 19, 2020 Download Adobe After Effects 2020 for macOS Free Click on the button given below to download Adobe After Effects 2020 DMG for Mac setup free. It is a complete offline setup of After Effects 2020 for Mac with a single click download link.
Then to verify the results:
df -h
Obviously we’ll want to change the passwords, for security purposes:
passwd
su root
passwd
Cara menghilangkan tulisan ask for genuine microsoft software free download. Finally, lets bring up the ethernet port and grab a DHCP ip address, so we can access the internet.
ifconfig eth0 up
dhclient eth0
If all goes according to plan, you should now have a minimal Ubuntu 14.04 LTS ARMv7 install running on your Allwinner A80 Optimusboard! From here, you can customize the system to best suit your needs!
A80 | |
---|---|
Manufacturer | Allwinner |
Process | 28nm HPM |
CPU | Octa-core big.LITTLE Cortex-A15/7 @ 2 (?)GHz |
Memory | dual-channel DDR3/DDR3L/LPDDR3/LPDDR2, up to 8GB |
GPU | 64-core Power VR G6230 |
VPU | Video decoding MPEG 1/2/4, H.263, H.264, WMV9/VC-1, VP8 |
Connectivity | |
Video | HDMI 4K output, RGB LCD [email protected], dual-channel LVDS [email protected], 4-lane MIPI DSI [email protected], 4-lane eDP [email protected] |
Network | Unknown (Perhaps EMAC) |
Storage | 4x SD/MMC, Raw NAND with 72-bit ECC |
USB | 2x USB Host, USB 3.0/2.0 Dual-Role (host/device) |
Other | HSIC for low power LTE |
Release Date | June 2014 |
Website | Product Page |
This is the second Power VR equipped Allwinner SoC, which formerly used the MALI series of GPUs. See also A31 (SoC)
|
Linux-sunxi support is not yet available, due to lack of devices and software.
- CPU:
- ARM Cortex-A15/A7 dual Quad-Core
- 256KB L1-Cache
- 1MB L2-Cache
- 33bit address bus with theoretical 7.5G usable RAM (evb has 4G memory)
- GPU:
- Power VR G6230
- 64-core
- Comply with Open GL ES3.x, Open CL1.x, DirectX 11 level 9_3/10_0
- Video:
- UHD H.264/VP8 [email protected] video playback
- Multi-format FHD video decoding, including MPEG 1/2/4, H.263, H.264. WMV9/VC-1, and others
- H.265/VP9 [email protected] video playback (by software, from A80 Datasheet page 11)
- H.264 HP/VP8 [email protected] video capture
- [email protected] 3D decoding, BD/SBS/TAB/FP supported
- [email protected] 3D encoding
- RTSP, HTTP, HLS, RTMP, MMS streaming media protocols
- Display:
- dual-channel LVDS [email protected]
- RGB LCD [email protected]
- 4-lane MIPI DSI [email protected]
- 4-lane eDP [email protected]
- HDMI 4K output (Frame rate unknown)
- Camera:
- Integrated parallel and MIPI I/F sensor
- Supports 5M/8M/12M/16M CMOS sensor
- Supports 8/10/12-bit YUV/Bayer sensor
- Memory:
- dual-channel DDR3/DDR3L/LPDDR3/LPDDR2, up to 8GB
- Raw NAND with 72-bit ECC
- eMMC V4.5
- Connectivity
- 2x USB Host, USB 3.0/2.0 Dual-Role (host/device)
- Ethernet MAC
- 4x SPI, 7x TWI, 7x UART
- 4x SD/MMC
- HSIC
- PCM/I2S
- PMIC:
- AXP806 and AXP809
- Embedded Controller:
- ARM Cortex-M3 (to be verified)
- Audio:
- unknown
- OS:
- unknown
- A80 Datasheet v1.0(PDF, 43 pages, 2014-03-17)
- File:A80 Datasheet Revision 1.0 0404.pdf(same as the previous file)
- A80 Datasheet v1.1(PDF, 43 pages, 2014-09-28)
- A80 User Manual v1.1(PDF, 1008 pages, 2014-09-28)
- A80 Datasheet v1.30(PDF, 43 pages, 2015-04-20)
- A80 User Manual v1.31(PDF, 1056 pages, 2015-05-12)
Wiki
These pages have been put together by scraping information from the SDK.
Original SDK
The SDK contains customized sources for U-boot, Linux, Android and buildroot.
SDK Content
- Linux Kernel: A80/lichee/linux-3.4
- Buildroot: A80/lichee/buildroot
- U-boot: A80/lichee/brandy/u-boot-2011.09
- Various Allwinner tools: A80/lichee/tools
Building images with the SDK
On Debian-like systems the following 32bit packages are required:
- lib32stdc++6
- lib32z1
To build the image:
Boot0
Boot0 initializes the DRAM, basic clocks and loads U-boot from NAND or MMC.There is no boot1 on A80. Boot0 directly loads U-boot.
The sources can be found under https://github.com/allwinner-zh/bootloader/tree/master/basic_loader/boot0
Unfortunately you need the ARMCC (proprietary ARM C compiler) to compile the source code.
Binaries of boot0 can be found in the SDK under lichee/tools/pack/chips/sun9iw1p1/bin/
Android
fastboot (under windows)
The optimus/pcduino8 board has the fastboot feature in its bootloader. Once booted into it, the device will identify itself as:
Under windows, no driver can be found, but it is however possible to force the installation of the fastboot driver.
To make fastboot work from a PC, we need to change the fastboot code because Google hard-coded its partners into the fastboot source code. To be able to use fastboot we need to add 0x1F3A as Allwinner and compile this. A prebuilt windows binary is available here.
U-boot
Allwinner
Sunxi Community
Kernel code
Allwinner Kernel
Sunxi Community
Cubietech Kernel
The cubietech guys have a kernel available.
GPL violations
As is usual, there are the libnand and libisp violations. But with A80, Allwinner decided to step this up a notch, or two, or all the way to 11.
Kernel
- drivers/devfreq/dramfreq/mdfs/mdfs_sun8iw3p1.code Dram frequency scaling binary, run from SRAM while SDRAM is inaccessible.
- drivers/devfreq/dramfreq/mdfs/mdfs_sun8iw6p1.code Dram frequency scaling binary, run from SRAM while SDRAM is inaccessible.
- drivers/media/video/sunxi-fd/lib/libfd Face detector.
- drivers/usb/sunxi_usb/usb3/libusb300 USB3.0 support.
- drivers/arisc/binary/arisc_sun9iw1p1.bin Cortex-M3 core for deep power save modes.
- drivers/video/sunxi/disp/de/lowlevel_sun9iw1/libdsi DSI support for display.
- drivers/video/sunxi/disp/de/lowlevel_sun9iw1/libedp eDP support for display.
- drivers/video/sunxi/hdmi/aw/libhdcp HDCP support for HDMI.
U-boot
Devices are slowly becoming available, here are some of the announced ones:
Drivers Allwinner A80 Driver
- Board pcDuino pcDuino8. Has been since renamed to Arches, pcDuino8 is based on Allwinner H8
- Board OptimusBoard (created by Merrii for Allwinner, is sent to selected users by Allwinner to test the A80).
Tablets:
- Onda V989 A80T
- Teclast P98 Air
some more rumors before A80 release