Commit graph

1,169,205 commits

Author SHA1 Message Date
Li Yang
22e9e261bf arm64: dts: ls1088a: Add reboot nodes
ls1088a has a separate reset register block.  Define it in dts and use
it for reboot.

Signed-off-by: Ashish Kumar <Ashish.Kumar@nxp.com>
Signed-off-by: Li Yang <leoyang.li@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14 16:33:02 +08:00
Vladimir Oltean
bd8a9cd624 arm64: dts: ls1028a-rdb: update copyright
Company policy requires that copyright is updated when a file is
touched. Keeping the copyright change separate to reduce the noise in
other patches.

Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14 16:33:02 +08:00
Vladimir Oltean
96ad273759 arm64: dts: ls1028a-rdb: add aliases for the Ethernet ports
These are used by U-Boot, and are required for keeping the device trees
in sync.

Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14 16:33:02 +08:00
Vladimir Oltean
d18c7980d4 arm64: dts: ls1028a-rdb: add an alias for the FlexSPI controller
This is used by U-Boot and is required for keeping the device trees in
sync.

Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14 16:33:02 +08:00
Vladimir Oltean
6c5d66cb28 arm64: dts: ls1028a-rdb: sort nodes alphabetically by label
In preparation for this board's device tree synchronization with U-Boot,
we must find a common node ordering pattern. Alphabetical sounds about
right.

Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14 16:33:02 +08:00
Christoph Niedermaier
cbcf2b40a7 ARM: dts: imx6qdl-dhcom: Identify the PHY by ethernet-phy-id0007.c0f0
Identify the PHY by its compatible ID value. In some cases during
boot, the PHY needs to be reset to be accessible, but this is only
possible if the PHY is recognized. In that case, the automatic
detection of the PHY does not work and a static compatible ID
value is need.

Signed-off-by: Christoph Niedermaier <cniedermaier@dh-electronics.com>
Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Fabio Estevam <festevam@gmail.com>
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
Reviewed-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14 16:29:54 +08:00
Christoph Niedermaier
e7ed6ba023 ARM: dts: imx6qdl-dhcom: Align PHY reset timing with other DHCOM SoMs
According to datasheet Microchip LAN8710A/LAN8710Ai DS00002164B [1]
the reset should stay asserted for at least 100uS and software
should wait at least 200nS. On other DHCOM SoMs with the SMSC
LAN8710Ai PHY both reset delays are 500us. This should be plenty
and for consistency, the i.MX6 SoM should also use these delays.

[1] https://ww1.microchip.com/downloads/en/DeviceDoc/00002164B.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
Reviewed-by: Fabio Estevam <festevam@denx.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14 16:29:23 +08:00
Arnd Bergmann
0491871b63 Renesas driver updates for v5.17
- Add a remoteproc API for controlling the Cortex-R7 boot address on
     R-Car Gen3 SoCs,
   - Consolidate product register handling.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQQ9qaHoIs/1I4cXmEiKwlD9ZEnxcAUCYanyFAAKCRCKwlD9ZEnx
 cI+0AQDItwlQ/yu0H6Tyhq4u8MYBJedeIkxc4vIgmzRRV61nCwEAhs/yGNDURpym
 3f7u12ac5f0K7kbESEF+ZJmF+e5HPw8=
 =mms1
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmG4Vb0ACgkQmmx57+YA
 GNmOlw//au1+CINPMu+tauWbEEQJROVmQXocaky3yyj2H4CaI4gFdlHWpOx5K5r/
 SoHvYcuXMV/mYKR0njtyw6U0ZqffuWPRJdjZ2CLddELFXBKrnjk/0Q+jaZceCdXS
 yEQWH4ZZnpO6etj5ZI3rHzHaHSdKDxu57+MH9rrpHqN+xV0uiB/uhXVL4DVZWefP
 D8Ydmtp5hODrj4DOXOMNTqONcgIj+lTGxv2KW9ELjrHmOLWEf1jRN8ME+qwU1mid
 abl6RbKeTqs2lAbUAj+xotMML2VAGAoYwSJTkGX3Pt03vMDkLBsBC2vJRM+6WT2v
 xtklbqP+uSxcwdSOkX91heS8h0z5xDh0GUv1i6ozVU4O8O1UHFyOTQjmfGaRjw53
 xA3oLa6oXxi4ZLJavdraVkdDw8sdxV3t70oxvn1G5f6fwth1/3iwWS277+zYPKTy
 t57mDfQKcjrh/0Y058jc/d1W1/ofjRTP5aC5YlYnWFGFFFmJiMkS0M1XC0gTBjCE
 m476fxrGuoze30cPxzgvocepvpPZ1TwjGcNunvWlXZj/RUNFEcK7yMNfh7UQ/g9s
 zu/VpnpZ/U3KYFIjJuTxxj2YI8HuOJaDkXviVWYRS9ID+9uD0f+UnaAyb6NDZopT
 5uwn+rfZp+MSZQcJRWcW3bSzelWEMzAL7Civ3fOMRO6Vo8MzLqw=
 =svBq
 -----END PGP SIGNATURE-----

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

