Archive

Posts Tagged ‘linaro’

Linaro 14.09 Release with Kernel 3.17 and Android 4.4.4

September 27th, 2014 No comments

Linaro 14.09 has just been released with Linux kernel 3.17-rc4 (baseline), Linux 3.10.54 & 3.14.19 (LSK), and Android 4.4.2 & 4.4.4.

Linaro has kept working on their member boards such as IFC6410 (Qualcomm), D01 (Huawei/Hisilicon), Ardnale (Samsung), and Juno (ARM). They’ve also announced they’ll change the tools to build GCC by using cbuild2 instead of cbuild1 for next release, and they’ve enabled a build with gcov (for code coverage analysis) which may mean they’ll work on reducing the kernel size by getting rid off unused code. I’ve also noticed the Arndale and Arndale Octa Ubuntu images are now based on Linux LSK with Mali GPU support since last month.

Here are the highlights of this release:

  • Linux Linaro 3.17-rc4-2014.09
    • GATOR version 5.19
    • updated topic from Qualcomm LT (ifc6410 board support) and HiSilicon LT
    • updated Versatile Express ARM64 support (FVP Base and Foundation models, Juno) from ARM LT.
    • updated Versatile Express patches from ARM LT
    • updated LLVM topic (follows the community llvmlinux-latest branch)
    • Big endian support (the 2014.05 topic version rebased to 3.17 kernel)
    • config fragments changes – added gcov config fragment, disabled DRM_EXYNOS_IOMMU to work around boot failure on Arndale
  • Linaro Toolchain Binaries 2014.09
    • based on GCC 4.9 and updated to latest Linaro TCWG releases: Linaro GCC 4.9-2014.09, Linaro binutils 2.24-2014.09, and Linaro GDB 7.8-2014.09.
    • This will be the last release done with cbuild1 and crosstool-ng. Next releases will be done with cbuild2. Official support for very old host environments will be dropped.
  • Linaro builds of AOSP 14.09 built with Linaro GCC 4.9-2014.09.
  • Linaro OpenEmbedded 2014.09
    • integrated Linaro GCC 4.9-2014.09, Linaro binutils 2.24-2014.09, integrated Linaro GDB 7.8-2014.09.
    • imported Linaro eglibc 2.19 into meta-linaro after OE-core switched to glibc 2.20
    • fixed shadow securetty for Qualcomm and STMicroelectronics SoCs
    • upstreaming – fixed libpng on aarch64 (neon symbol), updated PM QA to 0.4.14, updated libunwind to include aarch64 support
  • Linaro Ubuntu 14.09
    • added linux-tools (perf standalone, splitted from kernel build)
    • updated packages: Juno firmware 0.8.1, LSK 3.10.55/3.14.19 and linux-linaro 3.17-rc4 kernels.
  • A gcov enabled build has been added
  • Linaro builds of the Android NDK have been updated to current upstream sources and current Linaro toolchain component releases.
  • Standalone Android toolchain binary builds now use Linaro binutils for improved armv8 support.

You can visit https://wiki.linaro.org/Cycles/1409/Release for a list of known issues, and further release details about the LEB, LMB (Linaro Member Builds), and community builds, as well as Android, Kernel, Graphics, Multimedia, Landing Team, Platform, Power management and Toolchain components.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

Android TV Overview – Linaro Connect US 2014

September 17th, 2014 No comments

Google announced Android TV and ADT-1 devkit last June, as the company wants to bring user-friendly Android user-experience to TVs, set-top boxes and game consoles. Mark Gregotski, head of the Linaro Digital Home Group (LHG), has provided a technical overview of Android TV during the on-going Linaro Connect US 2014. You find a summary of yesterday sessions on Linaro’s blog, and the even will last until Friday, where several demos will be showcased.

Android_TV_Goals

SoC companies currently involved in Android TV include Nvidia, Marvell, Qualcomm, Mediatek, Intel, Broadcom, and ST micro, so none of usual Chinese Android TV Box players (Rockchip, Amlogic, AllWinner…) are represented. Android (for smartphone) currently support video playback but you may experience dropped frame from time to time, where in the STB market requirements are not stringent. For example, NTT is said to only allow one frame dropped per month! So Android TV aims to improve video playback. Some of the features related to Android TV includes: VP9/H.265 codecs, 4K support, NDK media APIs, TV input framework, improved AV sync, cast receiver (DIAL protocol, Chromecast functionality), 64-bit secure environment, OpenGL ES 3.1 support, Android Extension Pack, subtitle / closed captions enhancements, etc.

