GitHub/LineageOS/android_kernel_motorola_exynos9610.git
6 years agoMerge tag 'sunxi-dt-for-4.13' of https://git.kernel.org/pub/scm/linux/kernel/git...
Olof Johansson [Mon, 19 Jun 2017 03:40:35 +0000 (20:40 -0700)]
Merge tag 'sunxi-dt-for-4.13' of https://git./linux/kernel/git/sunxi/linux into next/dt

Allwinner DT changes for 4.13

The usual chunk of patches. The most notable improvements are the power
supplies improvements (battery and AC-IN), crypto support for the sun5i
family, HDMI support for the A10s, plus a lot of new things for the V3S and
the A83T.

* tag 'sunxi-dt-for-4.13' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux: (47 commits)
  ARM: sun6i: a31s: primo81: Enable battery power supply
  ARM: sun6i: a31s: primo81: Change USB OTG to OTG mode
  ARM: sun8i: a83t: Add dt node for the syscon control module
  ARM: sun8i: a83t: Add device node for R_PIO
  ARM: sun8i: v3s: add device nodes for DE2 display pipeline
  ARM: dts: sunxi: add SoC specific compatibles for the crypto nodes
  ARM: sun5i: add a cryptographic engine node
  ARM: sun8i: a83t: Add device node for PRCM
  ARM: dts: sun8i: h3: Add initial NanoPi M1 Plus support
  ARM: dts: orange-pi-zero: add node for SPI NOR
  ARM: sun7i: a20: cubietruck: Tie AXP209's USB power supply to USB PHY
  ARM: sun6i: a31: hummingbird: Enable AXP221's ACIN power supply
  ARM: sun4i: a10: cubieboard: Enable AXP209's ACIN power supply
  ARM: sun7i: a20: bananapi-m1-plus: Enable AXP209's ACIN power supply
  ARM: sun7i: a20: cubieboard2: Enable AXP209's ACIN power supply
  ARM: sun7i: a20: cubieboard2: Move usb_otg node for alphabetical ordering
  ARM: sun8i: a83t: cubietruck-plus: Enable SPDIF output
  ARM: sun8i: a83t: cubietruck-plus: Add LED device nodes
  ARM: sun8i: a83t: Add device node for SPDIF transmitter
  ARM: sun8i: a83t: Add device node for DMA controller
  ...

Signed-off-by: Olof Johansson <olof@lixom.net>
6 years agoMerge tag 'amlogic-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux...
Olof Johansson [Mon, 19 Jun 2017 03:37:56 +0000 (20:37 -0700)]
Merge tag 'amlogic-dt' of git://git./linux/kernel/git/khilman/linux-amlogic into next/dt

Amlogic 32-bit DT changes for v4.13:
- minor reorganization to support different busses
- add/use real clock controller

* tag 'amlogic-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-amlogic:
  ARM: dts: meson8: add and use the real clock controller
  ARM: dts: meson: Extend L2 cache controller node for Meson8 and Meson8b
  ARM: dts: meson8b: inherit meson.dtsi from meson8b.dtsi
  ARM: dts: meson: organize devices in their corresponding busses

Signed-off-by: Olof Johansson <olof@lixom.net>
6 years agoMerge tag 'gemini-v4.13-dts-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linus...
Olof Johansson [Mon, 19 Jun 2017 03:31:59 +0000 (20:31 -0700)]
Merge tag 'gemini-v4.13-dts-2' of git://git./linux/kernel/git/linusw/linux-nomadik into next/dt

Gemini DTS patches for v4.13, take 2:
- Add DMA controller
- Add PATA controller and SATA bridge

* tag 'gemini-v4.13-dts-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-nomadik:
  ARM: dts: add Gemini PATA/SATA support
  ARM: dts: Add Gemini DMA controller

Signed-off-by: Olof Johansson <olof@lixom.net>
6 years agoMerge tag 'arm-soc/for-4.13/devicetree' of http://github.com/Broadcom/stblinux into...
Olof Johansson [Mon, 19 Jun 2017 03:15:54 +0000 (20:15 -0700)]
Merge tag 'arm-soc/for-4.13/devicetree' of github.com/Broadcom/stblinux into next/dt

This pull request contains Broadcom ARM-based Device Tree changes for 4.13.

Note that Baruch's changes are fixes that are currently included in v4.12-rc2,
but they are also included here in order to keep this tag based off v4.12-rc1.

Please pull the following:

- Rafal adds CPU and thermal zones to the Northstar (BCM5301X) Device Tree and he
  also adds the MDIO controller nodes for later use by USB PHYs

- Eric adds support for the V3D engine and Ethernet switch on the Cygnus
  platforms, he also adds a set of Device Tree sources and include files for the
  Raspberry Pi 3 (BCM2837) to be used with the ARM/Linux kernel,

- Jon adds CPU and thermal zones to the Northstar Plus Device Tree files

- Stefan updates the Raspberry Pi DTS files with thermal trip points and zones,
  adds support for the USB OTG on the Raspberry Pi Zero which includes the
  proper dwc2 configuration, a generic USB PHY and finally the enabling of the
  OTG controller by including the proper DTS include file

- Gerd switches the Raspberry Pi DTS files to use the SDHOST controller (faster
  than the SDHCI)

* tag 'arm-soc/for-4.13/devicetree' of http://github.com/Broadcom/stblinux:
  ARM: dts: bcm2835-rpi-zero: Enable OTG mode
  ARM: dts: bcm283x: Add generic USB PHY
  ARM: dts: bcm283x: Add dtsi for OTG mode
  ARM: dts: Cygnus: Add the ethernet switch and ethernet PHY
  ARM: dts: NSP: Add Thermal Support
  ARM: dts: Cygnus: Add BCM11360's V3D device
  ARM: dts: BCM5301X: Specify MDIO bus in the DT
  ARM: dts: BCM5301X: Add CPU thermal sensor and zone
  ARM: dts: bcm283x: switch from &sdhci to &sdhost
  ARM: dts: bcm283x: Add CPU thermal zone with 1 trip point
  ARM: dts: Add devicetree for the Raspberry Pi 3, for arm32 (v6)

Signed-off-by: Olof Johansson <olof@lixom.net>
6 years agoMerge tag 'uniphier-dt-v4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/masahi...
Olof Johansson [Mon, 19 Jun 2017 03:11:08 +0000 (20:11 -0700)]
Merge tag 'uniphier-dt-v4.13' of git://git./linux/kernel/git/masahiroy/linux-uniphier into next/dt

UniPhier ARM SoC DT updates for v4.13

- fix W=1 build warnings
- use SPDX License Identifier
- add generic compatible string for I2C EEPROM

* tag 'uniphier-dt-v4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-uniphier:
  ARM: dts: uniphier: Add generic compatible string for I2C EEPROM
  ARM: dts: uniphier: use SPDX-License-Identifier
  ARM: dts: uniphier: fix simple-bus unit address format error
  ARM: dts: uniphier: Use - instead of @ for DT OPP entries

Signed-off-by: Olof Johansson <olof@lixom.net>
6 years agoMerge tag 'stm32-dt-for-v4.13-1' of git://git.kernel.org/pub/scm/linux/kernel/git...
Olof Johansson [Mon, 19 Jun 2017 03:06:32 +0000 (20:06 -0700)]
Merge tag 'stm32-dt-for-v4.13-1' of git://git./linux/kernel/git/atorgue/stm32 into next/dt

STM32 DT updates for v4.13, round 1

Highlights:
----------
 - Add stm32h743-disco board support
 - Add stm32f746-disco board support
 - Add stm32f769-disco board support
 - Enable LTDC & simple pannel on stm32f429-eval
 - Enable Watchdog on stm32f429-eval
 - Enable DCMI on stm32f429-eval
 - Enable STMPE1600 io expander on stm32f429-eval
 - Enable OV2640 camera on stm32f429-eval
 - Enable CRC on stm32f429-eval & stm32f429-disco

* tag 'stm32-dt-for-v4.13-1' of git://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32:
  ARM: dts: stm32: Add stm32h743i-disco board
  ARM: dts: stm32: Add usart2 support on stm32h743
  ARM: dts: stm32: Add usart2_pins on stm32h743
  ARM: dts: stm32: enable CRC32 on stm32429i-eval board
  ARM: dts: stm32: enable CRC32 on stm32429-disco board
  ARM: dts: stm32: Add CRC support to stm32f429
  ARM: dts: stm32: Enable OV2640 camera support of STM32F429-EVAL board
  ARM: dts: stm32: Enable STMPE1600 gpio expander of STM32F429-EVAL board
  ARM: dts: stm32: Enable DCMI camera interface on STM32F429-EVAL board
  ARM: dts: stm32: Enable DCMI support on STM32F429 MCU
  ARM: dts: stm32: Add missing reset-cells node in stm32f746
  ARM: dts: stm32: Set gpio controller as interrupt controller on F4 and F7
  ARM: dts: stm32: Add watchdog support for STM32F429 eval board
  ARM: dts: stm32: Add watchdog support for STM32F429 SoC
  ARM: dts: stm32: Enable ltdc & simple panel on stm32f429-Eval board
  ARM: dts: stm32: Add ltdc support on stm32f429 MCU
  ARM: dts: stm32: add stm32f769I & stm32f746 discovery board support

