Archive

Posts Tagged ‘cubieboard’

Linux 4.15 Release – Main Changes, Arm and MIPS Architectures

January 30th, 2018 13 comments

Linus Torvald has released Linux 4.15 last Sunday:

After a release cycle that was unusual in so many (bad) ways, this last week was really pleasant. Quiet and small, and no last-minute panics, just small fixes for various issues. I never got a feeling that I’d need to extend things by yet another week, and 4.15 looks fine to me.

Half the changes in the last week were misc driver stuff (gpu, input, networking) with the other half being a mix of networking, core kernel and arch updates (mainly x86). But all of it is tiny.

So at least we had one good week. This obviously was not a pleasant release cycle, with the whole meltdown/spectre thing coming in in the middle of the cycle and not really gelling with our normal release cycle. The extra two weeks were obviously mainly due to that whole timing issue.

Also, it is worth pointing out that it’s not like we’re “done” with spectre/meltdown. There is more work pending (arm, spectre-v1, misc details), and perhaps equally importantly, to actually get the biggest fix for the indirect branch mitigations, you need not just the kernel updates, you need to have a compiler with support for the “retpoline” indirect branch model.

You can do

cat /sys/devices/system/cpu/vulnerabilities/spectre_v2

and if you don’t have a compiler that supports the retpoline mitigations, you’ll get:

Vulnerable: Minimal generic ASM retpoline

because only the assembly code (not the C code) will have the retpoline mitigation. So keep that in mind.

Anyway, while spectre/meltdown has obviously been the big news this release cycle, it’s worth noting that we obviously had all the *normal* updates going on too, and the work everywhere else didn’t just magically stop, even if some developers have been distracted by CPU issues. In the *big* picture, 4.15 looks perfectly normal, with two thirds of the full 4.15 patch being about drivers, and even the arch updates are dominated by the arm DTS diffs, not by CPU bug mitigation.

So the news cycle notwithstanding, the bulk of the 4.15 work is all the regular plodding “boring” stuff. And I mean that in the best possible way. It may not be glamorous and get the headlines, but it’s the bread and butter of kernel development, and is in many ways the really important stuff.

Go forth and play with it, things actually look pretty good despite everything.

And obviously this also means that the merge window for 4.16 is open. I already have a number of pull requests pending that I will start merging tomorrow. Hopefully we’ll have a _normal_ and entirely boring release cycle for 4.16. Because boring really is good.

Linux 4.14 extended memory limits to 128 PiB (Pebibyte = 1.024 Petabyte)  of virtual address space and 4 PiB of physical address space, added zstd compression in Btrfs and Squashf file systems, improved kernel traces, and implemented zero-copy from user memory to socket among many other changes.

Linux 4.15 was especially newsworthy due to the Spectre/Meltdown debacle and initial fixes affecting all major silicon vendors, and operating systems, but that are also other notable changes:

  • Initial RISC-V Support with device tree bindings for RISC-V CPUs, early boot and initialization code, the Linux atomic and memory model intrinsics, some interrupt and timer infrastructure, paging and MMU related code, and  an implementation of the user-facing ABIs for RISC-V Linux systems.
  • Improved power management in systems with SATA Link Power Management – Because of the lack of documentation of the ALPM (Aggressive Link Power Management), and because  it easily caused data corruption, Linux has been unable to properly implement ALPM support for years. Lack of ALPM support prevents the system from entering in deep power saving states, which means a much worse battery life for Linux users on systems with ALPM. This lack of implementation leads to worse battery life in systems that support ALPM, but now a patch has been merged that implements a better default behavior for ALPM without corrupting data. Linux users with ALPM (e.g. on Intel Haswell, Broadwell, Skylake) should see better battery life with for example Thinkpad T440s laptop saving 0.9-1.2W when idle.
  • AMD Secure Encrypted Virtualization – Linux 4.14 added AMD Secure Memory Encryption, and now Linux 4.15 adds initial support for AMD Secure Encrypted Virtualization, which integrates the memory encryption support in the AMD-V virtualization architecture to support encrypted virtual machines
  • User-Mode Instruction Prevention Intel Security feature – Spectre/Meltdown was not the only security issue addressed in Linux 4.15, and the release also added support for “User Mode Instruction Prevention” found in Intel processor, that disable some instructions ( SGDT, SLDT, SIDT, SMSW and STR) from being executed in user mode in order to reduce the tools available to craft some type of privilege escalation attacks.

As usual, I’ll also provide a summary of some changes specific to the Arm architecture:

  • Allwinner:
    • Allwinner A10/A20/A31 –  Drivers for Display, HDMI controller,
    • Allwinner A33 – Audio codec fixes
    • Allwinner A64 – DMA controller
    • sunxi-ng clocks –  Audio PLL sigma-delta modulation support for accurate audio playback
    • Device tree changes:
      • Allwinner A10/A20 – CCU sunxi-ng style clock conversion, Display pipeline, HDMI controller
      • Allwinner A31 – HDMI controller, I2S controllers
      • Allwinner A64 –  DMA controller, EMAC, SPI
      • Allwinner H3/H5 – EMAC
      • Allwinner R40 – Basic dtsi
    • Cleanups – Removal of GPIO pinmux settings for A10 and A80
    • New devices & boards – TBS A711 tablet (Allwinner A83T), FriendlyARM NanoPi NEO Plus2, Olimex A20-OLinuXino-Micro eMMC variant, Banana Pi M2 Ultra, Banana Pi M2 Berry
  • Rockchip
    • Clocks – New clock ids for Rockchip rk3188 and rk3368 SoCs
    • Thermal – Add Rockchip RV1108 support in rockchip thermal driver
    • Pinctrl – Various non-critical fixes
    • LVDS support in DRM driver
    • New boards – Amarula Vyasa single-board computer (RK3288)
    • Device tree changes:
      • Support for the RGA (raster graphics accelerator) on rk3399 and efuses on rk3368
      • Enablement of display support on the rk3399-firefly, which got its default serial set as well and got cec support as well.
      • Gru boards got their touchpad support refined to actually mark the button correctly and also git their rt5514 dsp added.
      • RK3328 eval board got its cpu regulator and mmc nodes
      • CEC support for the two rk3288-firefly variants and general hdmi support for the firefly-reload.
      • Thermal support for the rv1108
      • Vyasa from Amarula Solutions using a rk3288 and core LVDS node for the newly added driver+binding.
      • bindings + nodes for the Mali-Utgard GPUs found on some Rockchip socs like RK3036 and RK3188. (Lima project can render a red triangle to a png file).
  • Amlogic
    • Clocks – Amlogic Video Processing Unit VPU and VAPB clks
    • nvmem – meson-mx-efuse: fix reading from an offset other than 0
    • adc – meson-saradc: fix the bit_idx of the adc_en clock
    • Various fixes – GPIO interrupt fixes, socinfo fix for GX series, typo
    • Power management support for Amlogic GX family
    • SMP support for Amlogic Meson8/8b
    • MMC – meson-mx-sdio: New driver for the Amlogic Meson8 and Meson8b SoCs
    • SoC info driver for 32-bit Amlogic SoCs
    • New boards / devices – Amlogic Meson-AXG A113D based development board, Khadas VIM2 board, Tronsmart Vega S96 set-top-box
    • Device tree changes:
      • 64-bit
        • Add support for new GPIO IRQ driver
        • Support for A113D SoC
        • reserved memory fixups
        • gpio-names cleanups
        • MMC cleanups, enable high-speed modes
        • Misc cleanups
      • 32-bit
        • Add efuse node
        • Add SDIO MMC controller
        • Reserved memory fixes
        • SoC info driver nodes
        • Enable USB host controller
  • Samsung
    • Clocks – Updated runtime PM support for Samsung exynos5433/exynos4412 providers, removed clkdev aliases on Samsung SoCs
    • Minor drivers cleanups, e.g. remove of Exynos4212 related dead code (no more support for this SoC).
    • New boards – ODROID HC1 board for mini NAS / home cloud
    • Samsung DTS ARM changes
      • Add new board: Hardkernel Odroid HC1.
      • Fix incomplete Odroid-XU3/4 thermal-zones definition leading to possible overheat if first pair of A7+A15 cores is idle but rest of CPUs are busy.
      • Add capacity-dmips-mhz properties for CPUs of octa-core SoCs.
      • Add power button to Odroid XU3/4.
      • Improvements in Gscaler, HDMI and Mixer blocks on Exynos5.
      • Add suspend quirk to DWC3 USB controller to fix enumeration of SuperSpeed devices on Odroid XU4.
      • Add HDMI and MHL to Trats2.
      • Cleanups (redundant properties and nodes).
    • Samsung defconfig changes
      • Enable USB3503 on multi_v7 for Odroid U3.
      • Enable USB Attached SCSI for Odroid HC1.
  • Qualcomm
    • Clocks – RPM clk support on Qualcomm MSM8996/MSM8660 SoCs
    • Regulator – Support for Qualcomm PMI8994
    • Added USB modems – Quectel BG96 Qualcomm MDM9206 based IoT modem, Sierra Wireless EM7565 devices based on Qualcomm Snapdragon X16 LTE-A modem
    • Drivers updates
      • Add Qualcomm Remote Filesystem Memory driver
      • Add OF linkage for RMTFS
      • Add SCM firmware APIs for download mode and secure IO service
      •  Add SMEM support for cached entries
      • Add SMEM support for global partition, dynamic item limit, and more hosts
    • New devices – Fairphone 2, Sony Xperia Z2 tablet
    • Device tree changes:
      • Add MSM8660 GSBI6/7 nodes
      • Disable GSBI6 at APQ8064 platform level
      • Fix phy cells on APQ8064
    • ARM64 updates:
      • Add PCIE support to relevant MSM8996 based boards
      • Add RPM clock controller node on MSM8996
      • Add dload address on MSM8916 and MSM8996
      • Add MBHC button support on APQ8016 SBC
      • Add RTMFS specific compatible for rmtfs memory node
      • Fixups for MSM8916 GPIO line names and MDP address length
    • Defconfig updates:
      • 32-bit
        • Enable Sony Z2 tablet options
        • Enable USB on APQ8064/MSM8974
        • Fixup/catchup config to support newer options
      • 64-bit (ARM64):
        • Enable QCOM IOMMU
        • Enable Qualcomm USB options (re-enable Qualcomm DB410c USB)
  • Mediatek
    • New clock driver for Mediatek MT2712 and MT7622
    • Mediatek MT7622 RTC driver
    • Power management – Add missing module information to the Mediatek cpufreq driver module
    • Drivers update:
        • add 32 bit read/write support to pwrap
        • add mt7622 support to pwrap
        • test build all mediatek soc drivers
      • fix compiler issues
      • clean up Kconfig description
    • DTS updates:
      • 32-bit
        • mt7623 update nodes to binding description
        • mt2701 add display pwn nodes
        • mt2701 update audio node description
      • 64-bit – mt2712: add cpuidle support
  • Other new ARM hardware platforms and SoCs:
    • Actions Semi – Cubieboard6 SBC (Actions S500 )
    • Broadcom – Broadcom Hurricane 2 based Ubiquiti UniFi Switch 8, Broadcom bcm47xx based Luxul XAP-1440/XAP-810/ABR-4500/XBR-4500 wireless access points and routers
    • NXP – i.MX51: Zodiac Inflight Innovations RDU1 board; i.MX53: GE Healthcare PPD biometric monitor;  i.MX6: Pistachio single-board computer, Vining-2000 automotive diagnostic interface, Ka-Ro TX6 Computer-on-Module in additional variants
    • Realtek – RTD1295 based set-top-boxes MeLE V9 and PROBOX2 AVA
    • Renesas –  R-Car V3M (R8A77970) SoC and “Eagle” reference board, Renesas H3ULCB and M3ULCB “Kingfisher” extension infotainment boards, Renesas r8a7745 based iWave G22D-SODIMM SoM

Finally, some of the changes made for MIPS architecture:

  • Fixes:
    • ralink: Fix MT7620 PCI build issues (4.5)
    • Disable cmpxchg64() and HAVE_VIRT_CPU_ACCOUNTING_GEN for 32-bit SMP (4.1)
    • Fix MIPS64 FP save/restore on 32-bit kernels (4.0)
    • ptrace: Pick up ptrace/seccomp changed syscall numbers (3.19)
    • ralink: Fix MT7628 pinmux (3.19)
    • BCM47XX: Fix LED inversion on WRT54GSv1 (3.17)
    • Fix n32 core dumping as o32 since regset support (3.13)
    • ralink: Drop obsolete USB_ARCH_HAS_HCD select
  • Build system:
    • Default to “generic” (multiplatform) system type instead of IP22
    • Use generic little endian MIPS32 r2 configuration as default defconfig instead of ip22_defconfig
  • FPU emulation – Fix exception generation for certain R6 FPU instructions
  • SMP – Allow __cpu_number_map to be larger than NR_CPUS for sparse CPU id spaces
  • Miscellaneous:
    • Add iomem resource for kernel bss section for kexec/kdump
    • Atomics: Nudge writes on bit unlock
    • DT files: Standardise “ok” -> “okay”
  • Minor cleanups – Define virt_to_pfn(), Make thread_saved_pc static, simplify 32-bit sign extension in __read_64bit_c0_split(), etc…
  • Platform support:
    • BMIPS – Enable HARDIRQS_SW_RESEND
    • Broadcom BCM63XX – Add clkdev lookup support, update clk driver, UART driver, DTs to handle named refclk from DTs, split apart various clocks to more closely match hardware, add ethernet clocks
    • Cavium Octeon – Remove usage of cvmx_wait() in favour of __delay()
    • ImgTec Pistachio – DT: Drop deprecated dwmmc num-slots property
    • Ingenic JZ4780 – Add NFS root to Ci20 defconfig, aAdd watchdog to Ci20 DT & defconfig, and allow building of watchdog driver with this SoC
    • Generic (multiplatform) – Migrate xilfpga (MIPSfpga) platform to the generic platform
    • Lantiq xway – Fix ASC0/ASC1 clocks”

For full details, check out the full Linux 4.15 changelog – with comments only – generated using git log v4.14..v4.15 --stat. You may also consider reading Kernelnewsbies’s Linux 4.15 changelog.

Cubieboard7 Board Powered by Actions Semi S700 Processor Becomes a Full-Featured Devkit with DVK522 Expansion Board

July 25th, 2017 10 comments

Cubieboard6 was announced earlier this year with the same form factor as Cubieboard2 – which was popular a few years ago – by replacing Allwinner A20 with Actions Semi S500 quad core ARM Cortex A9 processor. CubieTech is about to launch Cubieboard7 based on the same design, except for the processor upgrade to the pin-to-pin compatible Actions Semi S700 quad core ARM Cortex A53 processor. I’ve also found out Cubieboard2/6/7 can be connected to DVK522 expansion board to provide easier access more I/Os like LVDS, RGB LCD, VGA, and so on.

Let’s start with the Cubieboard7 (CB7) preliminary specifications:

  • SoC – Actions Semi S700 quad core ARM Cortex-A53 processor with Mali-450MP4 GPU
  • System Memory – 2GB LPDDR3
  • Storage
    • 8GB eMMC flash
    • SATA 3.0 port for 2.5″ HDD/SSD implemented via USB 3.0 switch and JMicron JMS578 USB 3.0 to SATA controller.
    • micro SD card slot up to 32GB
  • Video Output  – HDMI 1.4b up to 1080p60 according to specs, but datasheet mentions: 3840*[email protected]/25Hz/30Hz and 4096*[email protected]/25Hz/30Hz, so those are likely to be supported to
  • Video Decoder – MPEG-4, H.264, H265… up to 60 Mbps (average), 120 Mbps (peak)
  • Video Encoder – H.264 up to 1080p60
  • Audio I/O – Via HDMI output, 3.5mm audio output (HP) jack, 3.5mm audio input (MIC) jack
  • Connectivity – 10/100M Ethernet, 802.11 b/g/n WiFi, Bluetooth 4.0 LE (AP6212) with u.FL antenna connector
  • USB – 2x USB host ports, 1x mini USB device
  • Expansion – 2x 48-pin headers with I2C, CSI for camera, FM-IN, ADC, CVBS output, Audio output, RGB, LVDS, MIPI DSI, SPI, HSIC, INT GPIO…
  • Misc – IR receiver, RTC with battery, power and ADFU keys (to flash firmware), Power LED, 2x User LEDs
  • Power Supply
    • 5V @ 2.5A via power barrel
    • 5V via mini USB input
    • 3.7V Li-Po battery support via 2-pin header
  • Dimensions – 100mm x 60mm x 18mm
  • Temperature Range –  -20℃ ~ 70℃
  • Certifications – FCC, CE & RoHS

