Archive

Posts Tagged ‘kernel’

Linux 4.0 Release – Main Changes, ARM and MIPS Architectures

April 15th, 2015 6 comments

Linus Torvalds “Ima Sheep” released Linux Kernel 4.0 on Sunday:

So I decided to release 4.0 as per the normal schedule, because there really weren’t any known issues, and while I’ll be traveling during the end of the upcoming week due to a college visit, I’m hoping that won’t affect the merge window very much. We’ll see.

Linux 4.0 was a pretty small release both in linux-next and in final size, although obviously “small” is all relative. It’s still over 10k non-merge commits. But we’ve definitely had bigger releases (and judging by linux-next v4.1 is going to be one of the bigger ones).

Which is all good. It definitely matches the “v4.0 is supposed to be a_stable_ release”, and very much not about new experimental features etc. I’m personally so much happier with time-based releases than the bad old days when we had feature-based releases.

That said, there’s a few interesting numerological things going on with 4.0. Looking at just the statistics in git, this release is not just when we cross half a million commits total, but also cross the 4 million git object limit. Interestingly (if you look for numeric patterns), Linux 3.0 was when we crossed a quarter million commits and 2 million git objects, so there’s a nice (and completely unintentional) pattern there when it comes to the kernel git repository.

[ Another quick historical numerological footnote: the old historical BK tree was getting close to the 16-bit commilt limit that BK originally used to have. So that whole “quarter of a million commits” is actually quite a lot. During all of the BK years we only got 65k commits. Of course, we only used BK for three years, and we’ve now been on git for almost exactly ten years, but still – it shows how the whole development process has really sped up a _lot_ ]

Feature-wise, 4.0 doesn’t have all that much special. Much have been made of the new kernel patching infrastructure, but realistically, that not only wasn’t the reason for the version number change, we’ve had much bigger changes in other versions. So this is very much a “solid code progress” release.

Go get it and enjoy,

Linus “we’re all sheep” Torvalds

Linux 3.19 brought improvement to btrfs (raid), the network stack, added ARM Coresight, device tree overlays support, and more.

Some key changes made to Linux 4.0 include:

  • pNFS (Parallel NFS), UBIFS, F2FS and BTRFS File Systems improvements
  • Live Kernel Patching – Install kernel updates without rebooting
  • Intel Quark x86 SoC support
  • Various patches to improve Linux running on a  Playstation 3
  • Open source AMD Radeon driver supports DisplayPort Audio and improves fan support

Some of the new features and improvements specific to the ARM architecture include:

  • Allwinner:
    • A20 – PS/2 Controller
    • A31 – IR receiver
    • A31s – Bring-up sharing majority of drivers with A31, pinctrl driver
    • A80 – MMC
    • All SoCs – LRADC Input driver, CPUFreq, PWM Driver
    • AXP209 power button input driver
    • New boards and devices:  CSQ CS908, LeMaker Banana Pro, Chuwi V7 CW0825, Rikomagic mk802, Rikomagic mk802ii, Rikomagic mk802_a10s, MarsBoard A10, Hyundai A7HD
  • Rockchip
    • Fixes for rk808 regulator
    • Watchdog fix
    • Add Rockchip timer for RK3288
    • HDMI output enabled on rk3288-firefly and rk3288-evb
    • Disable GMAC by default
  • Amlogic – pinctrl driver for Amlogic Meson SoCs
  • Mediatek
    • Regulator driver for Mediatek MT6397
    • Added watchdog driver
    • Added Mediatek MT8173 64-bit processor
  • ARM64
    • New processors: Exynos 7, Freescale LS2085A, and Tegra 132 (Denver)
    • Various fixes for ARM64 including UEFI and KVM code.
  • Preparation work for Atmel AT91 support for multiplatform
  • Other new platforms – Alphascale ASM9260, Marvell Armada 388, CSR Atlas7, TI Davinci DM816x, Hisilicon HiP01, ST STiH418, and Conexant Digicolor (CX92755).