Renesas driver updates for v5.17

  - Add a remoteproc API for controlling the Cortex-R7 boot address on
    R-Car Gen3 SoCs,
  - Consolidate product register handling.

* tag 'renesas-drivers-for-v5.17-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
  soc: renesas: Consolidate product register handling
  soc: renesas: rcar-rst: Add support to set rproc boot address

Link: https://lore.kernel.org/r/cover.1638530612.git.geert+renesas@glider.be
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2021-12-14 09:28:45 +01:00
Daniele Palmas
2b503c8598 USB: serial: option: add Telit FN990 compositions
Add the following Telit FN990 compositions:

0x1070: tty, adb, rmnet, tty, tty, tty, tty
0x1071: tty, adb, mbim, tty, tty, tty, tty
0x1072: rndis, tty, adb, tty, tty, tty, tty
0x1073: tty, adb, ecm, tty, tty, tty, tty

Signed-off-by: Daniele Palmas <dnlplm@gmail.com>
Link: https://lore.kernel.org/r/20211210100714.22587-1-dnlplm@gmail.com
Cc: stable@vger.kernel.org
Signed-off-by: Johan Hovold <johan@kernel.org>
2021-12-14 09:22:06 +01:00
Johan Hovold
83b67041f3 USB: serial: cp210x: fix CP2105 GPIO registration
When generalising GPIO support and adding support for CP2102N, the GPIO
registration for some CP2105 devices accidentally broke. Specifically,
when all the pins of a port are in "modem" mode, and thus unavailable
for GPIO use, the GPIO chip would now be registered without having
initialised the number of GPIO lines. This would in turn be rejected by
gpiolib and some errors messages would be printed (but importantly probe
would still succeed).

Fix this by initialising the number of GPIO lines before registering the
GPIO chip.

Note that as for the other device types, and as when all CP2105 pins are
muxed for LED function, the GPIO chip is registered also when no pins
are available for GPIO use.

Reported-by: Maarten Brock <m.brock@vanmierlo.com>
Link: https://lore.kernel.org/r/5eb560c81d2ea1a2b4602a92d9f48a89@vanmierlo.com
Fixes: c8acfe0aad ("USB: serial: cp210x: implement GPIO support for CP2102N")
Cc: stable@vger.kernel.org      # 4.19
Cc: Karoly Pados <pados@pados.hu>
Link: https://lore.kernel.org/r/20211126094348.31698-1-johan@kernel.org
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Tested-by: Maarten Brock <m.brock@vanmierlo.com>
Signed-off-by: Johan Hovold <johan@kernel.org>
2021-12-14 09:22:05 +01:00
Jiasheng Jiang
fea3fdf975 drm/ast: potential dereference of null pointer
The return value of kzalloc() needs to be checked.
To avoid use of null pointer '&ast_state->base' in case of the
failure of alloc.