Development resources like tools, Android 5.1 firmware and SDK, documentation, schematics (PDF) and datasheet are shared via a Baidu link. Usually they also provide a link to MEGA to ease download for people outside of China.

S700 Application Diagram – Click to Enlarge

The documentation appears to be in English, at least S700 datasheet and product brief which include the “application diagram” above. The processor actually supports Gigabit Ethernet, but they kept the Fast Ethernet connection in Cubieboard7 likely to avoid having to re-layout the PCB and increase costs. Right now, only Android 5.1.1 is available for the board, but the company intends to “continually maintain Android, Debian, Debian Server operating systems”.

What also caught my eye with the board is DVK522 expansion board, that allows you to insert Cubieboard7 and older variants with the same form factor to more easily access various display and other interfaces, connect Arduino shields, etc… It’s been available since 2014, but I’ve only noticed it today.

DVK522 + Cubieboard6 – Click to Enlarge

DVK522 board features:

  • Display and Video Outputs
    • TVOUT interface – Video CVBS output
    • VGA interface
    • Resistive touch LCD RGB interface
    • Capacitive touch LCD RGB interface
    • Capacitive touch LCD LVDS interface: for connecting capacitive touch LCD with LVDS interface
  • Camera – 1x CAMERA interface for connecting camera modules like OV7670
  • Connectivity Headers – ZIGBEE connector for connecting ZigBee modules like Core2530, ZB501
  • Expansion Headers
    • 1x UART interface
    • 1x ONE-WIRE interface to be used with 1-wire devices such as temperature sensor (DS18B20), electronic registration number (DS2401), etc.
    • SPI0/I2C1 interface for SPI and I2C
    • Arduino headers
  • Debugging/ Programming – USB UART interface via PL2303TA USB TO UART converter, Arduino ICSP interface
  • Misc
    • 3.3 V RTC backup battery
    • 32.768K crystal for PCF8563 RTC chip
    • Buzzer
    • 3x AD keys for Android keys
    • 8x user LEDs, 1x power indicator
    • Configuration jumpers for  TVOUT selection, CAMERA power selection, RTC, RTC power selection, ONE-WIRE, Buzzer, AD keys, Arduino port selection,
      User LEDs, Arduino ADC/I2C selection, Arduino UART selection for either connecting UART shield or connecting Arduino board
  • Power Input / Output – 5V/3.3 V

Cubieboard7 does not appear to be available yet, and pricing is unknown. For reference, Cubieboard6 is sold for 420 RMB ($62.33) on Taobao, and $98 on Amazon US, and we can expect the new board to sell for a few dollars more ($10 to $15 extra?). DVK522 expansion board has been designed by Waveshare, and sold on their website for $33.99. You may want to visit Cubieboard7 product page for a few more details about the development board itself.

Thanks to Aleksey for the tip.

CubieBoard6 Development Board Powered by Actions Semi S500 Processor Comes with SATA, LiPo Battery Support

March 24th, 2017 19 comments

CubieTech launched Cubieboard with Allwinner A10 processor in 2012, and while they may not be as popular as some other boards like Raspberry Pi, ODROID, or Orange Pi boards in 2017, the company is still around after around 5 years, and their latest board is Cubieboard6 powered by Action Semi S500 quad core Cortex A9 processor with 2GB RAM, 8GB flash, HDMI, wired & wireless connectivity, SATA, battery support and more.

Click to Enlarge

Cubieboard6 specifications:

  • SoC – Actions Semi S500 quad core ARM Cortex-A9 processor with Imagination PowerVR SGX544 GPU
  • System Memory – 2GB LPDDR3
  • Storage
    • 8GB eMMC flash
    • SATA 3.0 port for 2.5″ HDD/SSD up to 4TB
    • micro SD card slot up to 32GB
  • Video Output  – HDMI 1.4b up to 1080p60
  • Audio I/O – Via HDMI output, 3.5mm audio output (HP) jack, 3.5mm audio input (MIC) jack
  • Connectivity – 10/100M Ethernet, 802.11 b/g/n WiFi, Bluetooth 4.0 LE (AP6212) with u.FL antenna connector
  • USB – 2x USB host ports, 1x mini USB device
  • Expansion – 2x 48-pin headers with I2C, CSI for camera, FM-IN, ADC, CVBS output, Audio output, RGB, LVDS, MIPI DSI, SPI, HSIC, INT GPIO…
  • Misc – IR receiver, RTC with battery, power and ADFU key (to flash firmware), Power LED, 2x User LEDs
  • Power Supply
    • 5V @ 2.5A via power barrel
    • 5V via mini USB input
    • 3.7V Li-Po battery support via 2-pin header
  • Dimensions – 100mm x 60mm x 18mm
  • Temperature Range –  -20℃ ~ 70℃
  • Certifications – FCC, CE & RoHS

Click to Enlarge

The company provides Android 5.1.1 and Debian Jessie Desktop with 3D graphics acceleration (OpenGL ES 2.0) and hardware video decoding support. Software and hardware files, as well as documentation is available on MEGA outside of China, and on Baidu for people located in China.

Actions Semi S500 does not support SATA, so it’s important to look at the schematics to see how it was implemented, and while many boards are simply limited by their USB 2.0 interface, CubieTech used the USB 3.0 interface for the SATA implementation, which should lead to much better performance than most non-native solutions on the market. It’s disappointing that networking is limited to Fast Ethernet.

Click to Enlarge

We’ve see both a USB 3.0 switch and USB 3.0 to SATA bridge (JMicron JMS578) in the schematics in order to provide good performance between the processor and the SATA drive, while also allowing to use the board as an external USB 3.0 hard drive from your computer. Actions Semi S500 is not quite a new processor, and if you want to check out what it’s capable you may want to check out my hands-on posts about Roseapple Pi and Allo Sparky.

You’ll find more pictures and a few extra details on the product page. The official price of the board is $69 without shipping, but Cubieboard6 is only sold on a couple of website, including Amazon US for $98, and an Australian website for $115 AUD. Note that the board is sold as part of kit with several accessories namely USB to power jack cable, USB to mini USB cable, a WiFi antenna, a SATA cable, and a heatsink. There’s also an optional case, but I could not find it for sale yet.

CubieTruck Plus Development Board with DisplayPort & HDMI Sells for $84 (in China)

December 28th, 2015 6 comments

We first found out about CubieTruck Plus (aka Cubieboard 5) this summer, and while at the time we did not have the full details, it was clear from the board picture and name, that is was an update to CubieTruck board, replacing Allwinner A20 dual core processor by Allwinner A8 octa-core processor, and ditching the VGA port for DisplayPort while keeping most of the same features of the original version.

CubieBoard5
The company has now provided more details while announcing the launch of the board in China, and it turns out CubieTruck Plus has a few more advantages, and at least one drawback.

CubieTruck CubieTruck Plus
SoC Allwinner A20 Allwinner H8
CPU Dual core Cortex A7 up to 1.08 GHz Octa core Cortex A7 up to 2.0 GHz
GPU Mali-400MP2 PowerVR SGX544 up to 700 MHz
Memory 2GB DDR3
Power [email protected] power jack
Ethernet Gigabit Ethernet (RJ45)
WiFi 802.11 b/g/n (2.4 GHz only) Dual band 802.11 b/g/n (AP6330)
Bluetooth 4.0
Storage 8GB NAND Flash 8GB eMMC flash
SATA 2.0 for 2.5” HDD/SSD SATA 2.0 for 2.5” HDD/SSD
(USB bridge)
Micro SD slot
Display HDMI 1.4a and VGA HDMI 1.4a and DisplayPort 1.1
Audio Out HDMI, optical S/PDIF, and 3.5mm audio jack
Audio In Line-in pins On-board microphone, and audio jack
with microphone support
USB 2x USB 2.0 host ports, 1x USB 2.0 OTG port
RTC Battery Rechargeable 40 mAh @ 3.0V
Buttons Reset, power, and u-boot
LEDs 4x user LEDs
IR Receiver Yes
Expansion pins 54 pins 70 pins
Dimensions 112x82x18mm

So that means other improvements include a faster eMMC interface, on-board microphone, full support for headset via the 3.5 mm audio jack, and 16 more I/O pins. The main disadvantage is that due to the USB to SATA bridge, the SATA interface will now be much slower, closer to 30MB/s sequential read and write speeds if properly implemented, instead of the 180MB/s SATA read speed I measured in CubieTruck using  a 128GB SSD.

CubieTruck_Plus_AccessoriesThe CubieTruck Plus will ship with an acrylic case, a fan, a SATA cable, a USB OTG adapter, a mini USB to USB cable, and a USB to power cable. Since the dimensions of the new and old boards are the same, CubieTruck Metal Kit case will also be compatible, except they’ve made some modifications to the back plate due to the VGA to DisplayPort replacement.

The company has also released tools, documentation, schematics (PDF), source code, and firmware image on CubieBoard5 download page with Android 4.4 and Linaro Ubuntu desktop images bootable from SD card or the eMMC flash.

CubieTruck Plus can be purchased for 539 CNY (~$84 US) on Taobao. A few more details may also be found on the product page.

Thanks to MigSu for the tip.

Cubieboard 4 Ubuntu Review – Setup, Usability, and Performance

April 1st, 2015 8 comments

Cubieboard4 is a development board powered by Allwinner A80 octa-core processor with 2GB RAM and 16GB eMMC. I’ve already shown how to get started with the board using the pre-installed Android 4.4 image, and run some benchmarks in Android, so now it’s time to check out the Ubuntu Linaro 14.04 image provided by CubieTech. I’ll show how to install and setup Ubuntu 14.04 on the board using a micro SD card, run desktop applications like Chromium, Libre Office, and son on on the board, and complete the review with some Linux benchmarks.

Setting up Ubuntu on Cubieboard4

Firmware images for Cubiebord4 can be downloaded @ http://dl.cubieboard.org/model/cc-a80/Image/. Currently Android 4.4, Debian server, Ubuntu Linaro server, and Ubuntu Linaro desktop with LXDE desktop environment. That’s the latter I’ll use for the experiment, and two images are available:

  • linaro-desktop-cb4-card-hdmi-v0.4.img.7z – Bootable image from micro SD card
  • linaro-desktop-cb4-emmc-hdmi-v0.4.img.7z – Installation image to eMMC to be written to micro SD card (and not via PhoenixSuite).

I’ve just downloaded and flash the “card” image to a 32GB Class 10 micro SD card in a terminal windows in a Linux computer:

where X is the letter of your SD card, which you can check with lsblk. Be very careful as using the wrong letter may wipe out your hard drive, and you may consider using a virtual machine to be extra safe. This step also be done in a Windows computer with 7-zip and Win32DiskImager utilities.

Now insert the micro SD card into the board, connect the necessary cable, and power it on. After around 35 seconds, maybe a little more the first time, I get a usable desktop. Your own boot time will obviously be impacted by your micro SD card performance.

Cubieboard4_Ubuntu_LXDE

Lubuntu Desktop (Click for Original Size)

Firefox and Nautilus are not part of the default image, but I’ve installed them with apt-get, and added shortcuts to the desktop.

Usually, you need to run gparted or resize2fs to make full use if your SD card capacity, but this is automatically taken care of by the image, and my root partition was automatically extended to 30GB:

Since I’m connected to Internet via an Ethernet connection I did not have to configure anything else, except the timezone set with:

At this stage, you’ve got a fully workable ARM Linux computer, although if you want to use Wi-Fi, Bluetooth, and/or a printer more configuration work is required, but I haven’t tried any of these.

Cubieboard4 Usability as a Desktop Computer

The image is quite minimal, and beside Pacman file manager and a few other small programs, only Chromium browser is already installed. So I installed Firefox, Libre Office, Nautilis and Gimp with apt-get:

The system is quite responsive, although programs don’t quite load as fast as from an SSD or eMMC, and you need to wait a few seconds for Chromium or Libre Office to load.

Since the font looked quite poor in Chromium, I installed Firefox, but I had the same results. So finally I installed Ubuntu fonts:

and configured the web browsers accordingly leading to much better font rendering.

I’ve run the following tests in Cubieboard4 to show the performance, and what is working or not:

  1. 30 seconds boot
  2. List of installed applications
  3. LibreOffice (Writer)
  4. Chromium – Multi-tabs, YouTube (embedded / full screen; VP9), and Candy Crush Saga (Flash game) in Facebook
  5. 3D hardware acceleration with es2gears and glmark2-es2
  6. 1080p video playback with VideoLAN
  7. Power off

I also ran htop in a terminal to show the eight cores CPU usage. Sorry the video is not quite straight and audio is poor with SJ1000 camera.

The system is working quite well, except with YouTube videos which are not so smooth, because YouTube has now mostly switched to VP9 codec, and 3D support failed with “DRI2: failed to authenticate”. Candy Crush Saga worked fine, although not amazingly smooth, but performance is not that much different from my regular Ubuntu PC for that game. 2D hardware acceleration is supposed to be implemented (a80-xf86-video-fbturbo), but I’m not quite sure how to formally test this. H.264 and MPEG4 video could be played in VideoLAN with only one CPU core use confirming hardware video decoding support, but MPEG2, VC1 and H.265 codecs all failed.

Click for Original Size

Click for Original Size

In the screenshot above, I play Big Buck Bunny in VideoLAN on the top left corner, but since hardware video decoding is activated, the video won’t show in the screenshot, which is perfectly normal.

Even though Cubieboard4 Ubuntu support is not too bad right now, I still think ODROID-XU3 Lite delivers a better Linux experience, especially when using an eMMC module, as programs load faster, 3D acceleration is working, as well as Kodi with hardware video decoding. The only downside is that flash (Chromium + pepperflash) did not work when I tried on XU3 Lite, but this may have been fixed by now.

Cubieboard4 Performance Testing in Linux

Phoronix Suite Benchmarks

I’ve installed the latest version of Phoronix Test Suite to run a few benchmarks in Linux:

After configure the test suite for batch benchmark with

I decide to run the same three tests as on ODROID-XU3 Lite, encoding MP3, compressing files, and performing some HTTP server tasks:

Unfortunately, apache failed to compiled, so only the MP3 and 7-zip test completed.

Cubieboard4_vs_ODROID-XU3-Lite_MP3So the only direct comparison with the test I’ve done between ODROID-XU3 Lite and Cubieboard4 is for MP3 encoding, and in this test the Exynos platform is faster, but the Allwinner A80 board still compares favorably to slower or/and older ARM board like Radxa Rock, ODROID-C1, or PCDuino (cpu test) in 7-Zip test, especially this test runs on all available cores.

7-Zip_Cubieboard4_Radxa_Rock_ODROID-C1

 Mainline kernel compilation

Now let’s see how fast the board build Linux 3.19.

Mainline kernel requires gcc 4.9 to build, but Ubuntu 14.04 only comes with gcc 4.8.2, so let’s install the new compiler. Since add-apt-repository is missing, we have to install the relevant package first:

We’ll also need to edit /etc/lsb-release to replace DISTRIB_ID=Linaro by DISTRIB_ID=Ubuntu temporary, as the toolchain repo has never heard about a Linaro distribution, and then we can complete gcc 4.9 installation.

Allwinner enginners themselves are not directly involved in mainline kernel develompent, but they are usually in the loop when members of linux-sunxi community send patchsets to the ARM Linux kernel mailing list, which mean Allwinner processor are supported in mainline kernel, albeit with limitation. Allwinner A80 codename is sun9i, and we can see a device tree file for A80 OptimusBoard:

Nevertheless, I’ve built the kernel using sunxi default config used for all Allwinner platforms:

So Cubieboard4 took 6 minutes on 36 seconds to build Linux 3.19, while ODROID-XU3 Lite took 5 minutes 43 seconds to build Linux 3.18, not too bad, but this is show some performance advantage for the Exynos processor.

Video Transcoding with avconv

Ideally video transcoding should not be done by software, since most ARM processors can handle MPEG2 to H.264 transcoding using the VPU, but this can still be useful to evaluate a processor performance, so just like for ODROID-XU3 Lite, I’ve converted a short MPEG2 into H.264 with avconc:

It took  3 minutes 3 seconds to convert the 44 seconds video, so just like with the Exynos board it’s not possible to transcode a 1080p video @ 25 fps in real-time by software, at least with avconv, and the parameters I used. ODROID-XU3 Lite was a bit faster however, managing to convert the same video in 2 minutes and 33 seconds.

Cubieboard4 can be purchased for $125 + shipping on R0ck.me, Eleduino, Seeed Studio, or others, and it’s also listed on Amazon US for $138.99 including shipping.

Cubieboard4 Benchmarks in Android

March 25th, 2015 1 comment

Last time I tried running benchmarks in an Allwinner A80 board (A80 OptimusBoard), it either rebooted during the benchmark, or had fairly disappointing results for example for USB storage. I documented my findings in a post entitled “Current Performance and Stability Issues on AllWinner A80 OptimusBoard Development Board” which was written in October 2014. But a few months have passed, and since Cubieboard4 is another hardware platform, so I was interested in running benchmarks including storage and networking performance testing on the new board to see if any progress was made.

Cubieboard4 Android Benchmarks – Antutu, Vellamo, and 3DMarks

Manufacturers can add the key ro.sys.hiritsu to build.prop in order to artificially inflate their Antutu scores with Allwinner A80 processor. So before running Antutu, I checked /system/build.prop in the firmware, and found out no trace of this variable, which can only be good for CubieTech reputation.

Cubieboard4_AntutuCC-A80 board, the other name for Cubieboard4, got 36,374 point in Antutu 5.6.2, which is similar to what Allwinner A80 cheating hardware platforms get with Antutu X, a version of Antutu that prevents cheating. So that means performance is as expected here.
Cubieboard4_Vellamo
The board gets 1172 points for Metal, 1482 points for Multicore, and 2455 points for Chrome Browser tests which compared to respectively 1138, 1352, and 2109 (Stock Browser) for Tronsmart Draco AW80 Meta, an Android media player also based to Allwinner A80.
Cubieboard4_3DMark
3DMark’s Ice Storm Extreme score is more interesting, as the board gets 8,213 points against only about 6,500 for Tronsmart Draco AW80, and 7,000 to 7,500 points for Rockchip RK3288, so there may have been some GPU drivers optimization since then, or they simply clocked the GPU at higher speed.

Cubieboard4 Storage Performance

We already knew the eMMC – with advertised 25MB/s read and write speed – would not break records, but at least its A1 SD benchmark reports speeds so no far off from the advertised rates at around 19.50 MB/s in both directions, placing the board in the middle of the pack, with very good write speed, but below than average read speed.

Cubieboard4_eMMC

eMMC Flash – Read and Write Speed in MB/s (Click to Enlarge)

Cubieboard4 features an USB 3.0 OTG port and an OTG adapter which allowed me to connect my Seagate USB 3.0 hard drive to the board. Unfortunately, the drive could not be powered via this port, albeit a USB 2.0 flash drive worked just fine. So I had to fallback to connecting my HDD to one of the USB 2.0 ports. I was interested in checking NTFS performance since it was poor on A80 OptimusBoard, but unfortunately, CC-A80 firmware would only mount EXT-4 and exFAT partitions of the drive.

Cubieboard4_USB_2.0_EXT-4

Read and Write Speed in MB/s (Click to Enlarge)

A1 SD reports 21.63 MB/s read speed and 18.17 MB/s write speed for the EXT-4 partition slightly outperforming the underwhelming performance of Draco AW80 media player. What about exFAT? Write is 3.16MB/s, and read a massive 239.04MB/s? The latter is clearly impossible over USB 2.0, and happened because of the slow write speed resulting in a ~400MB test files that was cached and read from the RAM, so I did not include this results in the chart. So USB storage does not look promising on the board at least for now.

Cubieboard4 Networking Performance

Gigabit Ethernet performance measured with iperf Android app and the following command line iperf -t 60 -c 192.168.0.104 -d, showed the same asymmetric transfer rates over Ethernet as Draco AW80 with one side getting 712 Mbits/sec and the other 216 Mbits/sec.

Throughput in Mbps (Click to Enlarge)

Throughput in Mbps (Click to Enlarge)

iperf output:

I’m not using iperf for Wi-Fi to make use of my older data, and because Wi-Fi is normally slow enough not to be impacted by internal storage performance, and instead transfer a 278MB file over SAMBA via ES File Explorer. I’ve tested both 5.0 GHz (802.1n) with TP-link TL-WDR7500 router and 2.4 Ghz with my older TP-Link TL-WR940N.

Throughput in MB/s (Click to Enlarge)

Throughput in MB/s (Click to Enlarge)

Wi-Fi performance is quite below average, and I was a bit surprised to see 5.0GHz to be faster than 2.4GHz Wi-Fi, as in my environment there are only these two routers. Maybe the newer router simply have better performance.

In conclusion, Allwinner A80 is a powerful processor, and in tasks where you need raw CPU or GPU power it should deliver, but USB 3.0 is just not working at least with my hard drive, read and write speed over USB 2.0 appears weak, and both wired and wireless performance are somewhat underwhelming. Some of these issues have been known for over 6 months on Allwinner A80 platforms, so I’m not sure there are some silicon issues, or it just takes an awful lot of time to improve the firmware.

Cubieboard4 (CC-A80) Unboxing and Getting Started Guide

March 20th, 2015 10 comments

A few samples of Cubieboard4 board may have been available in China in October 2014, but Cubietech only officially launched their Allwinner A80 development board about ten days ago, and you can buy it for $125 + shipping on sites like R0ck.me, Eleduino, Seeed Studio, and many other distributors. The company decided to send a sample for evaluation, and today I’ll start with a post showing some pictures of the kit, and explaining how to get started with assembly and first boot.

Cubieboard 4 Pictures

I received the board within two days after the company told me they would send a sample, as they used DHL. I also had to pay a bit of import tax and DHL’s handling fee. There should be CC-A80 box with the board and accessories, a white box for the power supply, and a power cord.

Cubieboard4_PackageThere’s quite a few items to play with…

Cubieboard 4 and Accessories (Click to Enlarge)

Cubieboard 4 and Accessories (Click to Enlarge)

The power brick is 5V/4A which should be plenty enough. USB 3.0 OTG and device cables are provided, as well as an external Wi-Fi antenna, a CR1230 battery for the RTC, an heatisnk with syringe with thermal paste, and two acrylic covers with spacers and screws to make a simple enclosure.

Top of CC-A80 Board (Click to Enlarge)

Top of CC-A80 Board (Click to Enlarge)

The board comes with 4 USB 2.0 host ports, a USB 3.0 OTG port, HDMI and VGA connectors, microphone and headphone audio jacks, a Gigabit Ethernet port, an micro SD card slot, a battery slot for RTC, reset/power/boot buttons, an IR sensor, and power and network activity LEDs. There are also three headers: a 2-pin battery header, a 4-pin UART header for serial console (close to VGA D-SUB connector), and a 24-pin header (J20) with access to 3x I2C, 2x UART, JTAG, and power signals, so expansion capabilities are somewhat limited. Please note that the board is now CC-A80 V1.2, and if you have an older revision, J20 expansion header may only have 20-pins without the 4 extra JTAG signals. The board features 2GB RAM thanks to four SKhynix H5TQ4G63AFR DDR3 chips, as well as AP6330 dual band Wi-Fi + Bluetooth module.

Bottom of CC-A80 Board (Click to Enlarge)

Bottom of CC-A80 Board (Click to Enlarge)

On the back of the board, there’s mostly a FORESEE NCEFEH58-08G eMMC with 8GB capacity that’s said to have 25MB/s read and write speed. Certainly not the fastest on the market, but it should do for most use case.

You may also want to watch the unboxing video below, that is not sponsored by Red Bull…

Cubieboard 4 Kit Assembly

So we’ve got all these small bits and pieces that we need to put together. It’s fun to do and should take less than 5 minutes. The main steps are:

  • Inserting the CR1230 battery into the battery slot
  • Adding thermal paste and the heatsink on top of Allwinner A80 processor
  • Mounting the board in the acrylic enclosure with spacer. I had to use a damp sponge to remove peel the protection on the acrylic covers.
  • Screw the Wi-Fi antenna

I’ve shot a short video to show how to perform this step.

This is what the board should look like once you’re done.

Cubieboard4 after Assembly

Cubieboard4 after Assembly (Click to Enlarge)

Booting Cubieboard4 Board

Since the board has an eMMC, you don’t need to prepare a micro SD to install or boot an operating system. By default, CC-A80 is p=-reloaded with Android 4.4 since Cubietech uses an apk for factory testing, so it’s more convenient for them, but you could also install Debian Server or Ubuntu Linaro Desktop/Server on the board. The company publishes a test report with their image, and their Ubuntu Desktop image support 3D graphics acceleration, as well as hardware video decoding with VideoLAN (VLC).

But today, I’ll just boot the pre-installed image. I’ve connected the 5V/4A power supply, an Ethernet cable, an HDMI cable to my TV, a RF dongle for Mele F10 Deluxe air mouse, as well as a UART debug board to access the serial console via minicom on a netbook running Lubuntu. The boot took about 30 seconds, which was to be expected because of the mid-range eMMC used with the board.

Cubieboard 4 connected to UHD TV and Ubuntu Laptop for Serial Console Access (Click to Enlarge)

Android 4.4 running in Cubieboard 4 connected to UHD TV and Ubuntu Laptop for Serial Console Access (Click to Enlarge)

For those who are interested in the boot details, I’ve included the boot log below:

boot0 version : 3.1.0
rtc 1 value 0x00010000
rtc 2 value 0x00020000
rtc 3 value 0x00030000
INFO: dram code V2.2
dram clk=672
dram_zq = 0x0x003f3fdd!!
DDR3 used!!
dram channle 2
0x0x00100001
0x0x00100001
pmu id=0x00000062
VTC Disabled!!
Channel 0 OK!
VTC Disabled!!
Channel 1 OK!
dram size=2048MBytes!
dram size =2048
card boot number = 2
card no is 2
sdcard 2 line count 0
[mmc]: mmc driver ver 2014-06-05 14:18
[mmc]: ***Try SD card 2***
[mmc]: mmc 2 cmd 8 timeout, err 0x00000100
[mmc]: mmc 2 cmd 8 err 0x00000100
[mmc]: mmc 2 send if cond failed
[mmc]: mmc 2 cmd 55 timeout, err 0x00000100
[mmc]: mmc 2 cmd 55 err 0x00000100
[mmc]: mmc 2 send app cmd failed
[mmc]: ***Try MMC card 2***
[mmc]: MMC ver 4.5
[mmc]: SD/MMC Card: 4bit, capacity: 7475MB
[mmc]: vendor: Man 0x00880103 Snr 0x201e0181
[mmc]: product: NCard
[mmc]: revision: 2.0
[mmc]: ***SD/MMC 2 init OK!!!***
sdcard 2 init ok
The size of uboot is 0x000c4000.
sum=0x230343d5
src_sum=0x230343d5
Succeed in loading uboot from sdmmc flash.
Ready to disable icache.
Jump to secend Boot.
[ 0.690]U-Boot 2011.09-rc1-dirty (Jul 15 2014 – 17:20:29) Allwinner Technology[ 0.698]version: 1.1.0
[ 0.705]a7 boot
[ 0.707]pmbus: ready
[ 0.710]PMU: AXP809
[ 0.712]PMU: AXP809 found
[ 0.715]PMU: AXP806
[ 0.717]PMU: AXP806 found
[ 0.720]PMU: bat ratio = 100
try to set dcdc3 to 900 mV
[ 0.725]PMU: dcdc3 900
[ 0.728]PMU: pll1 1008 Mhz
set power on vol to default
dcdc1_vol = 3000, onoff=1
dcdc2_vol = 900, onoff=0
dcdc3_vol = 900, onoff=1
dcdc4_vol = 900, onoff=1
dcdc5_vol = 1500, onoff=1
dc5ldo_vol = 900, onoff=1
dldo2_vol = 3000, onoff=1
eldo3_vol = 1800, onoff=1
aldo1_vol = 3000, onoff=1
aldo3_vol = 3000, onoff=1
find power_sply to end
slave power
dcdca_vol = 900, onoff=1
dcdcb_vol = 0, onoff=0
dcdcc_vol = 0, onoff=0
dcdcd_vol = 900, onoff=1
dcdce_vol = 2100, onoff=1
aldo1_vol = 3000, onoff=1
bldo1_vol = 1800, onoff=1
bldo2_vol = 1800, onoff=1
cldo1_vol = 0, onoff=0
find slave power sply to end
supply=gpio1
axp=axp809, supply=gpio1, vol=2500
reg addr=0x6000b00, value=0x6, pmu_vol=2500
supply=aldo2
axp=axp809, supply=aldo2, vol=1800
reg addr=0x6000b04, value=0x0, pmu_vol=1800
supply=dcdc1
axp=axp809, supply=dcdc1, vol=3000
reg addr=0x6000b08, value=0xa, pmu_vol=3000
supply=bldo1
axp=axp806, supply=bldo1, vol=1800
reg addr=0x6000b0c, value=0x0, pmu_vol=1800
supply=eldo2
axp=axp809, supply=eldo2, vol=1800
reg addr=0x6000b10, value=0x0, pmu_vol=1800
supply=dcdc1
axp=axp809, supply=dcdc1, vol=3000
reg addr=0x6000b14, value=0xa, pmu_vol=3000
supply=gpio0
axp=axp809, supply=gpio0, vol=3000
reg addr=0x6000b18, value=0xa, pmu_vol=3000
supply=dcdc1
axp=axp809, supply=dcdc1, vol=3000
reg addr=0x6000b1c, value=0xa, pmu_vol=3000
supply=dldo2
axp=axp809, supply=dldo2, vol=3000
reg addr=0x8002f00, value=0xa, pmu_vol=3000
supply=eldo3
axp=axp809, supply=eldo3, vol=3000
reg addr=0x8002f04, value=0xa, pmu_vol=3000
config gpio bias voltage finish
no battery, limit to dc
fel key old mode
run key detect
no key found
no key input
dram_para_set start
dram_para_set end
[ 0.892]DRAM: 2 GiB
relocation Offset is: 75b08000
deu_mode1 not exist.
get clock handle by id 36 fail!
get clock handle by id 36 fail!
lcd1.lcd_pwm_freq is ZERO
lcd 2 is not register
screen 0 do not support HDMI TYPE!
screen 2 do not support HDMI TYPE!
smcl’s set manager is NULL
smbl’s set manager is NULL
plugin
screen_id 0 do not support HDMI TYPE!
get hdmi0 failed!
[ 1.195]boot_disp.output_disp=1
[ 1.199]boot_disp.output_type=3
[ 1.202]boot_disp.output_mode=10
[ 1.205]boot_disp.auto_hpd=1
hdmi open
Hdmi_open
Hdmi_hal_video_enable_sync
video_config
workmode = 0
MMC: 2
[ 1.251][mmc]: mmc driver ver 2014-06-17 14:57:30
[ 1.256][mmc]: mmc->host_caps 911
[ 1.260][mmc]: get sdc_odly_25M fail,use default dly 0
[ 1.265][mmc]: get sdc_sdly_25M fail,use default dly 5
[ 1.270][mmc]: get sdc_odly_50M fail,use default dly 5
[ 1.276][mmc]: get sdc_sdly_50M fail,use default dly 4
[ 1.281][mmc]: get sdc_f_max fail,use default sdc_f_max 48000000
[ 1.287][mmc]: PC Bias: 0x06000b08 0x0000000a
[ 1.292][mmc]: SUNXI SD/MMC: 2
[ 1.296][mmc]: mmc 2 old config clk 0
[ 1.309][mmc]: ************Try SD card 2************
[ 1.314][mmc]: mmc 2 cmd 8 timeout, err 100
[ 1.321][mmc]: mmc 2 mmc cmd 8 err 0x00000100
[ 1.325][mmc]: mmc send if cond failed
[ 1.329][mmc]: mmc 2 cmd 55 timeout, err 100
[ 1.335][mmc]: mmc 2 mmc cmd 55 err 0x00000100
[ 1.339][mmc]: send app cmd failed
[ 1.342][mmc]: ************Try MMC card 2************
[ 1.369][mmc]: mmc 2 old config clk 0
[ 1.380][mmc]: mmc 2 old config clk 0
[ 1.390][mmc]: mmc 2 old config clk 0
[ 1.399][mmc]: MID 000088 PSN 1e018122
[ 1.402][mmc]: PNM NCard — 0x4e-43-61-72-64-20
[ 1.407][mmc]: PRV 2.0
[ 1.410][mmc]: MDT m-1 y-2015
[ 1.413][mmc]: MMC ver 4.5
[ 1.416][mmc]: —————mmc->clock 48000000———–
[ 1.421][mmc]: —————mmc->bus_width 4————–
[ 1.427][mmc]: SD/MMC Card: 4bit, capacity: 7475MB
[ 1.432][mmc]: boot0 capacity: 4000KB,boot1 capacity: 4000KB
[ 1.438][mmc]: ************SD/MMC 2 init OK!!!************
[ 1.444]sunxi flash init ok
In: serial
Out: serial
Err: serial
——–fastboot partitions——–
-total partitions:10-
-name- -start- -size-
bootloader : 1000000 1000000
env : 2000000 1000000
boot : 3000000 1000000
system : 4000000 30000000
misc : 34000000 1000000
recovery : 35000000 2000000
cache : 37000000 28000000
metadata : 5f000000 1000000
private : 60000000 1000000
UDISK : 61000000 0
———————————–
base bootcmd=run setargs_nand boot_normal
bootcmd set setargs_mmc
key 0
cant find rcvy value
cant find fstbt value
misc partition found
misc_message->command = 0
to be run cmd=run setargs_mmc boot_normal
WORK_MODE_BOOT
board_status_probe
sunxi_bmp_logo_display
screen_id =1, screen_width =1920, screen_height =1080
[ 1.648]Hit any key to stop autoboot: 0
read boot or recovery all
[ 3.400]sunxi flash read :offset 3000000, 13855176 bytes OK
no signature
[ 3.411]ready to boot
[ 3.414][mmc]: mmc exit start
[ 3.418][mmc]: mmc 2 old config clk 0
[ 3.428][mmc]: mmc 2 old config clk 0
[ 3.440][mmc]: mmc 2 cmd 8 timeout, err 100
[ 3.447][mmc]: mmc 2 mmc cmd 8 err 0x00000100
[ 3.451][mmc]: mmc send if cond failed
[ 3.455][mmc]: mmc 2 cmd 55 timeout, err 100
[ 3.461][mmc]: mmc 2 mmc cmd 55 err 0x00000100
[ 3.465][mmc]: send app cmd failed
[ 3.476][mmc]: mmc 2 exit ok
[ 3.479]
Starting kernel …[sun9i_fixup]: From boot, get meminfo:
Start: 0x20000000
Size: 2048MB
[mcpm_smp_init_cpus] ncores=8
[ 0.000000] Booting Linux on physical CPU 0
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Linux version 3.4.39 ([email protected]) (gcc version 4.6.3 201202014
[ 0.000000] CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c5387d
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instructie
[ 0.000000] Machine: sun9i
[ 0.000000] Memory policy: ECC disabled, Data cache writealloc
[ 0.000000] On node 0 totalpages: 524288
[ 0.000000] free_area_init_node: node 0, pgdat c09c1a00, node_mem_map c127800
[ 0.000000] Normal zone: 1404 pages used for memmap
[ 0.000000] Normal zone: 0 pages reserved
[ 0.000000] Normal zone: 158340 pages, LIFO batch:31
[ 0.000000] HighMem zone: 3204 pages used for memmap
[ 0.000000] HighMem zone: 361340 pages, LIFO batch:31
[ 0.000000] PERCPU: Embedded 8 pages/cpu @c2487000 s11072 r8192 d13504 u32768
[ 0.000000] pcpu-alloc: s11072 r8192 d13504 u32768 alloc=8*4096
[ 0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3 [0] 4 [0] 5 [0] 6 [0] 7
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pa0
[ 0.000000] Kernel command line: console=ttyS0,115200 root=/dev/block/mmcblk8
[ 0.000000] PID hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
[ 0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
[ 0.000000] Memory: 2048MB = 2048MB total
[ 0.000000] Memory: 1670160k/1670160k available, 426992k reserved, 1064956K m
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] vector : 0xffff0000 – 0xffff1000 ( 4 kB)
[ 0.000000] fixmap : 0xfff00000 – 0xfffe0000 ( 896 kB)
[ 0.000000] vmalloc : 0xe7800000 – 0xff000000 ( 376 MB)
[ 0.000000] lowmem : 0xc0000000 – 0xe7000000 ( 624 MB)
[ 0.000000] pkmap : 0xbfe00000 – 0xc0000000 ( 2 MB)
[ 0.000000] modules : 0xbf000000 – 0xbfe00000 ( 14 MB)
[ 0.000000] .text : 0xc0008000 – 0xc08f71dc (9149 kB)
[ 0.000000] .init : 0xc08f8000 – 0xc0948b40 ( 323 kB)
[ 0.000000] .data : 0xc094a000 – 0xc09c4358 ( 489 kB)
[ 0.000000] .bss : 0xc09c709c – 0xc0b461d8 (1533 kB)
[ 0.000000] Preemptible hierarchical RCU implementation.
[ 0.000000] NR_IRQS:544
[ 0.000000] try to syncboot of clk hdmi_slow
[ 0.000000] try to syncboot of clk sdmmc2
[ 0.000000] try to syncboot of clk trace
[ 0.000000] try to syncboot of clk ats
[ 0.000000] try to syncboot of clk uart0
[ 0.000000] try to syncboot of clk gt
[ 0.000000] try to syncboot of clk de
[ 0.000000] try to syncboot of clk hdmi
[ 0.000000] try to syncboot of clk lcd1
[ 0.000000] try to syncboot of clk sdr0
[ 0.000000] try to syncboot of clk cci400
[ 0.000000] try to syncboot of clk pio
[ 0.000000] try to syncboot of clk lradc
[ 0.000000] try to syncboot of clk twd
[ 0.000000] try to syncboot of clk ahb2
[ 0.000000] try to syncboot of clk dma
[ 0.000000] try to syncboot of clk sdram
[ 0.000000] try to syncboot of clk axi1
[ 0.000000] try to syncboot of clk axi0
[ 0.000000] Architected local timer running at 24.00MHz.
[ 0.000000] Switching to timer-based delay loop
[ 0.000000] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 1789s
[ 0.000000] Console: colour dummy device 80×30
[ 0.000239] Calibrating delay loop (skipped), value calculated using timer f)
[ 0.000265] pid_max: default: 32768 minimum: 301
[ 0.000429] Security Framework initialized
[ 0.000452] SELinux: Initializing.
[ 0.000499] SELinux: Starting in permissive mode
[ 0.000582] Mount-cache hash table entries: 512
[ 0.001738] Initializing cgroup subsys debug
[ 0.001756] Initializing cgroup subsys cpuacct
[ 0.001768] Initializing cgroup subsys freezer
[ 0.001810] CPU: Testing write buffer coherency: ok
[ 0.001864] ftrace: allocating 23829 entries in 70 pages
[ 0.047379] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[ 0.047436] Setting up static identity map for 0x2062c5a0 – 0x2062c5f8
[ 0.150592] CPU1: Booted secondary processor
[ 0.150666] CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
[ 0.190655] CPU2: Booted secondary processor
[ 0.190722] CPU2: thread -1, cpu 2, socket 0, mpidr 80000002
[ 0.230774] CPU3: Booted secondary processor
[ 0.230840] CPU3: thread -1, cpu 3, socket 0, mpidr 80000003
[ 0.267632] CPU4: failed to boot: -22
[ 0.307664] CPU5: failed to boot: -22
[ 0.347723] CPU6: failed to boot: -22
[ 0.387787] CPU7: failed to boot: -22
[ 0.387957] Brought up 4 CPUs
[ 0.387970] SMP: Total of 4 processors activated (19200.00 BogoMIPS).
[ 0.388872] devtmpfs: initialized
[ 0.395520] script_init enter!
[ 0.396299] script_init exit!
[ 0.396345] sched: registering cpufreq notifiers for scale-invariant loads
[ 0.397398] pinctrl core: initialized pinctrl subsystem
[ 0.398286] dummy:
[ 0.398774] NET: Registered protocol family 16
[ 0.399323] script_sysfs_init success
[ 0.399509] sunxi_dump_init success
[ 0.399934] sunxi pinctrl probe enter
[ 0.401469] gpiochip_add: registered GPIOs 0 to 447 on device: sunxi-pinctrl
[ 0.403625] sunxi-pinctrl sunxi-pinctrl: initialized sunXi PIO driver
[ 0.404232] axp_pinctrl_probe enter…
[ 0.404414] gpiochip_add: registered GPIOs 1024 to 1031 on device: axp-pinctl
[ 0.404438] mainkey total count : 96
[ 0.404448] mainkey name : product, pin count : 0
[ 0.404458] mainkey name : platform, pin count : 0
[ 0.404468] mainkey name : target, pin count : 0
[ 0.404477] mainkey name : charging_type, pin count : 0
[ 0.404487] mainkey name : key_detect_en, pin count : 0
[ 0.404497] mainkey name : power_sply, pin count : 0
[ 0.404507] mainkey name : slave_power_sply, pin count : 0
[ 0.404517] mainkey name : gpio_bias, pin count : 0
[ 0.404527] mainkey name : card_boot, pin count : 0
[ 0.404537] mainkey name : pm_para, pin count : 0
[ 0.404547] mainkey name : card0_boot_para, pin count : 6
[ 0.404560] mainkey name : card2_boot_para, pin count : 6
[ 0.404573] mainkey name : boot_disp, pin count : 0
[ 0.404584] mainkey name : twi_para, pin count : 2
[ 0.404596] mainkey name : uart_para, pin count : 2
[ 0.404607] mainkey name : jtag_para, pin count : 4
[ 0.404619] mainkey name : clock, pin count : 0
[ 0.404630] mainkey name : dram_para, pin count : 0
[ 0.404640] mainkey name : gmac0, pin count : 16
[ 0.404654] mainkey name : wakeup_src_para, pin count : 3
[ 0.404665] mainkey name : twi0, pin count : 2
[ 0.404675] mainkey name : twi1, pin count : 2
[ 0.404685] mainkey name : twi2, pin count : 2
[ 0.404696] mainkey name : twi3, pin count : 2
[ 0.404706] mainkey name : twi4, pin count : 2
[ 0.404716] mainkey name : uart0, pin count : 2
[ 0.404726] mainkey name : uart1, pin count : 4
[ 0.404737] mainkey name : uart2, pin count : 4
[ 0.404747] mainkey name : uart3, pin count : 4
[ 0.404758] mainkey name : uart4, pin count : 4
[ 0.404768] mainkey name : uart5, pin count : 4
[ 0.404778] mainkey name : spi0, pin count : 4
[ 0.404789] mainkey name : spi1, pin count : 0
[ 0.404798] mainkey name : spi2, pin count : 4
[ 0.404809] mainkey name : spi3, pin count : 7
[ 0.404820] mainkey name : spi_devices, pin count : 0
[ 0.404831] mainkey name : spi_board0, pin count : 0
[ 0.404842] mainkey name : rtp_para, pin count : 0
[ 0.404853] mainkey name : ctp_para, pin count : 0
[ 0.404863] mainkey name : ctp_list_para, pin count : 0
[ 0.404874] mainkey name : tkey_para, pin count : 0
[ 0.404884] mainkey name : motor_para, pin count : 0
[ 0.404894] mainkey name : ths_para, pin count : 0
[ 0.404905] mainkey name : cooler_table, pin count : 0
[ 0.404915] mainkey name : nand0_para, pin count : 19
[ 0.404929] mainkey name : nand1_para, pin count : 19
[ 0.404943] mainkey name : disp_init, pin count : 0
[ 0.404953] mainkey name : lcd0_para, pin count : 29
[ 0.404967] map mainkey [lcd0_para] to pinctrl, map number [2]
[ 0.404983] mainkey name : hdmi_para, pin count : 0
[ 0.404993] mainkey name : pwm0_para, pin count : 1
[ 0.405004] mainkey name : pwm1_para, pin count : 1
[ 0.405015] mainkey name : csi0, pin count : 5
[ 0.405025] mainkey name : csi1, pin count : 0
[ 0.405035] mainkey name : tvout_para, pin count : 0
[ 0.405046] mainkey name : tvin_para, pin count : 0
[ 0.405056] mainkey name : mmc0_para, pin count : 7
[ 0.405067] mainkey name : mmc1_para, pin count : 6
[ 0.405079] mainkey name : mmc2_para, pin count : 11
[ 0.405092] mainkey name : mmc3_para, pin count : 11
[ 0.405105] mainkey name : smc_para, pin count : 0
[ 0.405116] mainkey name : usbc0, pin count : 2
[ 0.405127] map mainkey [usbc0] to pinctrl, map number [2]
[ 0.405139] mainkey name : usbc1, pin count : 1
[ 0.405150] mainkey name : usbc2, pin count : 1
[ 0.405160] mainkey name : usbc3, pin count : 0
[ 0.405171] mainkey name : usb_feature, pin count : 0
[ 0.405181] mainkey name : msc_feature, pin count : 0
[ 0.405192] mainkey name : serial_feature, pin count : 0
[ 0.405203] mainkey name : gsensor_para, pin count : 1
[ 0.405214] mainkey name : gsensor_list_para, pin count : 0
[ 0.405225] mainkey name : gps_para, pin count : 0
[ 0.405235] mainkey name : wifi_para, pin count : 11
[ 0.405247] mainkey name : 3g_para, pin count : 5
[ 0.405259] mainkey name : gy_para, pin count : 1
[ 0.405271] mainkey name : gy_list_para, pin count : 0
[ 0.405283] mainkey name : ls_para, pin count : 1
[ 0.405296] mainkey name : ls_list_para, pin count : 0
[ 0.405308] mainkey name : compass_para, pin count : 0
[ 0.405320] mainkey name : leds_para, pin count : 2
[ 0.405333] mainkey name : bt_para, pin count : 0
[ 0.405343] mainkey name : s_i2s1, pin count : 9
[ 0.405355] mainkey name : audio0, pin count : 3
[ 0.405366] mainkey name : spdif0, pin count : 2
[ 0.405376] mainkey name : s_cir0, pin count : 1
[ 0.405387] mainkey name : cir, pin count : 1
[ 0.405398] mainkey name : pmu1_para, pin count : 0
[ 0.405409] mainkey name : pmu2_para, pin count : 0
[ 0.405419] mainkey name : dvfs_table, pin count : 0
[ 0.405430] mainkey name : vf_table0, pin count : 0
[ 0.405440] mainkey name : vf_table1, pin count : 0
[ 0.405451] mainkey name : Vdevice, pin count : 0
[ 0.405461] mainkey name : s_uart0, pin count : 2
[ 0.405472] mainkey name : s_rsb0, pin count : 2
[ 0.405483] mainkey name : s_jtag0, pin count : 4
[ 0.405494] mainkey name : s_powchk, pin count : 0
[ 0.405505] mainkey name : dram_dvfs_table, pin count : 0
[ 0.405516] mainkey name : dram_scene_table, pin count : 0
[ 0.405525] axp pinctrl driver probe ok
[ 0.408187] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint.
[ 0.408204] hw-breakpoint: maximum watchpoint size is 8 bytes.
[ 0.408819] [sunxi-module]: [sunxi-module.0] probe success
[ 0.409007] Not Found clk pll3 in script
[ 0.409018] Not Found clk pll7 in script
[ 0.409039] script config pll8 to 297 Mhz
[ 0.409078] script config pll10 to 2376 Mhz
[ 0.409087] sunxi_default_clk_init
[ 0.455494] bio: create slab at 0
[ 0.455953] [ARISC] :sunxi-arisc driver v2.00
[ 0.501686] [ARISC] :arisc version: [v0.0.37]
[ 0.501706] [sunxi-module]: arisc register success
[ 0.506468] arisc_dvfs_cfg_vf_table: vf table type [1=vf_table1]
[ 0.506487] arisc_dvfs_cfg_vf_table: freq [L_LV1_freq-0=1200000000]
[ 0.506501] arisc_dvfs_cfg_vf_table: volt [L_LV1_volt-0=1020]
[ 0.506514] arisc_dvfs_cfg_vf_table: freq [L_LV2_freq-1=1104000000]
[ 0.506528] arisc_dvfs_cfg_vf_table: volt [L_LV2_volt-1=960]
[ 0.506541] arisc_dvfs_cfg_vf_table: freq [L_LV3_freq-2=1008000000]
[ 0.506555] arisc_dvfs_cfg_vf_table: volt [L_LV3_volt-2=900]
[ 0.506568] arisc_dvfs_cfg_vf_table: freq [L_LV4_freq-3=0]
[ 0.506581] arisc_dvfs_cfg_vf_table: volt [L_LV4_volt-3=840]
[ 0.506597] arisc_dvfs_cfg_vf_table: freq [B_LV1_freq-0=1800000000]
[ 0.506610] arisc_dvfs_cfg_vf_table: volt [B_LV1_volt-0=1100]
[ 0.506624] arisc_dvfs_cfg_vf_table: freq [B_LV2_freq-1=1608000000]
[ 0.506638] arisc_dvfs_cfg_vf_table: volt [B_LV2_volt-1=1020]
[ 0.506651] arisc_dvfs_cfg_vf_table: freq [B_LV3_freq-2=1416000000]
[ 0.506665] arisc_dvfs_cfg_vf_table: volt [B_LV3_volt-2=960]
[ 0.506678] arisc_dvfs_cfg_vf_table: freq [B_LV4_freq-3=1200000000]
[ 0.506692] arisc_dvfs_cfg_vf_table: volt [B_LV4_volt-3=900]
[ 0.506705] arisc_dvfs_cfg_vf_table: freq [B_LV5_freq-4=0]
[ 0.506718] arisc_dvfs_cfg_vf_table: volt [B_LV5_volt-4=840]
[ 0.908060] [ARISC] :sunxi-arisc driver v2.00 startup succeeded
[ 0.961915] CPU4: Booted secondary processor
[ 0.961981] CPU4: thread -1, cpu 0, socket 1, mpidr 80000100
[ 1.008577] CPU5: Booted secondary processor
[ 1.008644] CPU5: thread -1, cpu 1, socket 1, mpidr 80000101
[ 1.058648] CPU6: Booted secondary processor
[ 1.058719] CPU6: thread -1, cpu 2, socket 1, mpidr 80000102
[ 1.108715] CPU7: Booted secondary processor
[ 1.108784] CPU7: thread -1, cpu 3, socket 1, mpidr 80000103
[ 1.116116] SCSI subsystem initialized
[ 1.117088] usbcore: registered new interface driver usbfs
[ 1.117465] usbcore: registered new interface driver hub
[ 1.117723] usbcore: registered new device driver usb
[ 1.118419] sunxi_i2c_adap_init()1438 – [Nov 20 2014 14:32:34]Sunxi I2C init
[ 1.118446] twi_chan_cfg()350 – [twi0] fetch twi_regulator from sysconfig fad
[ 1.118464] twi_chan_cfg()350 – [twi1] fetch twi_regulator from sysconfig fad
[ 1.118481] twi_chan_cfg()350 – [twi2] fetch twi_regulator from sysconfig fad
[ 1.118497] twi_chan_cfg()350 – [twi3] fetch twi_regulator from sysconfig fad
[ 1.118514] twi_chan_cfg()350 – [twi4] fetch twi_regulator from sysconfig fad
[ 1.120167] Linux video capture interface: v2.00
[ 1.121172] axp22_board axp22_board: AXP (CHIP ID: 0x62) detected
[ 1.126672] axp22_dcdc1: 1600 3400 mV at 3000 mV
[ 1.127162] axp22_dcdc2: 600 1540 mV at 900 mV
[ 1.127619] axp22_dcdc3: 600 1860 mV at 900 mV
[ 1.128042] axp22_dcdc4: 600 2600 mV at 900 mV
[ 1.128476] axp22_dcdc5: 1000 2550 mV at 1500 mV
[ 1.128929] axp22_rtc: 3000 mV
[ 1.129357] axp22_aldo1: 700 3300 mV at 3000 mV
[ 1.129761] axp22_aldo2: 700 3300 mV at 1800 mV
[ 1.130174] axp22_aldo3: 700 3300 mV at 3000 mV
[ 1.130575] axp22_dldo1: 700 4200 mV at 3400 mV
[ 1.130972] axp22_dldo2: 700 3300 mV at 3000 mV
[ 1.131382] axp22_eldo1: 700 3300 mV at 3000 mV
[ 1.131793] axp22_eldo2: 700 3300 mV at 1800 mV
[ 1.132197] axp22_eldo3: 700 3300 mV at 3000 mV
[ 1.132606] axp22_dc5ldo: 700 1400 mV at 900 mV
[ 1.133020] axp22_ldoio0: 700 3300 mV at 3000 mV
[ 1.133437] axp22_ldoio1: 700 3300 mV at 2500 mV
[ 1.133841] axp22_sw0: at 700 mV
[ 1.134243] axp22_dc1sw: at 700 mV
[ 1.134342] axp22_dc1sw: supplied by axp22_dcdc1
[ 1.135098] input: axp22-supplyer as /devices/platform/axp22_board/axp22-sup0
[ 1.138716] now_rest_vol = 100
[ 1.139753] axp15_board axp15_board: AXP (CHIP ID: 0x60) detected
[ 1.144045] axp15_dcdc1: 600 1520 mV at 900 mV
[ 1.144505] axp15_dcdc2: 1000 2550 mV at 1350 mV
[ 1.144946] axp15_dcdc3: 600 1520 mV at 900 mV
[ 1.145407] axp15_dcdc4: 600 3300 mV at 900 mV
[ 1.145838] axp15_dcdc5: 1100 3400 mV at 2100 mV
[ 1.146239] axp15_aldo1: 700 3300 mV at 3000 mV
[ 1.146659] axp15_aldo2: 700 3300 mV at 700 mV
[ 1.147058] axp15_aldo3: 700 3300 mV at 700 mV
[ 1.147457] axp15_bldo1: 700 1900 mV at 1800 mV
[ 1.147543] axp15_bldo1: supplied by axp15_dcdc5
[ 1.148015] axp15_bldo2: 700 1900 mV at 1800 mV
[ 1.148103] axp15_bldo2: supplied by axp15_dcdc5
[ 1.148541] axp15_bldo3: 700 1900 mV at 700 mV
[ 1.148629] axp15_bldo3: supplied by axp15_dcdc5
[ 1.149849] axp15_bldo4: 700 1900 mV at 700 mV
[ 1.149946] axp15_bldo4: supplied by axp15_dcdc5
[ 1.150651] axp15_cldo1: 700 3300 mV at 3000 mV
[ 1.151261] axp15_cldo2: 700 4200 mV at 700 mV
[ 1.151711] axp15_cldo3: 700 3300 mV at 700 mV
[ 1.152109] axp15_sw0: at 700 mV
[ 1.153785] Advanced Linux Sound Architecture Driver Version 1.0.25.
[ 1.155002] Bluetooth: Core ver 2.16
[ 1.155207] NET: Registered protocol family 31
[ 1.155219] Bluetooth: HCI device and connection manager initialized
[ 1.155234] Bluetooth: HCI socket layer initialized
[ 1.155245] Bluetooth: L2CAP socket layer initialized
[ 1.155279] Bluetooth: SCO socket layer initialized
[ 1.155855] cfg80211: Calling CRDA to update world regulatory domain
[ 1.158577] Switching to clocksource arch_sys_counter
[ 1.181363] FS-Cache: Loaded
[ 1.181924] CacheFiles: Loaded
[ 1.205888] [sunxi_hci_sunxi]: sunxi-ehci1(restrict_gpio) is invalid
[ 1.205911] [sunxi_hci_sunxi]: get usb_restrict_flag failed
[ 1.205925] [sunxi_hci_sunxi]: get usb_regulator is failed
[ 1.205945] [sunxi_hci_sunxi]: sunxi-ohci1(restrict_gpio) is invalid
[ 1.205958] [sunxi_hci_sunxi]: get usb_restrict_flag failed
[ 1.205968] [sunxi_hci_sunxi]: get usb_regulator is failed
[ 1.206191] [sunxi_hci_sunxi]: sunxi-ehci2(restrict_gpio) is invalid
[ 1.206209] [sunxi_hci_sunxi]: get usb_restrict_flag failed
[ 1.206221] [sunxi_hci_sunxi]: get usb_regulator is failed
[ 1.206239] [sunxi_hci_sunxi]: sunxi-ohci2(restrict_gpio) is invalid
[ 1.206252] [sunxi_hci_sunxi]: get usb_restrict_flag failed
[ 1.206262] [sunxi_hci_sunxi]: get usb_regulator is failed
[ 1.206300] [sunxi_hci_sunxi]: sunxi-ehci3(restrict_gpio) is invalid
[ 1.206315] [sunxi_hci_sunxi]: sunxi-ehci3(drv vbus) is invalid
[ 1.206329] [sunxi_hci_sunxi]: get usb_restrict_flag failed
[ 1.206340] [sunxi_hci_sunxi]: get usb_regulator is failed
[ 1.206358] [sunxi_hci_sunxi]: sunxi-ohci3(restrict_gpio) is invalid
[ 1.206369] [sunxi_hci_sunxi]: sunxi-ohci3(drv vbus) is invalid
[ 1.206381] [sunxi_hci_sunxi]: get usb_restrict_flag failed
[ 1.206391] [sunxi_hci_sunxi]: get usb_regulator is failed
[ 1.207673] [usb_manager]: CONFIG_USB_SUNXI_USB0_OTG
[ 1.207696] get usbc(0) usb_restrict_flag failed
[ 1.207712] no usbc(0) det_vbus gpio and try to axp det_pin
[ 1.207725] get usbc0(usb_restrict pin) failed
[ 1.208719] [ddrfreq] dram_clk value is 672
[ 1.208730] [ddrfreq] sunxi_dramfreq_max=672000
[ 1.208740] [ddrfreq] dram_type value is 3
[ 1.208751] [ddrfreq] dram_zq value is 0x3f3fdd
[ 1.208762] [ddrfreq] dram_odt_en value is 1
[ 1.208772] [ddrfreq] dram_para1 value is 0x10f40800
[ 1.208782] [ddrfreq] dram_para2 value is 0x1200
[ 1.208793] [ddrfreq] dram_mr0 value is 0x1a50
[ 1.208802] [ddrfreq] dram_mr1 value is 0x40
[ 1.208812] [ddrfreq] dram_mr2 value is 0x10
[ 1.208822] [ddrfreq] dram_mr3 value is 0x0
[ 1.208832] [ddrfreq] dram_tpr0 value is 0x4e214ea
[ 1.208842] [ddrfreq] dram_tpr1 value is 0x4214ad
[ 1.208852] [ddrfreq] dram_tpr2 value is 0x10a75030
[ 1.208863] [ddrfreq] dram_tpr3 value is 0x0
[ 1.208872] [ddrfreq] dram_tpr4 value is 0x0
[ 1.208882] [ddrfreq] dram_tpr5 value is 0x0
[ 1.208892] [ddrfreq] dram_tpr6 value is 0x0
[ 1.208901] [ddrfreq] dram_tpr7 value is 0x0
[ 1.208912] [ddrfreq] dram_tpr8 value is 0x0
[ 1.208921] [ddrfreq] dram_tpr9 value is 0x0
[ 1.208931] [ddrfreq] dram_tpr10 value is 0x0
[ 1.208941] [ddrfreq] dram_tpr11 value is 0x0
[ 1.208951] [ddrfreq] dram_tpr12 value is 168
[ 1.208960] [ddrfreq] sunxi_dramfreq_min=168000
[ 1.208970] [ddrfreq] dram_tpr13 value is 0x23
[ 1.208978] [ddrfreq] warning: disabled!
[ 1.209311] [dsm] use sysconfig
[ 1.209320] [dsm] ———–Dram scene-freq Table————
[ 1.209331] [dsm] scene = 0 frequency = 672000KHz
[ 1.209341] [dsm] scene = 1 frequency = 480000KHz
[ 1.209351] [dsm] scene = 2 frequency = 240000KHz
[ 1.209360] [dsm] scene = 3 frequency = 168000KHz
[ 1.209370] [dsm] scene = 4 frequency = 480000KHz
[ 1.209378] [dsm] ——————————————–
[ 1.219594] [ddrfreq] LV_count value is 3
[ 1.219618] [ddrfreq] —————Dram V-F Table—————
[ 1.219629] [ddrfreq] voltage = 900mv frequency = 672000KHz
[ 1.219640] [ddrfreq] voltage = 840mv frequency = 168000KHz
[ 1.219650] [ddrfreq] voltage = 840mv frequency = 0KHz
[ 1.219660] [ddrfreq] ——————————————–
[ 1.219793] [ddrfreq] last_vdd=900
[ 1.219872] [ddrfreq] __sram_start: 0xc09c5000, __sram_end: 0xc09c7078, __sr8
[ 1.219886] [ddrfreq] sunxi dramfreq probe ok!
[ 1.220374] NET: Registered protocol family 2
[ 1.220683] IP route cache hash table entries: 32768 (order: 5, 131072 bytes)
[ 1.221613] TCP established hash table entries: 131072 (order: 8, 1048576 by)
[ 1.224455] TCP bind hash table entries: 65536 (order: 7, 786432 bytes)
[ 1.226324] TCP: Hash tables configured (established 131072 bind 65536)
[ 1.226337] TCP: reno registered
[ 1.226350] UDP hash table entries: 512 (order: 2, 16384 bytes)
[ 1.226405] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes)
[ 1.226836] NET: Registered protocol family 1
[ 1.227274] RPC: Registered named UNIX socket transport module.
[ 1.227287] RPC: Registered udp transport module.
[ 1.227296] RPC: Registered tcp transport module.
[ 1.227306] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 1.227567] Unpacking initramfs…
[ 1.704637] Freeing initrd memory: 2524K
[ 1.705401] [powernow inf] module init
[ 1.705658] [powernow inf] create class sw_powernow done
[ 1.705671] [pm]aw_pm_init!
[ 1.705683] standby_mode = 1.
[ 1.705692] wakeup src cnt is : 3.
[ 1.705704] [exstandby]leave extended_standby_enable_wakeup_src : event 0x200
[ 1.705716] [exstandby]leave extended_standby_enable_wakeup_src : wakeup_gpi8
[ 1.705728] [exstandby]leave extended_standby_enable_wakeup_src : wakeup_gpi0
[ 1.705740] [exstandby]leave extended_standby_enable_wakeup_src : event 0x200
[ 1.705752] [exstandby]leave extended_standby_enable_wakeup_src : wakeup_gpi8
[ 1.705764] [exstandby]leave extended_standby_enable_wakeup_src : wakeup_gpi0
[ 1.705776] [exstandby]leave extended_standby_enable_wakeup_src : event 0x200
[ 1.705787] [exstandby]leave extended_standby_enable_wakeup_src : wakeup_gpi8
[ 1.705799] [exstandby]leave extended_standby_enable_wakeup_src : wakeup_gpi0
[ 1.705824] [wifi]: select wifi: ap6330 !!
[ 1.706195] [ap6xxx]: module power name axp22_dldo1
[ 1.706208] [ap6xxx]: module power ext1 name axp15_cldo3
[ 1.706219] [ap6xxx]: module power ext2 name axp22_ldoio0
[ 1.706230] [ap6xxx]: sdio_power name
[ 1.706372] [ap6xxx]: ap6xxx module power set by axp.
[ 1.707217] [ap6xxx]: regulator axp22_dldo1 on.
[ 1.707813] [ap6xxx]: regulator axp15_cldo3 on.
[ 1.707898] [ap6xxx]: regulator axp22_ldoio0 on.
[ 1.708062] [ap6xxx]: set cko2 32k clk out
[ 1.708153] [wifi_pm]: wifi gpio init is OK !!
[ 1.708352] sunxi_reg_init enter
[ 1.710077] audit: initializing netlink socket (disabled)
[ 1.710133] type=2000 audit(1.680:1): initialized
[ 1.711746] highmem bounce pool size: 64 pages
[ 1.713799] NTFS driver 2.1.30 [Flags: R/W].
[ 1.713989] fuse init (API version 7.18)
[ 1.715062] msgmni has been set to 1186
[ 1.715109] SELinux: Registering netfilter hooks
[ 1.717522] io scheduler noop registered
[ 1.717535] io scheduler deadline registered
[ 1.717636] io scheduler cfq registered (default)
[ 1.718457] GTBUS_PMU GTBUS_PMU: probed
[ 1.718925] pwm module init!
[ 1.720298] sunxi_uart_init()1446 – Sunxi Uart driver init …
[ 1.720328] sw_uart_get_devinfo()1430 – uart0 fetch uart_regulator from syscd
[ 1.720349] sw_uart_get_devinfo()1430 – uart2 fetch uart_regulator from syscd
[ 1.721163] uart0: ttyS0 at MMIO 0x7000000 (irq = 32) is a SUNXI
[ 1.721187] sw_console_setup()1190 – console setup baud 115200 parity n bitsn
[ 1.914628] console [ttyS0] enabled
[ 4.181803] uart2: ttyS2 at MMIO 0x7000800 (irq = 34) is a SUNXI
[ 4.190427] G2D: drv_g2d_init
[ 4.193909] G2D: Module initialized.major:250
[ 4.206431] loop: module loaded
[ 4.209990] sunxi_hw_init: sunxi debug register driver init
[ 4.216987] sunxi_spi_init()2048 – [Nov 20 2014 14:34:22]Sunxi SPI init …
[ 4.224916] sunxi_spi_chan_cfg()1368 – [spi-0] fetch spi_regulator from syscd
[ 4.233990] sunxi_spi_chan_cfg()1368 – [spi-1] fetch spi_regulator from syscd
[ 4.242999] sunxi_spi_chan_cfg()1368 – [spi-2] fetch spi_regulator from syscd
[ 4.252010] sunxi_spi_chan_cfg()1368 – [spi-3] fetch spi_regulator from syscd
[ 4.261290] tun: Universal TUN/TAP device driver, 1.6
[ 4.266897] tun: (C) 1999-2004 Max Krasnyansky <[email protected]>
[ 4.274114] PPP generic driver version 2.4.2
[ 4.279360] PPP BSD Compression module registered
[ 4.284585] PPP Deflate Compression module registered
[ 4.290931] PPP MPPE Compression module registered
[ 4.296253] NET: Registered protocol family 24
[ 4.301258] PPTP driver version 0.8.5
[ 4.306131] start: sunxi_open_usb_clock
[ 4.310518] end: sunxi_open_usb_clock
[ 4.314816] get usbc0_regulator is failed
[ 4.369327] sunxi_controller_mode:device!
[ 4.373776] sunxi_gadget_init,v1.1
[ 4.378577] sunxi_controller_mode:NULL!
[ 4.382881] start: sunxi_close_usb_clock
[ 4.387241] end: sunxi_close_usb_clock
[ 4.391460] otgc_work_mode:0
[ 4.394828] ehci_hcd: USB 2.0 ‘Enhanced’ Host Controller (EHCI) Driver
[ 4.402177] [sunxi_hci_sunxi]: [sunxi-ehci1]: probe, pdev->name: sunxi-ehci,c
[ 4.413538] [sunxi_hci_sunxi]: [sunxi-ehci1]: open clock, is_open: 0
[ 4.420679] [sunxi_hci_sunxi]: clk_prepare_enable: hci_ahb_gate
[ 4.427256] [sunxi_hci_sunxi]: [sunxi-ehci1]: open hci clock,usbc_no:1, is_o0
[ 4.435586] [sunxi_hci_sunxi]: [sunxi-ehci1]: Set USB Power ON
[ 4.442105] sunxi-ehci sunxi-ehci.1: SW USB2.0 ‘Enhanced’ Host Controller (Er
[ 4.451030] sunxi-ehci sunxi-ehci.1: new USB bus registered, assigned bus nu1
[ 4.459589] sunxi-ehci sunxi-ehci.1: irq 104, io mem 0xf0a00000
[ 4.478689] sunxi-ehci sunxi-ehci.1: USB 0.0 started, EHCI 1.00
[ 4.485266] ehci_irq: highspeed device connect
[ 4.491220] hub 1-0:1.0: USB hub found
[ 4.495397] hub 1-0:1.0: 1 port detected
[ 4.500383] [sunxi_hci_sunxi]: [sunxi-ehci2]: probe, pdev->name: sunxi-ehci,4
[ 4.511714] [sunxi_hci_sunxi]: [sunxi-ehci2]: open clock, is_open: 0
[ 4.518818] [sunxi_hci_sunxi]: [sunxi-ehci2]: open hci clock,usbc_no:2, is_o0
[ 4.527128] [sunxi_hci_sunxi]: [sunxi-ehci2]: Set USB Power ON
[ 4.533623] sunxi-ehci sunxi-ehci.2: SW USB2.0 ‘Enhanced’ Host Controller (Er
[ 4.542568] sunxi-ehci sunxi-ehci.2: new USB bus registered, assigned bus nu2
[ 4.551092] sunxi-ehci sunxi-ehci.2: irq 106, io mem 0xf0a01000
[ 4.568689] sunxi-ehci sunxi-ehci.2: USB 0.0 started, EHCI 1.00
[ 4.576137] hub 2-0:1.0: USB hub found
[ 4.580354] hub 2-0:1.0: 1 port detected
[ 4.585253] [sunxi_hci_sunxi]: [sunxi-ehci3]: probe, pdev->name: sunxi-ehci,c
[ 4.596587] [sunxi_hci_sunxi]: [sunxi-ehci3]: open clock, is_open: 0
[ 4.603740] [sunxi_hci_sunxi]: [sunxi-ehci3]: open hci clock,usbc_no:3, is_o0
[ 4.612069] [sunxi_hci_sunxi]: [sunxi-ehci3]: Set USB Power ON
[ 4.618547] sunxi-ehci sunxi-ehci.3: SW USB2.0 ‘Enhanced’ Host Controller (Er
[ 4.627486] sunxi-ehci sunxi-ehci.3: new USB bus registered, assigned bus nu3
[ 4.636018] sunxi-ehci sunxi-ehci.3: irq 108, io mem 0xf0a02000
[ 4.658710] sunxi-ehci sunxi-ehci.3: USB 0.0 started, EHCI 1.00
[ 4.666156] hub 3-0:1.0: USB hub found
[ 4.670355] hub 3-0:1.0: 1 port detected
[ 4.675430] ohci_hcd: USB 1.1 ‘Open’ Host Controller (OHCI) Driver
[ 4.682454] [sunxi_hci_sunxi]: [sunxi-ohci1]: probe, pdev->name: sunxi-ohci,0
[ 4.693776] [sunxi_hci_sunxi]: [sunxi-ohci1]: open clock, is_open: 0
[ 4.700977] [sunxi_hci_sunxi]: [sunxi-ohci1]: open hci clock,usbc_no:1, is_o1
[ 4.709312] sunxi-ohci sunxi-ohci.1: SW USB2.0 ‘Open’ Host Controller (OHCI)r
[ 4.717830] sunxi-ohci sunxi-ohci.1: new USB bus registered, assigned bus nu4
[ 4.726283] sunxi-ohci sunxi-ohci.1: irq 105, io mem 0xf0a00400
[ 4.793569] hub 4-0:1.0: USB hub found
[ 4.797744] hub 4-0:1.0: 1 port detected
[ 4.802691] [sunxi_hci_sunxi]: [sunxi-ohci3]: probe, pdev->name: sunxi-ohci,0
[ 4.814019] [sunxi_hci_sunxi]: [sunxi-ohci3]: open clock, is_open: 0
[ 4.821134] usb 1-1: new high-speed USB device number 2 using sunxi-ehci
[ 4.828642] [sunxi_hci_sunxi]: [sunxi-ohci3]: open hci clock,usbc_no:3, is_o1
[ 4.837027] sunxi-ohci sunxi-ohci.3: SW USB2.0 ‘Open’ Host Controller (OHCI)r
[ 4.845567] sunxi-ohci sunxi-ohci.3: new USB bus registered, assigned bus nu5
[ 4.854023] sunxi-ohci sunxi-ohci.3: irq 109, io mem 0xf0a02400
[ 4.923578] hub 5-0:1.0: USB hub found
[ 4.927755] hub 5-0:1.0: 1 port detected
[ 4.933073] Initializing USB Mass Storage driver…
[ 4.938877] usbcore: registered new interface driver usb-storage
[ 4.945549] USB Mass Storage support registered.
[ 4.950963] usbcore: registered new interface driver ums-alauda
[ 4.957791] usbcore: registered new interface driver ums-cypress
[ 4.964721] usbcore: registered new interface driver ums-datafab
[ 4.971610] usbcore: registered new interface driver ums_eneub6250
[ 4.978770] usbcore: registered new interface driver ums-freecom
[ 4.985704] usbcore: registered new interface driver ums-isd200
[ 4.992542] usbcore: registered new interface driver ums-jumpshot
[ 4.999585] usbcore: registered new interface driver ums-karma
[ 5.006303] usbcore: registered new interface driver ums-onetouch
[ 5.013805] usbcore: registered new interface driver ums-realtek
[ 5.021011] hub 1-1:1.0: USB hub found
[ 5.025284] usbcore: registered new interface driver ums-sddr09
[ 5.031924] hub 1-1:1.0: 4 ports detected
[ 5.036668] usbcore: registered new interface driver ums-sddr55
[ 5.043502] usbcore: registered new interface driver ums-usbat
[ 5.050505] usbcore: registered new interface driver usbserial
[ 5.057023] usbserial: USB Serial Driver core
[ 5.062697] usbcore: registered new interface driver option
[ 5.069125] USB Serial support registered for GSM modem (1-port)
[ 5.077388] file system registered
[ 5.084868] gadget: Mass Storage Function, version: 2009/09/11
[ 5.091476] gadget: Number of LUNs=3
[ 5.095541] lun0: LUN: removable file: (no medium)
[ 5.101051] lun1: LUN: removable file: (no medium)
[ 5.106466] lun2: LUN: removable file: (no medium)
[ 5.112714] android_bind, serial_unique = 0
[ 5.117372] gadget: android_usb ready
[ 5.122356] mousedev: PS/2 mouse device common for all mice
[ 5.129367] usbcore: registered new interface driver xpad
[ 5.135943] sunxi_rtc_init(736): sunxi rtc device register!
[ 5.142936] rtc_gettime(323): read time 2015-3-19 14:9:29
[ 5.149234] alarm_gettime(460): get alarm time 1970-1-1 1:0:0 success!
[ 5.156754] rtc_gettime(323): read time 2015-3-19 14:9:29
[ 5.163268] rtc0 rtc0: rtc core: registered rtc0 as rtc0
[ 5.169297] sunxi_rtc_probe(690)!
[ 5.173483] sunxi cedar version 0.1
[ 5.177574] [cedar]: install start!!!
[ 5.182498] [cedar]: install end!!!
[ 5.190659] axp22_aldo1: Failed to create debugfs directory
[ 5.210094] axp15_dcdc4: Failed to create debugfs directory
[ 5.217370] device-mapper: ioctl: 4.22.0-ioctl (2011-10-19) initialised: dm-m
[ 5.227004] Bluetooth: HCI UART driver ver 2.2
[ 5.231967] Bluetooth: HCI H4 protocol initialized
[ 5.237285] Bluetooth: HCI Realtek H5 protocol initialized
[ 5.243790] autohotplug_init init ok
[ 5.247790] [cpu_freq] INF: merge_cluster_tables: index: 0, freq: 1800000
[ 5.255359] [cpu_freq] INF: merge_cluster_tables: index: 1, freq: 1704000
[ 5.263485] [cpu_freq] INF: merge_cluster_tables: index: 2, freq: 1608000
[ 5.271047] [cpu_freq] INF: merge_cluster_tables: index: 3, freq: 1512000
[ 5.278583] [cpu_freq] INF: merge_cluster_tables: index: 4, freq: 1416000
[ 5.286251] [cpu_freq] INF: merge_cluster_tables: index: 5, freq: 1320000
[ 5.293886] [cpu_freq] INF: merge_cluster_tables: index: 6, freq: 1200000
[ 5.301538] [cpu_freq] INF: merge_cluster_tables: index: 7, freq: 1104000
[ 5.309139] [cpu_freq] INF: merge_cluster_tables: index: 8, freq: 1008000
[ 5.316677] [cpu_freq] INF: merge_cluster_tables: index: 9, freq: 600000
[ 5.324131] [cpu_freq] INF: merge_cluster_tables: index: 10, freq: 552000
[ 5.331749] [cpu_freq] INF: merge_cluster_tables: index: 11, freq: 504000
[ 5.339374] [cpu_freq] INF: merge_cluster_tables: End, table: e61ef3c0, coun2
[ 5.347783] axp22_dcdc3: Failed to create debugfs directory
[ 5.354004] axp15_dcdc1: Failed to create debugfs directory
[ 5.360263] [cpu_freq] INF: sunxi_cpufreq_init, get cpu frequency from syscoz
[ 5.377569] [cpu_freq] INF: sunxi register cpufreq driver succeed
[ 5.384360] [cpu_freq] INF: sunxi register bL notifier succeed
[ 5.390848] [cpu_freq] INF: sunxi_cpufreq_init: done!
[ 5.396659] [mmc]: SD/MMC/SDIO Host Controller Driver(v1.76 2014-06-17 14:412
[ 5.408138] [mmc]: sunxi_mci_init
[ 5.411947] usb 1-1.2: new full-speed USB device number 3 using sunxi-ehci
[ 5.419638] [mmc]: get mmc0’s sdc_ex_dly_used failed,use default dly
[ 5.426766] [mmc]: get mmc1’s sdc_ex_dly_used failed,use default dly
[ 5.433889] [mmc]: get mmc2’s sdc_ex_dly_used failed,use default dly
[ 5.440970] [mmc]: MMC host used card: 0x7, boot card: 0x4, io_card 2
[ 5.449407] [mmc]: –B-sdc 2 – 48000000
[ 5.454056] [mmc]: sdc2 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timinB
[ 5.464941] [mmc]: sdc2 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timingB
[ 5.474690] [mmc]: sdc2 Probe: base:0xf1c11000 irq:94 sg_cpu:ffdd2000(45c090.
[ 5.485158] [mmc]: –B-sdc 0 – 48000000
[ 5.490029] [mmc]: sdc0 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timinB
[ 5.499902] [mmc]: sdc2 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 tB
[ 5.510654] [mmc]: mclk 0xf6000418 0x8002000f
[ 5.515502] [mmc]: mclk 0xf6000418 0x8002000e
[ 5.520438] [mmc]: sdc0 Probe: base:0xf1c0f000 irq:92 sg_cpu:ffdd1000(463d60.
[ 5.529322] [mmc]: sdc0: no card detected, try to shutdown io voltage.
[ 5.538394] [mmc]: –B-sdc 1 – 48000000
[ 5.543103] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timinB
[ 5.554114] [mmc]: sdc1 Probe: base:0xf1c10000 irq:93 sg_cpu:ffdd0000(463d70.
[ 5.563009] [mmc]: sdc1: no card detected, try to shutdown io voltage.
[ 5.572258] sunxi_leds driver init
[ 5.576119] request gpio230, ret=0
[ 5.579924] trigger_name:heartbeat
[ 5.583716] request gpio241, ret=0
[ 5.587491] trigger_name:cpu0
[ 5.591661] Registered led device: blue:ph21:led1
[ 5.597128] Registered led device: orange:ph20:led2
[ 5.602910] ledtrig-cpu: registered to indicate activity on CPUs
[ 5.610465] [mmc]: *** sunxi_mci_dump_errinfo(L794): smc 2 err, cmd 52, RTO!
[ 5.619417] [mmc]: *** sunxi_mci_dump_errinfo(L794): smc 2 err, cmd 52, RTO!
[ 5.627563] [mmc]: sdc2 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 tB
[ 5.640348] [mmc]: sdc2 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 tB
[ 5.652392] [mmc]: *** sunxi_mci_dump_errinfo(L794): smc 2 err, cmd 8, RTO !
[ 5.660507] *******************Try sdio*******************
[ 5.667404] [mmc]: *** sunxi_mci_dump_errinfo(L794): smc 2 err, cmd 5, RTO !
[ 5.675955] usb 1-1.3: new full-speed USB device number 4 using sunxi-ehci
[ 5.683638] [mmc]: *** sunxi_mci_dump_errinfo(L794): smc 2 err, cmd 5, RTO !
[ 5.692587] [mmc]: *** sunxi_mci_dump_errinfo(L794): smc 2 err, cmd 5, RTO !
[ 5.701487] [mmc]: *** sunxi_mci_dump_errinfo(L794): smc 2 err, cmd 5, RTO !
[ 5.709568] *******************Try sd *******************
[ 5.716380] [mmc]: *** sunxi_mci_dump_errinfo(L794): smc 2 err, cmd 55, RTO!
[ 5.725454] [mmc]: *** sunxi_mci_dump_errinfo(L794): smc 2 err, cmd 55, RTO!
[ 5.734427] [mmc]: *** sunxi_mci_dump_errinfo(L794): smc 2 err, cmd 55, RTO!
[ 5.743444] [mmc]: *** sunxi_mci_dump_errinfo(L794): smc 2 err, cmd 55, RTO!
[ 5.751638] *******************Try mmc*******************
[ 5.757636] [mmc]: sdc2 set ios: clk 400000Hz bm OD pm ON vdd 3.3V width 1 tB
[ 5.768357] [mmc]: sdc2 set ios: clk 400000Hz bm OD pm ON vdd 3.3V width 1 tB
[ 5.778593] [mmc]: sdc2 set ios: clk 400000Hz bm OD pm ON vdd 3.3V width 1 tB
[ 5.789098] [mmc]: sdc2 set ios: clk 400000Hz bm OD pm ON vdd 3.3V width 1 tB
[ 5.802295] [mmc]: sdc2 set ios: clk 400000Hz bm OD pm ON vdd 3.3V width 1 tB
[ 5.817127] input: Tronsmart as /devices/platform/sunxi-ehci.1/usb1/1-1/1-1.1
[ 5.827967] generic-usb 0003:11C0:5500.0001: input: USB HID v1.11 Gamepad [T0
[ 5.839888] usbcore: registered new interface driver usbhid
[ 5.846165] usbhid: USB HID core driver
[ 5.851626] ashmem: initialized
[ 5.855463] logger: created 256K log ‘log_main’
[ 5.860927] logger: created 256K log ‘log_events’
[ 5.866627] [mmc]: sdc2 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 tB
[ 5.877236] logger: created 256K log ‘log_radio’
[ 5.883529] logger: created 256K log ‘log_system’
[ 5.891625] input: MELE RI as /devices/platform/sunxi-ehci.1/usb1/1-1/1-1.3/2
[ 5.902339] [mmc]: sdc2 set ios: clk 25000000Hz bm PP pm ON vdd 3.3V width 1B
[ 5.912867] [mmc]: mclk 0xf6000418 0x8102000e
[ 5.917710] [mmc]: mclk 0xf6000418 0x81020008
[ 5.922807] generic-usb 0003:1915:0196.0002: input: USB HID v1.10 Keyboard [0
[ 5.935316] axp device register ok and device_create_file ok
[ 5.944755] input: MELE RI as /devices/platform/sunxi-ehci.1/usb1/1-1/1-1.3/3
[ 5.955939] generic-usb 0003:1915:0196.0003: input: USB HID v1.10 Mouse [MEL1
[ 5.968364] sunxi_snddaudio_init, line:222
[ 5.972945] sunxi_snddaudio_init, line:228, daudio_used:1
[ 5.979457] soc-audio soc-audio.4: ASoC machine snddaudio should use snd_soc)
[ 5.989008] [mmc]: sdc2 set ios: clk 25000000Hz bm PP pm ON vdd 3.3V width 1B
[ 6.000584] [mmc]: sdc2 set ios: clk 48000000Hz bm PP pm ON vdd 3.3V width 1B
[ 6.011416] [mmc]: mclk 0xf6000418 0x81420508
[ 6.016264] [mmc]: mclk 0xf6000418 0x81410509
[ 6.021257] input: headset as /devices/virtual/input/input4
[ 6.029044] [CODEC] speaker_val type err!
[ 6.037672] asoc: sndvir_audio s_i2s1 mapping ok
[ 6.046539] soc-audio soc-audio.0: ASoC machine sndhdmi should use snd_soc_r)
[ 6.057841] asoc: sndhdmi sunxi-hdmiaudio.0 mapping ok
[ 6.065235] u32 classifier
[ 6.068237] Actions configured
[ 6.072350] [mmc]: sdc2 set ios: clk 48000000Hz bm PP pm ON vdd 3.3V width 8B
[ 6.083264] Netfilter messages via NETLINK v0.30.
[ 6.088563] nf_conntrack version 0.5.0 (16384 buckets, 65536 max)
[ 6.095608] input: MELE RI as /devices/platform/sunxi-ehci.1/usb1/1-1/1-1.3/5
[ 6.105653] mmc0: new high speed MMC card at address 0001
[ 6.112773] ctnetlink v0.93: registering with nfnetlink.
[ 6.118859] NF_TPROXY: Transparent proxy support initialized, version 4.1.0
[ 6.126586] NF_TPROXY: Copyright (c) 2006-2007 BalaBit IT Ltd.
[ 6.133236] generic-usb 0003:1915:0196.0004: input: USB HID v1.10 Device [ME2
[ 6.145101] mmcblk0: mmc0:0001 NCard 7.29 GiB
[ 6.150830] mmcblk0boot0: mmc0:0001 NCard partition 1 4.00 MiB
[ 6.157868] mmcblk0boot1: mmc0:0001 NCard partition 2 4.00 MiB
[ 6.166468] generic-usb 0003:1915:0196.0005: claimed by neither input, hiddew
[ 6.176333] mmcblk0: p1 p2 p3 < p5 p6 p7 p8 p9 p10 p11 p12 >
[ 6.182846] xt_time: kernel timezone is -0000
[ 6.187850] IPv4 over IPv4 tunneling driver
[ 6.192551] mmcblk0: p1 size 12154880 extends beyond EOD, truncated
[ 6.203365] gre: GRE over IPv4 demultiplexor driver
[ 6.208818] ip_gre: GRE over IPv4 tunneling driver
[ 6.215725] ip_tables: (C) 2000-2006 Netfilter Core Team
[ 6.221951] arp_tables: (C) 2002 David S. Miller
[ 6.227150] TCP: cubic registered
[ 6.230956] Initializing XFRM netlink socket
[ 6.235992] NET: Registered protocol family 10
[ 6.242164] Mobile IPv6
[ 6.244909] ip6_tables: (C) 2000-2006 Netfilter Core Team
[ 6.251698] IPv6 over IPv4 tunneling driver
[ 6.260129] NET: Registered protocol family 17
[ 6.265205] mmcblk0boot1: unknown partition table
[ 6.270881] NET: Registered protocol family 15
[ 6.276330] Bluetooth: RFCOMM TTY layer initialized
[ 6.281903] Bluetooth: RFCOMM socket layer initialized
[ 6.287610] Bluetooth: RFCOMM ver 1.11
[ 6.292644] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 6.298648] mmcblk0boot0: unknown partition table
[ 6.304143] Bluetooth: BNEP filters: protocol multicast
[ 6.309965] Bluetooth: HIDP (Human Interface Emulation) ver 1.2
[ 6.316932] *******************mmc init ok *******************
[ 6.323716] L2TP core driver, V2.0
[ 6.327513] PPPoL2TP kernel driver, V2.0
[ 6.332165] VFP support v0.3: implementor 41 architecture 2 part 30 variant 5
[ 6.340699] ThumbEE CPU extension supported.
[ 6.345455] Registering SWP/SWPB emulation handler
[ 6.352945] axp15_bldo2: incomplete constraints, leaving on
[ 6.359277] axp15_bldo1: incomplete constraints, leaving on
[ 6.365712] axp15_aldo1: incomplete constraints, leaving on
[ 6.372004] axp15_dcdc4: incomplete constraints, leaving on
[ 6.378353] axp15_dcdc1: incomplete constraints, leaving on
[ 6.384718] axp22_ldoio1: incomplete constraints, leaving on
[ 6.391106] axp22_dc5ldo: incomplete constraints, leaving on
[ 6.397477] axp22_eldo3: incomplete constraints, leaving on
[ 6.403763] axp22_eldo2: incomplete constraints, leaving on
[ 6.410088] axp22_dldo2: incomplete constraints, leaving on
[ 6.416363] axp22_aldo3: incomplete constraints, leaving on
[ 6.422653] axp22_aldo2: incomplete constraints, leaving on
[ 6.428978] axp22_dcdc5: incomplete constraints, leaving on
[ 6.435252] axp22_dcdc4: incomplete constraints, leaving on
[ 6.441540] axp22_dcdc3: incomplete constraints, leaving on
[ 6.447851] axp22_dcdc1: incomplete constraints, leaving on
[ 6.454240] otg_wakelock_init: No USB transceiver found
[ 6.460385] rtc_gettime(323): read time 2015-3-19 14:9:30
[ 6.466449] rtc0 rtc0: setting system clock to 2015-03-19 14:09:30 UTC (1426)
[ 6.475524] input: sunxi-ths as /devices/virtual/input/input6
[ 6.482577] suxi_ths: Kernel Thermal management registered
[ 6.489251] suxi_ths: Kernel Thermal management registered
[ 6.496143] sunxi_ths_bind : thermal-budget-0
[ 6.500839] ths_zone trip = 60, adjust lower = 0, upper = 1
[ 6.507292] ths_zone trip = 75, adjust lower = 1, upper = 2
[ 6.513548] ths_zone trip = 85, adjust lower = 2, upper = 5
[ 6.519803] ths_zone trip = 95, adjust lower = 5, upper = 9
[ 6.526046] ths_zone trip = 105, adjust lower = 0, upper = 0
[ 6.532398] sunxi_ths_bind : thermal-budget-0
[ 6.537077] ths_zone trip = 105, adjust lower = 0, upper = 9
[ 6.543636] CPU Budget:Register notifier
[ 6.548026] CPU Budget:register Success
[ 6.552328] sunxi-budget-cooling sunxi-budget-cooling: Cooling device regist0
[ 6.567410] ALSA device list:
[ 6.570740] #0: snddaudio
[ 6.573862] #1: sndhdmi
[ 6.577062] Freeing init memory: 320K
[ 6.586000] SELinux: 512 avtab hash slots, 1364 rules.
[ 6.592252] SELinux: 512 avtab hash slots, 1364 rules.
[ 6.598012] SELinux: 1 users, 2 roles, 291 types, 1 bools, 1 sens, 1024 cats
[ 6.606028] SELinux: 84 classes, 1364 rules
[ 6.611474] SELinux: Completing initialization.
[ 6.616640] SELinux: Setting up existing superblocks.
[ 6.622416] SELinux: initialized (dev sysfs, type sysfs), uses genfs_contexts
[ 6.630426] SELinux: initialized (dev rootfs, type rootfs), uses genfs_contes
[ 6.638715] SELinux: initialized (dev bdev, type bdev), not configured for lg
[ 6.647296] SELinux: initialized (dev proc, type proc), uses genfs_contexts
[ 6.655115] SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIs
[ 6.663225] SELinux: initialized (dev devtmpfs, type devtmpfs), uses transits
[ 6.672386] SELinux: initialized (dev debugfs, type debugfs), uses genfs_cons
[ 6.685386] SELinux: initialized (dev sockfs, type sockfs), uses task SIDs
[ 6.693117] SELinux: initialized (dev pipefs, type pipefs), uses task SIDs
[ 6.700829] SELinux: initialized (dev anon_inodefs, type anon_inodefs), not g
[ 6.710979] SELinux: initialized (dev devpts, type devpts), uses transition s
[ 6.719291] SELinux: initialized (dev selinuxfs, type selinuxfs), uses genfss
[ 6.728152] SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIs
[ 6.736279] SELinux: initialized (dev sysfs, type sysfs), uses genfs_contexts
[ 6.896982] type=1403 audit(1426774170.920:2): policy loaded auid=42949672955
[ 6.906479] SELinux: Loaded policy from /sepolicy
[ 6.914726] type=1404 audit(1426774170.940:3): enforcing=1 old_enforcing=0 a5
[ 8.477760] init: could not import file ‘init.sun9i.3gdongle.rc’ from ‘/init’
[ 8.486828] init (1): /proc/1/oom_adj is deprecated, please use /proc/1/oom_.
[ 8.649232] init: /dev/hw_random not found
[ 8.669473] [NAND][NAND]nand init start, nand0_used_flag is 0
[ 8.675863] [NAND]nand_cache_level err! 0[NAND]nand_capacity_level err! 0
[ 8.683430] [NAND]run on A80
[ 8.686651] nand interrupte ch0 irqno: 102 register ok
[ 8.694581] nand interrupte ch1, irqno: 101 register ok
[ 8.700410] [NAND]nand driver is disabled
[ 8.778988] SELinux: initialized (dev cgroup, type cgroup), uses genfs_contes
[ 8.787468] SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIs
[ 8.797030] SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIs
[ 8.805509] SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIs
[ 8.813770] SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIs
[ 8.938770] SELinux: initialized (dev cgroup, type cgroup), uses genfs_contes
[ 8.958788] EXT4-fs (mmcblk0p7): mounted filesystem with ordered data mode. )
[ 8.967860] SELinux: initialized (dev mmcblk0p7, type ext4), uses xattr
[ 8.983573] EXT4-fs (mmcblk0p10): mounted filesystem with ordered data mode.o
[ 8.995499] SELinux: initialized (dev mmcblk0p10, type ext4), uses xattr
[ 9.138715] fs_mgr: Running /system/bin/e2fsck on /dev/block/by-name/cache
[ 9.204200] e2fsck: e2fsck 1.41.14 (22-Dec-2010)
[ 9.209416] e2fsck: /dev/block/by-name/cache: clean, 12/40960 files, 5257/16s
[ 9.227482] EXT4-fs (mmcblk0p10): mounted filesystem with ordered data mode.1
[ 9.238540] SELinux: initialized (dev mmcblk0p10, type ext4), uses xattr
[ 9.260689] EXT4-fs (mmcblk0p1): ext4_orphan_cleanup: deleting unreferenced 9
[ 9.270693] EXT4-fs (mmcblk0p1): ext4_orphan_cleanup: deleting unreferenced 7
[ 9.280417] EXT4-fs (mmcblk0p1): ext4_orphan_cleanup: deleting unreferenced 4
[ 9.290038] EXT4-fs (mmcblk0p1): 3 orphan inodes deleted
[ 9.295936] EXT4-fs (mmcblk0p1): recovery complete
[ 9.317902] EXT4-fs (mmcblk0p1): mounted filesystem with ordered data mode. o
[ 9.329727] SELinux: initialized (dev mmcblk0p1, type ext4), uses xattr
[ 9.458705] fs_mgr: Running /system/bin/e2fsck on /dev/block/by-name/UDISK
[ 9.477312] e2fsck: e2fsck 1.41.14 (22-Dec-2010)
[ 9.482498] e2fsck: /dev/block/by-name/UDISK: clean, 851/378256 files, 83181s
[ 9.501309] EXT4-fs (mmcblk0p1): mounted filesystem with ordered data mode. c
[ 9.513823] SELinux: initialized (dev mmcblk0p1, type ext4), uses xattr
[ 9.719649] [DISP]disp_module_init
[ 9.725111] [DISP]disp_probe
[ 9.728469] [DISP] IEP_Deu_Init,line:216: deu_mode1 not exist.
[ 9.748739] [DISP] lcd_panel_parameter_check,line:379: get lcd1para lcd_ul
[ 9.757366] [DISP] disp_lcd_gpio_init,line:2071: lcd 2 is not register
[ 9.768723] [DISP] disp_init_hdmi,line:492: screen 0 do not support HDMI !
[ 9.777046] [DISP] disp_init_hdmi,line:492: screen 2 do not support HDMI !
[ 9.786245] [DISP] disp_init_connections,line:133: smbl’s set manager is L
[ 9.794539] [DISP] disp_init_connections,line:139: capture’s set manager L
[ 9.803063] [DISP] disp_init_connections,line:145: smcl’s set manager is L
[ 9.811346] [DISP]Fb_Init
[ 9.814390] disp_init.disp_composer_mode = 1
[ 9.819224] [DISP] parser_disp_init_para,line:130: fetch script data displ
[ 9.830053] [DISP] parser_disp_init_para,line:143: invalid screen0_output0
[ 9.838631] [DISP] parser_disp_init_para,line:147: fetch script data displ
[ 9.849469] [DISP] parser_disp_init_para,line:208: fetch script data displ
[ 9.859419] [DISP] parser_disp_init_para,line:213: fetch script data displ
[ 9.870538] [DISP] parser_disp_init_para,line:218: fetch script data displ
[ 9.880393] [DISP] parser_disp_init_para,line:223: fetch script data displ
[ 9.890506] sunxi_map_kernel ok, phys_addr=0x88000000, size=0xfd2000, virt_a0
[ 9.918151] [DISP]disp_probe finish
[ 9.922283] [DISP]capture_module_init
[ 9.927423] [DISP]capture_probe
[ 9.931124] [DISP]capture finish
[ 9.934733] [DISP]disp_module_init finish
[ 9.965793] [LCD]lcd_module_init
[ 9.970461] [LCD]lcd_module_init finish
[ 9.997550] [HDMI] debug to check 111 !!
[ 10.002469] [DISP] disp_get_hdmi,line:41: screen_id 0 do not support HDMI!
[ 10.010908] [DISP] bsp_disp_set_hdmi_func,line:1316: get hdmi0 failed!
[ 10.202788] axp22_dcdc2: Failed to create debugfs directory
[ 10.209257] Set gpu pll clock successfully
[ 10.213902] Set gpu core clock successfully
[ 10.218643] Set gpu mem clock successfully
[ 10.223353] Set gpu axi clock successfully
[ 10.231542] Sunxi init successfully
[ 10.287729] usbcore: registered new interface driver uvcvideo
[ 10.294162] USB Video Class driver (v1.1.1)
[ 10.316458] sun fd version 0.5
[ 10.320197] [fd]: install start!!!
[ 10.338753] open_clk:fd_clk_rate = 320000000
[ 10.345330] register fd_early_suspend @ probe handle!
[ 10.350973] [fd]: install end!!!
[ 10.408295] init: /dev/hw_random not found
[ 10.436732] binder: 1550:1550 transaction failed 29189, size 0-0
[ 10.445161] init: cannot find ‘/system/etc/install-recovery.sh’, disabling ”
[ 10.514887] keyname:ctp_para subname:ctp_power_ldo ,get error!
[ 10.522520] keyname:ctp_para subname:ctp_power_ldo_vol ,get error!
[ 10.529688] keyname:ctp_para subname:ctp_power_io ,get error!
[ 10.536368] keyname:ctp_para subname:ctp_wakeup ,get error!
[ 10.544786] get sysconfig para erro!
[ 10.549398] get sysconfig para erro!
[ 10.554023] get_device_para_value:get subname:bmg160_gyr error! val.val:0
[ 10.554106] ir_fetch_sysconfig_para: IR power key type err!
[ 10.568183] get_detect_list: script_get_item err.support_number = 1.
[ 10.568192] input: sunxi-ir as /devices/virtual/input/s_cir0
[ 10.581737] get sysconfig para erro!
[ 10.585745] ctp_wakeup: !!!!gpio data 0
[ 10.679209] [ap6xxx]: get power regulator failed.
[ 10.684577] gpio ap6xxx_wl_regon set val 1, act val 1
[ 10.703075] get sysconfig para erro!
[ 10.712580] SELinux: initialized (dev mmcblk0p2, type vfat), uses genfs_conts
[ 10.790280] [ap6xxx]: sdio wifi power state: on
[ 10.795411] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timingB
[ 10.795564] =========== WLAN placed in POWER ON ========
[ 10.839793] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 tB
[ 10.850165] [mmc]: mclk 0xf6000414 0x80000000
[ 10.855045] [mmc]: mclk 0xf6000414 0x8002000e
[ 10.932906] [mmc]: *** sunxi_mci_dump_errinfo(L794): smc 1 err, cmd 52, RTO!
[ 10.942191] [mmc]: *** sunxi_mci_dump_errinfo(L794): smc 1 err, cmd 52, RTO!
[ 10.950456] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 tB
[ 10.963477] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 tB
[ 10.975679] [mmc]: *** sunxi_mci_dump_errinfo(L794): smc 1 err, cmd 8, RTO !
[ 10.983798] *******************Try sdio*******************
[ 10.990478] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 tB
[ 11.016658] mmc2: queuing unknown CIS tuple 0x80 (2 bytes)
[ 11.024411] mmc2: queuing unknown CIS tuple 0x80 (3 bytes)
[ 11.032205] mmc2: queuing unknown CIS tuple 0x80 (3 bytes)
[ 11.041594] mmc2: queuing unknown CIS tuple 0x80 (7 bytes)
[ 11.131482] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 tB
[ 11.141871] [mmc]: sdc1 set ios: clk 48000000Hz bm PP pm ON vdd 3.3V width 1B
[ 11.152865] [mmc]: mclk 0xf6000414 0x8102000e
[ 11.157822] [mmc]: mclk 0xf6000414 0x81010009
[ 11.218360] [mmc]: sdc1 set ios: clk 48000000Hz bm PP pm ON vdd 3.3V width 4B
[ 11.232241] mmc2: new high speed SDIO card at address 0001
[ 11.241487] bcmsdh_register: Linux Kernel SDIO/MMC Driver
[ 11.247770] bcm_wlan_get_oob_irq enter.
[ 11.252505] gpio [355] map to virq [3] ok
[ 11.264008] F1 signature OK, socitype:0x1 chip:0x4330 rev:0x4 pkg:0x0
[ 11.273213] DHD: dongle ram size is set to 294912(orig 294912) at 0x0
[ 11.281960] dhdsdio_probe: Disable prop_txstatus
[ 11.292325] wl_create_event_handler(): thread:wl_event_handler:6e9 started
[ 11.293075] tsk Enter, tsk = 0xe4b213d8
[ 11.308639] p2p0: P2P Interface Registered
[ 11.313409] dhd_attach(): thread:dhd_watchdog_thread:6f3 started
[ 11.320694] dhd_attach(): thread:dhd_dpc:6f6 started
[ 11.326332] dhd_attach(): thread:dhd_sysioc:6f8 started
[ 11.335580] Broadcom Dongle Host Driver: register interface [wlan0] MAC: 00:3
[ 11.344904] *******************sdio init ok*******************
[ 11.353413]
[ 11.353415] Dongle Host Driver, version 1.88.45.3 (r420671)
[ 11.353418] Compiled in drivers/net/wireless/bcmdhd on Nov 20 2014 at 14:34:0
[ 11.369425] [ap6xxx]: get power regulator failed.
[ 11.374780] gpio ap6xxx_wl_regon set val 0, act val 0
[ 11.480430] [ap6xxx]: sdio wifi power state: off
[ 11.485589] =========== WLAN placed in RESET ========
[ 11.513690] Bluetooth: MSM Sleep Mode Driver Ver 1.2
[ 11.628863] usbcore: registered new interface driver asix
[ 11.760527] usbcore: registered new interface driver qf9700
[ 11.811282] usbcore: registered new interface driver MOSCHIP usb-ethernet drr
[ 11.836297] usbcore: registered new interface driver rtl8150
[ 11.858831] usbcore: registered new interface driver cdc_ether
[ 11.894074] eth0: Use random mac address
[ 12.029990] init: property ‘sys.powerctl’ doesn’t exist while expanding ‘${s’
[ 12.039192] init: powerctl: cannot expand ‘${sys.powerctl}’
[ 12.045390] init: property ‘sys.sysctl.extra_free_kbytes’ doesn’t exist whil’
[ 12.058375] init: cannot expand ‘${sys.sysctl.extra_free_kbytes}’ while writ’
[ 12.073160] android_usb: already disabled
[ 12.077941] init: using deprecated syntax for specifying property ‘sys.usb.cd
[ 12.089841] init: using deprecated syntax for specifying property ‘sys.usb.cd
[ 12.092187] adb_open
[ 12.092792] mtp_bind_config
[ 12.092803] ep_matches, wrn: endpoint already claimed, ep(0xe6104e40, 0xe619)
[ 12.092809] ep_matches, wrn: endpoint already claimed, ep(0xe6104d80, 0xe619)
[ 12.092848] adb_bind_config
[ 12.092854] ep_matches, wrn: endpoint already claimed, ep(0xe6104e40, 0xe619)
[ 12.092860] ep_matches, wrn: endpoint already claimed, ep(0xe6104d80, 0xe619)
[ 12.092866] ep_matches, wrn: endpoint already claimed, ep(0xe6104c00, 0xe619)
[ 12.092873] ep_matches, wrn: endpoint already claimed, ep(0xe6104e40, 0xe619)
[ 12.092879] ep_matches, wrn: endpoint already claimed, ep(0xe6104d80, 0xe619)
[ 12.129230] SELinux: initialized (dev fuse, type fuse), uses genfs_contexts
[email protected]:/ $ [ 13.010043] SELinux: initialized (dev tmpfs, type tms
[ 13.283012] 0xf6000008 = 0x8104361c, line:322, freq:22579200
[ 20.964560] healthd: battery l=100 v=0 t=30.0 h=2 st=5 c=0 chg=a
[ 20.976156] request_suspend_state: wakeup (3->0) at 20947478678 (2015-03-19 )
[ 21.052168] [DISP] disp_get_hdmi,line:41: screen_id 0 do not support HDMI!
[ 21.061336] [DISP] bsp_disp_hdmi_check_support_mode,line:1286: get hdmi0 !
[ 21.144959] lowmemorykiller: lowmem_shrink: convert oom_adj to oom_score_adj:
[ 21.152974] lowmemorykiller: oom_adj 0 => oom_score_adj 0
[ 21.159030] lowmemorykiller: oom_adj 1 => oom_score_adj 58
[ 21.165169] lowmemorykiller: oom_adj 2 => oom_score_adj 117
[ 21.171412] lowmemorykiller: oom_adj 3 => oom_score_adj 176
[ 21.177648] lowmemorykiller: oom_adj 9 => oom_score_adj 529
[ 21.183892] lowmemorykiller: oom_adj 15 => oom_score_adj 1000
[ 21.481535] gmac0: probed
[ 21.484552] gmac0 gmac0: eth0: eth0: PHY ID 001cc915 at 0 IRQ poll (gmac0-0:)
[ 21.667414] acc_open
[ 21.669901] acc_release
[ 21.824964] warning: `dhcpcd’ uses 32-bit capabilities (legacy support in us)
[ 24.791259] init: sys_prop: permission denied uid:1003 name:service.bootanit
[ 25.984490] [rfkill]: rfkill set power 1
[ 25.989153] gpio ap6xxx_bt_regon set val 0, act val 0
[ 26.215339] [rfkill]: rfkill set power 0
[ 26.223544] gpio ap6xxx_bt_regon set val 1, act val 1
[ 27.488929] PHY: gmac0-0:00 – Link is Up – 1000/Full
[ 27.545207] [BT_LPM] bluesleep_get_uart_port: bluesleep_get_uart_port get ua4
[ 28.601716] CPU7: shutdown
[ 29.600726] CPU6: shutdown
[ 30.091375] CPU5: shutdown
[ 30.592182] CPU3: shutdown
[ 31.100346] CPU2: shutdown
[ 31.852206] [BT_LPM] bluesleep_hostwake_task: hostwake line change
[ 31.888716] eth0: no IPv6 routers present
[ 33.468549] rtc_settime(239): time to set 2015-3-19 14:9:57
[ 33.534309] rtc_settime(283): set time 2015-3-19 14:9:57 success!
[ 33.541562] rtc_gettime(323): read time 2015-3-19 14:9:57
[ 34.100198] CPU1: shutdown
[ 34.699673] CPU4: shutdown

You can find more documentation in English and Chinese on Cubieboard4 documentation page, which includes videos, images, Android and Linux source code, tools, and more.

The next step for me will probably be to do some performance testing in Android, especially with regards to Ethernet and USB 3.0 storage performance, and see if any progress has been made compared to the disappointing results I got with A80 OptimusBoard last year. I’ll also evaluate Linux performance on the board, and possibly tried out the SDK.

Calaos is an Open Source Home Automation Suite for Raspberry Pi, Allwinner A10/A20 and x86 Platforms

March 9th, 2015 No comments

Calaos is a Linux based home automation software released under GPLv3 license that works on Raspberry Pi, some Allwinner platforms like Cubiebaord 1/2, Mele A1000(G)/A2000, as well as x86 / amd64 hardware platforms that allows you control switches & lights in the rooms of your home or office, control your music, and manage security cameras.. The developers have recently released Calaos v2.0, the first stable release, so it’s a good time to have a look.

Calaos WebApp

Calaos WebApp

The software stack is comprised of 6 main components:

  • Calaos Server – Daemon that exports the state of the house via a JSON protocol. It can currently manage the following hardware components and protocols:
    Calaos Mobile

    Calaos Mobile

    • Wago’s PLC, with digital or analog I/O, DALI or DMX light bus
    • IPX800 web relay board
    • GCE Electronics Eco Devices used to monitor power consumption.
    • Web API
    • 1-Wire, X10
    • Zibase I/O
    • GPIO (Linux based GPIO, for direct use of RaspberryPI GPIO header) ;
    • Squeezebox
    • Nabaztag (Karotz). That’s a connected Wi-Fi enabled rabbit 🙂
    • CCTV IP (Axis, Mjpeg…)
  • Calaos Home –  Touchscreen interface to control the home, developed with EFL.
  • Calaos WebApp –  Web based interface implemented in HTML5 and using Angular JS and Bootstrap. Shown in screenshot above.
  • Calaos OS –  Linux distribution based on Openembedded pre-loaded with Calaos Server, Calaos Home and Calaos WebApp and relevant tools. That’s what you’ll need to get started easily, as you just need to download the image for your hardware.
  • Calaos Mobile – Qt5/QML app for Android and iOS tablet and smartphones that allows you to control Calaos remotely. However, only a subset of functions are available compared to Calaos Home.
  • Calaos Installer – Contrary to what the name implies, this Qt5 app does not install Calaos, but allows you to configure Calaos Server remotely, by adding, removing or modifying inputs/outputs on your PC, instead of editing configuration files manually. It also supports LUA scripts
Calaos Installer

Calaos Installer

You can have a better look at the user interface in the video section of the website, and I’ve also included a short video showing the Raspberry Pi connected to a 10″ touchscreen LCD  running Calaos Home.

You can find more details, and documentation on Calaos website, including a Quick Start Guide for the Raspberry Pi. The source code is available on Calaos github account.