Archive

Posts Tagged ‘aosp’

96Boards Compliant HiKey 960 ARM Cortex A73 Development Board is Now Available for $239

April 26th, 2017 22 comments

The most powerful 96boards development board – HiKey 960 – has finally been launched, and can be purchased for $239 on Aliexpress, Amazon US, Switch Sense (Japan), Seeed Studio, or All Net (Germany).

HiKey 960 specifications have not changed much since we found out about the board:

  • SoC – Kirin 960 octa-core big.LITTLE processor with 4x ARM Cortex A73 cores @ up to 2.4 GHz, 4x Cortex A53 cores @ up to 1.8 GHz, and a Mali-G71 MP8 GPU
  • System Memory – 3GB LPDDR4 SDRAM (PoP)
  • Storage – 32GB UFS 2.1 flash storage + micro SD card slot
  • Video Output / Display Interface – 1 x HDMI 1.2a up to 1080p, 1x 4-lane MIPI DSI connector
  • Connectivity – Dual band 802.11 b/g/n/ac WiFi and Bluetooth 4.1 with on-board antennas
  • USB – 2x USB 3.0 type A host ports, 1x USB 2.0 type C OTG port
  • Camera – 1x 4-lane MIPI CSI, 1x 2-lane MIPI CSI
  • Expansion
    • PCIe Gen2 on M.2 Key connector
    • 40 pin low speed expansion connector with +1.8V, +5V, DC power, GND, 2x UART, 2x I2C, SPI, I2S, 12x GPIO
    • 60 pin high speed expansion connector: 4L MIPI DSI, 2L+4L MIPI CSI, 2x I2C, SPI (48M), USB 2.0
  • Misc – LEDs for WiFi & Bluetooth, 4x user LEDs, power button, copper heatsink for CPU
  • Power Supply –  8V-18V/2A via 4.75/1.7mm power barrel (EIAJ-3 Compliant); 12V/2A power supply recommended; PMU: Hi6421GWCV530, Hi6422GWCV211, Hi6422GWCV212;
  • Dimensions – 85mm x 55mm

The board officially supports Android Open Source Project (AOSP) with Linux 4.4. Binary images, and instructions to build from source are available in the Documentation page. You’ll also find the hardware manual and schematics over there. There’s no firm commitment to a Linux distributions release, but based on comments from the launch video (embedded below), there could be some later on, and Linux mainline is also being worked on. Stocks are currently limited so you can buy one or two boards, but larger quantities would require a longer lead time. LeMaker also mentions kits with power supply, mini PCIe card… being available soon.

The video will eventually be uploaded to YouTube, but in the meantime I’ve embedded the Facebook video.

HiKey 960 Development Board Powered by Hisilicon Kirin 960 Cortex A73/A53 Processor To Sell for $239

March 4th, 2017 19 comments

LeMaker is about to launch a successor to Hikey board with a new 96Boards compliant development board with HiKey 960 featuring the powerful Hisilicon Kirin 960 processor found in Huawei Mate 9 smartphone, as well as 3GB LPDDR4 memory, 32GB UFS storage, HDMI, USB 3.0 ports and so on.

Hikey 960 board specifications:

  • SoC – Kirin 960 octa-core big.LITTLE processor with 4x ARM Cortex A73 cores @ up to 2.4 GHz, 4x Cortex A53 cores @ up to 1.8 GHz, and a Mali-G71 MP8 GPU
  • System Memory – 3GB LPDDR4 SDRAM
  • Storage – 32GB UFS flash storage + micro SD card slot
  • Video Output / Display Interface – 1 x HDMI 1.4 up to 1080p, 1x 4-lane MIPI DSI connector
  • Connectivity – Dual band 802.11 b/g/n/ac? WiFi and Bluetooth 4.1 with two antennas
  • USB – 2 x USB 3.0 type A host ports, 1x USB 2.0 type C OTG port
  • Camera – 1x 4-lane MIPI CSI, 1x 2-lane MIPI CSI
  • Expansion
    • PCIe Gen2 on M.2 Key connector
    • 40 pin low speed expansion connector with +1.8V, +5V, DC power, GND, 2x UART, 2x I2C, SPI, I2S, 12x GPIO
    • 60 pin high speed expansion connector: 4L MIPI DSI, 2L+4L MIPI CSI, 2x I2C, SPI (48M), USB 2.0
  • Misc – LEDs for WiFi & Bluetooth, 4x user LEDs, power button, reset button
  • Power Supply –  8V-18V/2A via 4.75/1.7mm power barrel (EIAJ-3 Compliant); 12V/2A power supply recommended; PMU: Hi6421GWCV530, Hi6422GWCV211, Hi6422GWCV212;
  • Dimensions – 85mm x 55mm

