Commit graph

982,081 commits

Author SHA1 Message Date
Gary Leshner
438d7dda98 IB/hfi1: Add the transmit side of a datagram ipoib RDMA netdev
This implements the transmit side of the multiple transmit queue RDMA
netdev used to accelerate ipoib.  The receive side remains the ipoib
internal implementation.

The init/unint/open/stop netdev operations are saved off and called by the
versions within the hfi1 netdev in order to initialize the connected mode
resources present in ipoib thus allowing us to switch modes between
datagram and connected.

The datagram queue pair instantiated by the ipoib ulp is used by this
implementation for its queue pair number and to register with multicast.

The above queue pair is not used on transmit other than its qpn as the
verbs layer is skipped and packets are directly submitted to the sdma
engines.

Link: https://lore.kernel.org/r/20200511160554.173205.1369.stgit@awfm-01.aw.intel.com
Reviewed-by: Mike Marciniszyn <mike.marciniszyn@intel.com>
Reviewed-by: Dennis Dalessandro <dennis.dalessandro@intel.com>
Signed-off-by: Gary Leshner <Gary.S.Leshner@intel.com>
Signed-off-by: Kaike Wan <kaike.wan@intel.com>
Signed-off-by: Dennis Dalessandro <dennis.dalessandro@intel.com>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
2020-05-21 11:23:54 -03:00
Gary Leshner
d99dc602e2 IB/hfi1: Add functions to transmit datagram ipoib packets
This patch implements the mechanism to accelerate the transmit side of
a multiple transmit queue RDMA netdev by submitting the packets to
the SDMA engine directly instead of sending through the verbs layer.

This patch also changes the UD/SEND_ONLY op to output the entropy value
in byte 0 of deth[1]. UD/SEND_ONLY_WITH_IMMEDIATE uses the previous
behavior with no entropy value being output.

The code in the ipoib rdma netdev which submits tx requests upon
successful submission will call trace_sdma_output_ibhdr to output
the ibhdr to the trace buffer.

Link: https://lore.kernel.org/r/20200511160548.173205.45616.stgit@awfm-01.aw.intel.com
Reviewed-by: Mike Marciniszyn <mike.marciniszyn@intel.com>
Reviewed-by: Dennis Dalessandro <dennis.dalessandro@intel.com>
Signed-off-by: Gary Leshner <Gary.S.Leshner@intel.com>
Signed-off-by: Kaike Wan <kaike.wan@intel.com>
Signed-off-by: Dennis Dalessandro <dennis.dalessandro@intel.com>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
2020-05-21 11:23:54 -03:00
Kaike Wan
fe810b509c IB/hfi1: Add accelerated IP capability bit
The accelerated IP capability bit is added to allow users to control
which feature is enabled and disabled.

Link: https://lore.kernel.org/r/20200511160541.173205.96870.stgit@awfm-01.aw.intel.com
Reviewed-by: Dennis Dalessandro <dennis.dalessandro@intel.com>
Reviewed-by: Mike Marciniszyn <mike.marciniszyn@intel.com>
Signed-off-by: Kaike Wan <kaike.wan@intel.com>
Signed-off-by: Dennis Dalessandro <dennis.dalessandro@intel.com>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
2020-05-21 11:23:53 -03:00
Christoph Hellwig
3783daeb1d block: remove ioctl_by_bdev
No callers left.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2020-05-21 08:22:20 -06:00
Stefan Haberland
26d7e28e38 s390/dasd: remove ioctl_by_bdev calls
The IBM partition parser requires device type specific information only
available to the DASD driver to correctly register partitions. The
current approach of using ioctl_by_bdev with a fake user space pointer
is discouraged.

Fix this by replacing IOCTL calls with direct in-kernel function calls.

Suggested-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Stefan Haberland <sth@linux.ibm.com>
Reviewed-by: Jan Hoeppner <hoeppner@linux.ibm.com>
Reviewed-by: Peter Oberparleiter <oberpar@linux.ibm.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2020-05-21 08:22:20 -06:00
Christoph Hellwig
9353848c65 dasd: refactor dasd_ioctl_information
Prepare for in-kernel callers of this functionality.

Signed-off-by: Christoph Hellwig <hch@lst.de>
[sth@de.ibm.com: remove leftover kfree]
Signed-off-by: Stefan Haberland <sth@linux.ibm.com>
Reviewed-by: Peter Oberparleiter <oberpar@linux.ibm.com>
Reviewed-by: Jan Hoeppner <hoeppner@linux.ibm.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2020-05-21 08:22:20 -06:00
Martijn Coenen
3448914e8c loop: Add LOOP_CONFIGURE ioctl
This allows userspace to completely setup a loop device with a single
ioctl, removing the in-between state where the device can be partially
configured - eg the loop device has a backing file associated with it,
but is reading from the wrong offset.

Besides removing the intermediate state, another big benefit of this
ioctl is that LOOP_SET_STATUS can be slow; the main reason for this
slowness is that LOOP_SET_STATUS(64) calls blk_mq_freeze_queue() to
freeze the associated queue; this requires waiting for RCU
synchronization, which I've measured can take about 15-20ms on this
device on average.

In addition to doing what LOOP_SET_STATUS can do, LOOP_CONFIGURE can
also be used to:
- Set the correct block size immediately by setting
  loop_config.block_size (avoids LOOP_SET_BLOCK_SIZE)
- Explicitly request direct I/O mode by setting LO_FLAGS_DIRECT_IO
  in loop_config.info.lo_flags (avoids LOOP_SET_DIRECT_IO)
- Explicitly request read-only mode by setting LO_FLAGS_READ_ONLY
  in loop_config.info.lo_flags

Here's setting up ~70 regular loop devices with an offset on an x86
Android device, using LOOP_SET_FD and LOOP_SET_STATUS:

vsoc_x86:/system/apex # time for i in `seq 30 100`;
do losetup -r -o 4096 /dev/block/loop$i com.android.adbd.apex; done
    0m03.40s real     0m00.02s user     0m00.03s system

Here's configuring ~70 devices in the same way, but using a modified
losetup that uses the new LOOP_CONFIGURE ioctl:

vsoc_x86:/system/apex # time for i in `seq 30 100`;
do losetup -r -o 4096 /dev/block/loop$i com.android.adbd.apex; done
    0m01.94s real     0m00.01s user     0m00.01s system

Signed-off-by: Martijn Coenen <maco@android.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2020-05-21 08:20:35 -06:00
Martijn Coenen
faf1d25440 loop: Clean up LOOP_SET_STATUS lo_flags handling
LOOP_SET_STATUS(64) will actually allow some lo_flags to be modified; in
particular, LO_FLAGS_AUTOCLEAR can be set and cleared, whereas
LO_FLAGS_PARTSCAN can be set to request a partition scan. Make this
explicit by updating the UAPI to include the flags that can be
set/cleared using this ioctl.

The implementation can then blindly take over the passed in flags,
and use the previous flags for those flags that can't be set / cleared
using LOOP_SET_STATUS.

Signed-off-by: Martijn Coenen <maco@android.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2020-05-21 08:20:35 -06:00
Martijn Coenen
571fae6e29 loop: Rework lo_ioctl() __user argument casting
In preparation for a new ioctl that needs to copy_from_user(); makes the
code easier to read as well.

Signed-off-by: Martijn Coenen <maco@android.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2020-05-21 08:20:35 -06:00
Martijn Coenen
62ab466ca8 loop: Move loop_set_status_from_info() and friends up
So we can use it without forward declaration. This is a separate commit
to make it easier to verify that this is just a move, without functional
modifications.

Signed-off-by: Martijn Coenen <maco@android.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2020-05-21 08:20:35 -06:00
Martijn Coenen
0c3796c244 loop: Factor out configuring loop from status
Factor out this code into a separate function, so it can be reused by
other code more easily.

Signed-off-by: Martijn Coenen <maco@android.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2020-05-21 08:20:34 -06:00
Martijn Coenen
0a6ed1b5ff loop: Remove figure_loop_size()
This function was now only used by loop_set_capacity(). Just open code
the remaining code in the caller instead.

Signed-off-by: Martijn Coenen <maco@android.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2020-05-21 08:20:34 -06:00
Martijn Coenen
b0bd158dd6 loop: Refactor loop_set_status() size calculation
figure_loop_size() calculates the loop size based on the passed in
parameters, but at the same time it updates the offset and sizelimit
parameters in the loop device configuration. That is a somewhat
unexpected side effect of a function with this name, and it is only only
needed by one of the two callers of this function - loop_set_status().

Move the lo_offset and lo_sizelimit assignment back into loop_set_status(),
and use the newly factored out functions to validate and apply the newly
calculated size. This allows us to get rid of figure_loop_size() in a
follow-up commit.

Signed-off-by: Martijn Coenen <maco@android.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2020-05-21 08:20:34 -06:00
Martijn Coenen
716ad0986c loop: Switch to set_capacity_revalidate_and_notify()
This was recently added to block/genhd.c, and takes care of both
updating the capacity and notifying userspace of the new size.

Signed-off-by: Martijn Coenen <maco@android.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2020-05-21 08:20:34 -06:00
Martijn Coenen
5795b6f560 loop: Factor out setting loop device size
This code is used repeatedly.

Signed-off-by: Martijn Coenen <maco@android.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2020-05-21 08:20:34 -06:00
Martijn Coenen
083a6a5078 loop: Remove sector_t truncation checks
sector_t is now always u64, so we don't need to check for truncation.

Signed-off-by: Martijn Coenen <maco@android.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2020-05-21 08:20:34 -06:00
Martijn Coenen
7c5014b098 loop: Call loop_config_discard() only after new config is applied
loop_set_status() calls loop_config_discard() to configure discard for
the loop device; however, the discard configuration depends on whether
the loop device uses encryption, and when we call it the encryption
configuration has not been updated yet. Move the call down so we apply
the correct discard configuration based on the new configuration.

Signed-off-by: Martijn Coenen <maco@android.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Bob Liu <bob.liu@oracle.com>
Reviewed-by: Bart Van Assche <bvanassche@acm.org>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2020-05-21 08:20:34 -06:00
Michael Ellerman
8659a0e0ef powerpc/64s: Disable STRICT_KERNEL_RWX
Several strange crashes have been eventually traced back to
STRICT_KERNEL_RWX and its interaction with code patching.

Various paths in our ftrace, kprobes and other patching code need to
be hardened against patching failures, otherwise we can end up running
with partially/incorrectly patched ftrace paths, kprobes or jump
labels, which can then cause strange crashes.

Although fixes for those are in development, they're not -rc material.

There also seem to be problems with the underlying strict RWX logic,
which needs further debugging.

So for now disable STRICT_KERNEL_RWX on 64-bit to prevent people from
enabling the option and tripping over the bugs.

Fixes: 1e0fc9d1eb ("powerpc/Kconfig: Enable STRICT_KERNEL_RWX for some configs")
Cc: stable@vger.kernel.org # v4.13+
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20200520133605.972649-1-mpe@ellerman.id.au
2020-05-22 00:04:51 +10:00
Arnd Bergmann
a2a3e46cfb Texas Instruments K3 SoC DT updates for v5.8
- Add DSS support for both AM65x and J721e
 - Add watchdog support for J721e
 - Add EHRPWM support for AM65x
 - Add Thermal support for AM65x
 -----BEGIN PGP SIGNATURE-----
 
 iQJEBAABCgAuFiEEtQ6szHmfiBT7fujkyvq9MXlQGhEFAl6+iGsQHHQta3Jpc3Rv
 QHRpLmNvbQAKCRDK+r0xeVAaEbSzD/99PcH5wtvSe2n5KuEpnbDMAmJznwE2yl1u
 qz0BZQ0PJi3xNbJLsp7oxvdNszntFwaSDghGBVTgutHk8IcWbaGssP5Qmw80olot
 itlVGsfGVgQp/OTYtMBJGzOxZQl6TrcBEn0qUbpqPWVhy7v/LGayfWmPi5dGPshQ
 0WzF6UdKR+U15M4c20DaZJ6+bPHNVrUE6/IdNHaYCXPp+MYdlBtWfEhHKyaL7zwA
 jgAp053oPRnzfwracoYcTv+9w8ZL3V/PzttULwLdZIKfJY+b3CUzQ/ohkaEwFov8
 d1iH2CVu4NDWXYxp6NwqqAqmaHsVNPAuXU2jWMGgjB/BtiWdcSEM7yAZW+1IE2Mj
 pwrKJRIddm+ZESB2O4mrFNT0849slgxSZcCLE6nu7QP9gz5XvzotbS/yOt540pjb
 rlYlS4weUlXQ1fYCuJhlqcvWgchpEP6WboKfsE0xzFRcuyMr/CJDYY+vkftICQgm
 rZxbzJfWAvnKrNmW2EyrnbxGesDRrcbVu6WUQLYtyWTnRAkhy/frBxyqsS5T/IT6
 gHwV63CJ0Y56euT/j/Z+FIi08yeeA3fn/w5LSMdGPsOrUOLOMJd/DypK30SV5+Dm
 QZAjSWs0OXqPn6uWEq3ACof2HJUJo/KYL/uqTm0Pe9nbWXnKxWMti9fkGo83YO2z
 8mPWYqp5yA==
 =64P3
 -----END PGP SIGNATURE-----

Merge tag 'ti-k3-dt-for-v5.8' of git://git.kernel.org/pub/scm/linux/kernel/git/kristo/linux into arm/dt

Texas Instruments K3 SoC DT updates for v5.8

- Add DSS support for both AM65x and J721e
- Add watchdog support for J721e
- Add EHRPWM support for AM65x
- Add Thermal support for AM65x

* tag 'ti-k3-dt-for-v5.8' of git://git.kernel.org/pub/scm/linux/kernel/git/kristo/linux:
  arm64: dts: ti: k3-j721e-main: Add main domain watchdog entries
  arm64: dts: ti: k3-am65-main: Add ehrpwm nodes
  arm64: dts: ti: am654: Add thermal zones
  arm64: dts: ti: am65-wakeup: Add VTM node
  arm64: dts: ti: k3-j721e-common-proc-board: add assigned clks for DSS
  arm64: dts: ti: k3-j721e-main: Add DSS node
  arm64: dts: ti: am654: Add DSS node

Link: https://lore.kernel.org/r/7484d3c9-323f-36a3-f0df-1287586f356d@ti.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2020-05-21 16:03:56 +02:00
Arnd Bergmann
863c0b59f0 Renesas DT binding updates for v5.8 (take two)
- Document support for the RZ/G1H-based iWave RainboW Qseven SOM
     (G21M) and board (G21D).
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQQ9qaHoIs/1I4cXmEiKwlD9ZEnxcAUCXr5obwAKCRCKwlD9ZEnx
 cAKhAQDBfrouYCHZw3um3sArjdEgMGRcRWr4yfZ26UfzDUXFQQEA/4VYNfEjneZ2
 xehvs7svgO/9aX/lQ+6jxUUpaGynaAw=
 =pHmk
 -----END PGP SIGNATURE-----

Merge tag 'renesas-dt-bindings-for-v5.8-tag2' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into arm/dt

Renesas DT binding updates for v5.8 (take two)

  - Document support for the RZ/G1H-based iWave RainboW Qseven SOM
    (G21M) and board (G21D).

* tag 'renesas-dt-bindings-for-v5.8-tag2' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
  dt-bindings: arm: renesas: Document iW-RainboW-G21D-Qseven-RZG1H board
  dt-bindings: arm: renesas: Document iW-RainboW-G21M-Qseven-RZG1H SoM

Link: https://lore.kernel.org/r/20200515100547.14671-6-geert+renesas@glider.be
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2020-05-21 16:03:22 +02:00
Arnd Bergmann
de12d92147 Renesas ARM DT updates for v5.8 (take two)
- Initial support for the Renesas RZ/G1H SoC on the iWave RainboW
     Qseven SOM (G21M) and board (G21D),
   - Support for the AISTARVISION MIPI Adapter V2.1 camera board on the
     Silicon Linux EK874 RZ/G2E evaluation kit.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQQ9qaHoIs/1I4cXmEiKwlD9ZEnxcAUCXr5g8QAKCRCKwlD9ZEnx
 cDusAQD4SCmyY0MZZNWQhkhu2ics2wYpKItw4Y7E4fl9XUlXkQEAyyN11vVNoteX
 7KvNX7/9eXpberlcx4H6szPQsOzWzwM=
 =2KDk
 -----END PGP SIGNATURE-----

Merge tag 'renesas-arm-dt-for-v5.8-tag2' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into arm/dt

Renesas ARM DT updates for v5.8 (take two)

  - Initial support for the Renesas RZ/G1H SoC on the iWave RainboW
    Qseven SOM (G21M) and board (G21D),
  - Support for the AISTARVISION MIPI Adapter V2.1 camera board on the
    Silicon Linux EK874 RZ/G2E evaluation kit.

* tag 'renesas-arm-dt-for-v5.8-tag2' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
  arm64: dts: renesas: r8a774c0-cat874: Add support for AISTARVISION MIPI Adapter V2.1
  ARM: dts: r8a7742: Add GPIO nodes
  ARM: dts: r8a7742: Add [H]SCIF{A|B} support
  ARM: dts: r8a7742: Add IRQC support
  ARM: dts: r8a7742-iwg21d-q7: Add iWave G21D-Q7 board based on RZ/G1H
  ARM: dts: r8a7742-iwg21m: Add iWave RZ/G1H Qseven SOM
  ARM: dts: r8a7742: Initial SoC device tree
  clk: renesas: Add r8a7742 CPG Core Clock Definitions
  dt-bindings: power: rcar-sysc: Add r8a7742 power domain index macros

Link: https://lore.kernel.org/r/20200515100547.14671-3-geert+renesas@glider.be
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2020-05-21 16:02:12 +02:00
Arnd Bergmann
aff195d0ec STM32 DT updates for v5.8, round 1
Highlights:
 ----------
 
 MCU part:
  -fix a typo for DAC io-channel-cells on f429 and h743
 
 MPU part:
  -Generic:
   -Bump tp PSCI 1.0
   -Fix a typo for DAC io-channel-cells
   -Add M4 pdds for deep sleep mode
   -Add I2C fatmode plus support
 
  -Add new Octavio lxa-mc1 board based on OSDMP15x SiP
 
  -Add new Stinger96 board support. It is a 96Boards IoT Extended board
   based on stm32mp157a SoC. Some figures: 256MB DDR, 125MB and flash,
   Onboard BG96 modem...
 
  -Add IoT Box board support based on stinger96 board + Wifi/BT, CCS811
   VOC sensor, 2 digitals microphones ...
 
  -DH:
   -Adapt dhcom-som and dhcom-pdk2 dts(i) files to STM32MP15 SoC diversity
   -Add GPIO led and GPIO keys support on PDK2 board
 
  -AV96:
   -Major rework to support official avenger96 board based on DHCOR SOM.
   -Prototype board is no more supported
 -----BEGIN PGP SIGNATURE-----
 
 iQJMBAABCgA2FiEEctl9+nxzUSUqdELdf5rJavIecIUFAl69aa4YHGFsZXhhbmRy
 ZS50b3JndWVAc3QuY29tAAoJEH+ayWryHnCFhH0QAK+7gK6fKXJU+meHe7kSuzm1
 IvMYGA126KXubzNCSq2dxkHhGf+hlHE9jaQd27N9sTWY5Zi/B/xMDC+XotZhNEuL
 +vLwPl5tfENOK/MC+eu5HFdx8D/1dMZ1eh0PyudjifxB1yiTqHpoce6hwJ+gHedT
 GwvAz8udReP5jQTHK6Z66z56A81qMxLCKiAL4M2ExqzYECX/nl7bkqtpzG8OG56l
 wsfjOowpw0g6KLMjnL+0l97/xhXUdEeIQ7IvrvNhC4zgNytZREk8wymh0odPHLZP
 PmZ0f0cjgtP3HAt26GuyG2IZI2byoat3KWAqOxmXeqNR7EWPjkwAtU4kYprk1reu
 rZ70SqCvk6ABH3E8s5v4Noa+ni7Et4NB/BqUwulfBXTgl3D9dzloKNc+rSi/BFXd
 E1aaEL4qXu89b3GOsC1tq2SLbsr28GkNg54+Tb1SBpTJV8wTgScKTuopExQoBVPU
 iMRDPJ8jv6fRD99g/ZOa+8u13cYh1u8pSOSS4jpgyHeEagebnxnkLv71uETp2Nva
 WgLXEYuDgfwEJ6C4lyLbX1g5ak1LLix5gDMFTdSPiW0SCIs5NEk112ItQMWg8b3r
 P3pThyzwpUOUyi742OCo02r5d+LrBbcBNktGYMcv/l/lc9u/ObDwmoaBjclTHVwq
 yQuJS+y6TAoLORRr4rOg
 =JFtr
 -----END PGP SIGNATURE-----

Merge tag 'stm32-dt-for-v5.8-1' of git://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32 into arm/dt

STM32 DT updates for v5.8, round 1

Highlights:
----------

MCU part:
 -fix a typo for DAC io-channel-cells on f429 and h743

MPU part:
 -Generic:
  -Bump tp PSCI 1.0
  -Fix a typo for DAC io-channel-cells
  -Add M4 pdds for deep sleep mode
  -Add I2C fatmode plus support

 -Add new Octavio lxa-mc1 board based on OSDMP15x SiP

 -Add new Stinger96 board support. It is a 96Boards IoT Extended board
  based on stm32mp157a SoC. Some figures: 256MB DDR, 125MB and flash,
  Onboard BG96 modem...

 -Add IoT Box board support based on stinger96 board + Wifi/BT, CCS811
  VOC sensor, 2 digitals microphones ...

 -DH:
  -Adapt dhcom-som and dhcom-pdk2 dts(i) files to STM32MP15 SoC diversity
  -Add GPIO led and GPIO keys support on PDK2 board

 -AV96:
  -Major rework to support official avenger96 board based on DHCOR SOM.
  -Prototype board is no more supported

* tag 'stm32-dt-for-v5.8-1' of git://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32: (58 commits)
  ARM: dts: stm32: Split Avenger96 into DHCOR SoM and Avenger96 board
  ARM: dts: stm32: Split SoC-independent parts of DHCOM SOM and PDK2
  ARM: dts: stm32: Add GPIO LEDs for STM32MP1 DHCOM PDK2
  ARM: dts: stm32: Add GPIO keys for STM32MP1 DHCOM PDK2
  ARM: dts: stm32: Add IoT Box board support
  dt-bindings: arm: stm32: Document IoT Box compatible
  ARM: dts: stm32: Add Stinger96 board support
  dt-bindings: arm: stm32: Document Stinger96 compatible
  ARM: dts: stm32: Add missing pinctrl entries for STM32MP15
  dt-bindings: Add vendor prefix for Shiratech Solutions
  ARM: dts: stm32: Add bindings for SPI2 on AV96
  ARM: dts: stm32: Add alternate pinmux for SPI2 pins
  ARM: dts: stm32: Add bindings for ADC on AV96
  ARM: dts: stm32: Add alternate pinmux for ADC pins
  ARM: dts: stm32: Add bindings for FDCAN2 on AV96
  ARM: dts: stm32: Add alternate pinmux for FDCAN2 pins
  ARM: dts: stm32: Add bindings for FDCAN1 on AV96
  ARM: dts: stm32: Add alternate pinmux for FDCAN1 pins
  ARM: dts: stm32: Repair I2C2 operation on AV96
  ARM: dts: stm32: Add alternate pinmux for I2C2 pins
  ...

Link: https://lore.kernel.org/r/19160355-364d-170c-7ae2-5ba7f714103f@st.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2020-05-21 16:00:47 +02:00
Chris Wilson
4f44afe852 drm/i915/selftests: Flush the submission, not cancel it!
Use intel_engine_flush_submission() when we want to ensure that the
tasklet is run. tasklet_kill(), while it may ensure that an ongoing
tasklet is completed, also prevents the tasklet from running if it's
already scheduled and hasn't yet been run.

Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/1874
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20200521124304.3157692-1-chris@chris-wilson.co.uk
2020-05-21 14:57:19 +01:00
Jean-Philippe Brucker
0299a1a81c iommu/arm-smmu-v3: Manage ASIDs with xarray
In preparation for sharing some ASIDs with the CPU, use a global xarray to
store ASIDs and their context. ASID#0 is now reserved, and the ASID
space is global.

Signed-off-by: Jean-Philippe Brucker <jean-philippe@linaro.org>
Link: https://lore.kernel.org/r/20200519175502.2504091-9-jean-philippe@linaro.org
Signed-off-by: Will Deacon <will@kernel.org>
2020-05-21 14:54:06 +01:00
Arnd Bergmann
ca6bc7a192 Samsung DTS ARM changes for v5.8
1. Add DTS for Exynos4210-based Samsung Galaxy S2 (GT-I9100)
    mobile phone,
 2. Enable WiFi and Bluetooth in multiple boards,
 3. Add new features to S5Pv210-based Aries family of mobile phones
    (e.g. Samsung Galaxy S): necessary configuration for suspend, audio
    support, USB mux, touch keys, panel, i2c-gpio adapters, FM radio, ADC,
 4. Many minor fixes (e.g. GPIO polarity, interrupts).
 -----BEGIN PGP SIGNATURE-----
 
 iQJEBAABCgAuFiEE3dJiKD0RGyM7briowTdm5oaLg9cFAl66lFUQHGtyemtAa2Vy
 bmVsLm9yZwAKCRDBN2bmhouD1yYGEACBvawfckK8OOJig55ndsENHN+/qvhy2+e8
 GK/vt5Rg0Hx296s+laDhvz7kH4djSca1hAvM6rceA0ov2EqxuncQwAN1elH96HLf
 PHcfWX2+lREz5F5t4vb+/+5YCn0xIH0VQIwPQJUkTCDspo9XU7KrKUo2/h7qycCT
 Pk+TmLJqO/8JKmYTDenm5yALHzdPJgvy/Q+dEU+cXSG//my9azI8vb7AUUgXJTWb
 PYZX8LhyPAK8sOXkVVmfuvz/L+kVGNPP5UNurqUOM+i63OSLyHd1w+6U38OXUGsq
 rJaFsQI7eZNCLH37MHEg0D8vlBG7VaB1jVHRMyQKemu9dojkbv65ISvO8N4gqP3F
 pEgjwDYSddXjrGepHOUHxO+5PVBweDqrPHwk2G46+YdiudcaVflUkQ8XUKqABzPx
 X31LLM7B0ITh3VUZtr1pwluThdlMKClchDzlYMntztSraMtuXxzMXE/MOSrUxmbL
 wYXA2vLn361muuW1YV2kP/1k03vbdyunRybtlcCq4p9oBFC/5LZLVT6ZxIOUXZDm
 620p67/a0o3vaw8xfwvheRv0q2BkbjmHIIedky2VMy5EH6a0czRm37Xxb3pRupxd
 uvuIAHLp2Vu9N+CbKivDeUA37WZZhDi3xz/6jJpTiz9r4ktS5oYEQoyxhNKShOfp
 rOdjhoP6Rg==
 =kTHc
 -----END PGP SIGNATURE-----

Merge tag 'samsung-dt-5.8' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into arm/dt

Samsung DTS ARM changes for v5.8

1. Add DTS for Exynos4210-based Samsung Galaxy S2 (GT-I9100)
   mobile phone,
2. Enable WiFi and Bluetooth in multiple boards,
3. Add new features to S5Pv210-based Aries family of mobile phones
   (e.g. Samsung Galaxy S): necessary configuration for suspend, audio
   support, USB mux, touch keys, panel, i2c-gpio adapters, FM radio, ADC,
4. Many minor fixes (e.g. GPIO polarity, interrupts).

* tag 'samsung-dt-5.8' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux: (29 commits)
  ARM: dts: s5pv210: Set MAX8998 GPIO pulls on Aries boards
  ARM: dts: s5pv210: Correct FIMC definitions
  ARM: dts: s5pv210: Assign clocks to MMC devices on Aries boards
  ARM: dts: s5pv210: Enable ADC on Aries boards
  ARM: dts: s5pv210: Add an ADC node
  ARM: dts: s5pv210: Disable pull for vibrator enable GPIO on Aries boards
  ARM: dts: s5pv210: Add si470x FM radio to Galaxy S
  ARM: dts: s5pv210: Add remaining i2c-gpio adapters to Aries boards
  ARM: dts: s5pv210: Add panel support to Aries boards
  ARM: dts: s5pv210: Add touchkey support to Aries boards
  ARM: dts: s5pv210: Add FSA9480 support to Aries boards
  ARM: dts: s5pv210: Add WM8994 support to Aries boards
  ARM: dts: s5pv210: Disable pulls on GPIO I2C adapters for Aries
  ARM: dts: s5pv210: Set keep-power-in-suspend for SDHCI1 on Aries
  ARM: dts: s5pv210: Correct gpi pinctrl node name
  ARM: dts: s5pv210: Add sleep GPIO configuration for Galaxy S
  ARM: dts: s5pv210: Add sleep GPIO configuration for Fascinate4G
  ARM: dts: s5pv210: Add helper define for sleep gpio config
  ARM: dts: exynos: Enable WLAN support for the UniversalC210 board
  ARM: dts: exynos: Enable WLAN support for the Rinato board
  ...

Link: https://lore.kernel.org/r/20200512122922.5700-2-krzk@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2020-05-21 15:51:40 +02:00
Jean-Philippe Brucker
4fc92254bf arm64: mm: Add asid_gen_match() helper
Add a macro to check if an ASID is from the current generation, since a
subsequent patch will introduce a third user for this test.

Signed-off-by: Jean-Philippe Brucker <jean-philippe@linaro.org>
Link: https://lore.kernel.org/r/20200519175502.2504091-6-jean-philippe@linaro.org
Signed-off-by: Will Deacon <will@kernel.org>
2020-05-21 14:46:14 +01:00
Arnd Bergmann
c380981efb This pull request contains Broadcom ARM-based SoCs Device Tree changes
for v5.8, please pull the following:
 
 - Nicolas updates the Raspberry Pi 4 board DTS to include the GPIO
   controlling power to the SD card, adds support for the vmmc regulator
   for the emmc2 controller and finally updates the power management
   provider for V3D to use the firmware to solve instabilities.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEm+Rq3+YGJdiR9yuFh9CWnEQHBwQFAl64WbsACgkQh9CWnEQH
 BwSDyw//TdqnPMJO/U5RbH+prt4N4/FcymESDtZ4op4y2UyI6Cr5g+5IJyEGjaQ1
 YSmdHcTcThYH0nneUIWiATNv7RtyTlg36HiWogxFpTEvvI77ttwiRcSphmxWnJMz
 XLfwzr9b4p+y7IdanwGZ5YLnHfXNX/uZwxfkweRhvNlS9jLvGha1lchV/JS6MKGE
 Nw+d9SN6TyoMxIKL6CJq6TuXDsSsIS94zYZybIN8yFWxbKkK4GXVvMp+s+Ix4dyc
 9TVvT+YtJkKDElcPz0lulLI5P2a9Rdm4jNxTXUKzcfavSPFCq9nkDmxJIhRomAGr
 OGJtIg8gjz44wiFN9WT6BQy1lHqfy44OhRLwZmX8krD6HxEjln8AB5H+8v/AZ5P3
 02lLcfUPYb4y3Fog073zDLa9EZy4fJKxYNnRBVcPwpPkT8mNapC3OKdkC0l5V4s5
 RwCRvvWVQCUDMYxkT1sXlQCFTbTL/VKoa+xS6fsP0TOY8OVCKhxm3M3D5PMDoYic
 r0J/xNngzS8xvm9LwiEvA0tAKfPUTatlFfiFLuJhddUvMFHEsFTmYW+houO54e6N
 jrAxcwMvJlHr/jkaRlpZYf+C18+Z841RDMTmAMpZ1/ad6CgJkyjuf9SLce4hbsp5
 8Cvr6khD+843eWjZYoF5+ePa8UEnCzfpoVf2z4ivXuAf6X3ucLM=
 =cX7l
 -----END PGP SIGNATURE-----

Merge tag 'arm-soc/for-5.8/devicetree' of https://github.com/Broadcom/stblinux into arm/dt

This pull request contains Broadcom ARM-based SoCs Device Tree changes
for v5.8, please pull the following:

- Nicolas updates the Raspberry Pi 4 board DTS to include the GPIO
  controlling power to the SD card, adds support for the vmmc regulator
  for the emmc2 controller and finally updates the power management
  provider for V3D to use the firmware to solve instabilities.

* tag 'arm-soc/for-5.8/devicetree' of https://github.com/Broadcom/stblinux:
  ARM: dts: bcm283x: Use firmware PM driver for V3D
  ARM: dts: bcm2711: Add vmmc regulator in emmc2
  ARM: dts: bcm2711: Update expgpio's GPIO labels

Link: https://lore.kernel.org/r/20200511210522.28243-2-f.fainelli@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2020-05-21 15:45:59 +02:00
Arnd Bergmann
9c7ae8edb9 ARM64: DT: Hisilicon SoCs DT updates for 5.8
- Add pinconf for spi2 and spi3 nodes and increase the drive
   strength to achieve the max speed for the Hikey960 board
 - Add CTI nodes for the Hikey620 board
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJevjyIAAoJEAvIV27ZiWZcGoYQAJdLtw+VmW+NarmObzZ1vFh9
 tpAWA1UDgH6oY61lscdbi8feAYmj2i8kdCCEFldxUSQCcVFX3MoZAJMTb18EaASg
 tJpLvHcNd47BYv+t9VdlIcEsbKHmZO1eJU4KnzOR4uHr6sS1n4spwpPV7lhIFoHY
 yp5xZSp5COraHrmBkytgcLgxMhLmQl40Kej1MF2Ce6bP/+C10UuejPOn8KaO9bmm
 +7ipF0B254HxmzJJlNWszVJiBweX8UYmeSAe/xLz5mbKAHYnZ1R9Iz2+lJO8SQSz
 ztPrZ5JRW+FNGbHq+Q+e5l2OdxcVoIptlHLbrrmVCt7NoTm/CeXnOg7SzxfHN8J9
 Y8GyFugjXRV4Oe/3SzlApy4Yq5Hf3iAi0jNrbwQHasKptOXEIP/XLP+slppbQmPY
 aklo8iIxM9rUuqHoolFmvl+KE8B7v12YkhBa0sQXWwbGNW2jF6cBknHRC/Lrq6/a
 W0VDdAQJ+Tu8fLvG2mO71ZGAvSC0FMkkQ1XE6wMKNkbwf4g1DCgkK+EqQV1eeZcz
 WJfgwyMQcql6uv5ICbvgiL48MrAxDCaxMLvvjZc1ti9e2DDMROXILCR5Z/tKd8UB
 +2ve/5xcVdujClfpPUoAPwKGrRG9cKZ4PuNOfw5YGntFvLBwhXjtLCjf3/hF4dbD
 Qt9KY+9bBMDcf3qY4JrX
 =+heh
 -----END PGP SIGNATURE-----

Merge tag 'hisi-arm64-dt-for-5.8' of git://github.com/hisilicon/linux-hisi into arm/dt

ARM64: DT: Hisilicon SoCs DT updates for 5.8

- Add pinconf for spi2 and spi3 nodes and increase the drive
  strength to achieve the max speed for the Hikey960 board
- Add CTI nodes for the Hikey620 board

* tag 'hisi-arm64-dt-for-5.8' of git://github.com/hisilicon/linux-hisi:
  arm64: dts: hi6220: Add CTI options
  arm64: dts: hikey960: pinctrl: Fix spi2/spi3 pinconf

Link: https://lore.kernel.org/r/5EBE430E.6090508@hisilicon.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2020-05-21 15:43:46 +02:00
Sudeep Holla
269fd61e15 firmware: smccc: Fix missing prototype warning for arm_smccc_version_init
Commit f2ae97062a ("firmware: smccc: Refactor SMCCC specific bits into
separate file") introduced the following build warning:

drivers/firmware/smccc/smccc.c:14:13: warning: no previous prototype for
	function 'arm_smccc_version_init' [-Wmissing-prototypes]
 void __init arm_smccc_version_init(u32 version, enum arm_smccc_conduit conduit)
             ^~~~~~~~~~~~~~~~~~~~~~

Fix the same by adding the missing prototype in arm-smccc.h

Reported-by: kbuild test robot <lkp@intel.com>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
Link: https://lore.kernel.org/r/20200521110836.57252-1-sudeep.holla@arm.com
Signed-off-by: Will Deacon <will@kernel.org>
2020-05-21 14:07:37 +01:00
Gal Pressman
e1ca01a902 RDMA/efa: Report host information to the device
The host info feature allows the driver to infrom the EFA device
firmware with system configuration for debugging and troubleshooting
purposes.

The host info buffer is passed as an admin command DMA mapped control
buffer, and is unmapped and freed once the command CQE is consumed.

Currently, the setting of host info is done for each device on its
probe. Failing to set the host info for the device shall not disturb the
probe flow, any errors will be discarded.

Link: https://lore.kernel.org/r/20200512152204.93091-3-galpress@amazon.com
Reviewed-by: Firas JahJah <firasj@amazon.com>
Reviewed-by: Guy Tzalik <gtzalik@amazon.com>
Signed-off-by: Gal Pressman <galpress@amazon.com>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
2020-05-21 10:05:00 -03:00
Gal Pressman
cc8a635e24 RDMA/efa: Fix setting of wrong bit in get/set_feature commands
When using a control buffer the ctrl_data bit should be set in order to
indicate the control buffer address is valid, not ctrl_data_indirect
which is used when the control buffer itself is indirect.

Fixes: e9c6c53730 ("RDMA/efa: Add common command handlers")
Link: https://lore.kernel.org/r/20200512152204.93091-2-galpress@amazon.com
Reviewed-by: Firas JahJah <firasj@amazon.com>
Reviewed-by: Yossi Leybovich <sleybo@amazon.com>
Signed-off-by: Gal Pressman <galpress@amazon.com>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
2020-05-21 10:05:00 -03:00
Will Deacon
a4eb355a3f arm64: vdso: Fix CFI directives in sigreturn trampoline
Daniel reports that the .cfi_startproc is misplaced for the sigreturn
trampoline, which causes LLVM's unwinder to misbehave:

  | I run into this with LLVM’s unwinder.
  | This combination was always broken.

This prompted Dave to question our use of CFI directives more generally,
and I ended up going down a rabbit hole trying to figure out how this
very poorly documented stuff gets used.

Move the CFI directives so that the "mysterious NOP" is included in
the .cfi_{start,end}proc block and add a bunch of comments so that I
can save myself another headache in future.

Cc: Tamas Zsoldos <tamas.zsoldos@arm.com>
Reported-by: Dave Martin <dave.martin@arm.com>
Reported-by: Daniel Kiss <daniel.kiss@arm.com>
Tested-by: Daniel Kiss <daniel.kiss@arm.com>
Signed-off-by: Will Deacon <will@kernel.org>
2020-05-21 12:59:26 +01:00
Will Deacon
9a96428557 arm64: vdso: Don't prefix sigreturn trampoline with a BTI C instruction
For better or worse, GDB relies on the exact instruction sequence in the
VDSO sigreturn trampoline in order to unwind from signals correctly.
Commit c91db232da ("arm64: vdso: Convert to modern assembler annotations")
unfortunately added a BTI C instruction to the start of __kernel_rt_sigreturn,
which breaks this check. Thankfully, it's also not required, since the
trampoline is called from a RET instruction when returning from the signal
handler

Remove the unnecessary BTI C instruction from __kernel_rt_sigreturn,
and do the same for the 32-bit VDSO as well for good measure.

Cc: Daniel Kiss <daniel.kiss@arm.com>
Cc: Tamas Zsoldos <tamas.zsoldos@arm.com>
Reviewed-by: Dave Martin <dave.martin@arm.com>
Reviewed-by: Mark Brown <broonie@kernel.org>
Fixes: c91db232da ("arm64: vdso: Convert to modern assembler annotations")
Signed-off-by: Will Deacon <will@kernel.org>
2020-05-21 12:57:18 +01:00
Bruno Meneguele
8ece3b3eb5 kernel/printk: add kmsg SEEK_CUR handling
Userspace libraries, e.g. glibc's dprintf(), perform a SEEK_CUR operation
over any file descriptor requested to make sure the current position isn't
pointing to junk due to previous manipulation of that same fd. And whenever
that fd doesn't have support for such operation, the userspace code expects
-ESPIPE to be returned.

However, when the fd in question references the /dev/kmsg interface, the
current kernel code state returns -EINVAL instead, causing an unexpected
behavior in userspace: in the case of glibc, when -ESPIPE is returned it
gets ignored and the call completes successfully, while returning -EINVAL
forces dprintf to fail without performing any action over that fd:

  if (_IO_SEEKOFF (fp, (off64_t)0, _IO_seek_cur, _IOS_INPUT|_IOS_OUTPUT) ==
  _IO_pos_BAD && errno != ESPIPE)
    return NULL;

With this patch we make sure to return the correct value when SEEK_CUR is
requested over kmsg and also add some kernel doc information to formalize
this behavior.

Link: https://lore.kernel.org/r/20200317103344.574277-1-bmeneg@redhat.com
Cc: linux-kernel@vger.kernel.org
Cc: rostedt@goodmis.org,
Cc: David.Laight@ACULAB.COM
Signed-off-by: Bruno Meneguele <bmeneg@redhat.com>
Acked-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
Signed-off-by: Petr Mladek <pmladek@suse.com>
2020-05-21 13:32:25 +02:00
Ethon Paul
325606af57 printk: Fix a typo in comment "interator"->"iterator"
There is a typo in comment, fix it.

Signed-off-by: Ethon Paul <ethp@qq.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Reviewed-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
Signed-off-by: Petr Mladek <pmladek@suse.com>
2020-05-21 13:31:33 +02:00
Arnd Bergmann
8c915019e3 Realtek Arm based SoC DT for v5.8
Add RTD1195, RTD1395 and RTD1619 SoCs as well as Xnano X5 TV box.
 Clean up memory nodes and /soc ranges. Factor out r-bus and partition it
 into CRT, Iso, Misc, SB2 and SCPU Wrapper blocks.
 -----BEGIN PGP SIGNATURE-----
 
 iQJFBAABCAAvFiEEF08DRxvMIhphdW+W+i7RLT5+AT8FAl64dfoRHGFmYWVyYmVy
 QHN1c2UuZGUACgkQ+i7RLT5+AT+iXA//eNc5DNAN7/B3GcoSaKd4jUfh4aCo2FkO
 octvWWuPdMom1zzzpR5GTi4AxFAj3V4gAwFc0SLxXRC1Mwb1QFoGVXsDsFXclhsA
 LdF73S2umVkl65kDvS8rLqq/1e4TidYI6Nlo5MQWcGrTrrkSZdLxiQlhokwsSoLf
 6lS5SqTXuU0Y7b8TOAgsHXZ8HdeNuM0MBvLrNkWSQokFO8tRPYzP6FmrGCK0Z0DE
 dEarIAgrqw5OOoDgSNH80AWzUZGWJSR9gLsl9JwxgmQoG4b66HJrTYZHZ4ylFaeQ
 GsSwiuy7SM1NrU25i6qIGtj7WueGLYczLEBWwKg5AgNcFqq/hGwmoxsLRhJAyb1J
 jcUiH+sfR5fmcuFjA6k3MRD5rTporkS6e44Xni8/AaElSRgu+YYpsXAUeOenMR9m
 cDuR8DrOKkPWyipRK32WyQsF7P3JPaL9gD6q5hSdIAolEncR6LcHNkMUx0zgb/BL
 +gakFU4lmsV9SEFFVyKUr5w0fZLPPWdeXRFtKNZTsPI/AT4jPztIiszB9NWeumMZ
 54uqsm9ct5flLFbqJ/575NDLQHoIY4uz6gZq/oRKdQ/g0AyCI80ZkqnMzm4om4GZ
 Fpdi63l+e2VAJE77R9tqxmj8LQJE9PfTZNo41zFA8gzCqmBN9Rrzs/E47KCLKQYq
 k54Vwaf891g=
 =wdYa
 -----END PGP SIGNATURE-----

Merge tag 'realtek-dt-for-5.8' of git://git.kernel.org/pub/scm/linux/kernel/git/afaerber/linux-realtek into arm/dt

Realtek Arm based SoC DT for v5.8

Add RTD1195, RTD1395 and RTD1619 SoCs as well as Xnano X5 TV box.
Clean up memory nodes and /soc ranges. Factor out r-bus and partition it
into CRT, Iso, Misc, SB2 and SCPU Wrapper blocks.

* tag 'realtek-dt-for-5.8' of git://git.kernel.org/pub/scm/linux/kernel/git/afaerber/linux-realtek: (35 commits)
  dt-bindings: reset: rtd1295: Add SB2 reset
  arm64: dts: realtek: rtd16xx: Add SB2 and SCPU Wrapper syscon nodes
  arm64: dts: realtek: rtd139x: Add SB2 and SCPU Wrapper syscon nodes
  arm64: dts: realtek: rtd129x: Add SB2 and SCPU Wrapper syscon nodes
  ARM: dts: rtd1195: Add SB2 and SCPU Wrapper syscon nodes
  arm64: dts: realtek: rtd16xx: Add CRT syscon node
  ARM: dts: rtd1195: Add UART resets
  ARM: dts: rtd1195: Add reset nodes
  dt-bindings: reset: Add Realtek RTD1195
  ARM: dts: rtd1195: Add CRT syscon node
  arm64: dts: realtek: rtd16xx: Introduce iso and misc syscon
  arm64: dts: realtek: rtd139x: Introduce CRT, iso and misc syscon
  arm64: dts: realtek: rtd129x: Introduce CRT, iso and misc syscon
  ARM: dts: rtd1195: Introduce iso and misc syscon
  arm64: dts: realtek: rtd1295: Add Xnano X5
  dt-bindings: arm: realtek: Add Xnano X5
  dt-bindings: vendor-prefixes: Add Xnano
  arm64: dts: realtek: rtd16xx: Add memory reservations
  arm64: dts: realtek: rtd16xx: Carve out boot ROM from memory
  arm64: dts: realtek: Add RTD1619 SoC and Realtek Mjolnir EVB
  ...

Link: https://lore.kernel.org/r/20200510232158.18477-2-afaerber@suse.de
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2020-05-21 12:34:23 +02:00
Arnd Bergmann
18e48cc0ba ASPEED device tree updates for 5.8
New machines:
 
  - YADRO's ast2500 OpenPower P9 Nicole BMC
  - Facebook's ast2500 x86 Yosemite V2 BMC
 
 The AST2600 machines Rainier and Tacoma were fleshed out.
 
 Machines have started describing the GPIO names as userspace attempts
 to use the GPIO chardev API.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEE+nHMAt9PCBDH63wBa3ZZB4FHcJ4FAl61DiEACgkQa3ZZB4FH
 cJ711A/8CMI7QvRESjBcnTGO0VaZrWtWGwT2A4joPpbbE94Iv47pDubYs/iUNzcX
 9prCEGTox4mQ7hpFG1SDdTV/hvJQngEiShqIdMKV+hfHe7lBltjwXDsP/9dkHp3e
 bCToBi+RI1ULfytXU5qubz6oDgD0vfRoBQsNhlvvno+H1u3/VxoX06XThCoi2Slc
 CUKg5KjgWfmtFp7KHODoNrFsgh5FQlRd7YmCX2BRLBtglugJt6Ale6UybPl/irRD
 tPxX+H8A0NwduLrR12D3tQ9OnOuNCb9fh2Y0WW54ZaJj7ep5DWEgUsRXZkNyEke0
 Pmg4xHedVEXhWw+8F/uNb6BEoVI8YSObZt3P3Tc5LGDum7s6HdtRqwhEb06NEDrb
 9X9SiHH/TRhy/00blLA0AsTKtQwvQdArt6D5IgYKMwXfhf7ISklgibhXXT1hGIlq
 qa2Vu6d4QznMFg0A69WR5jmxBkCVt4WAO88VKXiMq8Es6cW3AoPgVSTAVn82fwnF
 VvHbmDccfgqZh1adUQxoz/FQm2gYUeR3szLBFO3vd11b/C5zWZRgdd/+fTbv0J+g
 GRgo/vIMaun6T2oKhRN6r/oo7zZiqXu2sKRnomef1uoxiCPRsWQjWfxcgvwlP0nt
 FTyY4/qmNaTbSaKudswG064aHDZoqAE+1ddMKjEKFht20PsjcYc=
 =0Egh
 -----END PGP SIGNATURE-----

Merge tag 'aspeed-5.8-devicetree' of git://git.kernel.org/pub/scm/linux/kernel/git/joel/aspeed into arm/dt

ASPEED device tree updates for 5.8

New machines:

 - YADRO's ast2500 OpenPower P9 Nicole BMC
 - Facebook's ast2500 x86 Yosemite V2 BMC

The AST2600 machines Rainier and Tacoma were fleshed out.

Machines have started describing the GPIO names as userspace attempts
to use the GPIO chardev API.

* tag 'aspeed-5.8-devicetree' of git://git.kernel.org/pub/scm/linux/kernel/git/joel/aspeed: (32 commits)
  ARM: dts: aspeed: Change KCS nodes to v2 binding
  ARM: dts: Aspeed: AST2600: Add XDMA PCI-E root control reset
  ARM: dts: aspeed: ast2600: Add XDMA Engine
  ARM: dts: aspeed: ast2500: Add XDMA Engine
  ARM: dts: aspeed: Adding Facebook Yosemite V2 BMC
  ARM: dts: aspeed: Add YADRO Nicole BMC
  ARM: dts: aspeed: mihawk: add aliases for i2c
  ARM: dts: aspeed: tacoma: Add TPM
  ARM: dts: aspeed: tacoma: Enable the second VUART
  ARM: dts: aspeed: tacoma: Add iio-hwmon nodes for IIO devices
  ARM: dts: aspeed: rainier: Add VGA reserved memory region
  ARM: dts: aspeed: rainier: Add gpio line names
  ARM: dts: aspeed: tacoma: Add gpio line names
  ARM: dts: aspeed: zaius: Add gpio line names
  ARM: dts: aspeed: romulus: Add gpio line names
  ARM: dts: aspeed: witherspoon: Add gpio line names
  ARM: dts: aspeed: ast2600: Set arch timer always-on
  ARM: dts: aspeed: tacoma: Add GPIOs for FSI
  ARM: dts: aspeed: mihawk: Change the name of leds
  ARM: dts: aspeed: rainier: Remove regulators
  ...

Link: https://lore.kernel.org/r/CACPK8Xd-=XFREvvS-mK_ECyn14y0GPAMyy5BpEEUYfaw4jAgsw@mail.gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2020-05-21 12:19:05 +02:00
Arnd Bergmann
4875d9e230 DTS changes for omaps for v5.8 merge window
We add support for beaglebone-ai board that's am5729 based devices.
 
 Then we have a series changes to configure more hardware acceletators found
 on omap variants. With the recent ti-sysc related changes, we can now better
 configure the accelerators with help of the clock framework and reset driver.
 So with a series of changes from Suman Anna and Tero Kristo, let's configure
 IPUs and DSPs for dra7 devices like beagle-x15. And let's also configure the
 missing crypto accelerators for omap5 as those have been missing.
 
 Note that there are still some pending driver related patches to use IPU and
 DSP related features with mainline kernel, but those are independent of the
 devicetree changes.
 
 Then there is a display related change for am57xx-idk for tc358778 bridge,
 and a change to configure the missing clock source for some PWM timers.
 -----BEGIN PGP SIGNATURE-----
 
 iQJFBAABCAAvFiEEkgNvrZJU/QSQYIcQG9Q+yVyrpXMFAl60ST4RHHRvbnlAYXRv
 bWlkZS5jb20ACgkQG9Q+yVyrpXPLbQ/9HtaOPHBGSiySIjiKMipiT4h7Ebc8b6ng
 71rRGFgjlyGSDolBlvEfzRfuMRqIQpCRETMylpn4rHkx/BsTROt90/LayyJiJJ62
 buQtSsx2Ydcxw+QMl8gkBW/Y1toZ31ZQKedeNJDvlAzOt8kgQjiCoBo9VVhiZANX
 xV0tlfUjgU0BH3P5UhyAXQkBHzauqd+c9z4YOuNL1BbEu6b75b5a7f2+DtV/NLmZ
 EaEMtoA/L0k5Ir8GWSc6R48kmpaSs3go6r7v2hUV8rHkQOwUhm6MgdD2xrbXRbH3
 4TVF5KLhV9bSyoIRZryYQWS/8Y5CSfDOHcMFqSHoasvMt81Vnz/bit3akghyQ/Ir
 +3J8sLT6LGVotbDrN++yIfc9KZr7xQBZSbz2lHw/Fg10iD33TvvEASmANNF6FTLy
 mjJpwjqDCMcQ40LLP1aC7SzuM3hf8cWDsagIY3Reo/pW7aF4FEnX14FdObwtmQIJ
 RePY5JLQU1UPXstUwLwjFcmkBYgBGC2DVYPeGTUAU6RQtIX3b9ddpjZxFpMgbBAM
 OgLwDGvdYClh+cwPw4Ax2LPmqs534v75vhYsQO0jjaXcDDhGLGUkfD2v3f1B9Gcl
 Lj2yj6vIBjE3A+LRxJeFv2FWOzi1qsh2NrHILmIh+pNkuTyjcsc4x02+BfQvS4x3
 afVrdB0kOsU=
 =WgDN
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v5.8/dt-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into arm/dt

DTS changes for omaps for v5.8 merge window

We add support for beaglebone-ai board that's am5729 based devices.

Then we have a series changes to configure more hardware acceletators found
on omap variants. With the recent ti-sysc related changes, we can now better
configure the accelerators with help of the clock framework and reset driver.
So with a series of changes from Suman Anna and Tero Kristo, let's configure
IPUs and DSPs for dra7 devices like beagle-x15. And let's also configure the
missing crypto accelerators for omap5 as those have been missing.

Note that there are still some pending driver related patches to use IPU and
DSP related features with mainline kernel, but those are independent of the
devicetree changes.

Then there is a display related change for am57xx-idk for tc358778 bridge,
and a change to configure the missing clock source for some PWM timers.

* tag 'omap-for-v5.8/dt-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: (26 commits)
  ARM: OMAP5: Make L4SEC clock domain SWSUP only
  ARM: OMAP4: Make L4SEC clock domain SWSUP only
  ARM: dts: omap5: add DES crypto accelerator node
  ARM: dts: omap5: add SHA crypto accelerator node
  ARM: dts: omap5: add aes2 entry
  ARM: dts: omap5: add aes1 entry
  ARM: dts: dra7-ipu-dsp-common: Add watchdog timers to IPU and DSP nodes
  ARM: dts: am571x-idk: Add CMA pools and enable IPUs & DSP1 rprocs
  ARM: dts: am572x-idk-common: Add CMA pools and enable IPU & DSP rprocs
  ARM: dts: beagle-x15-common: Add CMA pools and enable IPU & DSP rprocs
  ARM: dts: dra76-evm: Add CMA pools and enable IPU & DSP rprocs
  ARM: dts: dra71-evm: Add CMA pools and enable IPUs & DSP1 rprocs
  ARM: dts: dra72-evm-revc: Add CMA pools and enable IPUs & DSP1 rprocs
  ARM: dts: dra72-evm: Add CMA pools and enable IPUs & DSP1 rprocs
  ARM: dts: dra7-evm: Add CMA pools and enable IPU & DSP rprocs
  ARM: dts: dra7-ipu-dsp-common: Add timers to IPU and DSP nodes
  ARM: dts: dra7-ipu-dsp-common: Add mailboxes to IPU and DSP nodes
  ARM: dts: dra7-ipu-dsp-common: Move mailboxes into common files
  ARM: dts: DRA72x: Add aliases for rproc nodes
  ARM: dts: DRA74x: Add aliases for rproc nodes
  ...

Link: https://lore.kernel.org/r/pull-1588873628-477615@atomide.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2020-05-21 12:03:24 +02:00
Arnd Bergmann
5971e53cf0 Renesas DT binding updates for v5.8
- Document System Controller (SYSC) and Reset (RST) support for
     RZ/G1H.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQQ9qaHoIs/1I4cXmEiKwlD9ZEnxcAUCXqqE7QAKCRCKwlD9ZEnx
 cGKeAQD4EWiuxrDgJK1CnnM+tQI24d1V0nPE/Egl8OrGWcIe7wEAyEFYlUksCujD
 6ZFeV3L56M9z9Gvpz1Hu82vOnzEC9gY=
 =dTTq
 -----END PGP SIGNATURE-----

Merge tag 'renesas-dt-bindings-for-v5.8-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into arm/dt

Renesas DT binding updates for v5.8

  - Document System Controller (SYSC) and Reset (RST) support for
    RZ/G1H.

* tag 'renesas-dt-bindings-for-v5.8-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
  dt-bindings: reset: rcar-rst: Document r8a7742 reset module
  dt-bindings: power: rcar-sysc: Document r8a7742 SYSC binding

Link: https://lore.kernel.org/r/20200430084849.1457-6-geert+renesas@glider.be
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2020-05-21 11:55:29 +02:00
Arnd Bergmann
71dbe9524d Renesas ARM DT updates for v5.8
- USB, UART, PWM, and PCIe support for R-Car M3-W+,
   - PWM (16-bit Timer Pulse Unit and PWM Timers) support for R-Car M2-W,
   - Minor fixes and cleanups.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQQ9qaHoIs/1I4cXmEiKwlD9ZEnxcAUCXqqHDQAKCRCKwlD9ZEnx
 cOAWAP0Vmb2PNTBL8lT1eD+iji5lIEH2Dp4PaB2xOVP3BQsU+gEAlc169Jq/fXKo
 F+T6hE2D0ExJMkp0DiDfttpKyQsb5wA=
 =Y+Go
 -----END PGP SIGNATURE-----

Merge tag 'renesas-arm-dt-for-v5.8-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into arm/dt

Renesas ARM DT updates for v5.8

  - USB, UART, PWM, and PCIe support for R-Car M3-W+,
  - PWM (16-bit Timer Pulse Unit and PWM Timers) support for R-Car M2-W,
  - Minor fixes and cleanups.

* tag 'renesas-arm-dt-for-v5.8-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
  arm64: dts: renesas: Fix IOMMU device node names
  ARM: dts: renesas: Fix IOMMU device node names
  ARM: dts: shmobile: Update CMT1 compatible values
  ARM: dts: r8a7791: Add PWM device nodes
  ARM: dts: r8a7791: Add TPU device node
  arm64: dts: renesas: r8a77961: Add PCIe device nodes
  arm64: dts: renesas: r8a77961: Add PWM device nodes
  arm64: dts: renesas: r8a77961: Add SCIF and HSCIF nodes
  arm64: dts: renesas: r8a77961: Add USB3.0 device nodes
  arm64: dts: renesas: r8a77961: Add USB2.0 device nodes

Link: https://lore.kernel.org/r/20200430084849.1457-3-geert+renesas@glider.be
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2020-05-21 11:54:42 +02:00
Arnd Bergmann
3f0be4df50 Versatile DTS updates for the v5.8 kernel:
Create a new device tree for the Integrator/AP with the
 IM-PD1 expansion module fitted in the first slot.
 
 If we want to augment the slot where it is sitting, we can
 alter the device tree or make the bootloader do so.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEElDRnuGcz/wPCXQWMQRCzN7AZXXMFAl6oi4YACgkQQRCzN7AZ
 XXOpVBAAxco/qwxQndEPMWDVCtqOdhXglUvq220V5PQ4DNvpm52QeG65rwwR2TK9
 Nun/vW70JZnXysGS4ZAU9NKToenyIdacwfFCea1eDK7cWpbZzZGo3dkMsr90KBah
 iGDx1ua/lAPxP+IhGlv8GBFQ4rMYzBewaAvk30pi3FtoV/gUjszqLUX1UI7TTaEA
 LWlI4t9aFrRryTsffVzCMXKWUbovMfPtf7dvi+H+Paid8x5PVRwpo91eLknydwb6
 BQAxFhaNy34U27DIsH4L2ulcy7xFBwlmOVHA8h9cTq5qFF/ASxAhAmdQvg+DzjqK
 8YZkWAgOMfwuY+zDFHsvGMJXWZeNOfo76tV0QhiHPlC9JcvOxc95SH7SDwTVjQ/v
 JyLfqMxz6VaL4tL5j2APHgjQzpNtOs6aPNiUkmxrz3iLGuzi51f+Ua/I5MbYd2ME
 oyW21YIebHtiHhZ30NenS0hnD2prFzsdDZLgI04LKwCTW56xM2XS7diz1if+yxJ8
 49LWboInAq8B4ipuRmzNrUoWZlcYZcdUh/7gi1xCwkdpg0rNj/3hKzeRf3W78yw2
 Tve2E2TK+I+l4bJclCjdYzbkWUkheZWApx5nK+4kAAwS+rr1AM4oXZYtd7530LUK
 YL9CavQeDL8SfW8zzCVooureO9MDdzYb5o+joKhaBejgvCGThOg=
 =XZ07
 -----END PGP SIGNATURE-----

Merge tag 'versatile-dts-v5.8-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-integrator into arm/dt

Versatile DTS updates for the v5.8 kernel:

Create a new device tree for the Integrator/AP with the
IM-PD1 expansion module fitted in the first slot.

If we want to augment the slot where it is sitting, we can
alter the device tree or make the bootloader do so.

* tag 'versatile-dts-v5.8-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-integrator:
  ARM: dts: Add devicetree for Integrator/AP with IM-PD1

Link: https://lore.kernel.org/r/CACRpkdZ-28o+pPdP7i_fc+7g4ndPWf+SWTsjnhFEegTggiXVSg@mail.gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2020-05-21 11:53:20 +02:00
Andy Shevchenko
9ed78b05f9 irqdomain: Allow software nodes for IRQ domain creation
In some cases we need to have an IRQ domain created out of software node.

One of such cases is DesignWare GPIO driver when it's instantiated from
half-baked ACPI table (alas, we can't fix it for devices which are few years
on market) and thus using software nodes to quirk this. But the driver
is using IRQ domains based on per GPIO port firmware nodes, which are in
the above case software ones. This brings a warning message to be printed

  [   73.957183] irq: Invalid fwnode type for irqdomain

and creates an anonymous IRQ domain without a debugfs entry.

Allowing software nodes to be valid for IRQ domains rids us of the warning
and debugs gets correctly populated.

  % ls -1 /sys/kernel/debug/irq/domains/
  ...
  intel-quark-dw-apb-gpio:portA

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
[maz: refactored commit message]
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20200520164927.39090-3-andriy.shevchenko@linux.intel.com
2020-05-21 10:53:17 +01:00
Andy Shevchenko
87526603c8 irqdomain: Get rid of special treatment for ACPI in __irq_domain_add()
Now that __irq_domain_add() is able to better deals with generic
fwnodes, there is no need to special-case ACPI anymore.

Get rid of the special treatment for ACPI.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20200520164927.39090-2-andriy.shevchenko@linux.intel.com
2020-05-21 10:51:50 +01:00
Arnd Bergmann
dca296dd15 STi DT fixes:
- Remove duplicated rng node in stih407-family.dtsi
 - Fix complain about IRQ_TYPE_NONE usage in stih418.dtsi
 -----BEGIN PGP SIGNATURE-----
 
 iQJLBAABCgA1FiEEXyrViUccKBz9c35Jysd4L3sz/6YFAl6Zh/UXHHBhdHJpY2Uu
 Y2hvdGFyZEBzdC5jb20ACgkQysd4L3sz/6bduA/+Nf+eY0ftqGk8bQQJ99wcbzrp
 ewO3ocq/9coS8Pu3Wr6smcVcZGozQx2nmlOdaSCqjqyiV85osreQJnlpSPjvQBxl
 4ST8an4dVi4I2Ci9QizES1Yg+zs/BNlfmfgR8d1lkS4HiDF9W+NVjA7cEN0s0bRv
 Y2yuU3dpbFcclpWvBTInqC49ek3iKmAv28wfzXlAPhtz8hKx6PR1oaUZilw3HiYe
 2xho9+paUpTzYMMMCRzFeJ/bBD2OfBZbLeo9Yp/40cxdrLLGjzTfjULXF5ZJGywv
 ytvi0WFq+34TuN5+SmV4pOINB7nqxfrFpQr31RbPF1SaH7VC46hKrECqd5g1/uPV
 bpp1udnaaVLillC8cQOQn99+PzRlHSFseq6l8EMxm0Hc4Z7dhDHtybZoduPYAONY
 oEO3hIgA9x80IHMRszupwS3duvLMIW4JsJWkTW/mZZAKVEJ36LsaPNQ0BugG0+HJ
 qbyeycqvKCYI20sw7Wyu2+Sqg3IMpwghCCtP/tyGRtbBIWpNev2YjVbWDOVwjvjQ
 7ROGYqs/RNLuu8XtgJ3j7bS4wxJFjBHkIJvmccgkKYplit0f5r2+FUlAm75lO3IW
 sPV5pLFG/5D061AP9KwiRKVMyCmelen1/sJuNi0ql0zDHJWmovdVfyq0IfxphlQw
 XkIhmx8WETNxGX5ETC4=
 =1MYc
 -----END PGP SIGNATURE-----

Merge tag 'sti-dt-for-v5.8-round1' of git://git.kernel.org/pub/scm/linux/kernel/git/pchotard/sti into arm/dt

STi DT fixes:
- Remove duplicated rng node in stih407-family.dtsi
- Fix complain about IRQ_TYPE_NONE usage in stih418.dtsi

* tag 'sti-dt-for-v5.8-round1' of git://git.kernel.org/pub/scm/linux/kernel/git/pchotard/sti:
  dts: arm: stih407-family: remove duplicated rng nodes
  dts: arm: stih418: Fix complain about IRQ_TYPE_NONE usage

Link: https://lore.kernel.org/r/4b0c02e7-a247-50c0-d729-88d16b9dd7fd@st.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2020-05-21 11:51:29 +02:00
Chunyan Zhang
161af8fd02 arm64: dts: Add SC9863A emmc and sd card nodes
Add emmc and sd card devicetree nodes for SC9863A.

Link: https://lore.kernel.org/r/20200414101636.24503-3-zhang.lyra@gmail.com
Signed-off-by: Chunyan Zhang <chunyan.zhang@unisoc.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2020-05-21 11:50:44 +02:00
Chunyan Zhang
78efc0199f arm64: dts: Add SC9863A clock nodes
add clock devicetree nodes for SC9863A.

Link: https://lore.kernel.org/r/20200414101636.24503-2-zhang.lyra@gmail.com
Signed-off-by: Chunyan Zhang <chunyan.zhang@unisoc.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2020-05-21 11:50:32 +02:00
Andy Shevchenko
181e9d4efa irqdomain: Make __irq_domain_add() less OF-dependent
__irq_domain_add() relies in some places on the fact that the fwnode
can be only of type OF. This prevents refactoring of the code to support
other types of fwnode. Make it less OF-dependent by switching it
to use the fwnode directly where it makes sense.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20200520164927.39090-1-andriy.shevchenko@linux.intel.com
2020-05-21 10:50:30 +01:00
Hsin-Hsiung Wang
9f88722216 arm64: dts: mt6358: add PMIC MT6358 related nodes
add PMIC MT6358 related nodes which is for MT8183 platform

Signed-off-by: Hsin-Hsiung Wang <hsin-hsiung.wang@mediatek.com>
Link: https://lore.kernel.org/r/1587438012-24832-7-git-send-email-hsin-hsiung.wang@mediatek.com
Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
2020-05-21 11:31:39 +02:00
Saravana Kannan
2cd38fd15e driver core: Remove unnecessary is_fwnode_dev variable in device_add()
That variable is no longer necessary. Remove it and also fix a minor
typo in comments.

Signed-off-by: Saravana Kannan <saravanak@google.com>
Link: https://lore.kernel.org/r/20200520034824.79049-2-saravanak@google.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-05-21 11:08:18 +02:00
Andy Shevchenko
114dbb4fa7 drivers property: When no children in primary, try secondary
Software firmware nodes can provide a child node to its parent.
Since software node can be secondary, we need a mechanism to access
the children. The idea is to list children of the primary node first
and when they are finished, continue with secondary node if available.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Reviewed-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Reviewed-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Link: https://lore.kernel.org/r/20200520102959.34812-1-andriy.shevchenko@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-05-21 11:03:47 +02:00