There has also been some interesting changes for the MIPS architecture:

  • Fixes for KVM support
  • Support for MIPS R6 processors
  • Preliminary support for Cavium Octeon 3 SoCs which feature up to 48 MIPS64 R3 cores with FPU and hardware virtualization

A more detailed changelog for Linux 4.0 will soon be available on Kernelnewbies.org, and once it’s up you may also want to have a look at their ARM architecture and drivers sections for more details about changes related to ARM, MIPS and other platforms. I’ve also generated a complete Linux 3.19 vs Linux 4.0 changelog (3.4MB) with git (comments only, no code).

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 15.03 Release with Linux 4.0 and Android 5.1

March 27th, 2015 No comments

Linaro has just announced their 15.03 release with Linux 4.0-rc4 (baseline), Linux 3.10.72 and 3.14.36 (LSK), and Android 5.1.

The organization has worked on hardware platforms from members namely Qualcomm, ARM, HiSilicon, Samsung, and STMicro, including the recently announced 96Boards boards, and other ARMv8 platforms.

Highlights of the release:

  • Linux Linaro 4.0-rc4-2015.03
    • updated linaro-android topic
    • added a few build/boot fixes for Arndale (llct-misc-fixes topic)
    • GATOR topic: version 5.20.1
    • updated integration-linaro-vexpress64 topic by ARM LT (FVP Base and Foundation models, and Juno support)
    • updated topic from Qualcomm LT (ifc6410 board support)
    • simple EEPROM framework (via Qualcomm LT’s topic)
    • updated topic from HiSilicon LT (Hi36xx, HiP04, and X5HD2 families support)
    • rebased “ILP32 patch set v3″ onto 4.0-rc2
  • Linaro builds of AOSP 15.03
    • updated all the baselines to AOSP 5.1
    • added commit based trigger feature to CI builds
  • Linaro OpenEmbedded 2015.03
    • integrated Linaro GCC 4.9-2015.03
    • dismantled meta-aarch64 layer
    • created meta-ilp32 layer
    • cleaned out meta-bigendian layer
    • synced overlayed recipes with upstream
    • added full wget and rt-test on LAMP image as requested by QA team
    • update busybox xargs config as requested by QA team
    • integrated ODP 1.0
    • upstreaming:
      • sysprof: fix arm big-endian build
      • bitbake.conf: use http:// for GNU_MIRROR instead of ftp://
      • kexec-tools: fix build failure on aarch64_be architecture
      • busybox: update to 1.23.1 release
      • mozjs 17.0.0: fix aarch64 and 64k page builds, generic cleanups
  • Linaro Ubuntu 15.03
    • added packages: ti-calibrator
    • updated packages: LSK 3.10.72/3.14.36 and linux-linaro 4.0-rc4 kernels
    • Added ILP32 support for ARM64 to Linaro engineering builds
    • Dismantled meta-aarch64 in favour of OE-core aarch64 support
    • CI bring up: luvOS (Linux UEFI Validation Operating System)
  • KVM – support testing arm32 with arm64
  • Added b2120stxh410 to linux-mainline and linux-arm-soc-for-next build jobs
  • 96boards: enable Xorg by default in eMMC/SD debian build
  • Added 2 new build slaves
  • Migrated lt-qcom-ubuntu-images to docker based infrastructure
  • Upgraded ARMv8 build slaves to 3.19 kernel
  • Cleaned up LCR (Linaro Confectionery Release) information and instructions

Visit https://wiki.linaro.org/Cycles/1503/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 Install Ubuntu 14.04 on Acer Aspire E5 Laptop

March 23rd, 2015 No comments

I’ve been owning an Acer Aspire One D255E netbook with a 10″ display, an Intel Atom N455 processor and 1GB RAM that served me well during my travels, but as I’ve become older and less patient, I felt I needed to upgrade it. I planned to spend around 10,000 Baht (~$300), wanted a 14″ display, one of the low power CPU such as Intel Bay Trail-M or AMD Mullins / Beema processors, at least 500GB storage, 4GB RAM, and the ability to install Ubuntu. Finally, after going through several products at my local shop, I had to chose between Acer Aspire E5-411-P3CL with a 7.5W TDP Intel Atom N3540 and Acer Aspire E5-421G-45L0 with a 15W TDP AMD A4-6210 processor that both sell for 11,900 Baht ($365). Despite my preference for processor with lower TDP, I still went with the AMD system, since the performance is a little better, the warranty is good for 2-years (vs. 1 year for the Intel laptop), and I’ve always rooted for AMD in the past as an alternative to Intel.