The board will support Android Open Source Project (AOSP) and Linux. Some instructions  to build AOSP from source code and get started with the board can be found on Github, and a Wiki page has also been setup, but it’s basically empty right now, except for a short comparison between Hikey (620) and Hikey 960. Linux support will be done via Linaro Reference Platform Build (RPB), which should mean Debian support.

You may be able to find more information on LeMaker’s Hikey 960 product page, and the board is currently listed for $239 on Lenovator, but out of stock.

Thanks to Theguyuk for the tip.

Linaro Home Group Releases “AOSP” Android TV for Hikey Board

February 3rd, 2017 1 comment

The Linaro Home Group (LHG) was setup to work on “open source software for ARM-based set top boxes, smart TVs, media boxes, TV dongles and home gateway products”, and after having worked on OP-TEE (Open Portable Trusted Environment Execution) firmware as one of their first endeavors, they’ve now ported Android Open Source Project (AOSP) Android TV to 96Boards compliant Hikey board.

Click to Enlarge

Android TV is based on Android, but adds the TV Input Framework and the Lean Back APIs with the user interface designed for larger displays. LHG has not changed the apps and higher level software from AOSP, but they’ve made sure it could work on Hikey board by working on the Linux drivers and Android user space stack to make sure the Live TV App and Android TV Channel Service implemented in AOSP can work properly on the hardware.

If you want to try it on your own Hikey board, you can do so by building AOSP Android TV from sources.

Hikey Board – Click to Enlarge

Now that does not mean any random Chinese TV box manufacturer will be able to ship TV boxes running “Android TV” instead of Android for phone or tablet, as AOSP lacks Google Mobile Services (GMS), and Android TV solutions must be licensed and approved by Google, and must pass various tests such as the Android Compatibility Test Suite (CTS), the Compatibility Definition Document (CDD) and various audio & video performance criteria. But at least most of the low level software should be taken care of, so it would simplify and speed up development.

Android TV Sample App – Click to Enlarge

Hikey board hardware complies with 96Boards “Consumer Edition” specifications, but lacks typical TV box features such as an IR receiver, which is why 96Boards TV Platform specifications were published last year. LHG probably started with Hikey because development has been going on for a longer time, and the platform is more mature, but one of the next steps will be to work on 96Boards TV Platform compliant boards such as HiSilicon Poplar board.

LeMaker HiKey 96Boards Board Sells for $29.70 (Promo)

November 29th, 2016 18 comments

[Update: The promo is over back!]

You’d think Cyber Monday should be over by now, but ITEAD Studio still has a clearance with real 70% discount, as 96Boards hardware compliant LeMaker Hikey board is now sold for just $29.70 instead of the usual $99 price.

96boards-discountA quick reminder of the specifications:

  • SoC – HiSilicon Kirin 620 octa core Cortex A53 processor @ 1.2 GHz with ARM Mali-450MP4 GPU
  • System Memory – 2 GB LPDDR3 @ 800 MHz
  • Storage – 8GB eMMC + micro SD slot
  • Video Output / Display – HDMI up to 1080p, MIPI-DSI interface
  • Connectivity – 802.11 a/b/g/n Wi-Fi, Bluetooth 4.1 LE (WL1835MOD module)
  • USB – 2x USB 2.0 host ports, 1x micro USB OTG
  • Camera – MIPI CSI interface
  • Debugging – UART header), unpopulated 10-pin JTAG header (back)
  • Expansion headers
    • 40-pin LS (Low Speed) Expansion connector – UART, I2C, 12x GPIOs, SPI, PCM, PWM, SYS_DCIN, 1.8V, 5V, and GND,
    • 60-pin HS (High Speed) Expansion connector – SDIO, MIPI_DSI, MIPI_CSI, I2C, USB 2
  • Misc – Power button, jumper for power/boot/user, LEDs for Wi-Fi/Bt, and 4x User LED
  • Power Supply – 8-18V @ 3A as per 96Boards specs via 4.5/1.7mm power jack. Hi6553V100 PMU
  • Dimensions – 85 x 55 mm

