]> www.infradead.org Git - users/jedix/linux-maple.git/log
users/jedix/linux-maple.git
3 years agoMerge branch 'imx/defconfig' into for-next
Shawn Guo [Sat, 14 Aug 2021 05:55:34 +0000 (13:55 +0800)]
Merge branch 'imx/defconfig' into for-next

3 years agoMerge branch 'imx/dt64' into for-next
Shawn Guo [Sat, 14 Aug 2021 05:55:33 +0000 (13:55 +0800)]
Merge branch 'imx/dt64' into for-next

3 years agoMerge branch 'imx/dt' into for-next
Shawn Guo [Sat, 14 Aug 2021 05:55:31 +0000 (13:55 +0800)]
Merge branch 'imx/dt' into for-next

3 years agoMerge branch 'imx/bindings' into for-next
Shawn Guo [Sat, 14 Aug 2021 05:55:30 +0000 (13:55 +0800)]
Merge branch 'imx/bindings' into for-next

3 years agoMerge branch 'imx/ecspi' into for-next
Shawn Guo [Sat, 14 Aug 2021 05:55:28 +0000 (13:55 +0800)]
Merge branch 'imx/ecspi' into for-next

3 years agodt-bindings: arm: fsl: Add Traverse Ten64 (LS1088A) board
Mathew McBride [Tue, 10 Aug 2021 05:38:27 +0000 (05:38 +0000)]
dt-bindings: arm: fsl: Add Traverse Ten64 (LS1088A) board

Document the compatible for the Ten64 board which will
be included as freescale/fsl-ls1088a-ten64.dtb in arm64.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agodt-bindings: vendor-prefixes: add Traverse Technologies
Mathew McBride [Tue, 10 Aug 2021 05:38:26 +0000 (05:38 +0000)]
dt-bindings: vendor-prefixes: add Traverse Technologies

Traverse Technologies is a designer and manufacturer
of networking appliances.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoarm64: dts: add device tree for Traverse Ten64 (LS1088A)
Mathew McBride [Tue, 10 Aug 2021 05:38:28 +0000 (05:38 +0000)]
arm64: dts: add device tree for Traverse Ten64 (LS1088A)

The Traverse Technologies Ten64 is a Mini-ITX form factor
networking board using the NXP LS1088A SoC.

This device tree only describes features which the mainline
kernel currently has support for, such as some I2C-connected
devices that are not described at present.

System documentation may be found at ten64doc.traverse.com.au

Signed-off-by: Mathew McBride <matt@traverse.com.au>
Reviewed-by: Ioana Ciornei <ioana.ciornei@nxp.com> # for the MAC/PHY
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoarm64: dts: ls1088a: add missing PMU node
Mathew McBride [Tue, 10 Aug 2021 05:38:25 +0000 (05:38 +0000)]
arm64: dts: ls1088a: add missing PMU node

The Performance Manager Unit was not described in the DTS
which meant performance event monitoring was not possible.

This was exposed by a change to the PMU handling in KVM
in 5.11-rc3 which now prevents a PMU being exposed to a
guest when the host does not provide one:
"KVM: arm64: Don't access PMCR_EL0 when no PMU is available"

Signed-off-by: Mathew McBride <matt@traverse.com.au>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoarm64: dts: ls1088a: add internal PCS for DPMAC1 node
Mathew McBride [Tue, 10 Aug 2021 05:38:24 +0000 (05:38 +0000)]
arm64: dts: ls1088a: add internal PCS for DPMAC1 node

A previous patch added the PCS for DPMAC2 only, as
used for the AQR PHY on the LS1088ARDB.

DPMAC1 PCS access is required for PHYLINK SFP support
on the Traverse Ten64 board.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
Reviewed-by: Ioana Ciornei <ioana.ciornei@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoARM: dts: imx6qp-prtwd3: configure ENET_REF clock to 125MHz
Oleksij Rempel [Wed, 11 Aug 2021 07:38:35 +0000 (09:38 +0200)]
ARM: dts: imx6qp-prtwd3: configure ENET_REF clock to 125MHz

By default ENET_REF is configured to 50MHz, which is usable for the RMII
link. In case RGMII is used, we need 125MHz clock.

Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoARM: dts: vf610-zii-dev-rev-b: Remove #address-cells and #size-cells property from...
Aswath Govindraju [Tue, 10 Aug 2021 06:44:20 +0000 (12:14 +0530)]
ARM: dts: vf610-zii-dev-rev-b: Remove #address-cells and #size-cells property from at93c46d dt node

Remove #address-cells and #size-cells property from at93c46d device tree
node as it does not have child nodes.

Fixes: 1556063fde42 ("ARM: dts: vf610-zii-dev: Add ZII development board.")
Signed-off-by: Aswath Govindraju <a-govindraju@ti.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoARM: imx_v6_v7_defconfig: enable driver of the LTC3676 PMIC
Pascal Zimmermann [Thu, 5 Aug 2021 13:50:35 +0000 (15:50 +0200)]
ARM: imx_v6_v7_defconfig: enable driver of the LTC3676 PMIC

The LTC3676 is a PMIC which is used on some i.MX6 based boards (like the
DHCOM i.MX6 Quad SoM), it was first used on the GW Ventana board, enable
LTC3676 driver in imx_v6_v7_defconfig.

Signed-off-by: Pascal Zimmermann <pzimmermann@dh-electronics.com>
Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Cc: Pengutronix Kernel Team <kernel@pengutronix.de>
Cc: Fabio Estevam <festevam@denx.de>
Cc: NXP Linux Team <linux-imx@nxp.com>
Cc: Marek Vasut <marex@denx.de>
Cc: kernel@dh-electronics.com
To: linux-arm-kernel@lists.infradead.org
Reviewed-by: Marek Vasut <marex@denx.de>
Tested-by: Marek Vasut <marex@denx.de> # On DH iMX6Q DHCOM PDK2
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoARM: dts: add SKOV imx6q and imx6dl based boards
Sam Ravnborg [Wed, 4 Aug 2021 04:34:39 +0000 (06:34 +0200)]
ARM: dts: add SKOV imx6q and imx6dl based boards

Add SKOV imx6q/dl LT2, LT6 and mi1010ait-1cp1 boards.

Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Søren Andersen <san@skov.dk>
Signed-off-by: Juergen Borleis <jbe@pengutronix.de>
Signed-off-by: Ulrich Ölmann <u.oelmann@pengutronix.de>
Signed-off-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agodt-bindings: arm: fsl: add SKOV imx6q and imx6dl based boards
Oleksij Rempel [Wed, 4 Aug 2021 04:34:38 +0000 (06:34 +0200)]
dt-bindings: arm: fsl: add SKOV imx6q and imx6dl based boards

Add SKOV imx6q/dl LT2, LT6 and mi1010ait-1cp1 boards.

Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agodt-bindings: vendor-prefixes: Add an entry for SKOV A/S
Oleksij Rempel [Wed, 4 Aug 2021 04:34:37 +0000 (06:34 +0200)]
dt-bindings: vendor-prefixes: Add an entry for SKOV A/S

Add "skov" entry for the SKOV A/S: https://www.skov.com/en/

Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoarm64: dts: imx8mq-reform2: add sound support
Lucas Stach [Thu, 12 Aug 2021 19:47:12 +0000 (21:47 +0200)]
arm64: dts: imx8mq-reform2: add sound support

This adds sound support to the Reform2.

It differs from the downstream implementation in that the codec
is used as the BCLK and FSYNC master and the i.MX8MQ only supplies
a fixed 25MHz MCLK from the oscillator. This allows to support
a wider range of audio rates by using the codec PLL and to shut
down the audio PLLs on the i.MX8MQ SoC side.

Signed-off-by: Lucas Stach <dev@lynxeye.de>
Reviewed-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoarm64: dts: imx8m: drop interrupt-affinity for pmu
Peng Fan [Sat, 7 Aug 2021 09:45:37 +0000 (17:45 +0800)]
arm64: dts: imx8m: drop interrupt-affinity for pmu

i.MX8M use PPI for pmu, interrupt-affinity is not needed.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoarm64: dts: imx8qxp: update pmu compatible
Peng Fan [Sat, 7 Aug 2021 09:45:36 +0000 (17:45 +0800)]
arm64: dts: imx8qxp: update pmu compatible

