Archive

Posts Tagged ‘arm’

Linux 4.7 Release – Main Changes, ARM and MIPS Architectures

July 25th, 2016 6 comments

Linux 4.7 is out:

So, after a slight delay due to my travels, I’m back, and 4.7 is out.

Despite it being two weeks since rc7, the final patch wasn’t all that big, and much of it is trivial one- and few-liners. There’s a couple of network drivers that got a bit more loving. Appended is the shortlog since rc7 for people who care: it’s fairly spread out, with networking and some intel Kabylake GPU fixes being the most noticeable ones. But there’s random small noise spread all over.

And obviously, this means that the merge window for 4.8 is open.Judging by the linux-next contents, that’s going to be a bigger release than the current one (4.7 really was fairly calm, I blame at least partly summer in the northern hemisphere).

Linus

Linux 4.6 brought USB 3.1 superspeed, OrangeFS distributed file system, 802.1AE MAC-level encryption (MACsec), and BATMAN V protocol support, improved the reliability of OOM task killer, and more.

Linux_4.7_Changelog

Linux 4.7 most noticeable changes include:

  • Support for Radeon RX480 GPUs
  • Parallel directory lookups –  The directory cache caches information about path names to make them quickly available for pathname lookup. This cache uses a mutex to serialize lookup of names in the same directory.  The serializing mutex has been switched to a read-write semaphore in Linux 4.7, allowing for parallel pathname lookups in the same directory. Most filesystems have been converted to allow this feature.
  • New “schedutil” frequency governor –  There are two main differences between it and the existing governors. First, it uses information provided by the scheduler directly for making its decisions. Second, it can invoke cpufreq drivers and change the frequency to adjust CPU performance right away, without having to spawn work items to be executed in process context or similar, leading to lower latency to make frequency changes.
  • Histograms of events in ftrace –  . This release adds the “hist” command, which provides the ability to build “histograms” of events by aggregating event hits. As an example, let’s say a user needs to get a list of bytes read from files from each process. You can get this information using hist triggers, with the following command command:

    other data can also be retrieve by using fields found in /sys/kernel/debug/tracing/events/syscalls/sys_enter_read/format. The output will look like:

    More more details check ftrace documentation and related LWN article.
  • EFI ‘Capsule’ firmware updates –  The EFI Capsule mechanism allows to pass data blobs to the EFI firmware. The firmware then parses them and makes some decision based upon their contents. The most common use case is to bundle a flashable firmware image into a capsule that the firmware can use to upgrade in the next boot the existing version in the flash. Users can upload capsule by writing the firmware to the /dev/efi_capsule_loader device
  • Support for creating virtual USB Device Controllers in USB/IP – USB/IP allows to share real USB devices over the network. Linux 4.7 brings the ability to create virtual USB Device Controllers without needing any physical USB device, using the USB gadget subsystem. For what purpose? For example, for improving phone emulation in development environments, for testing USB and for educational purposes.