Both laptop are pre-loaded with Linpus Linux 9.2, but when I boot the laptop at the shop, I discovered it was just a headless version that boots to the command line. The seller even told me something like “oohhh, Linux is like that? I did not know, normally just just format the hard drive…” So it’s like FreeDOS it’s installed to test hardware during MP, and let the shop sell legal system so that customers can install Windows themselves. Sometimes you also get given a free coupon to get it installed in a small shop.

Acer_Linpus_LinuxNevertheless, I finally purchased the laptop and planed to install Ubuntu on the system.

Since I had already downloaded Ubuntu 14.04 64-bit ISO, that’s the one I installed, but once Ubuntu 15.04 is released, you would probably avoid several of the issue I had during installation. You are likely to face issues with Ubuntu 14.10 too.

I followed the standard installation procedure, by “flashing” ubuntu-14.04-desktop-amd64.iso to a USB flash drive formatted with FAT32 using Unetbootin software in another Ubuntu machine, but you could also use a Windows machine with Rufus.

Then I inserted the USB flash into the Aspire E5 laptop, press F2 at boot time to enter InsydeH20 Setup Utility, and select the USB drive as primary boot device, and Ubuntu setup started normally, but the touchpad did not work, so you’ll have to connect a USB mouse unless you’re comfortable with using the keyboard for everything. The touchpad probblem is a known issues, that’s fixed in Linux 3.17 or greater+.

Ubuntu_Acer_Aspire_E5_Installation_Type_Replacing_LinpusApart from this issue the installation went smoothly, and I selected “Replace Linpus Linux 9.2 with Ubuntu” option. The laptop is usually with Ubuntu 14.04 as it is as long you don’t use the not-so-convenient-anyway touchpad, don’t need to use the HDMI and VGA port, and accept some slow animation from time to time.

The latter appears to be due to AMD/ATI open source graphics drivers, so I went to “Additional Drivers” and clicked on “Using Video driver for the AMD graphics accelerators from fglrx-updates (proprietary)”, and after installation the system appeared o run a bit smoother.

AMD_graphics_accelerators_from_fglrx-updatesAlbeit an extra /dev/sda3 partition appeared to have been created for swap, it was not mounted in Ubuntu, so I installed and ran Gparted to check it out, and formatted the partition to linux-swap there. And completely by modifying /etc/fstab with the line:

/dev/sda3 none            swap    sw              0       0

Since it’s not always convenient to connect a USB mouse to the laptop, I also decided to upgrade the kernel, as I explained in my “build a kernel module in Ubuntu” post. I started with Linux kernel 3.19.2, as it was the latest stable kernel at the time, but unfortunately Unity would not start anymore. So I booted again to Linux 3.13.xx installed by default in Ubuntu 14.04 and changed the graphics drivers back to the open source one, and that did the trick, with the touchpad working, but the display seemed to be using the wrong resolution, and although HDMI output worked the lower part was garbled.

Acer_Aspire_E5-421G_HDMI_Issue_640pxSo instead I installed graphics drivers downloaded directly from AMD website, and Unity would not run with either Linux versions installed.

Finally I found that Linux 3.18.9 with fglrx-updates graphics drivers work best for me. That’s how I installed that version of Linux.

cd /tmp
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.18.9-vivid/linux-headers-3.18.9-031809-generic_3.18.9-031809.201503080036_amd64.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.18.9-vivid/linux-image-3.18.9-031809-generic_3.18.9-031809.201503080036_amd64.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.18.9-vivid/linux-headers-3.18.9-031809_3.18.9-031809.201503080036_all.deb
sudo dpkg -i linux-headers-3.18*.deb linux-image-3.18*.deb