You’ll be able to run Android and Debian images provided by Linaro. The board is also one the rare development board to be officially supported by AOSP.

You may also be interested in LeMaker Guitar quad core ARM Cortex A9 board sold for $13.50 with 1GB RAM.

Thanks to Nanik for the tip.

$79 HiSilicon Poplar is the First 96Boards TV Platform Compliant Board

August 30th, 2016 37 comments

At the end of last month I wrote about 96Boards TV Platform specifications, and noticed Hisilicon had one such boards, but details were sparse. Linaro has now officially unveiled HiSilicon Poplar board, the first 96Boards TV Platform board, sold for $79 + shipping on Aliexpress.

Click to Enlarge

Click to Enlarge

Poplar board specifications:

  • SoC – HiSilicon Hi3798C V200 quad-core 64-bit ARM Cortex-A53 CPU up to 2.0 GHz per core with ARM Mali-T720 GPU supporting OpenGL ES 3.1/3.0/2.0/1.1/1.0, OpenVG 1.1, OpenCL 1.2/1.1 Full Profile, RenderScript, and Microsoft DirectX 11 FL9_3
  • Memory – 1 or 2 GB DDR3 (Specs are conflicting depending where you look)
  • Storage – 8GB eMMC flash + micro SD card slot
  • Video Output – HDMI 2.0a with HDCP 2.2 up to 4K @ 60Hz
  • Video Decoding – H.265/HEVC Main/Main10 and VP9 up to 4K @ 60 fps
  • Audio Output – HDMI, optical S/PDIF, 3.5mm audio jack
  • Connectivity – Gigabit Ethernet, 802.11 b/g/n/ac WiFi and Bluetooth
  • USB – 1x USB 3.0 port, 2xUSB 2.0 host ports, 1x micro USB OTG port for console
  • Expansion
    • 40-pin Low Speed (LS) connector with UART, SPI, I2S, 2x I2C, 12x GPIO
    • 1x PCIe 2.0 interface
    • 12-pin Smart Card connector (unpopulated)
    • 24-pin connector for tuner (unpopulated)
  • Debugging – 1x JTAG port, 1x UART connector
  • Misc – IR receiver, boot selection jumper, LEDs, power button
  • Security – ARM Trustzone, trusted execution environment, secure boot, secure storage, secure video path, DRM, DCAS
  • Power Supply – 12V / 2A
  • Dimensions – 160 x 120 mm (96Boards TV platform specs)
  • Temperature Range – 0°C to +70°C

Hisilicon Hi3798C V200 is quite an interesting processor with many high speed and media interfaces, and while they used most of them, they did not leverage support for SATA. Luckily, there’s still USB 3.0 and PCIe if you need faster storage.

Hi3798C V200 Block Diagram - Click to Enlarge

Hi3798C V200 Block Diagram – Click to Enlarge

The board is sold with Android 5.1.1, but it will be the main development platform of Linaro Digital Home Group which aims “to continue creating optimized, high-performance secure media solutions for ARM on both Linux- and Android-based platforms. Licensees of the RDK (Linux) will be able to create Open Embedded/Yocto RDK builds for Poplar. The Poplar board will also serve as a common development platform for Android TV (AOSP) as well as for TVOS-based STB solutions used in China.”

In the meantime, you may find some information on Tocoding Poplar page, or access directly the hardware user manual. Eventually, 96Boards Poplar page will be a good place to look.

96Boards Hikey Development Board is Now Officially Supported in AOSP

March 11th, 2016 2 comments