Some of ARM specific improvements and new features include:

  • Allwinner:
    • Allwinner A13/R8 – Display Engine support
    • Allwinner A10/A20 – S/PDIF Support
    • Allwinner A31/A23/H3 – DMAengine improvements for H3 audio support
    • Allwinner H3 – USB support (multi-reset line support delayed til 4.8)
    • New hardware supported
      • Tablets – Dserve DSRV9703C, Polaroid MID2809PXE4, Colorfly e708 q1, Difrence DIT4350
      • Boards – Olimex A20 OLinuXino LIME2, Xunlong Orange Pi 2, Orange Pi One, and Orange Pi PC
  • Rockchip:
    • Thermal management – Rockchip driver support for RK3399, RK3366
    • Added Rockchip RK3399 clock and reset controller
    • Pinctrl – Support the .get_direction() callback in the GPIO portions
    • New RK3399 device tree support
    • Added Rockchip DisplayPort PHY support
    • Added Geekbuying GeekBox, RK3399 Evaluation Board, mqmaker MiQi SBC
  • Amlogic
    • Added Meson GXBB (S905) pinctrl support
    • Fixed memory nodes on Vega S95 DTS
    • Added Hardkernel ODROID-C2, Amlogic Meson GXBB P200 and P201 development systems
  • Samsung
    • Added Samsung ARTIK5 evaluation board
    • Added generic exynos bus frequency driver
    • Added pinctrl driver for Samsung EXYNOS5440 SoC
    • DTS updates & fixes:
      • Fix s5p-mfc driver probe on Exynos542x Peach boards (need to provide MFC memory banks). On these boards this was broken for long time but apparently no one enabled this driver till now.
      • Fix creation of debugfs entries for one regulator on Exynos4210 Trats board.
      • Fix probing of max8997 MFD driver (and its children) because of missing interrupt. Actually the current version of the driver probes (just without interrupts) but after switching to regmap and regmap-irq, the interrupt will be mandatory.
      • Cleanup regulator bindings on Exynos5420 boards.
      • Support MIC bypass in display path for Exynos5420.
      • Enable PRNG and SSS for all Exynos4 devices.
      • Add PL330 DMA controller and Thermal Management Unit to Exynos 7
      • Enable accelerated AES (Security SubSystem) on Exynos4412-based boards
      • Enable HDMI CEC on Exynos4412-based Odroid.
      • Add regulator supplies for eMMC/SD on Odroid XU3/XU4.
      • Fix DTC unit name warnings.
  • Qualcomm
    • Qualcomm IPQ4019 support in pinctrl
    • Change SMD callback parameters
    • 96Boards HiKey based on the Hisilicon Hi6220 (Kirin 620) gets an overhaul with a lot of devices enabled in the DT.
    • Added Qualcomm IPQ4019 “Internet processor”,  Arrow DragonBoard 600c (96boards) with APQ8064 Snapdragon 600
    • Device tree changes:
      • Add additional nodes for APQ8064
      • Fix APQ8064 pinctrls for i2c/spi
      • Add MSM8974 nodes for smp2p and smd
      • Modify MSM8974 memory reserve for rfsa and rmtfs
      • Add support for BQ27541 on Nexus7
  • Mediatek
    • Added  CPU power cooling model to Mediatek thermal driver
    • Added Mediatek MT8173 display driver, DRM driver, and thermal controller
    • Added MIPI DSI sub driver
    • 4GB mode support for Mediatek IOMMU driver
    • DTS updates:
      • add pinctrl node for mt2701
      • add mt2701 pmic wrapper binding
      • add auxadc binding document
  • Other new ARM hardware or SoCs – LG1312 TV SoC, Hisilicon Hip06/D03, Google Pixel C, NXP Layerscape 1043A QDS development board, Aspeed AST2400/AST2500, Oxnas 810SE (WD My Book World Edition), ARM MPS2 (AN385 Cortex-M3 & AN399 Cortex-M7), Ka-Ro electronics industrial SoM modules, Embest MarS Board, Boundary Devices i.MX6 Quad Plus Nitrogen6_MAX and SoloX           Nitrogen6sx embedded boards, Technexion Pico i.MX6UL compute module, ZII VF610 Development Board, Linksys Viper (E4200v2 / EA4500) WiFi router, Buffalo Kurobox Pro NAS, samtec VIN|ING 1000 vehicle communication interface, Amazon Kindle Fire first generation tablet and ebook reader,  OnRISC Baltos iR 2110 and 3220 embedded industrial PCs, TI AM5728 IDK, TI AM3359 ICE-V2, and TI DRA722 Rev C EVM development systems.

MIPS architecture changelog:

  • Add support for relocatable kernel so it can be loaded someplace besides the default 1MB.
  • Add KASLR support using relocatable support
  • Add perf counter feature
  • Add support for extending builtin cmdline
  • seccomp: Support compat with both O32 and N32
  • ath79: Add support for DTB passed using the UHI boot protocol, remove the builtin DTB support, add zboot debug serial support, add initial support for DPT-Module, Dragino MS14 (Dragino 2), and Onion Omega
  • BMIPS: Add BCM6358 support, add Whirlwind (BMIPS5200) initialization code, add support for BCM63268
  • Lantiq: Add support for device tree file from boot loader
  • Add basic Loongson 3A support
  • Add support for CN73xx, CN75xx and CN78xx
  • Octeon: Add DTS for D-Link DSR-1000N
  • Detect DSP v3 support
  • Detect MIPSr6 Virtual Processor support
  • Enable ptrace hw watchpoints on MIPS R6
  • Probe the M6250 CPUand the P6600 core
  • Support sending SIG_SYS to 32bit userspace from 64bit kernel
  • qca: introduce AR9331 devicetree
  • ralink: add MT7628 EPHY LEDs pinmux support
  • smp-cps: Add nothreads kernel parameter
  • smp-cps: Support MIPSr6 Virtual Processors
  • MIPS64: Support a maximum at least 48 bits of application virtual