Finally Acer Aspire E5-421G laptop runs fairly well with Ubuntu 14.04 with the following working just fine:

  • 1366×768 display
  • VGA and HDMI output (with caveats, see known issues)
  • USB 2.0 ports
  • USB 3.0 port (USB 3.0 hard drive tested with 103 MB/s read speed)
  • Ethernet and Wi-Fi
  • Touchpad
  • Webcam, speakers, and audio jack
  • DVD drive and SD Card reader

However, there are still some known issues:

  • Only mirroring mode works with HDMI and VGA output (no extended display), and HDMI/VGA might be unstable.
  • It’s not possible to enable three displays (Screen + HDMI + VGA) simultaneously, I could only manage two displays at once.
  • Ubuntu will always start with the screen’s brightness set to the lowest setting.
  • Battery only lasts about 3h30 on a full charge. (not fully sure it if it an issue, or is to be expected)

If you plan to use AMD-V virtualization extension, for example for 64-bit OS in Virtualbox, you’ll need to hack UEFI settings since the option to enable it is not available by default.  Anyway, I’ve now come to a point where Ubuntu 14.04 is perfectly usable on Acer Aspire E5, although I would not have complained if the whole installation process would have been easier…

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

(Most of) FOSDEM 2015 Videos Are Now Online

March 12th, 2015 4 comments

FOSDEM 2015 took place on between the 31st of January and 1st of February, and while some sessions were not recorded on videos, most of them were, and the organizers are now slowly processing and uploading 402 videos to their server. So far 210 videos have been uploaded, including the Embedded Devroom.

Fosdem_2015

You can follow the upload status to check out when your preferred track/devroom sessions are uploaded. For example, “internet of things” videos have not been uploaded so far, so you’d need to be a bit more patient for this topic.

One of such videos is “Upstream Allwinner ARM SoC (A10 / sunxi) support status”  by Hans de Goede, which includes the slides on the left and video of the right. This makes the presentation easy to follow (despite the slides being cropped), but probably explains why it takes so long to process the videos.

http://video.fosdem.org/2015/devroom-embedded/allwinner_upstream__CROPPED_PRES.mp4

You can also download presentation slides separately by going to the list of talks, clicking on the talk you want to checkout, and finally the presentation slides (if any) in the “Attachments” section. Direct link to the presentation above: allwinner_fosdem_2014.pdf.

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 a Single Kernel Module (Driver) in Ubuntu

March 6th, 2015 6 comments

When I bought UNI-T UT61E digital multimeter,  I planned to to use the open source tool Sigrok to capture voltage, current or resistance data with my Ubuntu 14.04 machine. Unfortunately, it was just not working for me and I kept getting some “Invalid function byte” error messages, so I asked on Sigrok mailing list, and since it worked for others, I was in big troubles. It turned out the RS-232 to USB dongle I used:

idVendor           0x1a86 QinHeng Electronics
idProduct          0x7523 HL-340 USB-Serial adapter

was most likely to culprit, so I decided to buy another random USB to serial dongle on eBay, and after a few weeks I received it only to find out it had the exact same VID:PID, so I was out of luck. Finally, I gave up on Sigrok on Linux, and tested the power consumption of some Rockchip RK3288 & Amlogic S802 devices in a Windows 7 virtual machine running in my Ubuntu 14.04 host PC. A few days later, Karl Parsonn left a comment saying ch341 driver just ignored parity (UNI-T DMM use odd parity), but that he wrote a patch that should eventually make it to mainline.

Ubuntu_14.04_CH341_Driver

Since I did not want to wait I decided to build ch341.ko with the patched driver, and I can now use Sigrok with my HL-340 USB-Serial adapter successfully, but I’ll write more about that in another post, and today, I’ll document the steps I followed to build the driver for my machine.

Instructions to build a kernel module in Ubuntu are already available, but the patch for ch341 driver is for Linux 3.18.6, and Ubuntu 14.04 comes with Linux 3.13. So I had two choices:

  1. Backport the driver to Linux 3.13
  2. Upgrade my Ubuntu kernel to 3.18