The TV input framework will gather several sources for example Cable, Satellite, IPTV, and Terrestrial video input into one single user interface, for example to display a unified EPG, where the user does not even need to be aware of the source. Android TV uses Exoplayer with support for MPEG DASH and Smooth Streaming, and you can find the source code on github. For PayTV, DRM will also be an important part of Android TV with support for Level 1 Widevine and Playready DRM.

The presentation slide are available here.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

Linaro 14.08 Release with Kernel 3.16 and Android 4.4.4

September 2nd, 2014 No comments

I’m a little late for that one, as Linaro 14.08 was released last Thursday. Nevertheless, this release features Linux kernel 3.16 (baseline), Linux 3.10.52 (LSK), and Android 4.4.4.

As usual Linaro has worked on member hardware such as Qualcomm based IFC6410 and ARM Juno &Vexpress boards. They’ve also committed changes for LLVM, big Endian, and added a workload generator tool (rt-app) to the Ubuntu and Android image. This tool has been developed and used by the power management working group, presumably to measure and optimize power consumption under various loads.

Here are the highlights of this release:

  • Linux Linaro 3.16-2014.08
    • GATOR version 5.19 (new version)
    • updated topic from Qualcomm LT (ifc6410 board support)
    • updated Versatile Express ARM64 support (FVP Base and Foundation models, Juno) from ARM LT (Landing Team)
    • updated Versatile Express patches from ARM LT
    • updated LLVM topic (follows the community llvmlinux-latest branch)
    • Big endian support (the 2014.05 topic version rebased to 3.16 kernel)
    • config fragments changes: CONFIG_DEBUG_INFO=y added to linaro-base.conf. This is needed to get the debug package containing vmlinux to be built, and vmlinux is required to run perf.
  • Linaro Toolchain Binaries 2014.08 – Based on GCC 4.9, and updated to latest Linaro TCWG releases:
    • Linaro GCC 4.9-2014.08
    • Linaro EGLIBC 2.19-2014.08
    • Linaro binutils 2.24-2014.08
    • Linaro GDB 7.8-2014.08
  • Linaro Android 14.08 – Built with Linaro GCC 4.9-2014.08
  • Linaro OpenEmbedded 2014.08
    • integrated Linaro GCC 4.9-2014.08, Linaro EGLIBC 2.19-2014.08, Linaro binutils 2.24-2014.08, and Linaro GDB 7.8-2014.08
    • added rt-app (contributed from Power Management WG)
    • updated GATOR to 5.19,  LSK kernels, and QEMU to 2.1.0
    • fixed boot wrapper build
    • upstreaming:
      • fixed kexec-tools
      • fixed udev startup script to fix mysql launch failure
      • updated PM QA to 0.4.12
      • fixed PHP build
      • fixed hugetlbfs
  • Linaro Ubuntu 14.08
    • added rt-app
    • updated packages: GATOR 5.19, LSK 3.10.52/3.14.16 and linux-linaro 3.16 kernels.
  • KVM ARMv8 Continuous Integration and Testing is completed
  • Make debug symbols available for Versatile Express ALIP image

You can visit https://wiki.linaro.org/Cycles/1408/Release for a list of known issues, and further release details about the LEB, LMB (Linaro Member Builds), and community builds, as well as Android, Kernel, Graphics, Multimedia, Landing Team, Platform, Power management and Toolchain components.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

How to Build and Run Android L 64-bit ARM in QEMU

August 23rd, 2014 12 comments

Most people can’t afford Juno Cortex A57/A53 development board, and mobile processors based on the latest 64-bit ARM cores are only expected by early 2015. But thanks to a small team at Linaro, you can now build and run Android L 64-bit ARM in the latest version of QEMU that supports Aarch64. Alex Bennée, an engineer working for Linaro, wrote a blog post in Linaro’s Core Dump blog explaining the Android emulator is actually based on QEMU,  the differences compared to mainline QEMU, the work they’ve done on Android L at Linaro, and most importantly, provided the basic steps showing how to build and try Android L 64-bit ARM (ARMv8) in QEMU. I’ve just done that, but unfortunately, albeit the builds complete, I could not manage to start Android L in QEMU yet. [Update: working now]. If you want to give it a try, you’ll need a Linux PC, and patience, as it may take about one day to retrieve the source code, and build everything from source.