For even much more details, you can check out Linux 4.7 changelog with comments only generated using git log v4.6..v4.7 --stat. Alternatively, and much easier to read, you can head to kernelnewbies.org to learn more about Linux 4.7 changes.

Orange Pi PC Board is now selling for $8.57 Shipped (Promo)

July 15th, 2016 51 comments

[update: the flash sale is over]

Orange Pi PC is an ARM Linux development board based on Allwinner H3 processor, that is relatively popular thanks to its low price/features ratio, and decent Linux support mostly thanks to the combined work of linux-sunxi and armbian communities. The board normally sells for $15 + shipping on Aliexpress, but GearBest appears to have a promotion for $8.57 shipped.

Orange_Pi_PC-Promotion

Before you go ahead with any purchase. You’ll notice the board is shown for $9.23 in China and US-LA warehouses, but $24.35 in their European warehouse. The price (china warehouse) goes down to $8.57 once you had it to the cart. It could be a genuine promotion, but it could also be a mistake. If the latter, you’ll get a refund or possibly a voucher of the same value for future purchases.  I’ve asked my contact at GearBest, but no answer yet. GearBest confirmed it is a “big promotion” lasting as long as there’s stock. The page has been updated and the price is now $8.57 from the China warehouse only.

Thanks to Thomas for the tip.

Micrium µC/OS RTOS Is Now Free for Makers and Startups

June 24th, 2016 1 comment

According to UBM embedded market study for 2015, Micrium µC/OS real-time operating system only came second after FreeRTOS when the company asked close to 1,000 engineers and managers around the world which operating systems they were currently using in their embedded products. The OS appears to be particularly popular in Asia, and the results are all the more impressive considering it’s a commercial operating systems.

Operating Systems used in Embedded Systems (UBM Survey)

Operating Systems used in Embedded Systems (UBM Survey)

But Micrium decided to bring more people on board by announcing a free version called µC/OS for Makers targeting hobbyists and startups (<$100k revenues) in February earlier this year. The real-time operating system includes a preemptive multitasking real-time kernel with optional round robin scheduling, has a low footprint (6K to 24K bytes code space, 1K+ bytes data space), support various types of targets including ARM Cortex-M and Cortex-A based MCU and processors such as STMicro STM32,  NXP Kinetis, Cypress PSoC5, etc.., as well as Atmel AVR, TI MSP430 and many others.

The Maker version of the OS excludes the CAN module, Building Blocks and the Graphical UI library, but comes with USB, TCP/IP, Modbus, and file system stacks. A summary of the different licenses for µC/OS-III is shown in the table below.

Click to Enlarge

Click to Enlarge

You can find more information on Micrium Maker page, or directly download it  (free email registration required) to try it out on your own platform or board.

Via 43oh.com

ARMv8 64-bit Processors To Replace Intel Xeon and SPARC64 Processors in Some Supercomputers

June 21st, 2016 5 comments

There’s been some news recently about Sunway TaihuLight supercomputer which nows top the list of the 500 fastest super computers with 93 PFLOPS achieved with Linpack, and is comprised of 40,960 Sunway SW26010 260 core “ShenWei” processors designed in China. But another interesting development is that ARMv8 are also slowly coming to supercomputers, starting with TianHe-2 super computer which is currently using Intel Xeon & Xeon Phi processors and second in the list, but according to a report on Vrworld, the US government decided to block US companies’ sales (i.e. Intel and AMD) to China as they were not at the top anymore, and also blocked Chinese investments into Intel and AMD, so the Chinese government decided to do it on their own, and are currently adding Phytium Mars 64-core 64-bit ARM processors to expand TianHe-2 processing power. Once the upgrade is complete Tianhe-2 should have 32,000 Xeons (as currently), 32,000 ShenWei processor, and 96,000 Phytium accelerator cards delivering up to 300 PFLOPS.