I decided to go with option 1 at first, but I quickly changed my mind as there’s been a bit too many modifications between the two versions, and it started to be time consuming. So it was time for plan B, or rather option 2. I could probably have use the Karl’s Linux kernel, but I remembered having read that Canonical makes some changes to the Linux kernel, so instead I went to http://kernel.ubuntu.com/~kernel-ppa/mainline/ to download and install Linux 3.18 in my machine (This is 3.18.0, but with hindsights I should have gone with 3.18.6 instead, but it still worked):

cd /tmp/
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.18-vivid/linux-headers-3.18.0-031800-generic_3.18.0-031800.201412071935_amd64.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.18-vivid/linux-headers-3.18.0-031800_3.18.0-031800.201412071935_all.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.18-vivid/linux-image-3.18.0-031800-generic_3.18.0-031800.201412071935_amd64.deb
sudo dpkg -i linux-headers-3.18.0-*.deb linux-image-3.18.0-*.deb

This steps requires a reboot. In case it does not boot at all, you should be able to boot one of the older Linux kernel via grub, and remove the new mainline kernel, so I believe this step is relatively safe.

Then I checkout the Linux kernel and downloaded and applied Ubuntu specific patchsets:

mkdir workddir
cd workdir
git clone git://kernel.ubuntu.com/virgin/linux-stable.git v3.18
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.18-vivid/0001-base-packaging.patch
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.18-vivid/0002-debian-changelog.patch
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.18-vivid/0003-configs-based-on-Ubuntu-3.18.0-6.7.patch
patch -p1  < 0001-base-packaging.patch 
patch -p1  < 0002-debian-changelog.patch 
patch -p1  < 0003-configs-based-on-Ubuntu-3.18.0-6.7.patch 

Backup the current driver:

sudo mv -v /lib/modules/$(uname -r)/kernel/drivers/usb/serial/ch341.ko /lib/modules/$(uname -r)/kernel/drivers/usb/serial/ch341.ko_backup

Then I mostly followed the build instructions found on Askubuntu to setup the kernel to build modules:

cd v3.18
make oldconfig
make prepare
make scripts
cp -v /usr/src/linux-headers-3.18.0-031800-generic/Module.symvers .

and update the code with the new driver, build and install the module:

cd drivers/usb/serial/
wget https://raw.githubusercontent.com/karlp/linux/ch341-3.18.6/drivers/usb/serial/ch341.c
make -C /lib/modules/$(uname -r)/build M=$(pwd) modules
sudo make -C /lib/modules/$(uname -r)/build M=$(pwd) modules_install

Finally run depmod, unload the old module if needed, and load the newly built module.

sudo depmod
sudo modprobe -r ch341
sudo modprobe -v ch341

Done. I’ve now got a CH341 driver that supports no parity or odd/even parities.

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 Releases Kernel Drivers for Mali-T880 / T860 GPUs, User Space Drivers for Mali-T76x GPUs

February 23rd, 2015 17 comments

ARM Mali GPU drivers includes both open source kernel drivers, and binary userspace drivers supporting framebuffer and/ior X11 implementation. The former is rarely an issue and is quickly released, but the latter requires porting and testing for a specific hardware platform, as well legal work, which greatly delay the releases.

ARM_Mali_GPU_Drivers

Release r5p0-06rel0 for User Space Binary Drivers

Mali-T880 GPU was announced at the beginning of the month together with ARM Cortex A72, and on February 17, 2015, ARM released an update to their Mali-T600 series, Mali-T700 series & Mali-T860/T880 GPU kernel device drivers with revision r5p1-00rel0 that adds supports to Mali-T860 and Mali-T880 GPU. These open source drivers are available for Android and Linux, and also support early Mali-T700 and T600 GPUs.

Separately, the company has also released Mali-T76X GPU drivers for Firefly board powered by Rockchip RK3288 quad core Cortex A17 processor featuring a Mali-T764 GPU. The first release only supports the framebuffer driver, but ARM is expecting to be able to release the X11 version in the next release (r5p1) planned at the end of March, which means some Linux desktop graphics accelerated will soon be available on Rockchip RK3288, and not only some OpenGL ES 3.0 demos on the framebuffer. The latest release (r5p0-06rel0) also supports Exynos powered Arndale Octa board, Samsung Chromebook 2, Arndale board, and Samsung Chromebook. According to an ARM representative, Rockchip also plans to release their own Linux GPU drivers targeting “TopMetal” hardware platform (should probably read PopMetal).

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

Linux 3.19 Release – Main Changes, ARM and MIPS Architectures

February 9th, 2015 4 comments

Linus Torvalds released Linux Kernel 3.19 yesterday:

So nothing all that exciting happened, and while I was tempted a couple of times to do an rc8, there really wasn’t any reason for it.

Just as an example, Sasha Levin used KASan and found an interesting bug in paravirtualized spinlocks, but realistically it’s been around forever, and it’s not even clear that it can really ever trigger in practice. We’ll get it fixed, and mark it for stable, and tempting as it was, it wasn’t really a reason to delay 3.19.

And the actual fixes that went in (see appended shortlog) were all fairly small, with the exception of some medium-sized infiniband changes that were all reverting code that just wasn’t ready.

So it’s out there – go and get it. And as a result, the merge window for 3.20 is obviously also now open.

Linus

Linux 3.18 improved performance of the network stack, received BTRFS and EXT-4 file systems improvements, introduced overlayfs for live CDs, and more.

Some changes made to Linux 3.19 include:

  • Btrfs: support scrubbing and fast device replacement in RAID 5&6Btrfs  – Added support for fast & live device replacement (see btrfs-replace), much faster and efficient than adding the new device and removing the old one in separated commands. This feature could not fast-replace devices from file systems using RAID 5 & 6, this release has removed that limitation. Support for the process of scrubbing a btrfs filesystem (with btrfs-scrub) has also been added for RAID 5&6 file systems.
  • Support for Intel Memory Protection Extensions – Intel’s Memory Protection Extension (MPX) is a set of CPU instructions which brings increased robustness to software by checking pointer references usurped maliciously at runtime by buffer overflows. This Linux release adds support in the Linux kernel, although CPUs with MPX support are not sold yet (To be introduced with Intel Skylake and Goldmont microarchitectures). LWN article: Supporting Intel MPX in Linux
  • SquashFS adds LZ4 Compression Support
  • Work on year 2038 bug – do_settimeofday(), timekeeping_inject_sleeptime(), and mktime() now have 2038-safe replacements
  • The networking layer has a new subsystem for offloading switching and routing duties to suitably capable hardware
  • Audio – Intel Baytrail-based audio devices, Samsung Exynos7 I2S controllers, NXP Semiconductors TFA9879 amplifiers, and Texas Instruments TS3A227E headset chips.

Some of the new features and improvements specific to the ARM architecture include:

  • Allwinner:
    • Simple Framebuffer and USB phy driver support for usb0  for Allwinner A10 / A10s / A13 / A20 / A31 / A23
    • NAND Flash driver for Allwinner A10 & A20
    • DMAengine driver for Allwinner A23 (Shared with A31)
    • Allwinner A80 – initial machine support, basic clocks and reset, pinctrl driver, extra UART, I2C, LEDS
    • New boards: Mele M3, LeMaker Banana Pi, Merrii A80 Optimus Board, Olimex A20-OLinuXino-Lime2
  • Rockchip
    • RK3288 – Basic SMP support
    • Device tree for MarsBoard RK3066
    • Added support for rk3066-tsadc variantof rockchip_saradc
    • Add support for the mmc clock phases using the framework
  • Amlogic
    • Added DTSI for Meson8 SoCs
    • Driver for Meson IR remote control
    • Support for Meson SPIFC
  • Mediatek
    • Basic support for MT6592, MT8127 and MT8135
    • DTS for 8127 Moose board, MT8125 evaluation board, and MT6592-EVB
  • ARM64
    • Added Device tree for Juno and AMD Seattle platform
    • Added framework for legacy instruction emulation, secomp suport, SMBIOS/DMI support, etc…
  • Atmel AT91 architecture has gotten rid of board files, and is now fully converted to device tree
  • Other new device tree files: Altera Arria10 SoC, Synology DS213j/DS414, Braodcom BCM5301X devices (Asus RT-N18U, Buffalo WZR-1750DHP, Buffalo WZR-600DHP2, Netgear R6300 V2 ), DLink DIR665, Raspberry Pi model B+, Freescale LS1021A, TBS2910 Matrix ARM mini PC, NHK15 board (nomadik)