Signed-off-by: Olof Johansson <olof@lixom.net>
6 years agoMerge tag 'v4.12-next-dts32' of https://github.com/mbgg/linux-mediatek into next/dt
Olof Johansson [Mon, 19 Jun 2017 02:22:03 +0000 (19:22 -0700)]
Merge tag 'v4.12-next-dts32' of https://github.com/mbgg/linux-mediatek into next/dt

Add device tree nodes for
mt7623:
- clocks
- power domain
- pmic-wrapper
- pinctrl
- i2c
- spi
- nand
- mmc
- usb
- pwm
- ethernet
- crypto engine
- infared remote control
- audio controller
- ADC
- efuse
- thermal driver
- HW random generator

mt2701:
- NOR flash
- JPEG decoder
- i2c
- audio controller

* tag 'v4.12-next-dts32' of https://github.com/mbgg/linux-mediatek: (25 commits)
  arm: dts: mediatek: Add audio driver node for MT2701
  arm: dts: Add Mediatek MT2701 i2c device node
  arm: dts: mt2701: Add node for Mediatek JPEG Decoder
  arm: dts: mt2701: add nor flash node
  ARM: dts: mt2701: Add mtk-cirq node for mt2701
  arm: dts: mt7623: add Sean as one of authors for mt7623.dtsi files
  arm: dts: mt7623: add thermal nodes to the mt7623.dtsi file
  arm: dts: mt7623: add efuse nodes to the mt7623.dtsi file
  arm: dts: mt7623: add auxadc nodes to the mt7623.dtsi file
  arm: dts: mt7623: add rng nodes to the mt7623.dtsi file
  arm: dts: mt7623: add afe nodes to the mt7623.dtsi file
  arm: dts: mt7623: add ir nodes to the mt7623.dtsi file
  arm: dts: mt7623: add crypto engine nodes to the mt7623.dtsi file
  arm: dts: mt7623: add ethernet nodes to the mt7623.dtsi file
  arm: dts: mt7623: add pwm nodes to the mt7623.dtsi file
  arm: dts: mt7623: add usb nodes to the mt7623.dtsi file
  arm: dts: mt7623: add mmc nodes to the mt7623.dtsi file
  arm: dts: mt7623: add nand nodes to the mt7623.dtsi file
  arm: dts: mt7623: add spi nodes to the mt7623.dtsi file
  arm: dts: mt7623: add i2c nodes to the mt7623.dtsi file
  ...

Signed-off-by: Olof Johansson <olof@lixom.net>
6 years agoMerge tag 'keystone_dts_for_4.13' of git://git.kernel.org/pub/scm/linux/kernel/git...
Olof Johansson [Mon, 19 Jun 2017 02:14:52 +0000 (19:14 -0700)]
Merge tag 'keystone_dts_for_4.13' of git://git./linux/kernel/git/ssantosh/linux-keystone into next/dt

ARM: dts: Keystone K2G ICE EVM support for v4.13

* tag 'keystone_dts_for_4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone:
  ARM: dts: keystone: Add minimum support for K2G ICE evm
  ARM: keystone: Create new binding for K2G ICE evm
  ARM: dts: k2g-evm: Add unit address to memory node
  ARM: dts: keystone-k2g: Remove skeleton.dtsi

Signed-off-by: Olof Johansson <olof@lixom.net>
6 years agoMerge tag 'samsung-dt-4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk...
Olof Johansson [Mon, 19 Jun 2017 02:10:31 +0000 (19:10 -0700)]
Merge tag 'samsung-dt-4.13' of git://git./linux/kernel/git/krzk/linux into next/dt

Samsung DeviceTree update for v4.13:
1. Add HDMI CEC to Exynos5 SoCs.
2. Minor cleanups and readability improvements.

* tag 'samsung-dt-4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux:
  ARM: dts: exynos: Use human-friendly symbols for GIC interrupt properties
  ARM: dts: exynos: Use human-friendly symbols for interrupt flags in board sources
  ARM: dts: exynos: Add HDMI CEC device to Exynos5 SoC family
  ARM: dts: exynos: Remove MFC reserved buffers

Signed-off-by: Olof Johansson <olof@lixom.net>
6 years agoMerge tag 'v4.13-rockchip-dts32-1' of git://git.kernel.org/pub/scm/linux/kernel/git...
Olof Johansson [Mon, 19 Jun 2017 02:07:25 +0000 (19:07 -0700)]
Merge tag 'v4.13-rockchip-dts32-1' of git://git./linux/kernel/git/mmind/linux-rockchip into next/dt

A bunch of changes including mali gpu nodes for rk3288 boards
following (and including) the new Mali Midgard binding; a lot of
improvements for the rk3228/rk3229 socs (tsadc, operating points,
usb, clock-rates, pinctrl, watchdog); finalizing the rk1108->rv1108
rename and adc buttons for the rk3288 firefly boards.

* tag 'v4.13-rockchip-dts32-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
  ARM: dts: rockchip: enable usb for rk3229 evb board
  ARM: dts: rockchip: add usb nodes on rk322x
  ARM: dts: rockchip: add adc button for Firefly
  ARM: dts: rockchip: enable ARM Mali GPU on rk3288-veyron
  ARM: dts: rockchip: enable ARM Mali GPU on rk3288-firefly
  ARM: dts: rockchip: enable ARM Mali GPU on rk3288-rock2-som
  ARM: dts: rockchip: add ARM Mali GPU node for rk3288
  dt-bindings: gpu: add bindings for the ARM Mali Midgard GPU
  ARM: dts: rockchip: set a sane frequence for tsadc on rk322x
  ARM: dts: rockchip: add operating-points-v2 for cpu on rk322x
  ARM: dts: rockchip: set default rates for core clocks on rk322x
  ARM: dts: rockchip: add second uart2 pinctrl on rk322x
  ARM: dts: rockchip: correct rk322x uart2 pinctrl
  ARM: dts: rockchip: add watchdog device node on rk322x
  clk: rockchip: add clock-ids for more rk3228 clocks
  clk: rockchip: add ids for camera on rk3399
  ARM: dts: rockchip: fix rk322x i2s1 pinctrl error
  ARM: dts: rockchip: rename RK1108-evb to RV1108-evb
  ARM: dts: rockchip: rename core dtsi from RK1108 to RV1108
  ARM: dts: rockchip: Setup usb vbus-supply on rk3288-rock2

Signed-off-by: Olof Johansson <olof@lixom.net>
6 years agoMerge tag 'davinci-for-v4.13/dt' of git://git.kernel.org/pub/scm/linux/kernel/git...
Olof Johansson [Mon, 19 Jun 2017 02:05:14 +0000 (19:05 -0700)]
Merge tag 'davinci-for-v4.13/dt' of git://git./linux/kernel/git/nsekhar/linux-davinci into next/dt

Miscellaneous DT support updates for DA850. Includes Lego mindstorms
EV3 battery support, DMA support for MUSB, and non-critical fixes to
GPIO nodes of DA850's GPIO controller and GPIO expander available on
DA850 EVM.

* tag 'davinci-for-v4.13/dt' of git://git.kernel.org/pub/scm/linux/kernel/git/nsekhar/linux-davinci:
  ARM: dts: da850-evm: fix tca6416 for use with GPIO hogs
  ARM: dts: da850: Add interrupt-controller property to gpio node
  ARM: dts: da850: Add CPPI 4.1 DMA to USB OTG controller
  ARM: dts: da850-lego-ev3: Add node for LEGO MINDSTORMS EV3 Battery

Signed-off-by: Olof Johansson <olof@lixom.net>
6 years agoMerge tag 'omap-for-v4.13/dt-signed' of git://git.kernel.org/pub/scm/linux/kernel...
Olof Johansson [Mon, 19 Jun 2017 01:56:35 +0000 (18:56 -0700)]
Merge tag 'omap-for-v4.13/dt-signed' of git://git./linux/kernel/git/tmlind/linux-omap into next/dt

Device tree changes for omaps for v4.13 merge window.
This adds support for am335x-boneblue. The rest of
the changes are for enabling features on various
devices with the git shortlog describing the changes.

* tag 'omap-for-v4.13/dt-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  arm: dts: am33xx: Remove redundant interrupt-parent property
  ARM: dts: bonegreen-wireless: add WL1835 Bluetooth device node
  ARM: dts: AM43XX: Remove min and max voltage values for dcdc3
  ARM: dts: Add am335x-boneblue
  ARM: dts: twl4030: Add missing madc reference for bci subnode
  ARM: dts: am43xx-clocks: Add support for CLKOUT2
  ARM: dts: Configure USB host for 37xx-evm
  ARM: dts: omap: Add generic compatible string for I2C EEPROM
  ARM: dts: Enable earlycon stdout path for LogicPD torpedo
  ARM: dts: Enable earlycon stdout path for duovero
  arm: dts: boneblack-wireless: add WL1835 Bluetooth device node
  ARM: dts: am571x-idk: Enable the system mailboxes 5 and 6
  ARM: dts: am572x-idk: Enable the system mailboxes 5 and 6
  ARM: dts: omap4-devkit8000: fix gpmc ranges property
  ARM: dts: omap3: Remove 'enable-active-low' property
  ARM: dts: OMAP5: uevm: add µSD card detect
  ARM: dts: omap4-droid4: Add bluetooth
  ARM: dts: dra7x-evm: Enable dual-role mode for USB1
  ARM: dts: Use - instead of @ for DT OPP entries for TI SoCs
  ARM: dts: am335x-phycore-som: fix rv4162 compatible

Signed-off-by: Olof Johansson <olof@lixom.net>
6 years agoARM: sun6i: a31s: primo81: Enable battery power supply
Chen-Yu Tsai [Fri, 9 Jun 2017 16:05:49 +0000 (00:05 +0800)]
ARM: sun6i: a31s: primo81: Enable battery power supply

The MSI Primo81 tablet has a 3500 mAh 3.7V LiPo battery.

Enable the PMIC's battery power supply so the battery can be monitored.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
6 years agoARM: sun6i: a31s: primo81: Change USB OTG to OTG mode
Chen-Yu Tsai [Fri, 9 Jun 2017 16:05:48 +0000 (00:05 +0800)]
ARM: sun6i: a31s: primo81: Change USB OTG to OTG mode

Now that we have support for the AXP221 PMIC's USB VBUS detection and
DRIVEVBUS vbus control, we can use the USB OTG port in proper OTG mode.

This patch enables the aforementioned PMIC functions, adds the OTG ID
detection pin to the USB PHY node, and changes the mode of USB OTG to
"otg".

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
6 years agoARM: sun8i: a83t: Add dt node for the syscon control module
Corentin Labbe [Wed, 7 Jun 2017 17:33:44 +0000 (19:33 +0200)]
ARM: sun8i: a83t: Add dt node for the syscon control module

This patch add the dt node for the syscon register present on the
Allwinner A83T

Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
Reviewed-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
6 years agoARM: dts: add Gemini PATA/SATA support
Linus Walleij [Mon, 20 Mar 2017 22:39:26 +0000 (23:39 +0100)]
ARM: dts: add Gemini PATA/SATA support

The NAS4229B and SQ201 Gemini systems have a PATA controller
which is linked to a SATA bridge in the SoC. Enable both
platforms to use the PATA/SATA devices.

Cc: John Feng-Hsin Chiang <john453@faraday-tech.com>
Cc: Greentime Hu <green.hu@gmail.com>
Acked-by: Hans Ulli Kroll <ulli.kroll@googlemail.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
6 years agoARM: dts: Add Gemini DMA controller
Linus Walleij [Sat, 1 Apr 2017 17:55:48 +0000 (19:55 +0200)]
ARM: dts: Add Gemini DMA controller

This adds the Faraday Technology FTDMAC020 DMA controller to
the Gemini SoC DTSI file. It is only used for memcpy work so
we can activate it for all users of the chipset.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
6 years agoMerge tag 'bcm2835-dt-next-2017-06-12' into devicetree/next
Florian Fainelli [Tue, 13 Jun 2017 19:38:48 +0000 (12:38 -0700)]
Merge tag 'bcm2835-dt-next-2017-06-12' into devicetree/next

This pull request brings in installation of the RPi3 DT in 32-bit
mode, the new thermal nodes, switches to the faster sdhost controller
for MMC, and enables USB OTG mode on the Pi 0.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
6 years agoARM: dts: bcm2835-rpi-zero: Enable OTG mode
Stefan Wahren [Sun, 21 May 2017 16:44:38 +0000 (18:44 +0200)]
ARM: dts: bcm2835-rpi-zero: Enable OTG mode

Since 635c21068cf ("usb: dwc2: gadget: Fix WARN_ON messages
during FIFO init") the dwc2 driver is able to handle OTG and gadget
mode for bcm2835. So enable this feature for the Raspberry Pi Zero.

Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
Signed-off-by: Eric Anholt <eric@anholt.net>
6 years agoARM: dts: bcm283x: Add generic USB PHY
Stefan Wahren [Sun, 21 May 2017 16:44:37 +0000 (18:44 +0200)]
ARM: dts: bcm283x: Add generic USB PHY

In order to use dwc2 in OTG or gadget mode the USB PHY should be
specified. Since there is no bcm283x USB PHY driver use the generic
one.

Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
Acked-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Eric Anholt <eric@anholt.net>
6 years agoARM: dts: bcm283x: Add dtsi for OTG mode
Stefan Wahren [Sun, 21 May 2017 16:44:36 +0000 (18:44 +0200)]
ARM: dts: bcm283x: Add dtsi for OTG mode

The Raspberry Pi Zero also supports OTG mode. So provide a dtsi file
to configure the USB interface accordingly. The fifo sizes are optimized
for device endpoint 6 and 7 with the maximum of 768.

Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
Signed-off-by: Eric Anholt <eric@anholt.net>
6 years agoARM: dts: Cygnus: Add the ethernet switch and ethernet PHY
Eric Anholt [Fri, 28 Apr 2017 22:22:04 +0000 (15:22 -0700)]
ARM: dts: Cygnus: Add the ethernet switch and ethernet PHY

Cygnus has a single amac controller connected to the B53 switch with 2
PHYs. On the BCM911360_EP platform, those two PHYs are connected to the
external ethernet jacks.

Signed-off-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
6 years agoARM: dts: NSP: Add Thermal Support
Jon Mason [Fri, 28 Apr 2017 20:11:31 +0000 (16:11 -0400)]
ARM: dts: NSP: Add Thermal Support

Add thermal support via the ns-thermal driver and create a single
thermal zone for the entire SoC.

Signed-off-by: Jon Mason <jon.mason@broadcom.com>
Acked-by: Eduardo Valentin <edubezval@gmail.com>
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
6 years agoARM: dts: Cygnus: Add BCM11360's V3D device
Eric Anholt [Tue, 18 Apr 2017 23:32:34 +0000 (16:32 -0700)]
ARM: dts: Cygnus: Add BCM11360's V3D device

This loads the VC4 driver on the 911360_entphn platform (with the
corresponding series sent to dri-devel), which is supported by master
of the Mesa tree.

Signed-off-by: Eric Anholt <eric@anholt.net>
Acked-by: Scott Branden <scott.branden@broadcom.com>
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
6 years agoARM: dts: BCM5301X: Specify MDIO bus in the DT
Rafał Miłecki [Wed, 19 Apr 2017 21:54:25 +0000 (23:54 +0200)]
ARM: dts: BCM5301X: Specify MDIO bus in the DT

Northstar devices have MDIO bus that may contain various PHYs attached.
A common example is USB 3.0 PHY (that doesn't have an MDIO driver yet).

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
6 years agoARM: dts: BCM5301X: Add CPU thermal sensor and zone
Rafał Miłecki [Fri, 14 Apr 2017 21:42:28 +0000 (23:42 +0200)]
ARM: dts: BCM5301X: Add CPU thermal sensor and zone

This uses CPU thermal sensor available on every Northstar chipset to
monitor temperature. We don't have any cooling or throttling so only a
critical trip was added.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Acked-by: Jon Mason <jon.mason@broadcom.com>
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
6 years agoARM: dts: meson8: add and use the real clock controller
Martin Blumenstingl [Sun, 4 Jun 2017 18:33:41 +0000 (20:33 +0200)]
ARM: dts: meson8: add and use the real clock controller

This removes the dummy clk81 gate and replaces it with the actual clock
controller's CLKID_CLK81. This will also allow us to pass the real clock
IDs to all devices where the clock is controlled by clkc in the future.

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Acked-by: Jerome Brunet <jbrunet@baylibre.com>
Signed-off-by: Kevin Hilman <khilman@baylibre.com>
6 years agoARM: dts: uniphier: Add generic compatible string for I2C EEPROM
Javier Martinez Canillas [Tue, 23 May 2017 13:34:40 +0000 (15:34 +0200)]
ARM: dts: uniphier: Add generic compatible string for I2C EEPROM

The at24 driver allows to register I2C EEPROM chips using different vendor
and devices, but the I2C subsystem does not take the vendor into account
when matching using the I2C table since it only has device entries.

But when matching using an OF table, both the vendor and device has to be
taken into account so the driver defines only a set of compatible strings
using the "atmel" vendor as a generic fallback for compatible I2C devices.

So add this generic fallback to the device node compatible string to make
the device to match the driver using the OF device ID table.

Signed-off-by: Javier Martinez Canillas <javier@dowhile0.org>
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
6 years agoARM: dts: stm32: Add stm32h743i-disco board
Patrice Chotard [Wed, 7 Jun 2017 07:16:00 +0000 (09:16 +0200)]
ARM: dts: stm32: Add stm32h743i-disco board

Add basic support for stm32h743i-discovery board

This board offers :
  _ 2MBytes Flash
  _ 1 x micro USB OTG port
  _ 1 x STLink connector (micro USB)
  _ 1 x micro SD card slot
  _ 1 x RJ45 connector
  _ 1 x RCA connector
  _ 2 x Audio jack connectors (in and out)
  _ 2 x speaker connectors (left and right)
  _ 1 x joystick
  _ 1 x DCMI connector (Digital camera interface)
  _ 1 x 4 inch DSI LCD (Display Serial Interface)
  _ Arduino Uno Connectors
  _ 2 x PIO connectors (PMOD and PMOD+)
  _ 1 x wakeup button
  _ 1 x reset button

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
Signed-off-by: Alexandre TORGUE <alexandre.torgue@st.com>
6 years agoARM: dts: stm32: Add usart2 support on stm32h743
Patrice Chotard [Wed, 7 Jun 2017 07:16:00 +0000 (09:16 +0200)]
ARM: dts: stm32: Add usart2 support on stm32h743

This usart is used for console output on stm32h743i-disco board

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
Signed-off-by: Alexandre TORGUE <alexandre.torgue@st.com>
6 years agoARM: dts: stm32: Add usart2_pins on stm32h743
Patrice Chotard [Wed, 7 Jun 2017 07:16:00 +0000 (09:16 +0200)]
ARM: dts: stm32: Add usart2_pins on stm32h743

Add usart2 pins definition in order to add usart2 support
dedicated for console output on stm32h743i-disco board.

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
Signed-off-by: Alexandre TORGUE <alexandre.torgue@st.com>
6 years agoARM: sun8i: a83t: Add device node for R_PIO
Chen-Yu Tsai [Sat, 3 Jun 2017 14:44:27 +0000 (22:44 +0800)]
ARM: sun8i: a83t: Add device node for R_PIO

The A83T has 1 pingroup with 13 pins belonging to the R_PIO
or special pin controller.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
6 years agoARM: dts: exynos: Use human-friendly symbols for GIC interrupt properties
Krzysztof Kozlowski [Fri, 2 Jun 2017 18:13:46 +0000 (20:13 +0200)]
ARM: dts: exynos: Use human-friendly symbols for GIC interrupt properties

Replace hard-coded values of type of GIC interrupt and its flags with
respective macros from header to increase code readability.

Suggested-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
6 years agoARM: dts: exynos: Use human-friendly symbols for interrupt flags in board sources
Krzysztof Kozlowski [Fri, 2 Jun 2017 18:13:45 +0000 (20:13 +0200)]
ARM: dts: exynos: Use human-friendly symbols for interrupt flags in board sources

Replace hard-coded values of interrupt flags with respective macros from
header to increase code readability.

Suggested-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
6 years agoARM: dts: stm32: enable CRC32 on stm32429i-eval board
Cosar Dindar [Mon, 22 May 2017 14:35:00 +0000 (16:35 +0200)]
ARM: dts: stm32: enable CRC32 on stm32429i-eval board

Enable the CRC32 crypto on stm32429i-eval board.

Signed-off-by: Cosar Dindar <cosardindar@gmail.com>
Signed-off-by: Alexandre TORGUE <alexandre.torgue@st.com>
6 years agoARM: dts: stm32: enable CRC32 on stm32429-disco board
Cosar Dindar [Mon, 22 May 2017 14:34:00 +0000 (16:34 +0200)]
ARM: dts: stm32: enable CRC32 on stm32429-disco board

Enable the CRC32 crypto on stm32429-disco board.

Signed-off-by: Cosar Dindar <cosardindar@gmail.com>
Signed-off-by: Alexandre TORGUE <alexandre.torgue@st.com>
6 years agoARM: dts: stm32: Add CRC support to stm32f429
Cosar Dindar [Mon, 22 May 2017 14:34:00 +0000 (16:34 +0200)]
ARM: dts: stm32: Add CRC support to stm32f429

Add CRC32 Crypto support to stm32f429.

Signed-off-by: Cosar Dindar <cosardindar@gmail.com>
Signed-off-by: Alexandre TORGUE <alexandre.torgue@st.com>
6 years agoARM: dts: stm32: Enable OV2640 camera support of STM32F429-EVAL board
Hugues Fruchet [Fri, 5 May 2017 15:31:00 +0000 (17:31 +0200)]
ARM: dts: stm32: Enable OV2640 camera support of STM32F429-EVAL board

Enable OV2640 camera support of STM32F429-EVAL board.

Signed-off-by: Hugues Fruchet <hugues.fruchet@st.com>
Signed-off-by: Alexandre TORGUE <alexandre.torgue@st.com>
6 years agoARM: dts: stm32: Enable STMPE1600 gpio expander of STM32F429-EVAL board
Hugues Fruchet [Wed, 7 Jun 2017 15:39:11 +0000 (17:39 +0200)]
ARM: dts: stm32: Enable STMPE1600 gpio expander of STM32F429-EVAL board

Enable STMPE1600 gpio expander of STM32F429-EVAL board.

Signed-off-by: Hugues Fruchet <hugues.fruchet@st.com>
Signed-off-by: Alexandre TORGUE <alexandre.torgue@st.com>
6 years agoARM: dts: stm32: Enable DCMI camera interface on STM32F429-EVAL board
Hugues Fruchet [Fri, 5 May 2017 15:31:00 +0000 (17:31 +0200)]
ARM: dts: stm32: Enable DCMI camera interface on STM32F429-EVAL board

Enable DCMI camera interface on STM32F429-EVAL board.

Signed-off-by: Hugues Fruchet <hugues.fruchet@st.com>
Signed-off-by: Alexandre TORGUE <alexandre.torgue@st.com>
6 years agoARM: dts: stm32: Enable DCMI support on STM32F429 MCU
Hugues Fruchet [Fri, 5 May 2017 15:31:00 +0000 (17:31 +0200)]
ARM: dts: stm32: Enable DCMI support on STM32F429 MCU

Enable DCMI camera interface on STM32F429 MCU.

Signed-off-by: Hugues Fruchet <hugues.fruchet@st.com>
Signed-off-by: Alexandre TORGUE <alexandre.torgue@st.com>
6 years agoARM: dts: stm32: Add missing reset-cells node in stm32f746
Lionel Debieve [Wed, 7 Jun 2017 14:50:21 +0000 (16:50 +0200)]
ARM: dts: stm32: Add missing reset-cells node in stm32f746

rcc node must include reset-cells node.

Signed-off-by: Lionel Debieve <lionel.debieve@st.com>
Signed-off-by: Alexandre TORGUE <alexandre.torgue@st.com>
6 years agoARM: dts: stm32: Set gpio controller as interrupt controller on F4 and F7
Alexandre TORGUE [Wed, 7 Jun 2017 14:41:36 +0000 (16:41 +0200)]
ARM: dts: stm32: Set gpio controller as interrupt controller on F4 and F7

This patch set each gpio controller as a interrupt controller. User who
wants to use gpio as interrupt will have choice to use either "gpiolib"
interface or "common" interrupt interface.

Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Alexandre TORGUE <alexandre.torgue@st.com>
6 years agoARM: dts: stm32: Add watchdog support for STM32F429 eval board
Yannick Fertre [Wed, 7 Jun 2017 13:39:40 +0000 (15:39 +0200)]
ARM: dts: stm32: Add watchdog support for STM32F429 eval board

This patch adds watchdog support for STM32x9I-Eval board.

Signed-off-by: Yannick Fertre <yannick.fertre@st.com>
Signed-off-by: Alexandre TORGUE <alexandre.torgue@st.com>
6 years agoARM: dts: stm32: Add watchdog support for STM32F429 SoC
Yannick Fertre [Thu, 6 Apr 2017 12:19:00 +0000 (14:19 +0200)]
ARM: dts: stm32: Add watchdog support for STM32F429 SoC

Add watchdog into DT for stm32f429 family.

Signed-off-by: Yannick FERTRE <yannick.fertre@st.com>
Signed-off-by: Alexandre TORGUE <alexandre.torgue@st.com>
6 years agoARM: sun8i: v3s: add device nodes for DE2 display pipeline
Icenowy Zheng [Wed, 24 May 2017 11:17:23 +0000 (19:17 +0800)]
ARM: sun8i: v3s: add device nodes for DE2 display pipeline

Allwinner V3s SoC features a "Display Engine 2.0" with only one mixer
and only one TCON connected to this mixer, which have RGB LCD output.

Add device nodes for this display pipeline.

Signed-off-by: Icenowy Zheng <icenowy@aosc.io>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
6 years agoARM: dts: sunxi: add SoC specific compatibles for the crypto nodes
Antoine Tenart [Thu, 1 Jun 2017 19:39:05 +0000 (21:39 +0200)]
ARM: dts: sunxi: add SoC specific compatibles for the crypto nodes

Add SoC specific compatibles for all sunXi crypto nodes, in addition to
the one already used (allwinner,sun4i-a10-crypto).

Signed-off-by: Antoine Tenart <antoine.tenart@free-electrons.com>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
6 years agoARM: sun5i: add a cryptographic engine node
Antoine Tenart [Thu, 1 Jun 2017 19:39:04 +0000 (21:39 +0200)]
ARM: sun5i: add a cryptographic engine node

Add a node for the cryptographic engine that can be found on sun5i SoCs.
This cryptographic engine is compatible with the Allwinner cryptographic
accelerator driver.

Signed-off-by: Antoine Tenart <antoine.tenart@free-electrons.com>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
6 years agoARM: dts: stm32: Enable ltdc & simple panel on stm32f429-Eval board
Yannick Fertre [Wed, 7 Jun 2017 13:20:53 +0000 (15:20 +0200)]
ARM: dts: stm32: Enable ltdc & simple panel on stm32f429-Eval board

Enable ltdc & enable am-480272h3tmqw-t01h panel.

Signed-off-by: Yannick Fertre <yannick.fertre@st.com>
Signed-off-by: Alexandre TORGUE <alexandre.torgue@st.com>
6 years agoARM: dts: stm32: Add ltdc support on stm32f429 MCU
Yannick Fertre [Wed, 7 Jun 2017 12:58:10 +0000 (14:58 +0200)]
ARM: dts: stm32: Add ltdc support on stm32f429 MCU

Add LTDC (Lcd-tft Display Controller) support.

Signed-off-by: Yannick Fertre <yannick.fertre@st.com>
Signed-off-by: Alexandre TORGUE <alexandre.torgue@st.com>
6 years agoARM: dts: stm32: add stm32f769I & stm32f746 discovery board support
Vikas Manocha [Wed, 7 Jun 2017 11:55:25 +0000 (13:55 +0200)]
ARM: dts: stm32: add stm32f769I & stm32f746 discovery board support

Stm32f769I & stm32f746 are MCUs of stm32f7 family. Here are the major
specs of the two boards:

stm32f769I discovery board:
- Cortex-M7 core @216MHz
- 2MB mcu internal flash
- 512KB internal sram
- 16MB sdram memory
- 64MB qspi flash memory
- 4 inch wvga LCD-TFT Display

stm32f746 discovery board:
- Cortex-M7 core @216MHz
- 1MB mcu internal flash
- 320KB internal sram
- 8MB sdram memory
- 16MB qspi flash memory
- 4.3 inch 480x272 LCD-TFT display

Signed-off-by: Vikas Manocha <vikas.manocha@st.com>
Signed-off-by: Alexandre TORGUE <alexandre.torgue@st.com>
6 years agoarm: dts: mediatek: Add audio driver node for MT2701
Garlic Tseng [Thu, 1 Jun 2017 05:42:10 +0000 (13:42 +0800)]
arm: dts: mediatek: Add audio driver node for MT2701

Add audio driver node for mt2701

Signed-off-by: Garlic Tseng <garlic.tseng@mediatek.com>
Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
6 years agoARM: dts: da850-evm: fix tca6416 for use with GPIO hogs
Kevin Hilman [Wed, 31 May 2017 01:21:25 +0000 (18:21 -0700)]
ARM: dts: da850-evm: fix tca6416 for use with GPIO hogs

In order GPIOS from this controller to be used with the "gpio-hogs"
property, the tca6416 node has to properly labeled as a gpio-controller,
and use #gpio-cells.

With that, the SEL_A, SEL_B, SEL_C lines that are used to select VPIF
input can be configured using GPIO hogs.

As an example, example, the configuration below selects the analog video
input on the da850-evm UI board:

&tca6416 {
 status = "okay";

 sel_a {
gpio-hog;
gpios = <7 GPIO_ACTIVE_HIGH>;
output-high;
line-name = "ADC_ENn";
 };
 sel_b {
gpio-hog;
gpios = <6 GPIO_ACTIVE_HIGH>;
output-high;
line-name = "CAMERA_ENn";
 };
 sel_c {
gpio-hog;
gpios = <5 GPIO_ACTIVE_HIGH>;
output-low;
line-name = "VIDEO_IN_ENn";
 };
};

Signed-off-by: Kevin Hilman <khilman@baylibre.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
6 years agoarm: dts: am33xx: Remove redundant interrupt-parent property
Suniel Mahesh [Mon, 5 Jun 2017 18:17:16 +0000 (23:47 +0530)]
arm: dts: am33xx: Remove redundant interrupt-parent property

Interrupt-parent property is defined in the root node as
"interrupt-parent = <&intc>". This interrupt-parent value becomes
the default for the system, so removed redundant "interrupt-parent"
property from mmc, mac, lcdc and tscadc nodes.

Signed-off-by: Suniel Mahesh <sunil.m@techveda.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
6 years agoARM: dts: bonegreen-wireless: add WL1835 Bluetooth device node
Robert Nelson [Mon, 5 Jun 2017 15:36:21 +0000 (10:36 -0500)]
ARM: dts: bonegreen-wireless: add WL1835 Bluetooth device node

This adds the serial slave device for the WL1835 Bluetooth interface.

Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
CC: Ricardo Salveti <ricardo.salveti@linaro.org>
CC: Tony Lindgren <tony@atomide.com>
CC: Jason Kridner <jkridner@beagleboard.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
6 years agoARM: dts: AM43XX: Remove min and max voltage values for dcdc3
Keerthy [Fri, 2 Jun 2017 09:24:01 +0000 (14:54 +0530)]
ARM: dts: AM43XX: Remove min and max voltage values for dcdc3

dcdc3 supplies to DDR on AM43x series. When we set both
min and max values to the same value. The regulator framework
sets that particular voltage. This is bad as we are changing
the ddr voltage when executing from ddr. Hence remove the min and
max values. The ddr supply voltage shall be set from bootloader
when not executing from ddr and not while executing from kernel.

The previous discussion can be found here:

http://www.spinics.net/lists/devicetree/msg56399.html

Signed-off-by: Keerthy <j-keerthy@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
6 years agoARM: dts: Add am335x-boneblue
Robert Nelson [Tue, 30 May 2017 16:20:23 +0000 (11:20 -0500)]
ARM: dts: Add am335x-boneblue

BeagleBone Blue is robotics-oriented version of the BeagleBone Black (BBB).

This board can be indentified by the BLAx value after A335BNLT (BBB)
in the at24 eeprom:
BLAx [aa 55 33 ee 41 33 33 35  42 4e 4c 54 42 4c 41 30 |.U3.A335BNLTBLA2|]

http://beagleboard.org/blue
https://github.com/beagleboard/beaglebone-blue

firmware: https://github.com/beagleboard/beaglebone-black-wireless/tree/master/firmware
wl18xx mac address: /proc/device-tree/ocp/ethernet@4a100000/slave@4a100200/mac-address

Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
CC: Jason Kridner <jkridner@beagleboard.org>
CC: Drew Fustini <drew@beagleboard.org>
Acked-by: Jason Kridner <jkridner@beagleboard.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
6 years agoARM: dts: twl4030: Add missing madc reference for bci subnode
Marek Belisko [Sun, 21 May 2017 10:38:17 +0000 (12:38 +0200)]
ARM: dts: twl4030: Add missing madc reference for bci subnode

The twl4030_charger driver expects an iio channel to detect the
presence of an AC charger by looking at VAC (madc channel 11).
This definition is missing in the device tree.

Signed-off-by: Marek Belisko <marek@goldelico.com>
Signed-off-by: Sebastian Reichel <sre@kernel.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
6 years agoARM: dts: uniphier: use SPDX-License-Identifier
Masahiro Yamada [Mon, 5 Jun 2017 03:57:58 +0000 (12:57 +0900)]
ARM: dts: uniphier: use SPDX-License-Identifier

Follow the recent trend for the license description, and fix the wrongly
stated X11 to MIT.

The X11 license text [1] is explicitly for the X Consortium and has a
couple of extra clauses.  The MIT license text [2] is actually what the
current DT files claim.

[1] https://spdx.org/licenses/X11.html
[2] https://spdx.org/licenses/MIT.html

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
6 years agoARM: dts: uniphier: fix simple-bus unit address format error
Masahiro Yamada [Sat, 13 May 2017 17:20:49 +0000 (02:20 +0900)]
ARM: dts: uniphier: fix simple-bus unit address format error

Compiling the UniPhier DT files with W=1, DTC warns like follows:

Warning (simple_bus_reg): Node /soc/system-bus@58c00000/support_card@1,1f00000/ethernet@00000000 simple-bus unit address format error, expected "0"
Warning (simple_bus_reg): Node /soc/system-bus@58c00000/support_card@1,1f00000/uart@000b0000 simple-bus unit address format error, expected "b0000"
Warning (simple_bus_reg): Node /soc/smpctrl@59800000 simple-bus unit address format error, expected "59801000"

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
6 years agoARM: dts: uniphier: Use - instead of @ for DT OPP entries
Viresh Kumar [Thu, 20 Apr 2017 10:55:10 +0000 (16:25 +0530)]
ARM: dts: uniphier: Use - instead of @ for DT OPP entries

Compiling the DT file with W=1, DTC warns like follows:

Warning (unit_address_vs_reg): Node /opp_table0/opp@1000000000 has a
unit name, but no reg property

Fix this by replacing '@' with '-' as the OPP nodes will never have a
"reg" property.

Reported-by: Krzysztof Kozlowski <krzk@kernel.org>
Reported-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Suggested-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
6 years agoARM: sun8i: a83t: Add device node for PRCM
Chen-Yu Tsai [Wed, 31 May 2017 07:58:20 +0000 (15:58 +0800)]
ARM: sun8i: a83t: Add device node for PRCM

The A83T's PRCM has the same set of clocks and resets as the A64.
However, a few dividers are different. And due to the lack of a low
speed 32.768 kHz oscillator, a few of the clock parents are different.

The PRCM also has controls for various power domains. These are not
supported yet, neither in software nor in the device tree binding.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
6 years agoARM: dts: exynos: Add HDMI CEC device to Exynos5 SoC family
Marek Szyprowski [Wed, 31 May 2017 11:00:17 +0000 (13:00 +0200)]
ARM: dts: exynos: Add HDMI CEC device to Exynos5 SoC family

Exynos5250 and Exynos542x SoCs have the same CEC hardware module as
Exynos4 SoC series, so enable support for it using the same compatible
string.

Tested on Odroid XU3 (Exynos5422) and Google Snow (Exynos5250) boards.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
6 years agoARM: dts: rockchip: enable usb for rk3229 evb board
William Wu [Fri, 2 Jun 2017 07:04:25 +0000 (15:04 +0800)]
ARM: dts: rockchip: enable usb for rk3229 evb board

Rockchip's rk3229 evaluation board has one usb otg controller
and three usb host controllers. Each usb controller connect
with one usb2 phy port through UTMI+ interface. And the three
usb host interfaces use the same GPIO VBUS drive. Let's enable
them to support usb on rk3229 evb board.

Signed-off-by: William Wu <william.wu@rock-chips.com>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
6 years agoARM: dts: rockchip: add usb nodes on rk322x
William Wu [Fri, 2 Jun 2017 07:04:24 +0000 (15:04 +0800)]
ARM: dts: rockchip: add usb nodes on rk322x

This patch adds usb otg/host controllers and phys nodes on rk322x.

Signed-off-by: William Wu <william.wu@rock-chips.com>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
6 years agoARM: dts: augment Moxa and Aspeed DTS for FTTMR010
Linus Walleij [Wed, 24 May 2017 09:07:48 +0000 (11:07 +0200)]
ARM: dts: augment Moxa and Aspeed DTS for FTTMR010

This augments the Moxa Art and Aspeed device trees to:

- Explicitly name the clock "PCLK" as the Faraday FTTMR010
  names it.
- List the Moxa timer as compatible with the Faradat FTTMR010
  vanilla version.
- Add a comment that the Aspeed driver is a Faraday
  FTTMR010 derivative.
- Pass all IRQs to the timer from Aspeed: they are all there
  so they should be in the device tree, we only use the
  first one anyways.

Tested-by: Joel Stanley <joel@jms.id.au>
Tested-by: Jonas Jensen <jonas.jensen@gmail.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Olof Johansson <olof@lixom.net>
6 years agoMerge tag 'gemini-v4.13-dts-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linus...
Olof Johansson [Fri, 2 Jun 2017 00:26:06 +0000 (17:26 -0700)]
Merge tag 'gemini-v4.13-dts-1' of git://git./linux/kernel/git/linusw/linux-nomadik into next/dt

This is a first set of Gemini DTS patches for the v4.13 cycle.

This adds the reset and clock lines to the Gemini core DTS SoC.

These bindings have been ACKed by the DT maintainer Rob.

The reset driver is going to be merged by the reset maintainer.
The clock driver is going to be merged by the clock maintainers.
Each of these have their macro defines coming with them, split
off as separate patches.

A post-rc1 patch will be sumbitted for switching the numerical
values to the defined macros in line with the ARM SoC DT header
merge strategy.

* tag 'gemini-v4.13-dts-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-nomadik:
  ARM: dts: Add clocks to the Gemini SoC
  ARM: dts: Add the Gemini reset controller
  dt-bindings: Augment Gemini for clocks, resets

Signed-off-by: Olof Johansson <olof@lixom.net>
6 years agoMerge tag 'renesas-dt-for-v4.13' of https://git.kernel.org/pub/scm/linux/kernel/git...
Olof Johansson [Fri, 2 Jun 2017 00:24:15 +0000 (17:24 -0700)]
Merge tag 'renesas-dt-for-v4.13' of https://git./linux/kernel/git/horms/renesas into next/dt

Renesas ARM Based SoC DT Updates for v4.13

* Switch to panel-lvds bindings for Mitsubishi panels
* Clean up PFC node names
* Enable UHS-I SDR-50 and SDR-104 on r8a7793/Gose
* Add GyroADC clock and device for r8a7791 SoC
* Add USB clocks to device tree for r7s72100 SoC

* tag 'renesas-dt-for-v4.13' of https://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: dts: renesas: Switch to panel-lvds bindings for Mitsubishi panels
  ARM: dts: gose: Enable UHS-I SDR-50 and SDR-104
  ARM: dts: r8a7793: set maximum frequency for SDHI clocks
  ARM: dts: r8a7791: Add GyroADC clock and device node
  ARM: dts: r7s72100: add usb clocks to device tree
  ARM: dts: sh73a0: update PFC node name to pin-controller
  ARM: dts: r8a7793: update PFC node name to pin-controller
  ARM: dts: r8a7791: update PFC node name to pin-controller
  ARM: dts: r8a7790: update PFC node name to pin-controller
  ARM: dts: r8a7779: update PFC node name to pin-controller
  ARM: dts: r8a7778: update PFC node name to pin-controller
  ARM: dts: r8a7740: update PFC node name to pin-controller
  ARM: dts: r8a73a4: update PFC node name to pin-controller
  ARM: dts: emev2: update PFC node name to pin-controller
  ARM: dts: r7s72100: add USB bit definitions
  ARM: dts: r7s72100: add Renesas RZ/A1 pinctrl header
  ARM: dts: r8a7791: add GyroADC clock

Signed-off-by: Olof Johansson <olof@lixom.net>
6 years agoARM: dts: rockchip: add adc button for Firefly
Randy Li [Tue, 30 May 2017 15:52:46 +0000 (23:52 +0800)]
ARM: dts: rockchip: add adc button for Firefly

The only adc button connected to adc input is recovery button.

Signed-off-by: Randy Li <ayaka@soulik.info>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
6 years agoARM: dts: sun8i: h3: Add initial NanoPi M1 Plus support
Jagan Teki [Tue, 30 May 2017 17:42:50 +0000 (17:42 +0000)]
ARM: dts: sun8i: h3: Add initial NanoPi M1 Plus support

NanoPi M1 Plus is designed and developed by FriendlyElec
for professionals, enterprise users, makers and hobbyists
using the Allwinner H3 SOC.

NanoPi M1 Plus key features
- Allwinner H3, Quad-core Cortex-A7@1.2GHz
- 1GB DDR3 RAM
- 8GB eMMC
- microSD slot
- 10/100/1000M Ethernet
- Serial Debug Port
- 5V 2A DC power-supply

Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
6 years agoARM: dts: am43xx-clocks: Add support for CLKOUT2
Peter Ujfalusi [Wed, 24 May 2017 08:43:41 +0000 (11:43 +0300)]
ARM: dts: am43xx-clocks: Add support for CLKOUT2

Add the needed clock nodes for the CLKOUT2 to be usable by boards.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Acked-by: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
6 years agoarm: dts: Add Mediatek MT2701 i2c device node
Jun Gao [Fri, 26 May 2017 07:35:07 +0000 (15:35 +0800)]
arm: dts: Add Mediatek MT2701 i2c device node

Add MT2701 i2c device node.

Signed-off-by: Jun Gao <jun.gao@mediatek.com>
Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
6 years agoarm: dts: mt2701: Add node for Mediatek JPEG Decoder
Rick Chang [Wed, 14 Dec 2016 08:04:49 +0000 (16:04 +0800)]
arm: dts: mt2701: Add node for Mediatek JPEG Decoder

Signed-off-by: Rick Chang <rick.chang@mediatek.com>
Signed-off-by: Minghsiu Tsai <minghsiu.tsai@mediatek.com>
[mb: include mt2701-larb-port.h to fix build errors]
Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
6 years agoARM: dts: da850: Add interrupt-controller property to gpio node
Keerthy [Wed, 24 May 2017 14:01:41 +0000 (19:31 +0530)]
ARM: dts: da850: Add interrupt-controller property to gpio node

The gpio node has 144 gpios. Each gpio is capable of generating
an interrupt. Hence add interrupt-controller property to the gpio
node. With this in place one can use interrupts property in device
tree to request for the gpio interrupts.

Signed-off-by: Keerthy <j-keerthy@ti.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
6 years agoARM: dts: da850: Add CPPI 4.1 DMA to USB OTG controller
Alexandre Bailon [Fri, 19 May 2017 13:33:36 +0000 (15:33 +0200)]
ARM: dts: da850: Add CPPI 4.1 DMA to USB OTG controller

This adds CPPI 4.1 DMA controller to USB OTG controller.

Changes since v2:
- Fixed the the property reg-names (had glue register defined)
- Removed few useless property

Signed-off-by: Alexandre Bailon <abailon@baylibre.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
6 years agoARM: dts: orange-pi-zero: add node for SPI NOR
Sergey Matyukevich [Sun, 28 May 2017 10:30:26 +0000 (13:30 +0300)]
ARM: dts: orange-pi-zero: add node for SPI NOR

Add node for SPI NOR flash on orange-pi-zero board. Disable this node
by default and leave it to users to enable it if their board has
SPI NOR flash chip populated.

SPI NOR flash was optional in the first production batch in Dec 2016.
In later batches flash chip was pre-populated. However there should
be quite a few boards around which do not have flash chip.

Signed-off-by: Sergey Matyukevich <geomatsi@gmail.com>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
6 years agoARM: sun7i: a20: cubietruck: Tie AXP209's USB power supply to USB PHY
Chen-Yu Tsai [Thu, 25 May 2017 07:31:38 +0000 (15:31 +0800)]
ARM: sun7i: a20: cubietruck: Tie AXP209's USB power supply to USB PHY

The USB PHY can use either a GPIO pin or the PMIC's USB power supply
to sense VBUS. Since both options are available on the Cubietruck,
add the missing property for the USB power supply to the USB PHY node.

The device tree provides all usable options. Ultimately, which method
is used is up to the driver implementation.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
6 years agoARM: sun6i: a31: hummingbird: Enable AXP221's ACIN power supply
Chen-Yu Tsai [Thu, 25 May 2017 07:31:37 +0000 (15:31 +0800)]
ARM: sun6i: a31: hummingbird: Enable AXP221's ACIN power supply

The ACIN pins of the AXP221 PMIC on the A31 Hummingbird are tied to the
DC jack on the board through a 12V to 5V buck converter.

Enable the ACIN power supply.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
6 years agoARM: sun4i: a10: cubieboard: Enable AXP209's ACIN power supply
Chen-Yu Tsai [Thu, 25 May 2017 07:31:36 +0000 (15:31 +0800)]
ARM: sun4i: a10: cubieboard: Enable AXP209's ACIN power supply

The ACIN pins of the AXP209 PMIC on the Cubieboard are tied to the
DC jack on the board.

Enable the ACIN power supply.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
6 years agoARM: sun7i: a20: bananapi-m1-plus: Enable AXP209's ACIN power supply
Chen-Yu Tsai [Thu, 25 May 2017 07:31:35 +0000 (15:31 +0800)]
ARM: sun7i: a20: bananapi-m1-plus: Enable AXP209's ACIN power supply

The ACIN pins of the AXP209 PMIC on the Bananapi M1 Plus are tied to the
"power input" micro USB connector next to the SATA connector on the board.

Enable the ACIN power supply.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
6 years agoARM: sun7i: a20: cubieboard2: Enable AXP209's ACIN power supply
Chen-Yu Tsai [Thu, 25 May 2017 07:31:34 +0000 (15:31 +0800)]
ARM: sun7i: a20: cubieboard2: Enable AXP209's ACIN power supply

The ACIN pins of the AXP209 PMIC on the Cubieboard 2 are tied to the
DC jack on the board.

Enable the ACIN power supply.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
6 years agoARM: sun7i: a20: cubieboard2: Move usb_otg node for alphabetical ordering
Chen-Yu Tsai [Thu, 25 May 2017 07:31:33 +0000 (15:31 +0800)]
ARM: sun7i: a20: cubieboard2: Move usb_otg node for alphabetical ordering

We want to keep node references in alphabetical order, except for
instances where node must be #included first.

Move the usb_otg node reference so that all references to non-AXP209
device nodes are in alphabetical order.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
6 years agoLinux 4.12-rc3
Linus Torvalds [Mon, 29 May 2017 00:20:53 +0000 (17:20 -0700)]
Linux 4.12-rc3

6 years agoMerge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/evalenti/linux...
Linus Torvalds [Sun, 28 May 2017 23:18:27 +0000 (16:18 -0700)]
Merge branch 'fixes' of git://git./linux/kernel/git/evalenti/linux-soc-thermal

Pull thermal SoC management fixes from Eduardo Valentin:

 - fixes to TI SoC driver, Broadcom, qoriq

 - small sparse warning fix on thermal core

* 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/evalenti/linux-soc-thermal:
  thermal: broadcom: ns-thermal: default on iProc SoCs
  ti-soc-thermal: Fix a typo in a comment line
  ti-soc-thermal: Delete error messages for failed memory allocations in ti_bandgap_build()
  ti-soc-thermal: Use devm_kcalloc() in ti_bandgap_build()
  thermal: core: make thermal_emergency_poweroff static
  thermal: qoriq: remove useless call for of_thermal_get_trip_points()

6 years agoMerge tag 'tty-4.12-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty
Linus Torvalds [Sat, 27 May 2017 16:39:09 +0000 (09:39 -0700)]
Merge tag 'tty-4.12-rc3' of git://git./linux/kernel/git/gregkh/tty

Pull tty/serial fixes from Greg KH:
 "Here are some serial and tty fixes for 4.12-rc3. They are a bit bigger
  than normal, which is why I had them bake in linux-next for a few
  weeks and didn't send them to you for -rc2.

  They revert a few of the serdev patches from 4.12-rc1, and bring
  things back to how they were in 4.11, to try to make things a bit more
  stable there. Rob and Johan both agree that this is the way forward,
  so this isn't people squabbling over semantics. Other than that, just
  a few minor serial driver fixes that people have had problems with.

  All of these have been in linux-next for a few weeks with no reported
  issues"

* tag 'tty-4.12-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty:
  serial: altera_uart: call iounmap() at driver remove
  serial: imx: ensure UCR3 and UFCR are setup correctly
  MAINTAINERS/serial: Change maintainer of jsm driver
  serial: enable serdev support
  tty/serdev: add serdev registration interface
  serdev: Restore serdev_device_write_buf for atomic context
  serial: core: fix crash in uart_suspend_port
  tty: fix port buffer locking
  tty: ehv_bytechan: clean up init error handling
  serial: ifx6x60: fix use-after-free on module unload
  serial: altera_jtaguart: adding iounmap()
  serial: exar: Fix stuck MSIs
  serial: efm32: Fix parity management in 'efm32_uart_console_get_options()'
  serdev: fix tty-port client deregistration
  Revert "tty_port: register tty ports with serdev bus"
  drivers/tty: 8250: only call fintek_8250_probe when doing port I/O

6 years agoMerge tag 'powerpc-4.12-4' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc...
Linus Torvalds [Sat, 27 May 2017 16:28:34 +0000 (09:28 -0700)]
Merge tag 'powerpc-4.12-4' of git://git./linux/kernel/git/powerpc/linux

Pull powerpc fixes from Michael Ellerman:
 "Fix running SPU programs on Cell, and a few other minor fixes.

  Thanks to Alistair Popple, Jeremy Kerr, Michael Neuling, Nicholas
  Piggin"

* tag 'powerpc-4.12-4' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
  powerpc: Add PPC_FEATURE userspace bits for SCV and DARN instructions
  powerpc/spufs: Fix hash faults for kernel regions
  powerpc: Fix booting P9 hash with CONFIG_PPC_RADIX_MMU=N
  powerpc/powernv/npu-dma.c: Fix opal_npu_destroy_context() call
  selftests/powerpc: Fix TM resched DSCR test with some compilers

6 years agoMerge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Sat, 27 May 2017 16:17:58 +0000 (09:17 -0700)]
Merge branch 'x86-urgent-for-linus' of git://git./linux/kernel/git/tip/tip

Pull x86 fixes from Thomas Gleixner:
 "A series of fixes for X86:

   - The final fix for the end-of-stack issue in the unwinder
   - Handle non PAT systems gracefully
   - Prevent access to uninitiliazed memory
   - Move early delay calaibration after basic init
   - Fix Kconfig help text
   - Fix a cross compile issue
   - Unbreak older make versions"

* 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  x86/timers: Move simple_udelay_calibration past init_hypervisor_platform
  x86/alternatives: Prevent uninitialized stack byte read in apply_alternatives()
  x86/PAT: Fix Xorg regression on CPUs that don't support PAT
  x86/watchdog: Fix Kconfig help text file path reference to lockup watchdog documentation
  x86/build: Permit building with old make versions
  x86/unwind: Add end-of-stack check for ftrace handlers
  Revert "x86/entry: Fix the end of the stack for newly forked tasks"
  x86/boot: Use CROSS_COMPILE prefix for readelf

6 years agoMerge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Sat, 27 May 2017 16:14:24 +0000 (09:14 -0700)]
Merge branch 'timers-urgent-for-linus' of git://git./linux/kernel/git/tip/tip

Pull timer fixlet from Thomas Gleixner:
 "Silence dmesg spam by making the posix cpu timer printks depend on
  print_fatal_signals"

* 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  posix-timers: Make signal printks conditional

6 years agoMerge branch 'ras-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Sat, 27 May 2017 16:06:43 +0000 (09:06 -0700)]
Merge branch 'ras-urgent-for-linus' of git://git./linux/kernel/git/tip/tip

Pull RAS fixes from Thomas Gleixner:
 "Two fixlets for RAS:

   - Export memory_error() so the NFIT module can utilize it

   - Handle memory errors in NFIT correctly"

* 'ras-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  acpi, nfit: Fix the memory error check in nfit_handle_mce()
  x86/MCE: Export memory_error()

6 years agoMerge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Sat, 27 May 2017 16:02:41 +0000 (09:02 -0700)]
Merge branch 'perf-urgent-for-linus' of git://git./linux/kernel/git/tip/tip

Pull perf tooling fixes from Thomas Gleixner:

 - Synchronization of tools and kernel headers

 - A series of fixes for perf report addressing various failures:
    * Handle invalid maps proper
    * Plug a memory leak
    * Handle frames and callchain order correctly

 - Fixes for handling inlines and children mode

* 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  tools/include: Sync kernel ABI headers with tooling headers
  perf tools: Put caller above callee in --children mode
  perf report: Do not drop last inlined frame
  perf report: Always honor callchain order for inlined nodes
  perf script: Add --inline option for debugging
  perf report: Fix off-by-one for non-activation frames
  perf report: Fix memory leak in addr2line when called by addr2inlines
  perf report: Don't crash on invalid maps in `-g srcline` mode

6 years agoMerge branch 'locking-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Sat, 27 May 2017 15:59:37 +0000 (08:59 -0700)]
Merge branch 'locking-urgent-for-linus' of git://git./linux/kernel/git/tip/tip

Pull locking fix from Thomas Gleixner:
 "A fix for a state leak which was introduced in the recent rework of
  futex/rtmutex interaction"

* 'locking-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  futex,rt_mutex: Fix rt_mutex_cleanup_proxy_lock()

6 years agoMerge branch 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Sat, 27 May 2017 15:52:27 +0000 (08:52 -0700)]
Merge branch 'core-urgent-for-linus' of git://git./linux/kernel/git/tip/tip

Pull kthread fix from Thomas Gleixner:
 "A single fix which prevents a use after free when kthread fork fails"

* 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  kthread: Fix use-after-free if kthread fork fails

6 years agoMerge tag 'trace-v4.12-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt...
Linus Torvalds [Sat, 27 May 2017 15:30:30 +0000 (08:30 -0700)]
Merge tag 'trace-v4.12-rc2' of git://git./linux/kernel/git/rostedt/linux-trace

Pull ftrace fixes from Steven Rostedt:
 "There's been a few memory issues found with ftrace.

  One was simply a memory leak where not all was being freed that should
  have been in releasing a file pointer on set_graph_function.

  Then Thomas found that the ftrace trampolines were marked for
  read/write as well as execute. To shrink the possible attack surface,
  he added calls to set them to ro. Which also uncovered some other
  issues with freeing module allocated memory that had its permissions
  changed.

  Kprobes had a similar issue which is fixed and a selftest was added to
  trigger that issue again"

* tag 'trace-v4.12-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
  x86/ftrace: Make sure that ftrace trampolines are not RWX
  x86/mm/ftrace: Do not bug in early boot on irqs_disabled in cpu_flush_range()
  selftests/ftrace: Add a testcase for many kprobe events
  kprobes/x86: Fix to set RWX bits correctly before releasing trampoline
  ftrace: Fix memory leak in ftrace_graph_release()

6 years agox86/ftrace: Make sure that ftrace trampolines are not RWX
Thomas Gleixner [Thu, 25 May 2017 08:57:51 +0000 (10:57 +0200)]
x86/ftrace: Make sure that ftrace trampolines are not RWX

ftrace use module_alloc() to allocate trampoline pages. The mapping of
module_alloc() is RWX, which makes sense as the memory is written to right
after allocation. But nothing makes these pages RO after writing to them.

Add proper set_memory_rw/ro() calls to protect the trampolines after
modification.

Link: http://lkml.kernel.org/r/alpine.DEB.2.20.1705251056410.1862@nanos
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
6 years agox86/mm/ftrace: Do not bug in early boot on irqs_disabled in cpu_flush_range()
Steven Rostedt (VMware) [Fri, 26 May 2017 14:14:11 +0000 (10:14 -0400)]
x86/mm/ftrace: Do not bug in early boot on irqs_disabled in cpu_flush_range()

With function tracing starting in early bootup and having its trampoline
pages being read only, a bug triggered with the following:

kernel BUG at arch/x86/mm/pageattr.c:189!
invalid opcode: 0000 [#1] SMP
Modules linked in:
CPU: 0 PID: 0 Comm: swapper Not tainted 4.12.0-rc2-test+ #3
Hardware name: MSI MS-7823/CSM-H87M-G43 (MS-7823), BIOS V1.6 02/22/2014
task: ffffffffb4222500 task.stack: ffffffffb4200000
RIP: 0010:change_page_attr_set_clr+0x269/0x302
RSP: 0000:ffffffffb4203c88 EFLAGS: 00010046
RAX: 0000000000000046 RBX: 0000000000000000 RCX: 00000001b6000000
RDX: ffffffffb4203d40 RSI: 0000000000000000 RDI: ffffffffb4240d60
RBP: ffffffffb4203d18 R08: 00000001b6000000 R09: 0000000000000001
R10: ffffffffb4203aa8 R11: 0000000000000003 R12: ffffffffc029b000
R13: ffffffffb4203d40 R14: 0000000000000001 R15: 0000000000000000
FS:  0000000000000000(0000) GS:ffff9a639ea00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: ffff9a636b384000 CR3: 00000001ea21d000 CR4: 00000000000406b0
Call Trace:
 change_page_attr_clear+0x1f/0x21
 set_memory_ro+0x1e/0x20
 arch_ftrace_update_trampoline+0x207/0x21c
 ? ftrace_caller+0x64/0x64
 ? 0xffffffffc029b000
 ftrace_startup+0xf4/0x198
 register_ftrace_function+0x26/0x3c
 function_trace_init+0x5e/0x73
 tracer_init+0x1e/0x23
 tracing_set_tracer+0x127/0x15a
 register_tracer+0x19b/0x1bc
 init_function_trace+0x90/0x92
 early_trace_init+0x236/0x2b3
 start_kernel+0x200/0x3f5
 x86_64_start_reservations+0x29/0x2b
 x86_64_start_kernel+0x17c/0x18f
 secondary_startup_64+0x9f/0x9f
 ? secondary_startup_64+0x9f/0x9f

Interrupts should not be enabled at this early in the boot process. It is
also fine to leave interrupts enabled during this time as there's only one
CPU running, and on_each_cpu() means to only run on the current CPU.

If early_boot_irqs_disabled is set, it is safe to run cpu_flush_range() with
interrupts disabled. Don't trigger a BUG_ON() in that case.

Link: http://lkml.kernel.org/r/20170526093717.0be3b849@gandalf.local.home
Suggested-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
6 years agoselftests/ftrace: Add a testcase for many kprobe events
Masami Hiramatsu [Fri, 26 May 2017 04:44:54 +0000 (13:44 +0900)]
selftests/ftrace: Add a testcase for many kprobe events

Add a testcase to test kprobes via ftrace interface
with many concurrent kprobe events.

This tries to add many kprobe events (up to 256) on
kernel functions. To avoid making ftrace-based
kprobes (kprobes on fentry), it skips first N bytes
(on x86 N=5, on ppc or arm N=4) of function entry.
After that, it enables all those events, disable it,
and remove it.

Since the unoptimization buffer reclaiming will
be delayed, after removing events, it will wait
enough time.

Link: http://lkml.kernel.org/r/149577388470.11702.11832460851769204511.stgit@devbox
Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org>
Suggested-by: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
6 years agokprobes/x86: Fix to set RWX bits correctly before releasing trampoline
Masami Hiramatsu [Thu, 25 May 2017 10:38:17 +0000 (19:38 +0900)]
kprobes/x86: Fix to set RWX bits correctly before releasing trampoline

Fix kprobes to set(recover) RWX bits correctly on trampoline
buffer before releasing it. Releasing readonly page to
module_memfree() crash the kernel.

Without this fix, if kprobes user register a bunch of kprobes
in function body (since kprobes on function entry usually
use ftrace) and unregister it, kernel hits a BUG and crash.

Link: http://lkml.kernel.org/r/149570868652.3518.14120169373590420503.stgit@devbox
Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org>
Fixes: d0381c81c2f7 ("kprobes/x86: Set kprobes pages read-only")
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
6 years agoftrace: Fix memory leak in ftrace_graph_release()
Luis Henriques [Thu, 25 May 2017 15:20:38 +0000 (16:20 +0100)]
ftrace: Fix memory leak in ftrace_graph_release()

ftrace_hash is being kfree'ed in ftrace_graph_release(), however the
->buckets field is not.  This results in a memory leak that is easily
captured by kmemleak:

unreferenced object 0xffff880038afe000 (size 8192):
  comm "trace-cmd", pid 238, jiffies 4294916898 (age 9.736s)
  hex dump (first 32 bytes):
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
  backtrace:
    [<ffffffff815f561e>] kmemleak_alloc+0x4e/0xb0
    [<ffffffff8113964d>] __kmalloc+0x12d/0x1a0
    [<ffffffff810bf6d1>] alloc_ftrace_hash+0x51/0x80
    [<ffffffff810c0523>] __ftrace_graph_open.isra.39.constprop.46+0xa3/0x100
    [<ffffffff810c05e8>] ftrace_graph_open+0x68/0xa0
    [<ffffffff8114003d>] do_dentry_open.isra.1+0x1bd/0x2d0
    [<ffffffff81140df7>] vfs_open+0x47/0x60
    [<ffffffff81150f95>] path_openat+0x2a5/0x1020
    [<ffffffff81152d6a>] do_filp_open+0x8a/0xf0
    [<ffffffff811411df>] do_sys_open+0x12f/0x200
    [<ffffffff811412ce>] SyS_open+0x1e/0x20
    [<ffffffff815fa6e0>] entry_SYSCALL_64_fastpath+0x13/0x94
    [<ffffffffffffffff>] 0xffffffffffffffff

Link: http://lkml.kernel.org/r/20170525152038.7661-1-lhenriques@suse.com
Cc: stable@vger.kernel.org
Fixes: b9b0c831bed2 ("ftrace: Convert graph filter to use hash tables")
Signed-off-by: Luis Henriques <lhenriques@suse.com>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
6 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
Linus Torvalds [Fri, 26 May 2017 23:45:13 +0000 (16:45 -0700)]
Merge branch 'for-linus' of git://git./linux/kernel/git/dtor/input

Pull input layer fixes from Dmitry Torokhov:
 "Just a few fixups to a couple of drivers"

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
  Input: elan_i2c - ignore signals when finishing updating firmware
  Input: elan_i2c - clear INT before resetting controller
  Input: atmel_mxt_ts - add T100 as a readable object
  Input: edt-ft5x06 - increase allowed data range for threshold parameter

6 years agoMerge tag 'led_fixes_for_4-12-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git...
Linus Torvalds [Fri, 26 May 2017 21:02:30 +0000 (14:02 -0700)]
Merge tag 'led_fixes_for_4-12-rc3' of git://git./linux/kernel/git/j.anaszewski/linux-leds

Pull LED fix from Jacek Anaszewski:
 "A single LED fix for 4.12-rc3.

  leds-pca955x driver uses only i2c_smbus API and thus it should pass
  I2C_FUNC_SMBUS_BYTE_DATA flag to i2c_check_functionality"

* tag 'led_fixes_for_4-12-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/j.anaszewski/linux-leds:
  leds: pca955x: Correct I2C Functionality