Japan K-Computer with Sparc 64 Processor

Japan K-Computer with SPARC64 Processors

One other report on The Register explains that the next generation of K-Computer, currently using Fujitsu SPARC64 processor, will instead feature Fujitsu ARMv8 processors in Post-K super computer in 2020 delivering up to 1000 PFLOPS (or 1 Exa FLOPS).  Details are sparse right now, but we do know Fujissu “has optimized the processor’s design to accelerate math, and squeeze the most of the die caches, hardware prefetcher and its Tofu interconnect”.

Post-K_ARM_Supercomputer

More details will likely be offered during “Towards Extreme-Scale Weather/Climate Simulation: The Post K Supercomputer & Our Challenges” presentation at ISC 2016 in Frankfurt, Germany later today.

Thanks to Sanders and Nicolas.

Categories: Linux, Processors Tags: arm, armv8, Linux, server

ARM Announces Mali Egil Video Processor with VP9 Decode, VP9 & HEVC Encode, and 4K @ 120 Hz Support

June 16th, 2016 10 comments

ARM has recently introduced Mali “Egil” video processor with support for VP9 Profile 0 (8-bit) and 10-bit Profile 2decoding, as well as VP9 8-/10-bit, and HEVC Main 10 encoding, on top of the currently supported codecs in Mali V550 VPU unveiled in 2014.

Click to Enlarge

Click to Enlarge

The new VPU can also support displays ranging from 1080p60 up to 4K @ 120 Hz depending on the number of cores chosen in the VPU, clocked at 800 Mhz, and manufacturing using 16 nm FinFET technology.

Mali_Egil_Resolution_4K_120HzMali Egil also brings some other improvements such as a redesign of the motion estimation engine, and finer granularity. From a user’s perspective, that means that 4K YouTube videos should be available in premium mobile devices soon, as well as higher quality video conference thanks to H.265 encode and decode.

You can find some more information in the “Introduction to the Mali Egil Video Processor” presentation slides.

Categories: Hardware Tags: 4k, arm, vp9

Upcoming ARM TrustZone Webinars Explaining Embedded Systems / IoT Security to Non-security Experts

June 14th, 2016 3 comments

Most people understand that securing the IoT is important, but security is a highly a complex subject, and as seen with the many security breaches, even specialists – who in theory should now better – get their devices or online accounts hacked. So even if you are not a security expert, but are involved in the development of embedded systems, it’s important to get acquainted with online and offline security and understand how all this all work, at least from a high level perspective, without necessarily having to dig into the technical details.

ARM_TrustZone_security

ARM is organizing two webinars catering to people who are not security experts, and explaining how they can secure embedded systems using the company’s TrustZone technology.

The first webinar entitled “How to build trust and security into your embedded device” will allow participant to gain an understanding of the security that will need to be applied in their next embedded devices, the technology available, the underlying security principles and different security methods used to protect devices. Examples will be provided, as well as an introduction to ARM security technologies at the end of the presentation.

It will take place on June 14, 2016 with two schedules one for Europe and Asia at 8:00 am (UTC) (i.e. right now…), one for America at 9:00 am (PDT).

The second webinar “Meet the experts: ARM TrustZone – understanding system security” will focus on ARM TrustZone:

ARM’s TrustZone architecture is key in enabling many vital elements of this new ecosystem. The ability to trust code and data and to provide secure access to peripherals, memory systems and communication links is a necessary part of the growing connected world. This webinar will give an overview of the TrustZone architecture as implemented in ARMv8-A systems and then introduce the new TrustZone for ARMv8-M architecture aimed at microcontrollers and deeply embedded systems.

You’ll have more time to get prepared, as it’s scheduled for June 28, 2016 on 8:00 am (UTC) and 9:00 am (PDT).

Both webinars can be accessed here. If you miss the events, recordings will be available.

Raspberry Pi 3 To Get ARM TrustZone Support with Linaro OP-TEE Port

June 9th, 2016 1 comment

If you ever wanted to experiment with ARM Trustzone, and IoT security, you’ll soon be able to do so with the Raspberry Pi 3 board thanks to a port of Linaro OP-TEE (Open Portable Trusted Environment Execution) by Sequitur Labs.

OP-TEE Architecture

OP-TEE Architecture: optee_client, optee_linuxdriver and optee_os

Broadcom BCM2737 SoC found in Raspberry Pi 3 board already had TrustZone hardware for isolation and protection for sensitive material such as cryptographic keys, algorithms and data, but the upcoming software release will mean the feature can now be used, and it’s free for trial/evaluation, and  education. Trustzone is also used for DRM (digital rights management), but in the case of Raspberry Pi 3 it will most likely used to teach how to secure the Internet of Things (IoT).

The release is scheduled for July 11, with source code and documentation to be available in OP-TEE github account. All you’ll need to get started is a Raspberry Pi 3 board, a micro SD  card to load, a Bus blaster, a custom cable to enable bare metal debugging,  a single firmware image with 64-bit Linux, ARM Trusted Firmware, and OP-TEE image, OpenOCD and the configuration file for the Raspberry Pi 3, as well as some code samples and a quick start guide.

Support for OP-TEE will be provided through forums on Linaro.

You may find a few more details in the press release.

ARM announces “premium IP” for VR and AR with Cortex-A73 Processor and Mali-G71 GPU

May 30th, 2016 3 comments

Today ARM has revealed the first details of its latest mobile processor and GPU, both said to be optimized for VR (Virtual Reality) and AR (Augmented Reality) applications.

Starting with the ARM Cortex-A73, we’re looking at an evolution of the current Cortex-A72 with ARM claiming 30 percent “sustained” performance over the Cortex-A72 and over twice the performance over the Cortex-A57. ARM is already talking about clock speeds of up to 2.8GHz in mobile devices. Other improvements include an increase up to 64k L1 instruction and data cache, up from 48 and 32k respectively for the Cortex-A72, as well as up to 8MB of L2 cache.

ARM_Cortex_A73The Cortex-A73 continues to support ARM’s big.LITTLE CPU design in combination with the Cortex-A53 or the Cortex-A35. It’s also the first ARM core to have been designed to be built using 10nm FinFET technology and it should be an extremely small CPU at around 0.65 square millimeters per core, or a 46 percent shrink from the Cortex-A72. By moving to 10nm and FinFET, ARM is also promising power efficiency gains of up to 20 percent over the Cortex-A72.

Cortex A53 vs A72 vs A73

Cortex A53 vs A72 vs A73

The Mali-G71 GPU takes things even further, as ARM is promising a 50 percent increase in graphics performance, a 20 percent improvement in power efficiency and 40 percent more performance per square millimeter over its previous generation of GPU’s. To accomplish this, ARM has designed the Mali-G71 to support up to 32 shader cores, which is twice as many as the Mali-T880 and ARM claims that this will enable the Mali-G71 to beat “many discrete GPUs found in today’s mid-range laptops”. We’d take this statement with a grain of salt, as it takes more than raw computing performance to do a good GPU and that’s why there are so few companies that are still designing their own GPUs. As with the Cortex-A73, the Mali-G71 is optimized for 10nm FinFET manufacturing technology.

As always with ARM based GPUs, it depends on the partner implementation and the Mali-G71 supports designs with as little as one shader. Looking at most current mobile GPU implementations we’d expect to see most of ARM’s partners to go with a 4-8 shader implementation to keep their silicon cost at a manageable level. That said, we might get to see one or two higher-end implementations, as ARM has already gotten the likes of Samsung, MediaTek, Marvell and Hi-Silicon interested in its latest GPU.

ARM_Mali-G71

With a big move towards VR and AR, it’s also likely that the ARM partners are going to have to move to a more powerful GPU to be able to deliver the kind of content that will be expected from these market spaces. According to the press release, it looks like ARM has already gotten Epic Games and Unity Technologies interested in supporting their latest GPU

Devices using the new ARM Cortex-A73 and Mali-G71 are expected sometime in 2017, so there’s quite a gap between the announcement and the availability of actual silicon, but with HiSilicon, Marvell, MediaTek, Samsung Electronics and others having already licensed Cortex A73 IP. at least it means we have something to look forward to next year. You can find more details on ARM Cortex A73 and Mali-G71 pages, as well as ARM community’s blog.