Android_L_64-bit_ARM_QEMU

I’ve done all this in a computer running Ubuntu 14.04 with an AMD FX8350 processor and 16 GB RAM.

First, you’ll need to install an ARM 64-bit toolchain, some dependencies, and tools:

sudo apt-get install gcc-aarch64-linux-gnu build-essentials git bison zlib1g-dev \
libglib2.0-dev libpixman-1-dev gperf android-tools-adb vncviewer

The next step is to cross-compile a Linux 3.10 kernel for Android:

mkdir -p ~/edev/linaro
git clone https://git.linaro.org/people/christoffer.dall/linux-android.git
cd linux-android
git checkout ranchu-linaro-beta1

There’s a bug include the current version of the toolchain in Ubuntu 14.04 (https://bugs.launchpad.net/linaro-linux-baseline/+bug/1258013) which prevents the build to complete. You can either remove CONFIG_DEBUG_INFO=Y in arch/arm64/configs/ranchu_defconfig (I did that), or update your toolchain. Let’s complete the build:

ARCH=arm64 make ranchu_defconfig
ARCH=arm64 make CROSS_COMPILE=aarch64-linux-gnu- -j8

Now you need to build the Android Open Source Project (AOSP). If you haven’t done so, you’ll have to install the repo tool:

mkdir ~/bin
PATH=~/bin:$PATH
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo

Then get AOSP source code (master as below, or l-preview branch):

cd ..
mkdir AOSP
repo init -u https://android.googlesource.com/platform/manifest
repo sync

The last step can take a few hours depending on your internet connection to Google servers.
Now download and apply a patch made by Linaro:

wget http://people.linaro.org/~christoffer.dall/linaro-devices.tar.gz
tar -xvf linaro-devices.tar.gz

Possibly configure git:

git config --global user.email "[email protected]"
git config --global user.name "Your Name"

You need to apply a patch for qemu:

pushd system/core
wget http://people.linaro.org/~alex.bennee/android/android-init-tweaks.diff
patch -p1 < android-init-tweaks.diff 
popd

And build Android L for ARMv8:

source build/envsetup.sh
lunch ranchu-userdebug
m -j8

The last step will again take a while. It took my machine 2 or 3 hours, and the total time was actually a bit more than than as my PC suffered two thermal shutdowns during the build, and I had to restart the build twice. The last time, I decided to underclock my CPU to 3.4 GHz, and the build went through.

The last step before running Android L is to build QEMU:

cd ..
git clone https://git.linaro.org/people/peter.maydell/qemu-arm.git
cd qemu-arm
git checkout ranchu-linaro-beta1
make -j8

Builds should now all be successfully complete. We just need to create some symlinks helping to shorten qemu command line, start the ADB server, and run QEMU:

cd ..
ln -s linux-android/arch/arm64/boot/ ranchu-kernel
ln -s AOSP/out/target/product/ranchu/ ranchu-build
adb start-server
./qemu-arm/aarch64-softmmu/qemu-system-aarch64 -cpu cortex-a57 -machine type=ranchu -m 4096 \
-kernel ./ranchu-kernel/Image -append 'console=ttyAMA0,38400 keep_bootcon' -monitor stdio \
-initrd ranchu-build/ramdisk.img -drive index=2,id=userdata,file=ranchu-build/userdata.img \
-device virtio-blk-device,drive=userdata -device virtio-blk-device,drive=cache \
-drive index=1,id=cache,file=ranchu-build/cache.img -device virtio-blk-device,drive=system \
-drive index=0,id=system,file=ranchu-build/system.img -netdev user,id=mynet \
-device virtio-net-device,netdev=mynet -show-cursor

That’s the output I get:

QEMU 2.0.50 monitor - type 'help' for more information
console on port 5554, ADB on port 5555
VNC server running on `127.0.0.1:5900'

So it’s quite possible there’s a problem with adb, but Google did not help, and I failed to go further. More detailed instructions will soon be posted in Linaro Wiki, so I may be able to find out where I made a mistake once it’s posted.

Finally, start vncviewer to access Android user’s interface:

vncviewer 127.0.0.1:5009

Here’s a screenshot of the “About Device” menu in Android L 64-bit ARM running in QEMU.
Android_64-bit_ARM_Qemu

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

Interview with Allwinner Regarding their Linaro Membership

August 21st, 2014 14 comments

Since Allwinner has joined the Linaro Digital Home Group earlier this year, many people, including myself, have wondered what it means in terms of Linux support, and the engagement with the open source community. Following up on an idea from a regular reader, I’ve decided to asked a few questions to Ben-El Baz, marketing manager at Allwinner, and Linaro contact for Allwinner, which he kindly answered, and accepted to be published on CNX Software.

AllWinner_Linaro

  • CNXSoft: Why did Allwinner decide to join Linaro, and especially the Digital Home Group?
    Allwinner: One of our company’s goals is to be a technology leader.  It’s ambitious but not too far-fetched given the background of our leadership and engineering team.  There’s an extremely talented group of guys behind the scenes here!

    Leading is difficult unless you’re involved in collaborative organizations like Linaro that work on new technology.  Joining Linaro is an opportunity for us to grow and develop new technology together with other leading companies.  We’ve actually been trying to find the right time to join Linaro for over a year.  The Home Group was a perfect entry point; since the end of last year we’ve invested more resources into our home entertainment (OTT) division.  Our roadmap has added many new home sector-specific SoCs as well.

    Joining Linaro is also a continuation of our open strategy.  We’ve tried to be as open as possible since joining the app processor space; we were one of the first low-cost vendors to fully support the open source hardware community through partners like CubieTech, OLinuXino, pcDuino, Merrii, and more.  I’m sure I’m forgetting someone, please don’t be mad!

  • CNXSoft: There are three levels of membership for companies at Linaro: Core member, Club member, and Group member. AllWinner joined Linaro as a Group member, which as I understand is a limited membership, and leads to several questions:
    1. Will Allwinner primarily have an observatory role in the Digital Home Group, or will the company be actively engaged?
      Allwinner: Joining an international, collaborative engineering organization is new to us.  We’ve mostly been observing up to this point, but we’re trying to get more involved.  Getting more involved means our engineers more closely following Linaro’s roadmap and thinking about new projects we could bring into the Home group.  We’ve already brought up some ideas within the group.
    2. Will the work done in the Digital Home Group focus mainly on higher level applications, or will some work be done on the kernel and drivers as well,  specifically to the parts relating to Allwinner, or in other words will there be engineers at Linaro working on code specific to Allwinner?
      Allwinner:
      Still doing work planning.  Happy to share more details after Connect.  Have already done some ground work to support upcoming projects though.  Welcome any ideas from the community as well.
  • CNXSoft: I understand there’s no Allwinner Landing Team at Linaro, so there won’t be engineering builds targeting Allwinner hardware released by Linaro. Does Allwinner plan to eventually put more resources into Linaro?
    Allwinner:
    We’re more resource-limited compared to other larger Linaro members but still able to make appropriate engineering commitments.  We’re thinking about increasing our contribution over time – this type of collaboration is still very new to us.
  • CNXSoft: Do you expect the Linaro membership to affect the way the company approaches open source development? For example,  like many silicon vendors, Allwinner develop their own SDK (Linux,U-boot, etc..) in house, and release a vendor tree to direct customers, but it appears many companies are seeing the benefit of committing code to mainline (kernel.org), and there’s a clear trend in that direction. Now Allwinner mainline support is mainly performed by linux-sunxi community, so I’m wondering if Allwinner has any interest in getting involved in this area?
    Allwinner:
    I think there will always be a split software support focus – one towards productization and one towards mainline Linux support. Recently we started a more formal engagement with the linux-sunxi community; hopefully this will enable us to better support developers. Mainlining is important to us but needs some focus. It’d help to hear what the community wants. Which Allwinner SoCs would you like to see with mainline support? With which modules supported? In which kernel version (realistically!)? Why?

They also told me more details should be available after Linaro Connect USA next month.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

Linaro 14.07 Release with Linux Kernel 3.16 and Android 4.4

August 1st, 2014 No comments

Linaro 14.07 has just been released with Linux Kernel 3.16-rc6 (baseline), Linux Kernel 3.10.50 (LSK), and Android 4.4.4.

This month, Linaro has continued development on Juno 64-bit ARM development board, as well as other member boards from Broadcom (Capri), Qualcomm (IFC6410), Hisilicon D01, Samsung (Arndale / Arndale Octa), etc.. Android have been upgraded to version 4.4.4 with images released for Pandaboard, Arndale, Nexus 10, and Nexus 7, built with Linaro GCC 4.9.

Here are the highlights of this release:

  • Linux Linaro 3.16-rc6-2014.07 released
    • GATOR version 5.18 (same version as in 2014.04)
    • updated basic Capri board support from Broadcom LT. Good progress in upstreaming the code: now the topic has 21 patch on top of v3.16-rc4 vs 53 patches on top of v3.15 in 2014.06 cycle
    • removed cortex-strings-arm64 topic as the code is accepted into the mainline
    • new topic from Qualcomm LT to add IFC6410 board support
    • updated Versatile Express ARM64 support (FVP Base and Foundation models, Juno) from ARM LT. cpufreq support for Juno has been added.
    • updated Versatile Express patches from ARM LT
    • more HiP0x Cortex A15 family updates from HiSilicon LT
    • switched to mainline support for Arndale and Arndale-octa boards
    • updated llvm topic (follows the community llvmlinux-latest branch)
    • Big endian support (the 2014.05 topic version rebased to 3.16 kernel)
    • removed ftrace_audit topic as the code is accepted into the mainline
    • config fragments changes – added ifc6410.conf
  • Linaro Toolchain Binaries 2014.07 released – Based on GCC 4.9 and updated to latest Linaro TCWG releases:  Linaro GCC 4.9-2014.07 & Linaro binutils 2.24.0-2014.07
  • Linaro Android 14.07 released
    • built with Linaro GCC 4.9-2014.07
    • Pandaboard, Arndale, Nexus 10, Nexus 7 upgraded to Android 4.4.4.
    • LSK Engineering build moved back to 4.4.2.
    • Android LSK v3.14 CI loop added
  • Linaro OpenEmbedded 2014.07
    • Integrated Linaro GCC 4.9-2014.07
    • Integrated Linaro EGLIBC 2.19-2014.07
    • Integrated Linaro binutils 2.24.0-2014.07
    • Upstreaming:
      • fixes recipes related to oe-core autotools update
      • cleaned up overlayed recipes
      • updated PM QA to 0.4.12
  • Linaro Ubuntu 14.07 released
    • added gstreamer 1.0
    • updated packages: ARM trusted firmware (support latest FVP models), PM QA (0.4.12), LSK 3.10.49/3.14.13 and linux-linaro 3.16-rc6 kernels.
  • Integrate ARMv8 Big endian systems into LAVA and CI
  • Migrate Linaro Android builds to 4.9 Linaro toolchain
  • LSK: add ARMv8 kernel + arm32 rootfs CI loop
  • Package rt-app
  • LSK: enable member kernel configs for build testing

You can visit https://wiki.linaro.org/Cycles/1407/Release for a list of known issues, and further release details about the LEB, LMB (Linaro Member Builds), and community builds, as well as Android, Kernel, Graphics, Multimedia, Landing Team, Platform, Power management and Toolchain components.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

ARM TechCon 2014 Schedule – 64-Bit, IoT, Optimization & Debugging, Security and More

July 23rd, 2014 No comments

ARM Technology Conference (TechCon) 2014 will take place on October 1 – 3, 2014, in Santa Clara, and as every year, there will be a conference with various sessions for suitable engineers and managers, as well as an exposition where companies showcase their latest ARM based products and solutions. The detailed schedule for the conference has just been made available. Last year,  there were 90 sessions organized into 15 tracks, but this year, despite received 300 applications,  the organizers decided to scale it down a bit, and there will be 75 session in the following 11 tracks:ARM_TechCon_2014

  • Chip Implementation
  • Debugging
  • Graphics
  • Heterogeneous Compute
  • New Frontiers
  • Power Efficiency
  • Safety and Security
  • Software Development and Optimization
  • Software Optimization for Infrastructure and Cloud
  • System Design
  • Verification

There are also some paid workshops that take all day with topics such as “Android (NDK) and ARM overview”, “ARM and the Internet of Things”, or “ARM Accredited Engineer Programs”.

As usual, I’ve gone through the schedule builder, and come up with some interesting sessions with my virtual schedule during the 3-day event:

Wednesday – 1st of October

In this session, Dr. Saied Tehrani will discuss how Spansion’s approach to utilize the ARM Cortex-R line of processors to deliver energy efficient solutions for the automotive MCU market has led the company to become a vital part of the movement toward connectivity in cars. Beginning with an overview of the auto industry’s innovation and growth in connected car features, he will explain how these systems require high performance processing to give drivers the fluid experience they expect. Highlights in security and reliability with ARM Cortex-R, including Spansion’s Traveo Family of MCU’s will also be presented.

HEVC and VP9 are the latest video compression standards that significantly improves compression ratio compared to its widely used predecessors H.264 and VP8 standard. In this session the following will be discussed:

  • The market need for GPU accelerated HEVC and VP9 decoders
  • Challenges involved in offloading video decoding algorithms to a GPU, and how Mali GPU is well suited to tackle them
  • Improvement in power consumption and performance of Mali GPU accelerated decoder
  • big.LITTLE architecture and CCI/CCN’s complementing roles in improving the GPU accelerated video decoder’s power consumption

ARM’s Cortex-M family of embedded processors are delivering energy-efficient, highly responsive solutions in a wide variety of application areas right from the lowest-power, general-purpose microcontrollers to specialised devices in advanced SoC designs. This talk will examine how ARM plans to grow the ARM Cortex-M processor family to provide high performance together with flexible memory systems, whilst still maintaining the low-power, low-latency characteristics of ARM’s architecture v7M.

IoT devices as embedded systems cover a large range of devices from low-power, low-performance sensors to high-end gateways. This presentation will highlight the elements an embedded engineer needs to analyse before selecting the MCU for his design. Software is fundamental in IoT: from networking to power management, from vertical market protocols to IoT Cloud protocols and services, from programming languages to remote firmware update, these are all design criteria influencing an IoT device design. Several challenges specific to IoT design will be addressed:

  • Code size and RAM requirements for the major networking stacks
  • Optimizing TCP/IP resources versus performance
  • Using Java from Oracle or from other vendors versus C
  • WiFi (radio only or integrated module)
  • Bluetooth (Classis versus LE) IoT protocols

Thursday – 2nd of October

Amongst ARM’s IP portfolio we have CPUs, GPUs, video engines and display processors, together with fabric interconnect and POP IP, all co-designed, co-verified and co-optimized to produce energy-efficient implementations. In this talk, we will present some of the innovations ARM has introduced to reduce memory bandwidth and system power, both in the IP blocks themselves and the interactions between them, and how this strategy now extends to the new ARM Mali display processors.

Designing a system that has to run on coin cells? There’s little accurate information available about how these batteries behave in systems that spend most of their time sleeping. This class will give design guidance on the batteries, plus examine the many other places power leakages occur, and offer some mitigation strategies.

64-bit is the “new black” across the electronics industry, from server to mobile devices. So if you are building or considering building an ARMv8-A SoC, you shall attend this talk to either check that you know everything or find out what you shall know! Using the ARMv8 Juno ARM Development Platform (ADP) as reference, this session will cover:

  • The ARMv8-A hardware compute subsystem architecture for Cortex-A57, Cortex-A53 & Mali based SoC
  • The associated ARMv8-A software stack
  • The resources available to 64-bit software developers
  • Demonstration of the Android Open Source Project for ARMv8 running on Juno.

Rapid prototyping platforms have become a standard path to develop initial design concepts. They provide an easy-to-use interface with a minimal learning curve and allow ideas to flourish and quickly become reality. Transitioning from a simple, easy-to-use rapid prototyping system can be daunting, but shouldn’t be. This session presents options for starting with mbed as a prototyping environment and moving to full production with the use of development hardware, the open-source mbed SDK and HDK, and the rich ARM ecosystem of hardware and software tools.Attendees will learn how to move from the mbed online prototyping environment to full production software, including:

  • Exporting from mbed to a professional IDE
  • Full run-time control with debugging capabilities
  • Leveraging an expanded SDK with a wider range of integration points
  • Portability of applications from an mbed-enabled HDK to your custom hardware

Statistics is often perceived as scary and dull… but not when you apply it to optimizing your code! You can learn so much about your system and your application by using relatively simple techniques that there’s no excuse not to know them.This presentation will use no slides but will step through a fun and engaging demo of progressively optimizing OpenCL applications on a ARM-powered Chromebook using IPython. Highlights will include analyzing performance counters using radar diagrams, reducing performance variability by optimizing for caches and predicting which program transformations will make a real difference before actually implementing them.

Friday – 3rd of October

The proliferation of mobile devices has led to the need of squeezing every last micro-amp-hour out of batteries. Minimizing the energy profile of a micro-controller is not always straight forward. A combination of sleep modes, peripheral control and other techniques can be used to maximize battery life. In this session, strategies for optimizing micro-controller energy profiles will be examined which will extend battery life while maintaining the integrity of the system. The techniques will be demonstrated on an ARM Cortex-M processor, and include a combination of power modes, software architecture design techniques and various tips and tricks that reduce the energy profile.

One of the obstacles to IoT market growth is guaranteeing interoperability between devices and services . Today, most solutions address applications requirements for specific verticals in isolation from others. Overcoming this shortcoming requires adoption of open standards for data communication, security and device management. Economics, scalability and usability demand a platform that can be used across multiple applications and verticals. This talk covers some of the key standards like constrained application protocol (CoAP), OMA Lightweight M2M and 6LoWPAN. The key features of these standards like Caching Proxy, Eventing, Grouping, Security and Web Resource Model for creating efficient, secure, and open standards based IoT systems will also be discussed.

Virtual Prototypes are gaining widespread acceptance as a strategy for developing and debugging software removing the dependence on the availability of hardware. In this session we will explore how a virtual prototype can be used productively for software debug. We will explain the interfaces that exist for debugging and tracing activity in the virtual prototype, how these are used to attach debug and analysis tools and how these differ from (and improve upon) equivalent hardware capabilities. We will look in depth at strategies for debug and trace and how to leverage the advantages that the virtual environment offers. The presentation will further explore how the virtual prototype connects to hardware simulators to provide cross-domain (hardware and software) debug. The techniques will be illustrated through case studies garnered from experiences working with partners on projects over the last few years.

Attendees will learn:

  • How to set up a Virtual Prototype for debug and trace
  • Connecting debuggers and other analysis tools.
  • Strategies for productive debug of software in a virtual prototype.
  • How to setup trace on a virtual platform, and analysing the results.
  • Hardware in the loop: cross domain debug.
  • Use of Python to control the simulation and trace interfaces for a virtual platform.
  • 14:30 – 15:20 – GPGPU on ARM Systems by Michael Anderson, Chief Scientist, The PTR Group, Inc.

ARM platforms are increasingly coupled with high-performance Graphics Processor Units (GPUs). However the GPU can do more than just render graphics, Today’s GPUs are highly-integrated multi-core processors in their own right and are capable of much more than updating the display. In this session, we will discuss the rationale for harnessing GPUs as compute engines and their implementations. We’ll examine Nvidia’s CUDA, OpenCL and RenderScript as a means to incorporate high-performance computing into low power draw platforms. This session will include some demonstrations of various applications that can leverage the general-purpose GPU compute approach.

Abstract currently not available.

That’s 14 sessions out of the 75 available, and you can make your own schedule depending on your interests with the schedule builder.

In order to attend ARM TechCon 2014, you can register online, although you could always show up and pay the regular on-site, but it will cost you, or your company, extra.

Super Early Bird Rare
Ended June 27
Early Bird Rate
Ends August 8
Advanced Rate
Ends September 19
Regular Rate
VIP $999 $1,299 $1,499 $1,699
All-Access $799 $999 $1,199 $1,399
General Admission $699 $899 $1,099 $1,299
AAE Training $249 $299 $349 $399
Software Developers Workshop $99 $149 $199 $249
Expo FREE FREE $29 $59

There are more types of pass this year, but the 2-day and 1-day pass have gone out of the window. The expo pass used to be free at any time, but this year, you need to register before August 8. VIP and All-access provides access to all events, General Admission excludes AAE workshops and software developer workshops, AAE Training and Software Developers Workshop passes give access to the expo plus specific workshops. Further discounts are available for groups, up to 30% discount.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter