Profile cover photo
Profile photo
Arnd Bergmann
Communities and Collections
View all

Post has attachment
A lot of things have happened in the move to make the kernel y2038 ready in recent times. I've sent out new patches recently but will be on vacation for the next few weeks, so here's a quick update on where we are today with recent changes and work in progress.

[read on at]
Add a comment...

Post has attachment
I have created a set of toolchain binaries for build testing kernels. I had many of these on my own system already, and the ones that +Tony Breeds did had gotten a little stale over time.

The ones I built now run on x86_64, arm64 and ppc64, and target all architectures we support in the kernel, except for hexagon, unicore32 and score, as they lack support in mainline gcc. New targets compared to the 4.9.0 build include RISC-V, OpenRISC, NDS32, ARC and C6x.

So far I have built a complete set of gcc-7.3.0/binutils-2.30 binaries, and gcc-6.4.0/5.5.0/4.9.4 with binutils-2.29.1 for the subset of targets that were supported. Some combinations are still missing and will be added in the net days. I'll also try to to create binaries for older versions for a much smaller set of host/target architecture combinations for reference.

The binaries should show up at once the upload is complete.

Note that these toolchains are not capable of building user programs, I just used the output of Segher's excellent buildall script from to create the minimum toolchain for building kernels.
Add a comment...

Post has attachment
For anyone interested in what's going on in the arm-soc world in the latest merge window (TL;DR: nothing too unusual), read here for a copy of the pull request messages ( is the original). The first replies have the three individual pull requests.

Subject: [GIT PULL 0/3] ARM: SoC branches

The arm-soc tree for this merge window contains the usual stuff, and is probably slightly smaller than usual. Only one new SoC gets added this time, and it's a minor variation of an existing one.

A clear majority of the changes keep getting done for 32-bit SoCs. This appears to be the result of some 32-bit SoC families being particularly popular: omap, at91, aspeed and imx so far are only available with 32-bit cores, though the 64-bit i.MX8 has finally seen the light of day and will likely get added in the next merge window. The other popular platforms (renesas, marvell, samsung, amlogic, allwinner, and others) tend to have both 32-bit and 64-bit implementations with a comparable amount of patches going into either side.

Overall, we pulled 89 branches containing 864 non-merge changesets. 994 files were touched in some form, with 32303 lines added and 11679 removed, the latter mostly due to some device tree files getting reorganized, but also from continued cleanup of the platform code leading to a net code reduction in the soc branch.

dt: 49 pulls, 692 patches, 577 files, 23197 insertions, 7952 deletions
soc: 22 pull, 84 patches, 320 files, 2058 insertions, 3055 deletions
drivers: 18 pulls, 88 patches, 98 files, 7095 insertions, 737 deletions

The top contributors by number of patches are:

55 Tero Kristo
45 Alexandre Belloni
43 Fabio Estevam
41 Simon Horman
32 Russell King
30 Magnus Damm
28 Biju Das
27 Fabrizio Castro
22 Thierry Reding
21 Geert Uytterhoeven
21 Arnd Bergmann
17 Joel Stanley
16 Krzysztof Kozlowski
15 Marek Szyprowski
14 Tony Lindgren
13 Dave Gerlach
12 Volodymyr Babchuk
11 Lucas Stach
10 Stefan Agner
10 Neil Armstrong
10 Linus Walleij

This is the dirstat of all changes. As usual, device tree files dominate the contents. The drivers/clk/ti/ is from a branch that is shared with the clk maintainer and should already be merged at this point:

0.9% Documentation/devicetree/bindings/
42.4% arch/arm/boot/dts/
0.4% arch/arm/mach-ep93xx/
0.4% arch/arm/mach-exynos/
2.3% arch/arm/mach-omap2/
0.4% arch/arm/mach-pxa/
4.2% arch/arm/mach-s3c24xx/
1.7% arch/arm/mach-s3c64xx/
0.6% arch/arm/plat-samsung/include/plat/
0.7% arch/arm/plat-samsung/
1.4% arch/arm/
0.4% arch/arm64/boot/dts/allwinner/
1.0% arch/arm64/boot/dts/amlogic/
0.6% arch/arm64/boot/dts/exynos/
3.8% arch/arm64/boot/dts/marvell/
0.6% arch/arm64/boot/dts/mediatek/
1.0% arch/arm64/boot/dts/nvidia/
0.4% arch/arm64/boot/dts/qcom/
2.9% arch/arm64/boot/dts/renesas/
1.4% arch/arm64/boot/dts/
1.0% drivers/bus/
10.7% drivers/clk/ti/
1.0% drivers/memory/tegra/
2.0% drivers/memory/
0.4% drivers/soc/bcm/brcmstb/
3.8% drivers/soc/qcom/
1.1% drivers/soc/tegra/
1.5% drivers/soc/xilinx/
1.0% drivers/soc/
2.4% drivers/tee/optee/
1.0% drivers/tee/
2.5% include/dt-bindings/clock/
0.7% include/dt-bindings/
0.6% include/linux/soc/qcom/
0.9% include/linux/
Add a comment...

Post has attachment
Marc, Marc, Mark and Mark at ELC
Add a comment...

Post has attachment
Lots of #legroom on the bus to Prague
Add a comment...

Post has attachment
Packing my luggage for Linaro Connect SFO17 after a trip to the local chocolate factory. Let me know in the comments which one you want.
Add a comment...

Post has attachment
The arm-soc contents for 4.13 just got merged, here is the summary I posted in the pull requests, for everyone who doesn't follow the mailing lists in detail but still wants to know what to expect from the next release. See my comments below for the individual pull requests.
Here is the full set of patches for arm-soc for this merge window.
We have 764 non-merge changesets from 81 contributors this time, in 101 pull requests and 20 separate patches.

The top contributors this time are

54 Andreas Färber
29 Chen-Yu Tsai
22 Geert Uytterhoeven
21 Martin Blumenstingl
18 Fabio Estevam
17 Krzysztof Kozlowski
17 Corentin Labbe
16 Neil Armstrong
16 Icenowy Zheng
14 Tony Lindgren
14 Simon Horman
14 Markus Elfring
13 Ralph Sennhauser
12 Sean Wang
12 Linus Walleij
12 Gregory CLEMENT
11 Suman Anna
11 Antoine Tenart
11 Alexandre Belloni
10 Kuninori Morimoto

Andreas Färber adds three new SoC platforms (Action Semi on 32-bit and 64-bit as well as Realtek RTL1295), the other contributors are more
or less the same as always, and the most active platforms remain Allwinner, Renesas, Amlogic, NXP/Freescale, OMAP, AT91 and Samsung, but there are also a lot patches for the smaller ones.

Overall, the devicetree changes dominate the overall contents, but in particular the ARM64 device trees are growing faster these days, with more new boards getting added there. Split out into three separate chunks, these are the overall size stats:

a) ARM32 device tree files:
100% arch/arm64/boot/dts/
316 patches, 404 files changed, 11156 insertions(+), 4068 deletions(--)

b) ARM64 device tree files:
1.5% arch/arm64/boot/dts/actions/
8.9% arch/arm64/boot/dts/allwinner/
6.1% arch/arm64/boot/dts/amlogic/
0.7% arch/arm64/boot/dts/arm/
12.0% arch/arm64/boot/dts/broadcom/stingray/
0.2% arch/arm64/boot/dts/broadcom/
8.6% arch/arm64/boot/dts/freescale/
13.4% arch/arm64/boot/dts/hisilicon/
6.8% arch/arm64/boot/dts/marvell/
3.9% arch/arm64/boot/dts/mediatek/
0.1% arch/arm64/boot/dts/nvidia/
1.2% arch/arm64/boot/dts/qcom/
1.2% arch/arm64/boot/dts/realtek/
22.5% arch/arm64/boot/dts/renesas/
8.3% arch/arm64/boot/dts/rockchip/
3.8% arch/arm64/boot/dts/socionext/
217 patches, 152 files changed, 11045 insertions(+), 2362 deletions(--)

c) Everything else:
0.7% Documentation/arm/Atmel/
10.7% arch/arm/configs/
3.7% arch/arm/mach-actions/
5.2% arch/arm/mach-at91/
0.0% arch/arm/mach-bcm/
0.1% arch/arm/mach-davinci/include/mach/
0.7% arch/arm/mach-davinci/
0.3% arch/arm/mach-imx/
0.0% arch/arm/mach-meson/
0.2% arch/arm/mach-omap1/
30.0% arch/arm/mach-omap2/
0.0% arch/arm/mach-prima2/
0.0% arch/arm/mach-pxa/include/mach/
1.5% arch/arm/mach-pxa/
0.0% arch/arm/mach-rockchip/
0.0% arch/arm/mach-s3c64xx/
0.3% arch/arm/mach-shmobile/
0.0% arch/arm/mach-stm32/
1.0% arch/arm/
0.3% arch/arm64/configs/
0.3% arch/arm64/
0.1% drivers/base/power/
2.3% drivers/bus/
0.6% drivers/clk/meson/
2.9% drivers/clocksource/
0.6% drivers/cpufreq/
0.3% drivers/firmware/tegra/
0.9% drivers/firmware/
0.2% drivers/memory/
0.1% drivers/reset/sti/
8.2% drivers/reset/
4.3% drivers/soc/actions/
1.2% drivers/soc/atmel/
0.0% drivers/soc/bcm/
0.0% drivers/soc/imx/
2.9% drivers/soc/mediatek/
0.2% drivers/soc/qcom/
2.9% drivers/soc/renesas/
5.8% drivers/soc/tegra/
0.1% drivers/soc/
0.5% include/linux/platform_data/
0.1% include/linux/soc/actions/
0.1% include/linux/soc/renesas/
0.1% include/linux/
8.0% include/soc/tegra/
178 patches, 217 files changed, 3700 insertions(+), 1974 deletions(--)

The parts sticking out here are a defconfig cleanup by Krzysztof Kozłowski, omap2 code cleanup, reset subsystem changes and a new power management driver for tegra.
Add a comment...

Post has attachment
I just spent half a day optimizing the kernel build process to come up with a patch that shaves one second off the build every time I run 'make':

Was it worth it?
votes visible to Public
Add a comment...

Post has attachment
The gd32f103 die shot article was an earlier one I found really interesting, see

ESP32 is the latest picture, also interesting but without a detailed analysis so far.
Add a comment...

Post has shared content
In other news, the Acer Liquid Z6E was just launched internationally with a 32-bit MT6580 chip running Android 6.0

Also, the newly introduced home wifi router now comes with a 64-bit BCM49408 chip, as far as I know this is the first of its kind.
Add a comment...
Wait while more posts are being loaded