Some changes have been listed for MIPS architecture too:

  • BMIPS: Add PRId for BMIPS5200 (Whirlwind)
  • Enable VDSO randomization
  • Loongson-3 –  Add PHYS48_TO_HT40 support, Add RS780/SBX00 HPET support, Add oprofile support
  • Loongson1B – Add a clockevent/clocksource using PWM Timer
  • Loongson –  Allow booting from any core
  • Support for hybrid FPRs
  • ath25 – Add basic AR2315 SoC support, add AR2315 PCI host controller driver, add basic AR5312 SoC support
  • bcm3384 – Initial commit of bcm3384 platform support
  • ralink – add mt7628an support, add rt2880 pci driver, add support for MT7620n

A more detailed changelog for Linux 3.19 will soon be available on Kernelnewbies.org. You can also checkout ARM architecture and drivers sections for more details about changes related to ARM, MIPS and other platforms.

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.12 Release with Linux 3.18 and Android 5.0

December 19th, 2014 No comments

Linaro usually releases images and source code on the last Thursday of the month, but since most people will have long holidays for Chritsmas and New Year, the last working Thrusday of this month was yesterday (18th). Linaro 14.12 release includes Linux kernel 3.18 (baseline), Linux 3.10.62 & 3.14.26 (LSK, same versions as last month), and Android 5.0.1 Lollipop.

Here are the highlights of this release:

  • Linux Linaro 3.18-2014.12
    • Based on v3.18 release
    • GATOR topic: version 5.20
    • updated topic from Qualcomm LT (includes IFC6410 board support)
    • updated integration-linaro-vexpress64 topic by ARM LT (FVP Base and Foundation models, and Juno support)
    • updated LLVM topic (uses the community llvmlinux-latest branch)
    • included ILP32 patch set v3  rebased on 3.18. Boot tested with aarch64 userland. Work is in progress to test with aarch64-ilp32 userland.
    • config fragments updated – SELinux related config options enabled in linaro-base.conf, device tree runtime self tests enabled in distribution.conf
  • Linaro builds of AOSP 14.12
    • built with AOSP toolchain
    • All the Android builds have been updated to 5.0.1
    • Audio on Versatile Express TC2 is fixed (Android 5.0.1)
    • DNS issue fixed on Juno, FVP models and Versatile Express TC2 (Android 5.0.1)
    • daily CI updated to include benchmarks for Versatile Express TC2 and Juno
  • Linaro OpenEmbedded 2014.12
    • integrated Linaro GCC 4.9-2014.11 and Linaro binutils 2.24-2014.11
    • switched from eglibc to Linaro glibc 2.20-2014.11
    • improved external toolchain support
    • improved ACPI tooling
    • added python-numpy to images for LAVA tests
    • upstreaming:
  • Linaro Ubuntu 14.12 – updated packages: juno-pre-boot, LSK 3.10.62/3.14.26 and linux-linaro 3.18 kernels
  • CI loop for testing the pre-built Linaro toolchain using the OpenEmbedded external toolchain support has been reactivated
  • ARMv8 Ubuntu engineering build for Enterprise is available
  • CI bring up: HiSilicon Hi3716cv200
  • CI bring up: EAS (Energy Aware Scheduling) development – integration branch testing
  • Publish OpenSDK images on snapshots.linaro.org
  • Ship board recovery image into hwpack for Juno

You can visit https://wiki.linaro.org/Cycles/1412/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