Hikey is a one of the first 96Boards compliant development board manufactured by either LeMaker in China and CircuitCo in the US, and while the hardware requirements of 96Boards specifications are rather easy to meet, the software requirements including “bootloader (open source), accelerated graphics support (binary or open source), a Linux kernel buildable from source code based from mainline, or the latest Google-supported Android kernel version” are much harder to comply with. Linaro had a very good news for Linaro Connect Bangkok as they announced Hikey board was supported in Android Open Source Project (AOSP).

Lemaker_Hikey_Android_Open_Source_ProjectSo that means Hikey board will run the latest version of Android like Google Nexus devices, with the advantage of also getting more recent devices.

If you want to build an Android image from AOSP just retrieve the source code:

Grab & extract vendors binaries for Hikey from Google.com. and complete the build:

And you can find the instructions to load the resulting image to the board on Android.com Devices page.

If you are interested in finding out how Linaro managed to do this feat, and what kind of challenges they had to overcome, you may want to watch Linaro Connect “HiKey and AOSP collaborative experience” presentation.

You can also download the presentation slides for a quick look. Some interesting tidbits in the talk include that Google plans to use Linaro’s Linux 4.4 experimental tree, and Rockchip is also working on doing porting some hardware to AOSP.

Linaro Connect 2016 Bangkok Schedule – March 7-11, 2016

February 15th, 2016 No comments

Linaro Connect Bangkok (BKK16) will take place on March  7 – 11, 2016, and the schedule is now available for the 5-day event with keynotes and sessions. Whether you’re going to attend or not, it’s always interesting to check the schedule to find out what’s going on in terms of ARM Linux development.

Linaro_Connect_2016The five days will focus on work by different Linaro groups, but really sessions are mixed for any given day, and I’ve created a virtual schedule for each day with available information, as Linaro has become a little more closed to the outside than when it was launched a few years ago.

Monday 7 – LITE (Linaro IoT & Embedded Group)

  • 1400 – 14:50 – Evolution of the Reference Software Platform Project

The Reference Software Platform lead project was introduced in Linaro Connect San Francisco 2015, and since then it evolved and matured with the completion of the first tree big milestones (the 15.10, 15.12 and 16.03 releases). This session will revisit the work done as part of the previous releases, covering the projects that were incorporated through the process and our vision for the future milestones.

  • 15:00 – 15:50 – Budget Fair Queueing heuristics in the block layer 

The Budget Fair Queue (BFQ) I/O scheduler in the Linux block layer is a new heuristic approach to improving user-perceived latencies in block accessible media such as hard disks, SSD and (e)MMC and SD cards. Linaro is investing and helping in pushing this development ahead. The session describes what the BFQ patch set does and how.

  • – A Gentle Introduction to Trusted Execution and OP-TEE

Smart connected devices such as mobile phones, tablets and Digital TVs are required to handle data with strong security and confidentiality requirements. A “Trusted Execution Environment” (TEE) provides an environment for processing data securely, protected from normal platform applications. This talk is intended as an introduction to Trusted Execution, and the open-source Trusted Execution Environment OP-TEE in particular. It introduces the GlobalPlatform TEE Specifications, explains how Trusted Execution is implemented by ARM TrustZone and OP-TEE, and outlines how trusted boot software manages the secure boot of an ARM platform. Finally, it gives some pointers on how to get started with OP-TEE.

Tuesday 8 – LHG & LMG (Linaro Digital Home Group and MObile Group)

  • – PlayReady OPTEE Integration with Secure Video Path

This presentation provides a current view of the Security work performed in LHG. The focus is on hardware protected DRM integrated with OP TEE, creation of a Secure Data Path coupled with the Open Content Decryption Module, and the lessons learned from integrating third party libraries into trusted applications.

  • AOSP RAM reduction project retrospective

The Goal: Reduce AOSP memory requirements without hurting performance too badly.

What was tried:

  • Update toolchains
  • Make use of new features in updated toolchains
  • Split libraries into smaller parts
  • Tweak settings
  • Replace the memory allocator
  • Chromium with V4L2 playback – is it ready today?

This BOF session will analyze architectural challenges migrating Chromium from the desktop to embedded devices. The impacts of different GPU libraries with their respective limitations will be discussed. We welcome audience participation in an open discussion on the V4L2 adaptation in Chromium.

  • – What’s broken on ARM64?

The arm64 port is now in pretty good shape with most things ported and built in distros. However we know that there is plenty of software that is not optimised and some may not actually work at all. Please come along and moan about anything you have found which doesn’t work as well on arm64 as it does on x86. We (Linaro, ARM and Debian) want your feedback on where to direct effort next.

  • How to generate power models for EAS and IPA (without talking to a hardware engineer)

Generating a specific power model for the platform is a pre-requirement for deploying EAS (Energy Aware Scheduler) and IPA (Intelligent Power Allocation). This makes understanding power models and how to generate parameters for them a useful skill. In this session we demonstrate how to use workload automation to gather power data from a board. We will then describe how to derive rough values for the EAS and IPA power models using nothing but this easily observable data. We will not rely on any information provided by OEM or SoC vendor.

  • – Upstreaming 201

This session is an advanced course on Linux kernel upstreaming fundamentals. The course covers how the arm-soc kernel tree is maintained and why that is important to ARM Linux kernel developers. The focus of the course is the explanation of the detailed mechanics of creating and posting patch series to upstream mailing lists for several common cases. Annotated session content is made up of previously upstreamed ARM support captured from emails to the kernel mailing lists. The target audience is both software engineers and engineering managers preparing to upstream software into the kernel. The topic requires a solid background in software configuration management terminology and the git SCM tool as well as a good technical understanding of the Linux kernel itself.

Wednesday 9 – LEG (Linaro Enterprise Group)

This presentation provides the background for the requirements of the latest 96Boards TV Platform specification. It describes the range of set-top features that can be delivered and focuses on the key software and firmware support.

  • ARMv8 Server Lab Users BoF

The ARMv8 Server Lab has been up and running for more than a year since the inception in the late Fall of 2014 and helped continuously those who need server-grade hardware to verify their software, from the kernel to user applications. In this BoF at BKK16, the Server Lab users get together for the first time to review what we have accomplished so far and share knowledge obtained from our experiences in the Lab. Constructive feedback from the users should shape the direction of the Lab in the coming months of 2016. The BoF structure is as follows: possibly a few short talks from the users, 10-15 minutes each, will be given after the introductory address of the status of the Lab from the managers, followed by a discussion between the attendees.

  • – ILP32 Performance on AArch64

ILP32 is a programming model that may be useful on AArch64 systems for performance and also for legacy code with 32-bit data size assumptions. We combined ILP32 support from upstream projects with the LEAP distribution to enable experimentation with this model. This talk discusses the relative benchmark performance of the LP64 and ILP32 programming models under AArch64.

  • The tool called Auto-Tuned Optimization System (ATOS)

ATOS is an Auto Tuning Optimization System that is able to find automatically the best performance/size tradeoff from a build system and a training application. The input of ATOS tools are a build command and a run command. From the build command, ATOS will infer an internal build configuration that it will run with different sets of compiler options. These build configurations are executed with the run command from which code size and performance will be extracted.

From the set of build configurations that ATOS explores, one can extract the preferred trade-off between code size and performance. The extracted build configuration can be archived and replayed later in order to generate the optimized executable without any modification into the initial build system.

The nice property of ATOS is that NO modification of the sources or the makefiles are needed. ATOS can work on any large/deep project, as soon as the compiler used is gcc or LLVM under Linux.

  • – Integrating and controlling embedded devices in LAVA

Previous introductory tutorials on LAVA have focused on virtual platforms. This is an end-to-end tutorial as a basis to evaluate LAVA with one or more embedded targets using U-Boot. It integrates both a physical bootloader device with a stand-alone installation of LAVA, along with a simple PDU for target power control which is based on off-the-shelf Arduino components and fully integrated with pdudaemon. It covers device requirements, device configuration for 32- and 64-bit platforms, use of lavatool, tftp, pduclient and logging via the LAVA web interface and /var.

  • – ARMv8 Firmware Mini-Summit

Current state of ACPI on ARM
Support/backing for a longer term organization:  mailing lists ([email protected]), web sites, further meetings…
Use of _DSD device properties
Follow-up on others items from the last meeting (mostly promised documents).

Thursday 10 – LNG (Linaro Networking Group)

  • – Android HAL Consolidation Status

Update on progress and discuss next steps on Android HAL consolidation Lead Project

  • Applications on ODP

Session discussion on various opensource applications on ODP and their implementations. Applications to be discussed include NGiNX, TRex, OFP

  • – Device Tree Standardization

Announcement of the process to update the old specs and kernel documentation into a new Device Tree Specification

  • – Workspace setup tips and tricks 

The complexity of the tools and working environments is very high in IT area, especially in software engineering field. Thanks to Linux’s freedom of choice and flexibility it gets even higher. Due to the amount of time needed for learning all those bits of technology, it is not practically possible to set up an ideal workspace without talking to others and learning the results of their research. So, let’s come together and discuss hardware/software setups for our workspaces and learn from each other.

Friday 11 – 96Boards and Community

  • – Kernel and bootloader consolidation and upstreaming

An update to the state of reference platform kernel and bootloader and a discussion about the patch-inclusion policy. We’ll also cover roadmap plans. Participation is invited if you have ideas on how we can make it easy to use the reference platform kernel for your development projects.

  • 96Boards mezzanine hardware ecosystem

An overview of the work being done to support the mezzanine hardware ecosystem. Will cover the tools available, the boards that have already been created, and materials provided to support mezzanine board designers.

Materials require having registered to Linaro Connect BKK16, but several PDF slides have been uploaded to Linaro slideshare, you can get a peak if one subject interests you.

Anybody can attend, but you’ll need to purchase tickets ranging from 500 GBP ($726) for one day to 1,600 GBP ($2323) for the full week, unless you are a student,work in academia, or open source projects connected with ARM development, in which case you may get a free ticket.

Linaro Releases the First (Alpha) Version of the 96Boards Reference Software Platform

November 9th, 2015 13 comments

Linaro’s 96Boards initiative was launched at the beginning of the year with Hikey board, and beside the hardware specifications, 96Boards also has some software requirements that include support for “bootloader (open source), accelerated graphics support (binary or open source), a Linux kernel buildable from source code based from mainline, or the latest Google-supported Android kernel version, or the last two LTS kernels, and one of more of the following operating systems: Android, Debian/Ubuntu, Fedora/Red Hat, or an OpenEmbedded/Yocto build of a Linux distribution”.

Click to Enlarge

Click to Enlarge

In order to achieve this goal, Linaro introduced the Reference Software Platform for 96Boards, and they’ve now pushed the first Alpha release for Hikey and DragonBoard 410c boards. The release includes a bootloader, the Linux kernel, Debian and AOSP with firmware, source code, and documentation.

Some highlights of the Reference Software Platform 15.10 Alpha release include:

  • CE Debian RPB (Reference Platform Build)
    • Debian 8.2 “Jessie”
    • Linux 4.3 kernel with additional patches
    • OpenJDK 8 included by default
    • 96Boards artworks and default settings
  • CE AOSP RPB (Hikey board only)
    • AOSP Android Marshmallow 6.0
    • Linux 3.18 based kernel

CE refers to the consumer edition of 96Boards specifications, as there’s also an Enterprise Edition (EE), which is not covered by this release.

You can find documentation, including how to build your own image on 96Boards Wiki on Gihub. You can interact with 96Boards community on the forums, the bug tracker, or #96boards on IRC.

If you want to find out more of the Software Reference Lead Project, you can watch the Linaro Connect presentation below (~42 minutes), and/or download the slides.

The next release is planned for December 2015 (15.12 release), and should include:

  • Have both boards using a single kernel tree/branch and a single kernel binary
  • Better understanding about the upstream gaps
  • Adding support for CE AOSP for Dragonboard410c (with freedreno)
  • Adding support for CE OE/Yocto
  • Enterprise Edition

The Enterprise Edition will likely run on AMD Opteron A1100 96Boards.