i.MX8QXP features four Cortex-A35 cores, use more accurate
compatible.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoarm64: dts: imx8mm: update pmu compatible
Peng Fan [Sat, 7 Aug 2021 09:45:35 +0000 (17:45 +0800)]
arm64: dts: imx8mm: update pmu compatible

i.MX8MM features four Cortex-A53 cores, update the compatible
to use more accurate "arm,cortex-a53-pmu"

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoarm64: dts: ls1046a: fix eeprom entries
Raag Jadav [Wed, 4 Aug 2021 19:24:45 +0000 (00:54 +0530)]
arm64: dts: ls1046a: fix eeprom entries

ls1046afrwy and ls1046ardb boards have CAT24C04[1] and CAT24C05[2]
eeproms respectively. Both are 4Kb (512 bytes) in size,
and compatible with AT24C04[3].
Remove multi-address entries, as both the boards have a single chip each.

[1] https://www.onsemi.com/pdf/datasheet/cat24c01-d.pdf
[2] https://www.onsemi.com/pdf/datasheet/cat24c03-d.pdf
[3] https://ww1.microchip.com/downloads/en/DeviceDoc/doc0180.pdf

Signed-off-by: Raag Jadav <raagjadav@gmail.com>
Acked-by: Li Yang <leoyang.li@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoarm64: dts: imx8mm-venice-gw7901: enable pull-down on gpio outputs
Tim Harvey [Tue, 27 Jul 2021 16:11:01 +0000 (09:11 -0700)]
arm64: dts: imx8mm-venice-gw7901: enable pull-down on gpio outputs

Enable internal pull-down on UART transceiver GPIO config pins.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoarm64: dts: imx8mm-venice-gw7901: add support for USB hub subload
Tim Harvey [Tue, 27 Jul 2021 16:11:00 +0000 (09:11 -0700)]
arm64: dts: imx8mm-venice-gw7901: add support for USB hub subload

The USB hub has it's reset as GPIO4_IO17 but can be sub-loaded and
VBUS provided by a VBUS regulator with GPIO4_IO2 as the enable and
GPIO1_IO15 as the active-low over-current.

Enable pull-up for GPIO4_IO17 to keep hub out of reset and move VBUS
enable to GPIO4_IO2. Additionally enable pull-up on GPIO1_IO15 so that
if the hub is loaded it never over-currents.

This allows USB to work in both configurations without a device-tree
change.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoarm64: dts: imx8mm-venice-gw71xx: fix USB OTG VBUS
Tim Harvey [Tue, 27 Jul 2021 16:10:59 +0000 (09:10 -0700)]
arm64: dts: imx8mm-venice-gw71xx: fix USB OTG VBUS

The GW71xx has a USB Type-C connector with USB 2.0 signaling. GPIO1_12
is the power-enable to the TPS25821 Source controller and power switch
responsible for monitoring the CC pins and enabling VBUS. Therefore
GPIO1_12 must always be enabled and the vbus output enable from the
IMX8MM can be ignored.

To fix USB OTG VBUS enable a pull-up on GPIO1_12 to always power the
TPS25821 and change the regulator output to GPIO1_10 which is
unconnected.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoarm64: dts: imx8mm-venice-gw700x: fix invalid pmic pin config
Tim Harvey [Tue, 27 Jul 2021 16:10:58 +0000 (09:10 -0700)]
arm64: dts: imx8mm-venice-gw700x: fix invalid pmic pin config

The GW700x PMIC does not have an interrupt. Remove the invalid pin
config.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoarm64: dts: imx8mm-venice-gw700x: fix mp5416 pmic config
Tim Harvey [Tue, 27 Jul 2021 16:10:57 +0000 (09:10 -0700)]
arm64: dts: imx8mm-venice-gw700x: fix mp5416 pmic config

Fix various MP5416 PMIC configurations:
 - Update regulator names per dt-bindings
 - ensure values fit among valid register values
 - add required regulator-max-microamp property
 - add regulator-always-on prop

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoarm64: dts: imx8mq: add mipi csi phy and csi bridge descriptions
Martin Kepplinger [Mon, 26 Jul 2021 08:21:17 +0000 (10:21 +0200)]
arm64: dts: imx8mq: add mipi csi phy and csi bridge descriptions

Describe the 2 available CSI interfaces on the i.MX8MQ with the MIPI-CSI2
receiver (new driver) and the CSI Bridge that provides the user buffers
(existing driver).

An image sensor is to be connected to the MIPIs' second port, to be described
in board files.

Signed-off-by: Martin Kepplinger <martin.kepplinger@puri.sm>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoarm64: dts: imx: Add i.mx8mm/imx8mn Gateworks gw7902 dts support
Tim Harvey [Fri, 23 Jul 2021 18:41:16 +0000 (11:41 -0700)]
arm64: dts: imx: Add i.mx8mm/imx8mn Gateworks gw7902 dts support

The GW7902 is based on the i.MX 8M Mini / Nano SoC featuring:
 - LPDDR4 DRAM
 - eMMC FLASH
 - Gateworks System Controller
 - LTE CAT M1 modem
 - USB 2.0 HUB
 - M.2 Socket with USB2.0, PCIe, and dual-SIM
 - IMX8M FEC
 - PCIe based GbE
 - RS232/RS485/RS422 serial transceiver
 - GPS
 - CAN bus
 - WiFi / Bluetooth
 - MIPI header (DSI/CSI/GPIO/PWM/I2S)
 - PMIC

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoarm64: dts: imx8mp: Add dsp node
Daniel Baluta [Fri, 23 Jul 2021 11:05:40 +0000 (14:05 +0300)]
arm64: dts: imx8mp: Add dsp node

i.MX8 MPlus SoC integrates Cadence HIFI4 DSP. This core runs either a
custom firmware or the open source SOF firmware [1]

DSP device is handled by SOF OF driver found in
sound/soc/sof/sof-of-dev.c

Notice that the DSP node makes use of:
- dsp_reserved, a reserved memory region for various Audio
  resources (e.g firmware loading, audio buffers, etc).
- Messaging Unit (mu2) for passing notifications betweem ARM
  core and DSP.

[1] https://thesofproject.github.io/latest/platforms/index.html
Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoarm64: dts: imx8m: Replace deprecated fsl,usbphy DT props with phys
Marek Vasut [Wed, 21 Jul 2021 16:39:55 +0000 (18:39 +0200)]
arm64: dts: imx8m: Replace deprecated fsl,usbphy DT props with phys

The fsl,usbphy DT property is deprecated, replace it with phys DT
property and specify #phy-cells. No functional change.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Fabio Estevam <festevam@gmail.com>
Cc: NXP Linux Team <linux-imx@nxp.com>
Cc: Shawn Guo <shawnguo@kernel.org>
To: linux-arm-kernel@lists.infradead.org
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoarm64: dts: imx8mq-evk: Remove unnecessary blank lines
Kwon Tae-young [Thu, 15 Jul 2021 07:07:49 +0000 (16:07 +0900)]
arm64: dts: imx8mq-evk: Remove unnecessary blank lines

Unnecessary blank lines do NOT help readability, so remove them.

Signed-off-by: Kwon Tae-young <tykwon@m2i.co.kr>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoarm64: dts: imx8mq-evk: add CD pinctrl for usdhc2
Kwon Tae-young [Thu, 15 Jul 2021 06:54:31 +0000 (15:54 +0900)]
arm64: dts: imx8mq-evk: add CD pinctrl for usdhc2

Add CD pinctrl for usdhc2.

Signed-off-by: Kwon Tae-young <tykwon@m2i.co.kr>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoarm64: dts: imx8mm-venice-gw7901: Remove unnecessary #address-cells/#size-cells
Fabio Estevam [Sat, 10 Jul 2021 12:39:41 +0000 (09:39 -0300)]
arm64: dts: imx8mm-venice-gw7901: Remove unnecessary #address-cells/#size-cells

The following dtc build warning is seen with W=1:

arch/arm64/boot/dts/freescale/imx8mm-venice-gw7901.dts:291.14-397.4: Warning (avoid_unnecessary_addr_size): /soc@0/bus@30800000/i2c@30a20000/gsc@20: unnecessary #address-cells/#size-cells without "ranges" or child "reg" property

Remove the unnecessary #address-cells/#size-cells to fix it.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
Reviewed-By: Tim Harvey <tharvey@gateworks.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoarm64: dts: imx8: Add jpeg encoder/decoder nodes
Mirela Rabulea [Sat, 19 Jun 2021 14:36:11 +0000 (17:36 +0300)]
arm64: dts: imx8: Add jpeg encoder/decoder nodes

Add dts for imaging subsytem, include jpeg nodes here.
Tested on imx8qxp/qm.

Signed-off-by: Mirela Rabulea <mirela.rabulea@nxp.com>
Reviewed-by: Dong Aisheng <aisheng.dong@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoarm64: dts: imx8qxp-ai_ml: Fix checkpatch warnings
Kwon Tae-young [Fri, 18 Jun 2021 07:27:33 +0000 (16:27 +0900)]
arm64: dts: imx8qxp-ai_ml: Fix checkpatch warnings

Fix the following warnings reported by checkpatch:
arch/..../imx8qxp-ai_ml.dts:198: WARNING: please, no space before tabs

Signed-off-by: Kwon Tae-young <tykwon@m2i.co.kr>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoarm64: dts: ls1088ardb: update PHY nodes with IRQ information
Ioana Ciornei [Tue, 15 Jun 2021 16:03:37 +0000 (19:03 +0300)]
arm64: dts: ls1088ardb: update PHY nodes with IRQ information

Describe the IRQs for both the QSGMII PHYs and the 10GBASE-R PHY found
on the LS1088ARDB board.

Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoarm64: dts: ls2088ardb: update PHY nodes with IRQ information
Ioana Ciornei [Tue, 15 Jun 2021 16:03:36 +0000 (19:03 +0300)]
arm64: dts: ls2088ardb: update PHY nodes with IRQ information

Update the DTS nodes corresponding to the 4 10GBASE-R PHYs to describe
their IRQ lines.

Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoarm64: dts: lx2160ardb: update PHY nodes with IRQ information
Ioana Ciornei [Tue, 15 Jun 2021 16:03:35 +0000 (19:03 +0300)]
arm64: dts: lx2160ardb: update PHY nodes with IRQ information

Update the DTS nodes for both the AR8035 and the AQR107 PHYs in order to
describe their IRQ lines.

Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoARM: dts: imx7: add ftm nodes for Flex Timers
Thomas Perrot [Thu, 5 Aug 2021 15:06:33 +0000 (17:06 +0200)]
ARM: dts: imx7: add ftm nodes for Flex Timers

The i.MX7 has two possible Flex Timers, disabled by default. Moreover, the
block is the same as LS1021a, then the drivers can be used as-is.

Signed-off-by: Thomas Perrot <thomas.perrot@bootlin.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoARM: dts: imx6qdl-dhcom: Add DHSOM based DRC02 board
Christoph Niedermaier [Mon, 2 Aug 2021 14:10:38 +0000 (16:10 +0200)]
ARM: dts: imx6qdl-dhcom: Add DHSOM based DRC02 board

Add DT for DH DRC02 unit, which is a universal controller device.
The system has two ethernet ports, two CANs, RS485 and RS232, USB,
capacitive buttons and an OLED display.

Signed-off-by: Christoph Niedermaier <cniedermaier@dh-electronics.com>
Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Fabio Estevam <festevam@denx.de>
Cc: Marek Vasut <marex@denx.de>
Cc: NXP Linux Team <linux-imx@nxp.com>
Cc: kernel@dh-electronics.com
To: linux-arm-kernel@lists.infradead.org
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoARM: dts: imx6qdl-dhcom: Add DHCOM based PicoITX board
Christoph Niedermaier [Mon, 2 Aug 2021 14:10:37 +0000 (16:10 +0200)]
ARM: dts: imx6qdl-dhcom: Add DHCOM based PicoITX board

Add DT for DH PicoITX unit, which is a bare-bones carrier board for
the DHCOM. The board has ethernet port, USB, CAN, LEDs and a custom
board-to-board expansion connector.

Signed-off-by: Christoph Niedermaier <cniedermaier@dh-electronics.com>
Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Fabio Estevam <festevam@denx.de>
Cc: Marek Vasut <marex@denx.de>
Cc: NXP Linux Team <linux-imx@nxp.com>
Cc: kernel@dh-electronics.com
To: linux-arm-kernel@lists.infradead.org
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoARM: dts: imx6qdl-dhcom: Split SoC-independent parts of DHCOM SOM and PDK2
Christoph Niedermaier [Mon, 2 Aug 2021 14:10:36 +0000 (16:10 +0200)]
ARM: dts: imx6qdl-dhcom: Split SoC-independent parts of DHCOM SOM and PDK2

The DH electronics PDK2 can be populated with SoM with i.MX6S/DL/D/Q
variants. Split the SoC-independent parts of the SoM and PDK2 into the
imx6qdl-dhcom-*.dtsi and reduce imx6q-dhcom-pdk2.dts to example of
adding i.MX6S/DL/D/Q variants of the SoM into a PDK2 carrier board.

Signed-off-by: Christoph Niedermaier <cniedermaier@dh-electronics.com>
Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Fabio Estevam <festevam@denx.de>
Cc: Marek Vasut <marex@denx.de>
Cc: NXP Linux Team <linux-imx@nxp.com>
Cc: kernel@dh-electronics.com
To: linux-arm-kernel@lists.infradead.org
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoARM: dts: imx6q-dhcom: Cleanup of the devicetrees
Christoph Niedermaier [Mon, 2 Aug 2021 14:10:35 +0000 (16:10 +0200)]
ARM: dts: imx6q-dhcom: Cleanup of the devicetrees

Following cleanups of the devicetrees done, no change in function:
- Remove parentheses from the license
- Update copyright date
- Alphabetical sorting
- Add comments
- Update pinctrl names
- Hex values in lower case
- Set 3rd values of fixed regulators gpio property to 0
- Replace interrupt type with a define
- Remove superfluous property max-speed from the fec node

Signed-off-by: Christoph Niedermaier <cniedermaier@dh-electronics.com>
Reviewed-by: Marek Vasut <marex@denx.de>
Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Fabio Estevam <festevam@denx.de>
Cc: Marek Vasut <marex@denx.de>
Cc: NXP Linux Team <linux-imx@nxp.com>
Cc: kernel@dh-electronics.com
To: linux-arm-kernel@lists.infradead.org
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoARM: dts: imx6q-dhcom: Rearrange of iomux
Christoph Niedermaier [Mon, 2 Aug 2021 14:10:34 +0000 (16:10 +0200)]
ARM: dts: imx6q-dhcom: Rearrange of iomux

Move iomux to the end, no change in function.

Signed-off-by: Christoph Niedermaier <cniedermaier@dh-electronics.com>
Reviewed-by: Marek Vasut <marex@denx.de>
Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Fabio Estevam <festevam@denx.de>
Cc: Marek Vasut <marex@denx.de>
Cc: NXP Linux Team <linux-imx@nxp.com>
Cc: kernel@dh-electronics.com
To: linux-arm-kernel@lists.infradead.org
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoARM: dts: imx6q-dhcom: Rework of the DHCOM GPIO pinctrls
Christoph Niedermaier [Mon, 2 Aug 2021 14:10:33 +0000 (16:10 +0200)]
ARM: dts: imx6q-dhcom: Rework of the DHCOM GPIO pinctrls

The function of each SoM pins is defined in the DHCOM standard [1] and
subset of them is defined as GPIOs (pins A-W). To ensure the interchange-
ability of the DHCOM SoMs, the function of the pins are fixed and cannot
be changed. On board level the DHCOM GPIOs can be used associated with
different blocks e.g. for interrupt or reset, but the function is always
GPIO. If not used, they can be freely used in the user space.

Therefore the whole configuration of SoM pins is made in the SoM DT.
Defining the DHCOM GPIO pins as a separate pinctrl nodes makes moving a
subset of them to an appropriate block pinctrl group easier on board level,
since it is not necessary to have a large pinctrl hog group containing
unrelated pinmux entries on board level. This also makes it easy to update
the SoM DT without having to update all the board DTs too. If necessary it
is also possible to change the electrical properties of the DHCOM GPIOs by
overwriting the pinctrl on board level.

[1] https://wiki.dh-electronics.com/images/2/2e/DOC_DHCOM-Standard-Specification_R01_2016-11-17.pdf

Signed-off-by: Christoph Niedermaier <cniedermaier@dh-electronics.com>
Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Fabio Estevam <festevam@denx.de>
Cc: Marek Vasut <marex@denx.de>
Cc: NXP Linux Team <linux-imx@nxp.com>
Cc: kernel@dh-electronics.com
To: linux-arm-kernel@lists.infradead.org
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoARM: dts: imx6q-dhcom: Use 1G ethernet on the PDK2 board
Christoph Niedermaier [Mon, 2 Aug 2021 14:10:32 +0000 (16:10 +0200)]
ARM: dts: imx6q-dhcom: Use 1G ethernet on the PDK2 board

The PDK2 board is capable of running both 100M and 1G ethernet. However,
the i.MX6 has only one ethernet MAC, so it is possible to configure
either 100M or 1G Ethernet. In case of 100M option, the PHY is on the
SoM and the signals are routed to a RJ45 port. For 1G the PHY is on
the PDK2 board with another RJ45 port. 100M and 1G ethernet use
different signal pins from the i.MX6, but share the MDIO bus.

This SoM board combination is used to demonstrate how to enable 1G
ethernet configuration.

Signed-off-by: Christoph Niedermaier <cniedermaier@dh-electronics.com>
Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Fabio Estevam <festevam@denx.de>
Cc: Marek Vasut <marex@denx.de>
Cc: NXP Linux Team <linux-imx@nxp.com>
Cc: kernel@dh-electronics.com
To: linux-arm-kernel@lists.infradead.org
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoARM: imx_v6_v7_defconfig: Let CONFIG_SCSI_LOWLEVEL be selected
Fabio Estevam [Sat, 24 Jul 2021 13:23:51 +0000 (10:23 -0300)]
ARM: imx_v6_v7_defconfig: Let CONFIG_SCSI_LOWLEVEL be selected

When using Yocto's Ptest DISTRO_FEATURE the CONFIG_SCSI_DEBUG=m option
is added, but it cannot be selected as it depends on CONFIG_SCSI_LOWLEVEL.

This generates a build warning saying that the CONFIG_SCSI_DEBUG=m option
is discarded.

Fix this by letting CONFIG_SCSI_LOWLEVEL to be selected.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoARM: imx_v6_v7_defconfig: Select CONFIG_KPROBES
Fabio Estevam [Sat, 24 Jul 2021 13:23:50 +0000 (10:23 -0300)]
ARM: imx_v6_v7_defconfig: Select CONFIG_KPROBES

Building lttng-modules without CONFIG_KPROBES selected gives a build
error.

Select CONFIG_KPROBES by default.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agodt-bindings: arm: imx: add imx8mm/imx8mn GW7902 support
Tim Harvey [Fri, 23 Jul 2021 18:41:15 +0000 (11:41 -0700)]
dt-bindings: arm: imx: add imx8mm/imx8mn GW7902 support

The GW7902 is based on the i.MX 8M Mini / Nano SoC featuring:
 - LPDDR4 DRAM
 - eMMC FLASH
 - Gateworks System Controller
 - LTE CAT M1 modem
 - USB 2.0 HUB
 - M.2 Socket with USB2.0, PCIe, and dual-SIM
 - IMX8M FEC
 - PCIe based GbE
 - RS232/RS485/RS422 serial transceiver
 - GPS
 - CAN bus
 - WiFi / Bluetooth
 - MIPI header (DSI/CSI/GPIO/PWM/I2S)
 - PMIC

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agoARM: dts: imx: Swap M53Menlo pinctrl_power_button/pinctrl_power_out pins
Marek Vasut [Sun, 18 Jul 2021 21:43:02 +0000 (23:43 +0200)]
ARM: dts: imx: Swap M53Menlo pinctrl_power_button/pinctrl_power_out pins

The pinctrl_power_button/pinctrl_power_out each define single GPIO
pinmux, except it is exactly the other one than the matching gpio-keys
and gpio-poweroff DT nodes use for that functionality. Swap the two
GPIOs to correct this error.

Fixes: 50d29fdb765d ("ARM: dts: imx53: Add power GPIOs on M53Menlo")
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Fabio Estevam <festevam@gmail.com>
Cc: NXP Linux Team <linux-imx@nxp.com>
Reviewed-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agoARM: imx: fix missing 3rd argument in macro imx_mmdc_perf_init
Colin Ian King [Thu, 15 Jul 2021 13:23:21 +0000 (14:23 +0100)]
ARM: imx: fix missing 3rd argument in macro imx_mmdc_perf_init

The function imx_mmdc_perf_init recently had a 3rd argument added to
it but the equivalent macro was not updated and is still the older
2 argument version. Fix this by adding in the missing 3rd argumement
mmdc_ipg_clk.

Fixes: f07ec8536580 ("ARM: imx: add missing clk_disable_unprepare()")
Signed-off-by: Colin Ian King <colin.king@canonical.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agoARM: dts: imx6q-dhcom: Set minimum memory size of all DHCOM i.MX6 variants
Christoph Niedermaier [Wed, 14 Jul 2021 21:07:08 +0000 (23:07 +0200)]
ARM: dts: imx6q-dhcom: Set minimum memory size of all DHCOM i.MX6 variants

The minimum available memory size of all DHCOM i.MX6 variants is 512 MB.
Set this value for the memory node. If U-Boot fails to fill the memory
size, at least all DHCOM i.MX6 variants should run without problems.

Signed-off-by: Christoph Niedermaier <cniedermaier@dh-electronics.com>
Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Fabio Estevam <festevam@denx.de>
Cc: Marek Vasut <marex@denx.de>
Cc: NXP Linux Team <linux-imx@nxp.com>
Cc: kernel@dh-electronics.com
To: linux-arm-kernel@lists.infradead.org
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agoARM: dts: imx6q-dhcom: Remove ddc-i2c-bus property
Christoph Niedermaier [Wed, 14 Jul 2021 21:07:07 +0000 (23:07 +0200)]
ARM: dts: imx6q-dhcom: Remove ddc-i2c-bus property

An EDID lookup is not needed with this panel.

Signed-off-by: Christoph Niedermaier <cniedermaier@dh-electronics.com>
Reviewed-by: Marek Vasut <marex@denx.de>
Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Fabio Estevam <festevam@denx.de>
Cc: Marek Vasut <marex@denx.de>
Cc: NXP Linux Team <linux-imx@nxp.com>
Cc: kernel@dh-electronics.com
To: linux-arm-kernel@lists.infradead.org
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agoARM: dts: imx6q-dhcom: Add keys and leds to the PDK2 board
Christoph Niedermaier [Wed, 14 Jul 2021 21:07:04 +0000 (23:07 +0200)]
ARM: dts: imx6q-dhcom: Add keys and leds to the PDK2 board

On the PDK2 there are 4 keys and 4 leds. DHCOM GPIOs are
used for that, but one led isn't useable, because the GPIO
is already used as touch interrupt.

Signed-off-by: Christoph Niedermaier <cniedermaier@dh-electronics.com>
Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Fabio Estevam <festevam@denx.de>
Cc: Marek Vasut <marex@denx.de>
Cc: NXP Linux Team <linux-imx@nxp.com>
Cc: kernel@dh-electronics.com
To: linux-arm-kernel@lists.infradead.org
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agoARM: dts: imx6q-dhcom: Align stdout-path with other DHCOM SoMs
Christoph Niedermaier [Wed, 14 Jul 2021 21:07:03 +0000 (23:07 +0200)]
ARM: dts: imx6q-dhcom: Align stdout-path with other DHCOM SoMs

Set stdout-path to "serial0:15200n8" to align it with other DHCOM
SoMs like the DHCOM STM32MP1.

Signed-off-by: Christoph Niedermaier <cniedermaier@dh-electronics.com>
Reviewed-by: Marek Vasut <marex@denx.de>
Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Fabio Estevam <festevam@denx.de>
Cc: Marek Vasut <marex@denx.de>
Cc: NXP Linux Team <linux-imx@nxp.com>
Cc: kernel@dh-electronics.com
To: linux-arm-kernel@lists.infradead.org
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agoARM: dts: imx6q-dhcom: Adding Wake pin to the PCIe pinctrl
Christoph Niedermaier [Wed, 14 Jul 2021 21:07:02 +0000 (23:07 +0200)]
ARM: dts: imx6q-dhcom: Adding Wake pin to the PCIe pinctrl

The pin CSI0_DATA_EN is reserved for PCIe Wake. Move this pin to
the SoM devicetree. Add PCIe Reset GPIO to the board devicetree.

Signed-off-by: Christoph Niedermaier <cniedermaier@dh-electronics.com>
Reviewed-by: Marek Vasut <marex@denx.de>
Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Fabio Estevam <festevam@denx.de>
Cc: Marek Vasut <marex@denx.de>
Cc: NXP Linux Team <linux-imx@nxp.com>
Cc: kernel@dh-electronics.com
To: linux-arm-kernel@lists.infradead.org
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agoARM: dts: imx6q-dhcom: Fill GPIO line names on DHCOM SoM
Christoph Niedermaier [Wed, 14 Jul 2021 21:07:01 +0000 (23:07 +0200)]
ARM: dts: imx6q-dhcom: Fill GPIO line names on DHCOM SoM

Fill in the custom GPIO line names used by DH on the DHCOM SoM.
The GPIO line names are in accordance to DHCOM Design Guide R04
available at [1], section 3.9 GPIO. Adding also GPIO line names
for the hardware and memory coding.

[1] https://wiki.dh-electronics.com/images/5/52/DOC_DHCOM-Design-Guide_R04_2018-06-28.pdf

Signed-off-by: Christoph Niedermaier <cniedermaier@dh-electronics.com>
Reviewed-by: Marek Vasut <marex@denx.de>
Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Fabio Estevam <festevam@denx.de>
Cc: Marek Vasut <marex@denx.de>
Cc: NXP Linux Team <linux-imx@nxp.com>
Cc: kernel@dh-electronics.com
To: linux-arm-kernel@lists.infradead.org
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agoARM: dts: imx6q-dhcom: Add interrupt and compatible to the ethernet PHY
Christoph Niedermaier [Wed, 14 Jul 2021 21:07:00 +0000 (23:07 +0200)]
ARM: dts: imx6q-dhcom: Add interrupt and compatible to the ethernet PHY

Enable the interrupt mode for the ethernet PHY by adding the
necessary property and a separate pinctrl for the PHY. Also
add the compatible property for it.

Signed-off-by: Christoph Niedermaier <cniedermaier@dh-electronics.com>
Reviewed-by: Marek Vasut <marex@denx.de>
Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Fabio Estevam <festevam@denx.de>
Cc: Marek Vasut <marex@denx.de>
Cc: NXP Linux Team <linux-imx@nxp.com>
Cc: kernel@dh-electronics.com
To: linux-arm-kernel@lists.infradead.org
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agoARM: dts: imx6q-dhcom: Add the parallel system bus
Christoph Niedermaier [Wed, 14 Jul 2021 21:06:59 +0000 (23:06 +0200)]
ARM: dts: imx6q-dhcom: Add the parallel system bus

Add the parallel system bus provided by the i.MX6 WEIM interface via an
address latch. The OE pin of the latch is controlled by a fixed regulator.
The pin is low active. This is ensured by omitting the regulators property
enable-active-high. The flags value of the gpio property (3rd value), which
is also use to define active high/low, is set to 0 because it is ignored
by gpiolib-of.c.

Signed-off-by: Christoph Niedermaier <cniedermaier@dh-electronics.com>
Reviewed-by: Marek Vasut <marex@denx.de>
Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Fabio Estevam <festevam@denx.de>
Cc: Marek Vasut <marex@denx.de>
Cc: NXP Linux Team <linux-imx@nxp.com>
Cc: kernel@dh-electronics.com
To: linux-arm-kernel@lists.infradead.org
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agodt-bindings: arm: fsl: Add DHCOM PicoITX and DHCOM DRC02 boards
Christoph Niedermaier [Wed, 14 Jul 2021 20:22:52 +0000 (22:22 +0200)]
dt-bindings: arm: fsl: Add DHCOM PicoITX and DHCOM DRC02 boards

Add DH electronics DHCOM PicoITX and DHCOM DRC02 boards. The DHCOM DRC02
device can only house a SOM with iMX6S and not with iMX6DL, due to some
thermal design consideration. But for compatible fsl,imx6dl is chosen,
because fsl,imx6s isn't available, the iMX6S is basically a iMX6DL with
one CPU core disabled and therefore the kernel discerns the iMX6S/iMX6DL
automatically.

Signed-off-by: Christoph Niedermaier <cniedermaier@dh-electronics.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
Cc: robh+dt@kernel.org
Cc: Shawn Guo <shawnguo@kernel.org>
Cc: kernel@dh-electronics.com
Cc: Fabio Estevam <festevam@denx.de>
To: devicetree@vger.kernel.org
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agodmaengine: imx-sdma: add terminated list for freed descriptor in worker
Robin Gong [Wed, 14 Jul 2021 10:20:52 +0000 (18:20 +0800)]
dmaengine: imx-sdma: add terminated list for freed descriptor in worker

Add terminated list for keeping descriptor so that it could be freed in
worker without any potential involving next descriptor raised up before
this descriptor freed, because vchan_get_all_descriptors get all
descriptors including the last terminated descriptor and the next
descriptor, hence, the next descriptor maybe freed unexpectly when it's
done in worker without this patch.
https://www.spinics.net/lists/dmaengine/msg23367.html

Signed-off-by: Robin Gong <yibin.gong@nxp.com>
Reported-by: Richard Leitner <richard.leitner@skidata.com>
Reviewed-by: Lucas Stach <l.stach@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agodmaengine: imx-sdma: add uart rom script
Robin Gong [Wed, 14 Jul 2021 10:20:51 +0000 (18:20 +0800)]
dmaengine: imx-sdma: add uart rom script

For the compatibility of NXP internal legacy kernel before 4.19 which
is based on uart ram script and upstreaming kernel based on uart rom
script, add both uart ram/rom script in latest sdma firmware. By default
uart rom script used.
Besides, add two multi-fifo scripts for SAI/PDM on i.mx8m/8mm and add
back qspi script miss for v4(i.mx7d/8m/8mm family, but v3 is for i.mx6).

rom script:
        uart_2_mcu_addr
uartsh_2_mcu_addr /* through spba bus */
am script:
uart_2_mcu_ram_addr
uartsh_2_mcu_ram_addr /* through spba bus */

Please get latest sdma firmware from the below and put them into the path
(/lib/firmware/imx/sdma/):
https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
/tree/imx/sdma

Signed-off-by: Robin Gong <yibin.gong@nxp.com>
Reviewed-by: Lucas Stach <l.stach@pengutronix.de>
Acked-by: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agodma: imx-sdma: add i.mx6ul compatible name
Robin Gong [Wed, 14 Jul 2021 10:20:50 +0000 (18:20 +0800)]
dma: imx-sdma: add i.mx6ul compatible name

Add i.mx6ul compatible name in binding doc.

Signed-off-by: Robin Gong <yibin.gong@nxp.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agodmaengine: imx-sdma: remove ERR009165 on i.mx6ul
Robin Gong [Wed, 14 Jul 2021 10:20:49 +0000 (18:20 +0800)]
dmaengine: imx-sdma: remove ERR009165 on i.mx6ul

ECSPI issue fixed from i.mx6ul at hardware level, no need
ERR009165 anymore on those chips such as i.mx8mq.

Signed-off-by: Robin Gong <yibin.gong@nxp.com>
Acked-by: Vinod Koul <vkoul@kernel.org>
Reviewed-by: Lucas Stach <l.stach@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agospi: imx: remove ERR009165 workaround on i.mx6ul
Robin Gong [Wed, 14 Jul 2021 10:20:48 +0000 (18:20 +0800)]
spi: imx: remove ERR009165 workaround on i.mx6ul

ERR009165 fixed on i.mx6ul/6ull/6sll. All other i.mx6/7 and
i.mx8m/8mm still need this errata. Please refer to nxp official
errata document from https://www.nxp.com/ .

For removing workaround on those chips. Add new i.mx6ul type.

Signed-off-by: Robin Gong <yibin.gong@nxp.com>
Reviewed-by: Lucas Stach <l.stach@pengutronix.de>
Acked-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agospi: imx: fix ERR009165
Robin Gong [Wed, 14 Jul 2021 10:20:47 +0000 (18:20 +0800)]
spi: imx: fix ERR009165

Change to XCH  mode even in dma mode, please refer to the below
errata:
https://www.nxp.com/docs/en/errata/IMX6DQCE.pdf

Signed-off-by: Robin Gong <yibin.gong@nxp.com>
Reviewed-by: Lucas Stach <l.stach@pengutronix.de>
Acked-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agodmaengine: imx-sdma: add mcu_2_ecspi script
Robin Gong [Wed, 14 Jul 2021 10:20:46 +0000 (18:20 +0800)]
dmaengine: imx-sdma: add mcu_2_ecspi script

Add mcu_2_ecspi script to fix ecspi errata ERR009165.

Signed-off-by: Robin Gong <yibin.gong@nxp.com>
Reviewed-by: Lucas Stach <l.stach@pengutronix.de>
Acked-by: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agodmaengine: dma: imx-sdma: add fw_loaded and is_ram_script
Robin Gong [Wed, 14 Jul 2021 10:20:45 +0000 (18:20 +0800)]
dmaengine: dma: imx-sdma: add fw_loaded and is_ram_script

Add 'fw_loaded' and 'is_ram_script' to check if the script used by channel
is ram script and it's loaded or not, so that could prevent meaningless
following malloc dma descriptor and bd allocate in sdma_transfer_init(),
otherwise memory may be consumed out potentially without free in case
that spi fallback into pio while dma transfer failed by sdma firmware not
ready(next ERR009165 patch depends on sdma RAM scripts/firmware).

Signed-off-by: Robin Gong <yibin.gong@nxp.com>
Acked-by: Vinod Koul <vkoul@kernel.org>
Reviewed-by: Lucas Stach <l.stach@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agodmaengine: imx-sdma: remove duplicated sdma_load_context
Robin Gong [Wed, 14 Jul 2021 10:20:44 +0000 (18:20 +0800)]
dmaengine: imx-sdma: remove duplicated sdma_load_context

Since sdma_transfer_init() will do sdma_load_context before any
sdma transfer, no need once more in sdma_config_channel().

Fixes: ad0d92d7ba6a ("dmaengine: imx-sdma: refine to load context only once")
Cc: <stable@vger.kernel.org>
Signed-off-by: Robin Gong <yibin.gong@nxp.com>
Acked-by: Vinod Koul <vkoul@kernel.org>
Tested-by: Richard Leitner <richard.leitner@skidata.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agoRevert "dmaengine: imx-sdma: refine to load context only once"
Robin Gong [Wed, 14 Jul 2021 10:20:43 +0000 (18:20 +0800)]
Revert "dmaengine: imx-sdma: refine to load context only once"

This reverts commit ad0d92d7ba6aecbe2705907c38ff8d8be4da1e9c, because
in spi-imx case, burst length may be changed dynamically.

Fixes: ad0d92d7ba6a ("dmaengine: imx-sdma: refine to load context only once")
Cc: <stable@vger.kernel.org>
Signed-off-by: Robin Gong <yibin.gong@nxp.com>
Acked-by: Sascha Hauer <s.hauer@pengutronix.de>
Tested-by: Richard Leitner <richard.leitner@skidata.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agoRevert "ARM: dts: imx6: Use correct SDMA script for SPI cores"
Robin Gong [Wed, 14 Jul 2021 10:20:42 +0000 (18:20 +0800)]
Revert "ARM: dts: imx6: Use correct SDMA script for SPI cores"

There are two ways for SDMA accessing SPBA devices: one is SDMA->AIPS
->SPBA(masterA port), another is SDMA->SPBA(masterC port). Please refer
to the 'Figure 58-1. i.MX 6Dual/6Quad SPBA connectivity' of i.mx6DQ
Reference Manual. SDMA provide the corresponding app_2_mcu/mcu_2_app and
shp_2_mcu/mcu_2_shp script for such two options. So both AIPS and SPBA
scripts should keep the same behaviour, the issue only caught in AIPS
script sounds not solide.
The issue is more likely as the ecspi errata
ERR009165(http://www.nxp.com/docs/en/errata/IMX6DQCE.pdf):
eCSPI: TXFIFO empty flag glitch can cause the current FIFO transfer to
           be sent twice
So revert commit 'dd4b487b32a3' firstly.

Signed-off-by: Robin Gong <yibin.gong@nxp.com>
Acked-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agoRevert "ARM: dts: imx6q: Use correct SDMA script for SPI5 core"
Robin Gong [Wed, 14 Jul 2021 10:20:41 +0000 (18:20 +0800)]
Revert "ARM: dts: imx6q: Use correct SDMA script for SPI5 core"

  There are two ways for SDMA accessing SPBA devices: one is SDMA->AIPS
->SPBA(masterA port), another is SDMA->SPBA(masterC port). Please refer
to the 'Figure 58-1. i.MX 6Dual/6Quad SPBA connectivity' of i.mx6DQ
Reference Manual. SDMA provide the corresponding app_2_mcu/mcu_2_app and
shp_2_mcu/mcu_2_shp script for such two options. So both AIPS and SPBA
scripts should keep the same behaviour, the issue only caught in AIPS
script sounds not solide.
  The issue is more likely as the ecspi errata
ERR009165(http://www.nxp.com/docs/en/errata/IMX6DQCE.pdf):
eCSPI: TXFIFO empty flag glitch can cause the current FIFO transfer to
       be sent twice
So revert commit 'df07101e1c4a' firstly.

Signed-off-by: Robin Gong <yibin.gong@nxp.com>
Acked-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agoARM: dts: colibri-imx6ull: limit SDIO clock to 25MHz
Oleksandr Suvorov [Tue, 13 Jul 2021 20:21:07 +0000 (23:21 +0300)]
ARM: dts: colibri-imx6ull: limit SDIO clock to 25MHz

NXP and AzureWave don't recommend using SDIO bus mode 3.3V@50MHz due
to noise affecting the wireless throughput. Colibri iMX6ULL uses only
3.3V signaling for Wi-Fi module AW-CM276NF.

Limit the SDIO Clock on Colibri iMX6ULL to 25MHz.

Fixes: c2e4987e0e02 ("ARM: dts: imx6ull: add Toradex Colibri iMX6ULL support")
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
Reviewed-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agoARM: dts: imx7d-remarkable2: Add WiFi support
Alistair Francis [Tue, 6 Jul 2021 11:40:28 +0000 (21:40 +1000)]
ARM: dts: imx7d-remarkable2: Add WiFi support

Add support for the bcm4329-fmac WiFi in the reMarkable 2, connected via SDHC.

Signed-off-by: Alistair Francis <alistair@alistair23.me>
Reviewed-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agoarm64: dts: ls1028: sl28: fix networking for variant 2
Michael Walle [Fri, 2 Jul 2021 19:49:14 +0000 (21:49 +0200)]
arm64: dts: ls1028: sl28: fix networking for variant 2

The PHY configuration for the variant 2 is still missing the flag for
in-band signalling between PHY and MAC. Both sides - MAC and PHY - have
to match the setting. For now, Linux only supports setting the MAC side
and thus it has to match the setting the bootloader is configuring.
Enable in-band signalling to make ethernet work.

Fixes: ab43f0307449 ("arm64: dts: ls1028a: sl28: add support for variant 2")
Signed-off-by: Michael Walle <michael@walle.cc>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agoARM: dts: imx6qdl-gw5904: atecc508a support
Tim Harvey [Thu, 1 Jul 2021 18:06:33 +0000 (11:06 -0700)]
ARM: dts: imx6qdl-gw5904: atecc508a support

Add one node for the Atmel ATECC508A 'CryptoAuthentication' i2c device.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agoARM: dts: imx6qdl-gw5xxx: add missing USB OTG OC pinmux
Tim Harvey [Thu, 1 Jul 2021 18:00:57 +0000 (11:00 -0700)]
ARM: dts: imx6qdl-gw5xxx: add missing USB OTG OC pinmux

Add USB OTG over-current pinmux to the GW51xx/GW52xx/GW54xx/GW553x
boards.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agoRevert "soc: imx8m: change to use platform driver"
Lucas Stach [Mon, 28 Jun 2021 21:09:55 +0000 (23:09 +0200)]
Revert "soc: imx8m: change to use platform driver"

With the SoC matching changed to a platform driver the match data
is available only after other drivers, which may rely on it are
already probed. This breaks at least the CAAM driver on i.MX8M.
Revert the change until all those drivers have been audited and
changed to be able to eal with match data being available later
in the boot process.

Fixes: 7d981405d0fd ("soc: imx8m: change to use platform driver")
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Tested-by: Frieder Schrempf <frieder.schrempf@kontron.de>
Acked-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agoARM: dts: add SolidRun SolidSense support
Russell King [Sat, 19 Jun 2021 15:55:31 +0000 (16:55 +0100)]
ARM: dts: add SolidRun SolidSense support

Add support for the SolidRun SolidSense platform, which is a
Hummingboard2 with a daughter card with two Nordic software defined
radios and a couple of bi-color LEDs.

Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agoARM: dts: imx6qdl-sr-som: Increase the PHY reset duration to 10ms
Maxime Chevallier [Fri, 25 Jun 2021 12:13:53 +0000 (14:13 +0200)]
ARM: dts: imx6qdl-sr-som: Increase the PHY reset duration to 10ms

The AR803x PHY used on this modules seems to require the reset line to
be asserted for around 10ms in order to avoid rare cases where the PHY
gets stuck in an incoherent state that prevents it to function
correctly.

The previous value of 2ms was found to be problematic on some setups,
causing intermittent issues where the PHY would be unresponsive
every once in a while on some sytems, with a low occurrence (it typically
took around 30 consecutive reboots to encounter the issue).

Bumping the delay to the 10ms makes the issue dissapear, with more than
2500 consecutive reboots performed without the issue showing-up.

Fixes: 208d7baf8085 ("ARM: imx: initial SolidRun HummingBoard support")
Signed-off-by: Maxime Chevallier <maxime.chevallier@bootlin.com>
Tested-by: Hervé Codina <herve.codina@bootlin.com>
Reviewed-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agodt-bindings: arm: fsl: add SolidSense boards
Russell King (Oracle) [Sat, 19 Jun 2021 15:55:26 +0000 (16:55 +0100)]
dt-bindings: arm: fsl: add SolidSense boards

Add SolidRun SolidSense boards.

Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agodt-bindings: media: imx-jpeg: Add compatible for i.MX8QM JPEG codec
Mirela Rabulea [Sat, 19 Jun 2021 14:36:10 +0000 (17:36 +0300)]
dt-bindings: media: imx-jpeg: Add compatible for i.MX8QM JPEG codec

Add two more compatibles: "nxp,imx8qm-jpgdec" and " nxp,imx8qm-jpgenc".
Also update the compatible property to ensure mutually exclusive usage of
encoder and decoder compatibles.
Update examples.

Signed-off-by: Mirela Rabulea <mirela.rabulea@nxp.com>
Reviewed-by: Dong Aisheng <aisheng.dong@nxp.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agoARM: imx: common: Move prototype outside the SMP block
Fabio Estevam [Thu, 17 Jun 2021 14:54:15 +0000 (11:54 -0300)]
ARM: imx: common: Move prototype outside the SMP block

Currently the imx_gpcv2_set_core1_pdn_pup_by_software() prototype is
guarded by the CONFIG_SMP symbol. This causes W=1 build warnings when
CONFIG_SMP is not selected:

arch/arm/mach-imx/src.c:103:6: warning: no previous prototype for 'imx_gpcv2_set_core1_pdn_pup_by_software' [-Wmissing-prototypes]

Fix it by moving the imx_gpcv2_set_core1_pdn_pup_by_software() prototype
outside of the CONFIG_SMP block.

Fixes: e34645f45805 ("ARM: imx: add smp support for imx7d")
Reported-by: kernel test robot <lkp@intel.com>
Signed-off-by: Fabio Estevam <festevam@denx.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agoARM: imx: add missing clk_disable_unprepare()
Yang Yingliang [Tue, 15 Jun 2021 12:52:39 +0000 (20:52 +0800)]
ARM: imx: add missing clk_disable_unprepare()

clock source is prepared and enabled by clk_prepare_enable()
in probe function, but no disable or unprepare in remove and
error path.

Fixes: 9454a0caff6a ("ARM: imx: add mmdc ipg clock operation for mmdc")
Reported-by: Hulk Robot <hulkci@huawei.com>
Signed-off-by: Yang Yingliang <yangyingliang@huawei.com>
Reviewed-by: Dong Aisheng <aisheng.dong@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agoARM: imx: add missing iounmap()
Yang Yingliang [Tue, 15 Jun 2021 12:52:38 +0000 (20:52 +0800)]
ARM: imx: add missing iounmap()

Commit e76bdfd7403a ("ARM: imx: Added perf functionality to mmdc driver")
introduced imx_mmdc_remove(), the mmdc_base need be unmapped in it if
config PERF_EVENTS is enabled.

If imx_mmdc_perf_init() fails, the mmdc_base also need be unmapped.

Fixes: e76bdfd7403a ("ARM: imx: Added perf functionality to mmdc driver")
Reported-by: Hulk Robot <hulkci@huawei.com>
Signed-off-by: Yang Yingliang <yangyingliang@huawei.com>
Reviewed-by: Dong Aisheng <aisheng.dong@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agoarm64: dts: imx8mq: add support for MNT Reform2
Lucas Stach [Mon, 14 Jun 2021 17:06:33 +0000 (19:06 +0200)]
arm64: dts: imx8mq: add support for MNT Reform2

This adds a basic devicetree for the MNT Reform2 DIY laptop. Not all
of the board periperals are enabled yet, as some of them still require
kernel patches to work properly. The nodes for those peripherals will
be added as soon as the required patches are upstream.

The following has been tested to work:
- UART console
- SD card
- eMMC
- Gigabit Ethernet
- USB (internal Keyboard, Mouse, external ports)
- M.2 PCIe port

Co-developed-by: Lukas F. Hartmann <lukas@mntre.com>
Signed-off-by: Lucas Stach <dev@lynxeye.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agoarm64: dts: imx8mq: add Nitrogen8 SoM
Lucas Stach [Mon, 14 Jun 2021 17:06:30 +0000 (19:06 +0200)]
arm64: dts: imx8mq: add Nitrogen8 SoM

This adds the description of the Nitrogen8 System on Module. The module
is quite simple with only a few (almost) fixed regulators and a eMMC
on-board.

Signed-off-by: Lucas Stach <dev@lynxeye.de>
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agodt-bindings: arm: fsl: add MNT Reform2 board
Lucas Stach [Wed, 14 Jul 2021 04:11:14 +0000 (12:11 +0800)]
dt-bindings: arm: fsl: add MNT Reform2 board

Add compatible for the MNT Reform2 laptop board.

Signed-off-by: Lucas Stach <dev@lynxeye.de>
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agodt-bindings: vendor-prefixes: add mntre
Lucas Stach [Mon, 14 Jun 2021 17:06:31 +0000 (19:06 +0200)]
dt-bindings: vendor-prefixes: add mntre

MNT Research GmbH develops open source hardware, software
and textiles in Berlin, Germany.

Signed-off-by: Lucas Stach <dev@lynxeye.de>
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agodt-bindings: arm: fsl: add Nitrogen8 SoM
Lucas Stach [Mon, 14 Jun 2021 17:06:29 +0000 (19:06 +0200)]
dt-bindings: arm: fsl: add Nitrogen8 SoM

Add compatible for the BoundaryDevices Nitrogen8 system on module.

Signed-off-by: Lucas Stach <dev@lynxeye.de>
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agoarm64: dts: ls1028a: fix node name for the sysclk
Vladimir Oltean [Tue, 8 Jun 2021 11:26:58 +0000 (14:26 +0300)]
arm64: dts: ls1028a: fix node name for the sysclk

U-Boot attempts to fix up the "clock-frequency" property of the "/sysclk" node:
https://elixir.bootlin.com/u-boot/v2021.04/source/arch/arm/cpu/armv8/fsl-layerscape/fdt.c#L512

but fails to do so:

  ## Booting kernel from Legacy Image at a1000000 ...
     Image Name:
     Created:      2021-06-08  10:31:38 UTC
     Image Type:   AArch64 Linux Kernel Image (gzip compressed)
     Data Size:    15431370 Bytes = 14.7 MiB
     Load Address: 80080000
     Entry Point:  80080000
     Verifying Checksum ... OK
  ## Flattened Device Tree blob at a0000000
     Booting using the fdt blob at 0xa0000000
     Uncompressing Kernel Image
     Loading Device Tree to 00000000fbb19000, end 00000000fbb22717 ... OK
  Unable to update property /sysclk:clock-frequency, err=FDT_ERR_NOTFOUND

  Starting kernel ...

All Layerscape SoCs except LS1028A use "sysclk" as the node name, and
not "clock-sysclk". So change the node name of LS1028A accordingly.

Fixes: 8897f3255c9c ("arm64: dts: Add support for NXP LS1028A SoC")
Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
4 years agoLinux 5.14-rc1
Linus Torvalds [Sun, 11 Jul 2021 22:07:40 +0000 (15:07 -0700)]
Linux 5.14-rc1

4 years agomm/rmap: try_to_migrate() skip zone_device !device_private
Hugh Dickins [Wed, 7 Jul 2021 20:13:33 +0000 (13:13 -0700)]
mm/rmap: try_to_migrate() skip zone_device !device_private

I know nothing about zone_device pages and !device_private pages; but if
try_to_migrate_one() will do nothing for them, then it's better that
try_to_migrate() filter them first, than trawl through all their vmas.

Signed-off-by: Hugh Dickins <hughd@google.com>
Reviewed-by: Shakeel Butt <shakeelb@google.com>
Reviewed-by: Alistair Popple <apopple@nvidia.com>
Link: https://lore.kernel.org/lkml/1241d356-8ec9-f47b-a5ec-9b2bf66d242@google.com/
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Jason Gunthorpe <jgg@nvidia.com>
Cc: Ralph Campbell <rcampbell@nvidia.com>
Cc: Christoph Hellwig <hch@lst.de>
Cc: Yang Shi <shy828301@gmail.com>
Cc: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
4 years agomm/rmap: fix new bug: premature return from page_mlock_one()
Hugh Dickins [Wed, 7 Jul 2021 20:11:24 +0000 (13:11 -0700)]
mm/rmap: fix new bug: premature return from page_mlock_one()

In the unlikely race case that page_mlock_one() finds VM_LOCKED has been
cleared by the time it got page table lock, page_vma_mapped_walk_done()
must be called before returning, either explicitly, or by a final call
to page_vma_mapped_walk() - otherwise the page table remains locked.

Fixes: cd62734ca60d ("mm/rmap: split try_to_munlock from try_to_unmap")
Signed-off-by: Hugh Dickins <hughd@google.com>
Reviewed-by: Alistair Popple <apopple@nvidia.com>
Reviewed-by: Shakeel Butt <shakeelb@google.com>
Reported-by: kernel test robot <oliver.sang@intel.com>
Link: https://lore.kernel.org/lkml/20210711151446.GB4070@xsang-OptiPlex-9020/
Link: https://lore.kernel.org/lkml/f71f8523-cba7-3342-40a7-114abc5d1f51@google.com/
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Jason Gunthorpe <jgg@nvidia.com>
Cc: Ralph Campbell <rcampbell@nvidia.com>
Cc: Christoph Hellwig <hch@lst.de>
Cc: Yang Shi <shy828301@gmail.com>
Cc: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
4 years agomm/rmap: fix old bug: munlocking THP missed other mlocks
Hugh Dickins [Wed, 7 Jul 2021 20:08:53 +0000 (13:08 -0700)]
mm/rmap: fix old bug: munlocking THP missed other mlocks

The kernel recovers in due course from missing Mlocked pages: but there
was no point in calling page_mlock() (formerly known as
try_to_munlock()) on a THP, because nothing got done even when it was
found to be mapped in another VM_LOCKED vma.

It's true that we need to be careful: Mlocked accounting of pte-mapped
THPs is too difficult (so consistently avoided); but Mlocked accounting
of only-pmd-mapped THPs is supposed to work, even when multiple mappings
are mlocked and munlocked or munmapped.  Refine the tests.

There is already a VM_BUG_ON_PAGE(PageDoubleMap) in page_mlock(), so
page_mlock_one() does not even have to worry about that complication.

(I said the kernel recovers: but would page reclaim be likely to split
THP before rediscovering that it's VM_LOCKED? I've not followed that up)

Fixes: 9a73f61bdb8a ("thp, mlock: do not mlock PTE-mapped file huge pages")
Signed-off-by: Hugh Dickins <hughd@google.com>
Reviewed-by: Shakeel Butt <shakeelb@google.com>
Acked-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
Link: https://lore.kernel.org/lkml/cfa154c-d595-406-eb7d-eb9df730f944@google.com/
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Alistair Popple <apopple@nvidia.com>
Cc: Jason Gunthorpe <jgg@nvidia.com>
Cc: Ralph Campbell <rcampbell@nvidia.com>
Cc: Christoph Hellwig <hch@lst.de>
Cc: Yang Shi <shy828301@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
4 years agomm/rmap: fix comments left over from recent changes
Hugh Dickins [Wed, 7 Jul 2021 20:06:17 +0000 (13:06 -0700)]
mm/rmap: fix comments left over from recent changes

Parallel developments in mm/rmap.c have left behind some out-of-date
comments: try_to_migrate_one() also accepts TTU_SYNC (already commented
in try_to_migrate() itself), and try_to_migrate() returns nothing at
all.

TTU_SPLIT_FREEZE has just been deleted, so reword the comment about it
in mm/huge_memory.c; and TTU_IGNORE_ACCESS was removed in 5.11, so
delete the "recently referenced" comment from try_to_unmap_one() (once
upon a time the comment was near the removed codeblock, but they drifted
apart).

Signed-off-by: Hugh Dickins <hughd@google.com>
Reviewed-by: Shakeel Butt <shakeelb@google.com>
Reviewed-by: Alistair Popple <apopple@nvidia.com>
Link: https://lore.kernel.org/lkml/563ce5b2-7a44-5b4d-1dfd-59a0e65932a9@google.com/
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Jason Gunthorpe <jgg@nvidia.com>
Cc: Ralph Campbell <rcampbell@nvidia.com>
Cc: Christoph Hellwig <hch@lst.de>
Cc: Yang Shi <shy828301@gmail.com>
Cc: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
4 years agoMerge tag 'irq-urgent-2021-07-11' of git://git.kernel.org/pub/scm/linux/kernel/git...
Linus Torvalds [Sun, 11 Jul 2021 18:17:57 +0000 (11:17 -0700)]
Merge tag 'irq-urgent-2021-07-11' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull irq fixes from Ingo Molnar:
 "Two fixes:

   - Fix a MIPS IRQ handling RCU bug

   - Remove a DocBook annotation for a parameter that doesn't exist
     anymore"

* tag 'irq-urgent-2021-07-11' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  irqchip/mips: Fix RCU violation when using irqdomain lookup on interrupt entry
  genirq/irqdesc: Drop excess kernel-doc entry @lookup

4 years agoMerge tag 'sched-urgent-2021-07-11' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Sun, 11 Jul 2021 18:13:57 +0000 (11:13 -0700)]
Merge tag 'sched-urgent-2021-07-11' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull scheduler fixes from Ingo Molnar:
 "Three fixes:

   - Fix load tracking bug/inconsistency

   - Fix a sporadic CFS bandwidth constraints enforcement bug

   - Fix a uclamp utilization tracking bug for newly woken tasks"

* tag 'sched-urgent-2021-07-11' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  sched/uclamp: Ignore max aggregation if rq is idle
  sched/fair: Fix CFS bandwidth hrtimer expiry type
  sched/fair: Sync load_sum with load_avg after dequeue

4 years agoMerge tag 'perf-urgent-2021-07-11' of git://git.kernel.org/pub/scm/linux/kernel/git...
Linus Torvalds [Sun, 11 Jul 2021 18:10:48 +0000 (11:10 -0700)]
Merge tag 'perf-urgent-2021-07-11' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull perf fixes from Ingo Molnar:
 "A fix and a hardware-enablement addition:

   - Robustify uncore_snbep's skx_iio_set_mapping()'s error cleanup

   - Add cstate event support for Intel ICELAKE_X and ICELAKE_D"

* tag 'perf-urgent-2021-07-11' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  perf/x86/intel/uncore: Clean up error handling path of iio mapping
  perf/x86/cstate: Add ICELAKE_X and ICELAKE_D support

4 years agoMerge tag 'locking-urgent-2021-07-11' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Sun, 11 Jul 2021 18:06:09 +0000 (11:06 -0700)]
Merge tag 'locking-urgent-2021-07-11' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull locking fixes from Ingo Molnar:

 - Fix a Sparc crash

 - Fix a number of objtool warnings

 - Fix /proc/lockdep output on certain configs

 - Restore a kprobes fail-safe

* tag 'locking-urgent-2021-07-11' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  locking/atomic: sparc: Fix arch_cmpxchg64_local()
  kprobe/static_call: Restore missing static_call_text_reserved()
  static_call: Fix static_call_text_reserved() vs __init
  jump_label: Fix jump_label_text_reserved() vs __init
  locking/lockdep: Fix meaningless /proc/lockdep output of lock classes on !CONFIG_PROVE_LOCKING