Fixes: f0adbc382b ("drm/ast: Allocate initial CRTC state of the correct size")
Signed-off-by: Jiasheng Jiang <jiasheng@iscas.ac.cn>
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Link: https://patchwork.freedesktop.org/patch/msgid/20211214014126.2211535-1-jiasheng@iscas.ac.cn
2021-12-14 09:18:28 +01:00
Peng Fan
97416aab15 arm64: defconfig: enable drivers for booting i.MX8ULP
Select i.MX8ULP CLK and PINCTRL driver to make it boot.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14 16:17:36 +08:00
Arnd Bergmann
2aaeccfafb IXP4xx DTS changes for v5.17:
- Add the LEDs to the Freecom FSG-3 that were missing.
 - Add a devicetree for the Gorami MultiLink Router
 - Add a devicetree for the Gateway GW7001 Router
 
 This completes the migration of all IXP4xx devices to
 device tree files.
 
 Next merge window we will delete the remaining board files,
 it cannot be done now because of cross-tree dependencies.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEElDRnuGcz/wPCXQWMQRCzN7AZXXMFAmG34tsACgkQQRCzN7AZ
 XXN4ZxAAvGLWHQQskEKIuwxjoFYstku52Wxg2eyBUgTEVfu1hSYWhzVfS1R216D1
 fySzBkGprctHw8hoMDEZFFjd9zkpeS17Y0evAq9qka7I1pnZTHAhLYGG/jeLd15Y
 xCTSDk+6Z2RGRjRC3NkRuxog9st7/EnJaDVInV5GuyA0Nev4s1nqgY6TfWNabhcY
 NvRnrF55JK7KAELRsFMTbYvSqNe65w7hunysOIUPTalaGWA9DtPcm27aavzYiNgi
 q1TBRorkQLV10TH3PWRPu7uVK/YqBIqrf3RzT6X/XfKk0SPg99eQguSt8kZ1U3HA
 ao3uo9F1I9HYbxgfNvLrWRRh/PIoAnD2kHzfAKTH5xWrPpLOc3JDsLHorFh3p6+n
 HJIZzQQwcLV/atFRa/hb3r61hwOVArx5svtk2g/6ELj9BU/3zOc0wFffYc5fhSAd
 +SGMdx2PC08JTYvMm8dxp/zt2ItqnqO716TcPpX5bUUEg1jttp8HQJNXxPNTlFNT
 AsfhC6jhEXfgGgeJf3iEEzmfYCqb0GWm6oRVynzLanr+MHQNNcHdMKl9CKnU/VS4
 HOP2e+DCh51eD7H2CENIuEDjpOuSdp5dh7oFZGmjvqWbJcc/2lAHAWVEOz8aKQJl
 4LGUToHCc/+J63eS1a33tjAaBpGa5ELmH16ejRbrfk9S+YJ9P/I=
 =Hzm2
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmG4TLkACgkQmmx57+YA
 GNlbng/9HC5diwBTMoedWFQq8aGmX64sp5/iFvQNQIuUjfRBMQ9Wpkv5C30oJA4B
 hoag6GBN4j7hjTJ+h5xR3ojUE7UKxKvPHHmoKZavDS89PvYo8MiH0Z7+pAJMv6KA
 +6/FqfUt0Ki/UwI5IetzNmBnn175kartGSPxOdE8GJm94hJz4h2z2QpOdp9kLQs8
 MBvuQjWKI5zub5a/HNwjwIBtLXuk7pRKSrMBJSB4bds1JypycIFBRW/xF/HVKlXt
 lPvS3xN/gT/fgXmyp2Hb2LMlSHIifPSVsGSRhllDiOS5QI98M03P+zG0sAzmaXkc
 y8GSB+Da+HsxnfYg0J65ByvfSypBjOfDM6RXTSm/PzhU2JPTHgneT43TnzrDvtBK
 J4wmrGNM0N7cwVlk8FhWarve1jgnbzVdE7TblZoDX0s4Ioe8yGEhWZudOA4EvCYd
 DDoRGInifvNL8QYakUUNYTinx5ae5xr1AiazUdiLPc8LMx2Kec9BNawWdTBEn8hB
 tjZa4Il8NpLacjI8+FVoQeO9uiC7LV9mIPZyHD1KRKHSr1oU6gKS+NUr2ivc+UDl
 MhCQCyWF7S9YsWISCtEzi29NvA2vdDqyIZ4s+YIYl7rEKS9WCkiww2H38pRUu8x4
 QQVpWxwc3jLdwva4i+MayiAc1nMfhKS/rkAX3hJ4xPK5iAmOrwE=
 =LdLA
 -----END PGP SIGNATURE-----

Merge tag 'ixp4xx-dtx-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-nomadik into arm/dt

IXP4xx DTS changes for v5.17:

- Add the LEDs to the Freecom FSG-3 that were missing.
- Add a devicetree for the Gorami MultiLink Router
- Add a devicetree for the Gateway GW7001 Router

This completes the migration of all IXP4xx devices to
device tree files.

Next merge window we will delete the remaining board files,
it cannot be done now because of cross-tree dependencies.

* tag 'ixp4xx-dtx-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-nomadik:
  ARM: dts: ixp4xx: Add devicetree for Gateway 7001
  ARM: dts: Add Goramo MultiLink device tree
  ARM: dts: Add FSG3 system controller and LEDs

Link: https://lore.kernel.org/r/CACRpkdYiWK7TEbZrh4_0WT5obMk=ZSc7AQVUSPXL+-uZ_hsUEA@mail.gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2021-12-14 08:50:17 +01:00
Miaoqian Lin
16c57fff83 phy: ti: Use IS_ERR_OR_NULL() to clean code
Use IS_ERR_OR_NULL() to make the code cleaner.

Signed-off-by: Miaoqian Lin <linmq006@gmail.com>
Link: https://lore.kernel.org/r/20211212142226.23674-1-linmq006@gmail.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
2021-12-14 13:10:03 +05:30
Luca Weiss
918aaae300 dt-bindings: phy: qcom,qusb2: Add SM6350 compatible
Add devicetree compatible for the usb phy on SM6350 SoC.

Signed-off-by: Luca Weiss <luca.weiss@fairphone.com>
Acked-by: Konrad Dybcio <konrad.dybcio@somainline.org>
Link: https://lore.kernel.org/r/20211213082614.22651-5-luca.weiss@fairphone.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
2021-12-14 13:08:26 +05:30
Miaoqian Lin
045a31b955 phy: tegra: xusb: Fix return value of tegra_xusb_find_port_node function
callers of tegra_xusb_find_port_node() function only do NULL checking for
the return value. return NULL instead of ERR_PTR(-ENOMEM) to keep
consistent.

Signed-off-by: Miaoqian Lin <linmq006@gmail.com>
Acked-by: Thierry Reding <treding@nvidia.com>
Link: https://lore.kernel.org/r/20211213020507.1458-1-linmq006@gmail.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
2021-12-14 13:07:21 +05:30
Christophe JAILLET
8c2d045515 scsi: hpsa: Remove an unused variable in hpsa_update_scsi_devices()
'lunzerobits' is unused. Remove it.

This a left over of commit 2d62a33e05 ("hpsa: eliminate fake lun0
enclosures")

Link: https://lore.kernel.org/r/9f80ea569867b5f7ae1e0f99d656e5a8bacad34e.1639084205.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2021-12-13 23:34:01 -05:00
Kees Cook
c167dd0b2a scsi: lpfc: Use struct_group to isolate cast to larger object
When building under -Warray-bounds, a warning is generated when casting a
u32 into MAILBOX_t (which is larger). This warning is conservative, but
it's not an unreasonable change to make to improve future robustness. Use a
tagged struct_group that can refer to either the specific fields or the
first u32 separately, silencing this warning:

drivers/scsi/lpfc/lpfc_sli.c: In function 'lpfc_reset_barrier':
drivers/scsi/lpfc/lpfc_sli.c:4787:29: error: array subscript 'MAILBOX_t[0]' is partly outside array bounds of 'volatile uint32_t[1]' {aka 'volatile unsigned int[1]'} [-Werror=array-bounds]
 4787 |         ((MAILBOX_t *)&mbox)->mbxCommand = MBX_KILL_BOARD;
      |                             ^~
drivers/scsi/lpfc/lpfc_sli.c:4752:27: note: while referencing 'mbox'
 4752 |         volatile uint32_t mbox;
      |                           ^~~~

There is no change to the resulting executable instruction code.

Link: https://lore.kernel.org/r/20211203223351.107323-1-keescook@chromium.org
Reviewed-by: James Smart <jsmart2021@gmail.com>
Signed-off-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2021-12-13 23:31:40 -05:00
Kees Cook
532adda9f4 scsi: lpfc: Use struct_group() to initialize struct lpfc_cgn_info
In preparation for FORTIFY_SOURCE performing compile-time and run-time
field bounds checking for memset(), avoid intentionally writing across
neighboring fields.

Add struct_group() to mark "stat" region of struct lpfc_cgn_info that
should be initialized to zero, and refactor the "data" region memset()
to wipe everything up to the cgn_stats region.

Link: https://lore.kernel.org/r/20211208195957.1603092-1-keescook@chromium.org
Reviewed-by: James Smart <jsmart2021@gmail.com>
Signed-off-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2021-12-13 23:30:30 -05:00
John Garry
2fe2434392 scsi: pm8001: Fix phys_to_virt() usage on dma_addr_t
The driver supports a "direct" mode of operation, where the SMP req frame
is directly copied into the command payload (and vice-versa for the SMP
resp).

To get at the SMP req frame data in the scatterlist the driver uses
phys_to_virt() on the DMA mapped memory dma_addr_t . This is broken, and
subsequently crashes as follows when an IOMMU is enabled:

 Unable to handle kernel paging request at virtual address
ffff0000fcebfb00
	...
 pc : pm80xx_chip_smp_req+0x2d0/0x3d0
 lr : pm80xx_chip_smp_req+0xac/0x3d0
 pm80xx_chip_smp_req+0x2d0/0x3d0
 pm8001_task_exec.constprop.0+0x368/0x520
 pm8001_queue_command+0x1c/0x30
 smp_execute_task_sg+0xdc/0x204
 sas_discover_expander.part.0+0xac/0x6cc
 sas_discover_root_expander+0x8c/0x150
 sas_discover_domain+0x3ac/0x6a0
 process_one_work+0x1d0/0x354
 worker_thread+0x13c/0x470
 kthread+0x17c/0x190
 ret_from_fork+0x10/0x20
 Code: 371806e1 910006d6 6b16033f 54000249 (38766b05)
 ---[ end trace b91d59aaee98ea2d ]---
note: kworker/u192:0[7] exited with preempt_count 1

Instead use kmap_atomic().

--
Difference to v1:
- use kmap_atomic() in both locations
Difference to  v2:
- add whitespace around arithmetic (Damien)

Link: https://lore.kernel.org/r/1639390248-213603-1-git-send-email-john.garry@huawei.com
Reviewed-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
Signed-off-by: John Garry <john.garry@huawei.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2021-12-13 23:19:58 -05:00
Giulio Benetti
bca46d8e5f ARM: dts: imx6qdl: drop "fsl,imx-ckih1"
"fsl,imx-ckih1" is useless since no driver deals with it, so let's drop it.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14 11:23:17 +08:00
Giulio Benetti
5368f930cc ARM: dts: imx6qdl: drop "fsl,imx-ckil"
"fsl,imx-ckil" is useless since no driver deals with it, so let's drop it.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14 11:23:15 +08:00
Giulio Benetti
36b85fdaa3 ARM: dts: imx6qdl: drop "fsl,imx-osc"
"fsl,imx-osc" is useless since no driver deals with it, so let's drop it.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14 11:23:12 +08:00
Giulio Benetti
4ce956128d ARM: dts: imx53: drop "fsl,imx-ckih2"
"fsl,imx-ckih2" is useless since no driver deals with it, so let's drop it.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14 11:23:10 +08:00
Giulio Benetti
917fee9c6f ARM: dts: imx53: drop "fsl,imx-ckih1"
"fsl,imx-ckih1" is useless since no driver deals with it, so let's drop it.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14 11:23:07 +08:00
Giulio Benetti
ac0894359e ARM: dts: imx53: drop "fsl,imx-ckil"
"fsl,imx-ckil" is useless since no driver deals with it, so let's drop it.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14 11:23:04 +08:00
Giulio Benetti
39cd25fe2e ARM: dts: imx53: drop "fsl,imx-osc"
"fsl,imx-osc" is useless since no driver deals with it, so let's drop it.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14 11:23:02 +08:00
Giulio Benetti
0dee2e69ef ARM: dts: imx51: drop "fsl,imx-ckih2"
"fsl,imx-ckih2" is useless since no driver deals with it, so let's drop it.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14 11:22:59 +08:00
Giulio Benetti
58cd720f3f ARM: dts: imx51: drop "fsl,imx-ckih1"
"fsl,imx-ckih1" is useless since no driver deals with it, so let's drop it.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14 11:22:57 +08:00
Giulio Benetti
929bdb7b0a ARM: dts: imx51: drop "fsl,imx-ckil"
"fsl,imx-ckil" is useless since no driver deals with it, so let's drop it.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14 11:22:54 +08:00
Giulio Benetti
73cda7c63a ARM: dts: imx51: drop "fsl,imx-osc"
"fsl,imx-osc" is useless since no driver deals with it, so let's drop it.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14 11:22:52 +08:00
Giulio Benetti
f6bc4a7c03 ARM: dts: imx50: drop "fsl,imx-ckih2"
"fsl,imx-ckih2" is useless since no driver deals with it, so let's drop it.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14 11:22:49 +08:00
Giulio Benetti
c522683be5 ARM: dts: imx50: drop "fsl,imx-ckih1"
"fsl,imx-ckih1" is useless since no driver deals with it, so let's drop it.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14 11:22:46 +08:00
Giulio Benetti
c5e526a9c3 ARM: dts: imx50: drop "fsl,imx-ckil"
"fsl,imx-ckil" is useless since no driver deals with it, so let's drop it.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14 11:22:43 +08:00
Giulio Benetti
20adb4921c ARM: dts: imx50: drop "fsl,imx-osc"
"fsl,imx-osc" is useless since no driver deals with it, so let's drop it.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14 11:22:41 +08:00
Giulio Benetti
9a68c8ec9a ARM: dts: imx25: drop "fsl,imx-osc"
"fsl,imx-osc" is useless since no driver deals with it, so let's drop it.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14 11:22:38 +08:00
Giulio Benetti
05be8e7472 ARM: dts: imx1: drop "fsl,imx-clk32"
"fsl,imx-clk32" is useless since no driver deals with it, so let's drop it.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14 11:22:24 +08:00
Laurent Pinchart
3f8b6cf820 ARM: dts: imx7: Group mipi_csi 'port' children in a 'ports' node
The nxp,imx7-mipi-csi2.yaml binding requires ports to be grouped in a
ports node, as multiple ports are present. Fix imx7s.dtsi and the only
board file that references the mipi_csi ports.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14 11:16:31 +08:00
Laurent Pinchart
473d06b909 ARM: dts: imx7: Drop reset-names property for mipi_csi node
The reset-names property isn't defined by the nxp,imx7-mipi-csi2.yaml
binding, and isn't used by the corresponding driver as it acquires the
reset with a NULL ID. Drop it.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14 11:16:29 +08:00
Laurent Pinchart
74092acd6e ARM: dts: imx7s-warp: Drop undefined property in mipi_csi node
The fsl,csis-hs-settle property isn't defined by the
nxp,imx7-mipi-csi2.yaml binding, and isn't parsed by the corresponding
driver. Drop it.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14 11:16:11 +08:00
Adam Ford
b357ffd860 ARM: dts: imx: Change spba to spba-bus
With the updated dt-bindings for the spba-bus, rename spba@xxxx
to spba-bus@xxxx.  There are no functional changes.

Signed-off-by: Adam Ford <aford173@gmail.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14 10:45:47 +08:00
Adam Ford
c4cacb5b80 dt-bindings: soc: imx: Add binding doc for spba bus
Add binding doc for fsl,spba-bus.

Signed-off-by: Adam Ford <aford173@gmail.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14 10:44:43 +08:00
Ivan Bornyakov
7b983da384 bus: imx-weim: optionally enable continuous burst clock
To enable continuous burst clock, add "fsl,continuous-burst-clk" along
with "fsl,burst-clk-enable" property to the weim bus's devicetree node.

Example:
weim: weim@21b8000 {
	compatible = "fsl,imx6ul-weim", "fsl,imx6q-weim";
	reg = <0x021b8000 0x4000>;
	clocks = <&clks 143>;
	#address-cells = <2>;
	#size-cells = <1>;
	ranges = <0 0 0x50000000 0x08000000>;
	fsl,weim-cs-gpr = <&gpr>;
	fsl,burst-clk-enable;
	fsl,continuous-burst-clk;

	client-device@0 {
		...
	};
};

Signed-off-by: Ivan Bornyakov <i.bornyakov@metrotek.ru>
Reviewed-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14 10:33:38 +08:00
Ivan Bornyakov
ced795c264 dt-bindings: bus: imx-weim: add words about continuous bclk
Document continuous Burst Clock option. With this option Burst Clock, if
enabled, will output continuous clock, otherwise Burst Clock will output
clock only when necessary.

Signed-off-by: Ivan Bornyakov <i.bornyakov@metrotek.ru>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14 10:31:37 +08:00
Paolo Abeni
b0cdc5dbcf mptcp: never allow the PM to close a listener subflow
Currently, when deleting an endpoint the netlink PM treverses
all the local MPTCP sockets, regardless of their status.

If an MPTCP listener socket is bound to the IP matching the
delete endpoint, the listener TCP socket will be closed.
That is unexpected, the PM should only affect data subflows.

Additionally, syzbot was able to trigger a NULL ptr dereference
due to the above:

general protection fault, probably for non-canonical address 0xdffffc0000000003: 0000 [#1] PREEMPT SMP KASAN
KASAN: null-ptr-deref in range [0x0000000000000018-0x000000000000001f]
CPU: 1 PID: 6550 Comm: syz-executor122 Not tainted 5.16.0-rc4-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
RIP: 0010:__lock_acquire+0xd7d/0x54a0 kernel/locking/lockdep.c:4897
Code: 0f 0e 41 be 01 00 00 00 0f 86 c8 00 00 00 89 05 69 cc 0f 0e e9 bd 00 00 00 48 b8 00 00 00 00 00 fc ff df 48 89 da 48 c1 ea 03 <80> 3c 02 00 0f 85 f3 2f 00 00 48 81 3b 20 75 17 8f 0f 84 52 f3 ff
RSP: 0018:ffffc90001f2f818 EFLAGS: 00010016
RAX: dffffc0000000000 RBX: 0000000000000018 RCX: 0000000000000000
RDX: 0000000000000003 RSI: 0000000000000000 RDI: 0000000000000001
RBP: 0000000000000000 R08: 0000000000000001 R09: 0000000000000001
R10: 0000000000000000 R11: 000000000000000a R12: 0000000000000000
R13: ffff88801b98d700 R14: 0000000000000000 R15: 0000000000000001
FS:  00007f177cd3d700(0000) GS:ffff8880b9d00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f177cd1b268 CR3: 000000001dd55000 CR4: 0000000000350ee0
Call Trace:
 <TASK>
 lock_acquire kernel/locking/lockdep.c:5637 [inline]
 lock_acquire+0x1ab/0x510 kernel/locking/lockdep.c:5602
 __raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline]
 _raw_spin_lock_irqsave+0x39/0x50 kernel/locking/spinlock.c:162
 finish_wait+0xc0/0x270 kernel/sched/wait.c:400
 inet_csk_wait_for_connect net/ipv4/inet_connection_sock.c:464 [inline]
 inet_csk_accept+0x7de/0x9d0 net/ipv4/inet_connection_sock.c:497
 mptcp_accept+0xe5/0x500 net/mptcp/protocol.c:2865
 inet_accept+0xe4/0x7b0 net/ipv4/af_inet.c:739
 mptcp_stream_accept+0x2e7/0x10e0 net/mptcp/protocol.c:3345
 do_accept+0x382/0x510 net/socket.c:1773
 __sys_accept4_file+0x7e/0xe0 net/socket.c:1816
 __sys_accept4+0xb0/0x100 net/socket.c:1846
 __do_sys_accept net/socket.c:1864 [inline]
 __se_sys_accept net/socket.c:1861 [inline]
 __x64_sys_accept+0x71/0xb0 net/socket.c:1861
 do_syscall_x64 arch/x86/entry/common.c:50 [inline]
 do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80
 entry_SYSCALL_64_after_hwframe+0x44/0xae
RIP: 0033:0x7f177cd8b8e9
Code: 28 00 00 00 75 05 48 83 c4 28 c3 e8 b1 14 00 00 90 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 b8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007f177cd3d308 EFLAGS: 00000246 ORIG_RAX: 000000000000002b
RAX: ffffffffffffffda RBX: 00007f177ce13408 RCX: 00007f177cd8b8e9
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000003
RBP: 00007f177ce13400 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 00007f177ce1340c
R13: 00007f177cde1004 R14: 6d705f706374706d R15: 0000000000022000
 </TASK>

Fix the issue explicitly skipping MPTCP socket in TCP_LISTEN
status.

Reported-and-tested-by: syzbot+e4d843bb96a9431e6331@syzkaller.appspotmail.com
Reviewed-by: Mat Martineau <mathew.j.martineau@linux.intel.com>
Fixes: 740d798e87 ("mptcp: remove id 0 address")
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Link: https://lore.kernel.org/r/ebc7594cdd420d241fb2172ddb8542ba64717657.1639238695.git.pabeni@redhat.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2021-12-13 18:12:58 -08:00
Maor Gottlieb
a973f86b41 RDMA/mlx5: Add support to multiple priorities for FDB rules
Currently, the driver ignores the user's priority for flow steering
rules in FDB namespace. Change it and create the rule in the right
priority.
It will allow to create FDB steering rules in up to 16 different
priorities.

Signed-off-by: Maor Gottlieb <maorg@nvidia.com>
Reviewed-by: Mark Bloch <mbloch@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
Acked-by: Leon Romanovsky <leonro@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
2021-12-13 16:03:00 -08:00
Maor Gottlieb
c7d5fa105b net/mlx5: Create more priorities for FDB bypass namespace
Create 16 flow steering priorities for FDB bypass users.

Signed-off-by: Maor Gottlieb <maorg@nvidia.com>
Reviewed-by: Mark Bloch <mbloch@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
Reviewed-by: Leon Romanovsky <leonro@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
2021-12-13 16:03:00 -08:00
Maor Gottlieb
4588fed7be net/mlx5: Refactor mlx5_get_flow_namespace
Have all the namespace type check in the same switch case.

Signed-off-by: Maor Gottlieb <maorg@nvidia.com>
Reviewed-by: Mark Bloch <mbloch@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
Reviewed-by: Leon Romanovsky <leonro@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
2021-12-13 16:02:59 -08:00
Maor Gottlieb
22c3f2f56b net/mlx5: Separate FDB namespace
This patch doesn't add an additional namespaces, but just separates the
naming to be used by each FDB user, bypass and kernel.
Downstream patches will actually split this up and allow to have more
than single priority for the bypass users.

Signed-off-by: Maor Gottlieb <maorg@nvidia.com>
Reviewed-by: Mark Bloch <mbloch@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
Acked-by: Leon Romanovsky <leonro@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
2021-12-13 16:02:59 -08:00
Kees Cook
52a0cab35c drbd: Use struct_group() to zero algs
In preparation for FORTIFY_SOURCE performing compile-time and run-time
field bounds checking for memset(), avoid intentionally writing across
neighboring fields.

Add a struct_group() for the algs so that memset() can correctly reason
about the size.

Signed-off-by: Kees Cook <keescook@chromium.org>
Reviewed-by: Gustavo A. R. Silva <gustavoars@kernel.org>
Link: https://lore.kernel.org/r/20211118203712.1288866-1-keescook@chromium.org
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2021-12-13 16:31:24 -07:00