Commit graph

932,869 commits

Author SHA1 Message Date
Johan Hovold
a1960e0f16 staging: speakup: fix tty-operation NULL derefs
The send_xchar() and tiocmset() tty operations are optional. Add the
missing sanity checks to prevent user-space triggerable NULL-pointer
dereferences.

Fixes: 6b9ad1c742 ("staging: speakup: add send_xchar, tiocmset and input functionality for tty")
Cc: stable <stable@vger.kernel.org>     # 4.13
Cc: Okash Khawaja <okash.khawaja@gmail.com>
Cc: Samuel Thibault <samuel.thibault@ens-lyon.org>
Signed-off-by: Johan Hovold <johan@kernel.org>
Reviewed-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-01-30 11:54:01 +01:00
Borislav Petkov
fab940755d x86/hw_breakpoints, kprobes: Remove kprobes ifdeffery
Remove the ifdeffery in the breakpoint parsing arch_build_bp_info() by
adding a within_kprobe_blacklist() stub for the !CONFIG_KPROBES case.

It is returning true when kprobes are not enabled to mean that any
address is within the kprobes blacklist on such kernels and thus not
allow kernel breakpoints on non-kprobes kernels.

Signed-off-by: Borislav Petkov <bp@suse.de>
Acked-by: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Anil S Keshavamurthy <anil.s.keshavamurthy@intel.com>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Frederic Weisbecker <frederic@kernel.org>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: "Naveen N. Rao" <naveen.n.rao@linux.ibm.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: https://lkml.kernel.org/r/20190127131237.4557-1-bp@alien8.de
2019-01-30 11:52:21 +01:00
Vladimir Murzin
775ea4ea2f serial: mps2-uart: support combined irq
It turns out that some designs went for implementing only combined
interrupt for rx, tx and overrun, which is currently not supported
by the driver.  Support of combined irq is built on top of existent
irq handlers and activated automatically if only single irq was
specified in device tree.

Signed-off-by: Vladimir Murzin <vladimir.murzin@arm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-01-30 11:48:08 +01:00
Vladimir Murzin
9f25e07b88 serial: mps2-uart: move to dynamic port allocation
Some designs, like MPS3, expose number of virtual serial ports which
already close or exceeds MPS2_MAX_PORTS. Increasing MPS2_MAX_PORTS
would have negative impact (in terms of memory consumption) on tiny
MPS2 platform which, in fact, has only one physically populated UART.

Start with converting existent static port array to idr. As a bonus it
make driver not to fail in case when no alias was specified in device
tree.

Note: there is no need in idr_destroy() because code doesn't unload
since ce87122911 ("serial: mps2-uart: make driver explicitly non-modular")

Signed-off-by: Vladimir Murzin <vladimir.murzin@arm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-01-30 11:48:08 +01:00
Johan Hovold
3c635e4f14 serdev: ttyport: call tiocmget and tiocmset ops directly
The tty struct holds a pointer to the driver's tty operations so drop
the unnecessary driver dereference when calling tiocmget and tiocmset.

Note that this also makes the calls match the preceding sanity checks as
expected.

Signed-off-by: Johan Hovold <johan@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-01-30 11:48:08 +01:00
Borislav Petkov
0b053bbf07 MAINTAINERS: Add Andy and Darren as arch/x86/platform/ reviewers
... so that they can get CCed on platform patches.

Signed-off-by: Borislav Petkov <bp@suse.de>
Acked-by: Andy Shevchenko <andy.shevchenko@gmail.com>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Darren Hart <dvhart@infradead.org>
Cc: Andy Shevchenko <andy@infradead.org>
Cc: x86@kernel.org
Link: https://lkml.kernel.org/r/20190128113619.19025-1-bp@alien8.de
2019-01-30 11:46:49 +01:00
Marc Gonzalez
d0f9f16788 ARM: tango: Improve ARCH_MULTIPLATFORM compatibility
Calling platform-specific code unconditionally blows up when running
an ARCH_MULTIPLATFORM kernel on a different platform. Don't do it.

Reported-by: Paolo Pisati <p.pisati@gmail.com>
Signed-off-by: Marc Gonzalez <marc.w.gonzalez@free.fr>
Acked-by: Pavel Machek <pavel@ucw.cz>
Cc: stable@vger.kernel.org # v4.8+
Fixes: a30eceb7a5 ("ARM: tango: add Suspend-to-RAM support")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2019-01-30 11:45:10 +01:00
Arnd Bergmann
a17bab2d67 Third Round of Renesas ARM Based SoC Fixes for v5.0
* Convert to new LVDS DT bindings fixing a regression introduced in v4.17
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEE4nzZofWswv9L/nKF189kaWo3T74FAlxReXsACgkQ189kaWo3
 T75PWRAAmli4BUOM23Mt2tyM4OqDzszEsTQ37cCD9/ps/RXn0cReAqJETO3/qzME
 apLfqsa1n3LkJoQoluEozt3IYJ7MujTRaNLglQuzbjebwuH43Sde/L5FxD6RcSqf
 Zt9AFkSs81cnhO2Rrbly7ZRH6deaoW9nWPF27TwFVlzDGxDC9XqQrBv7CNcr+4up
 ZzhMDAL2xp1aiqZeRan34jvnrZshV7l5p5Hey3kLob9W10utuX90Yd8CUstpEGlJ
 JXjll1iDktQAAplHDsWLoHyHmjRLBWrFYS25KW52aKrEp7ZvtMXy5XciIGs5awrl
 4gRzbDN1HlLx4vK4V1ziCDlWgbttLP7n2hP81VtnXxfgrRRThHaq1DxcR1dg5jX4
 k93gN+Oz/GvPKLlHRc0Q6DDkPquP7wY+oM1kna8s7A8XLLGrmALv/bj3FcX/ozly
 fnree7J6GzjtUvZnt6VzMFyMJhoGuwHWPjDrJGxRo+A2xvkPf+U86gaCQ/snHnP0
 VyzupN/quB9FL60UeHCh+odOSMcg5DjxageNJnQN0J01+Yl5phFjU8/XsujjgA8a
 HIK9gMmJVFou/gNn5kMeCI+fYb7DHOk6Ym2k6Hi8ftDUEHaCjabD2VBxbP4/Yvgy
 OzafbF3LW/69btGvWo+MoLbKnux5K8nUrvqF5wOlvuigl+LGLUo=
 =mpfU
 -----END PGP SIGNATURE-----

Merge tag 'renesas-fixes3-for-v5.0' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into arm/fixes

Third Round of Renesas ARM Based SoC Fixes for v5.0

* Convert to new LVDS DT bindings fixing a regression introduced in v4.17

* tag 'renesas-fixes3-for-v5.0' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: dts: r8a7743: Convert to new LVDS DT bindings

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2019-01-30 11:42:04 +01:00
Arnd Bergmann
a7403eb27e Allwinner Fixes for 5.0
A couple of device tree fixes for the 5.0 cycle:
 
   - Add missing clock-output-names for the osc24M clock on sun6i/A31
 
     The Linux clock driver uses the device node as the clock name if
     the property is missing. The node name was changed in 5.0-rc1,
     breaking a subtle dependency in the sunxi-ng clock driver, and
     renders Linux unable to completely boot up.
 
   - Add alias for Ethernet controller on Beelink X2
 
     This allows the bootloader to assign a deterministically generated
     MAC address to it.
 
   - Add property to enable USB VBUS regulator on OrangePi Win
 
     The board had defined the constraints for the regulator, but was
     missing the property to actually enable it.
 -----BEGIN PGP SIGNATURE-----
 
 iQJCBAABCgAsFiEE2nN1m/hhnkhOWjtHOJpUIZwPJDAFAlxMTggOHHdlbnNAY3Np
 ZS5vcmcACgkQOJpUIZwPJDD1FBAAhEcU8mPQemhH6niwKCq+nXdh/uLuzvweOjAZ
 FgYTKCFSXpNeKY9m+zLHyLazVN8WgxVHCKu0etslXkHZ24Ql5hz7D2Z5BfC2fAwh
 ImR7WsD5NjKCLU4rLMW+YgAqdG/dKqeabvzLe4rI90+jGPJ5i3Pp2nG4e09J+yL9
 WrJykSOuZ0twCocSBrPREMqIEohFve/IgY7lNNk9wpF8GVk5uO3kxhuDa7nLfN3f
 mJbaz+x6jdDWkxVoVoMBYyQyVJC4EafOU/CQc++OKM3H0C9iei20JbH0HWFk6PEo
 UBjKw3dNwVrIteoWf71QiU+Rm6zK5eSo1jJV3iWBTYl6hUqy9t+T2iKenClJqnEb
 FU6k+9ZdYCwXcAGppsa7TlNhvvFboU1XiVvQA17dYcMtnuOdD2yNmN3kFqdB1g2G
 OrGIRMM0me8oSOYPCVEVpECc8Zdl7hhUC63q0FhiyN0kvIUmNiuYGDcq33xjXdb3
 mCEb7sTEjls/PddWV8Dgkx2bIT2ZgsUIc/jdx+Fw/selM9Dw9Egkt7086/Fmhqgd
 vOrvnEYP6ThbTTCpbgoaokDuMXW+ysR0YGaII8D8gMymNDR0i8uDiv7Wcmi6+BfL
 /ncPbLvrSOtkYbROZnivWS8fhCltkQbPGmVJbRasiVZPH/ORdN/Lp0OO6NJNB5hL
 fb4aY1s=
 =4km1
 -----END PGP SIGNATURE-----

Merge tag 'sunxi-fixes-for-5.0' of git://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux into arm/fixes

Allwinner Fixes for 5.0

A couple of device tree fixes for the 5.0 cycle:

  - Add missing clock-output-names for the osc24M clock on sun6i/A31

    The Linux clock driver uses the device node as the clock name if
    the property is missing. The node name was changed in 5.0-rc1,
    breaking a subtle dependency in the sunxi-ng clock driver, and
    renders Linux unable to completely boot up.

  - Add alias for Ethernet controller on Beelink X2

    This allows the bootloader to assign a deterministically generated
    MAC address to it.

  - Add property to enable USB VBUS regulator on OrangePi Win

    The board had defined the constraints for the regulator, but was
    missing the property to actually enable it.

* tag 'sunxi-fixes-for-5.0' of git://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux:
  arm64: dts: allwinner: a64: Fix USB OTG regulator
  ARM: dts: sun8i: h3: Add ethernet0 alias to Beelink X2
  ARM: dts: sun6i: Add clock-output-names to osc24M clock
  arm64: dts: allwinner: a64: Fix the video engine compatible

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2019-01-30 11:35:38 +01:00
Arnd Bergmann
83d3651502 Merge tag 'amlogic-fixes-2.1' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-amlogic into arm/fixes
Amlogic fixes for v5.0-rc, round 2
- several fixups for the GPIO cd-inverted change
- IRQ trigger fixes for MAC IRQ

* tag 'amlogic-fixes-2.1' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-amlogic:
  arm64: dts: meson: Fix mmc cd-gpios polarity
  ARM: dts: meson8m2: mxiii-plus: mark the SD card detection GPIO active-low
  ARM: dts: meson8b: ec100: mark the SD card detection GPIO active-low
  ARM: dts: meson8b: odroidc1: mark the SD card detection GPIO active-low
  arm: dts: meson: Fix IRQ trigger type for macirq

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2019-01-30 11:35:27 +01:00
Sudeep Holla
46edb8d132 firmware: arm_scmi: provide the mandatory device release callback
The device/driver model clearly mandates that bus driver that discover
and allocate the device must set the release callback. This callback
will be used to free the device after all references have gone away.

scmi bus driver is missing the obvious callback which will result in
the following warning if the device is unregistered:

Device 'scmi_dev.1' does not have a release() function, it is broken and
must be fixed. See Documentation/kobject.txt.
WARNING at drivers/base/core.c:922 device_release+0x8c/0xa0
Hardware name: ARM LTD Juno Development Platform BIOS EDK II Jan 21 2019
Workqueue: events deferred_probe_work_func
pstate: 60000005 (nZCv daif -PAN -UAO)
pc : device_release+0x8c/0xa0
lr : device_release+0x8c/0xa0
Call trace:
 device_release+0x8c/0xa0
 kobject_put+0x8c/0x208
 device_unregister+0x30/0x78
 scmi_device_destroy+0x28/0x50
 scmi_probe+0x354/0x5b0
 platform_drv_probe+0x58/0xa8
 really_probe+0x2c4/0x3e8
 driver_probe_device+0x12c/0x148
 __device_attach_driver+0xac/0x150
 bus_for_each_drv+0x78/0xd8
 __device_attach+0xe0/0x168
 device_initial_probe+0x24/0x30
 bus_probe_device+0xa0/0xa8
 deferred_probe_work_func+0x8c/0xe0
 process_one_work+0x1f0/0x478
 worker_thread+0x22c/0x450
 kthread+0x134/0x138
 ret_from_fork+0x10/0x1c
---[ end trace 420bdb7f6af50937 ]---

Fix the issue by providing scmi_device_release callback. We have
everything required for device release already in scmi_device_destroy,
so we just need to move freeing of the device to scmi_device_release.

Fixes: 933c504424 ("firmware: arm_scmi: add scmi protocol bus to enumerate protocol devices")
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
Cc: stable@vger.kernel.org # 4.17+
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2019-01-30 11:34:42 +01:00
Russell King
db4090920b ARM: iop32x/n2100: fix PCI IRQ mapping
Booting 4.20 on a TheCUS N2100 results in a kernel oops while probing
PCI, due to n2100_pci_map_irq() having been discarded during boot.

Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
Cc: stable@vger.kernel.org # 2.6.18+
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2019-01-30 11:34:42 +01:00
Arnd Bergmann
44a0f88467 Merge tag 'omap-for-v5.0/fixes-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into arm/fixes
Device tree fixes for omaps for v5.0-rc cycle

This series of dts fixes for omap devices fixes several device specific
regressions:

- The onenand timings for n950/n9 have been wrong for a while since
  we moved to dts based timings

- A typo for the cpcap pmic is now producing erors during boot as the
  level should be 0 for unconfigurable triggering instead of 1

- Changes for ti-sysc for omap5 left uart3 with debug flags that should
  not be set

- Fix a new dtc warning started showing up for omap3-gta04 grap_port

- With the generic MMC card detection code we need to fix the gpio
  in dts for n900 and am335x-shc

* tag 'omap-for-v5.0/fixes-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: dts: am335x-shc.dts: fix wrong cd pin level
  ARM: dts: n900: fix mmc1 card detect gpio polarity
  ARM: dts: omap3-gta04: Fix graph_port warning
  ARM: dts: Remove unnecessary idle flags for omap5 uart3
  ARM: dts: omap4-droid4: Fix typo in cpcap IRQ flags
  ARM: OMAP: dts: N950/N9: fix onenand timings

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2019-01-30 11:34:41 +01:00
Arnd Bergmann
2b3604e243 Merge tag 'davinci-fixes-for-v5.0-part2' of git://git.kernel.org/pub/scm/linux/kernel/git/nsekhar/linux-davinci into arm/fixes
This fixes a long standing typo in device-tree for DA850 in interrupt
number for timer. It did not affect us so far because we use non-DT
timer driver within mach-davinci. This was caught while migrating to
clocksource driver.

* tag 'davinci-fixes-for-v5.0-part2' of git://git.kernel.org/pub/scm/linux/kernel/git/nsekhar/linux-davinci:
  ARM: dts: da850: fix interrupt numbers for clocksource

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2019-01-30 11:34:41 +01:00
Arnd Bergmann
91c577ef1e Merge tag 'qcom-fixes-for-5.0-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux into arm/fixes
Qualcomm ARM64 Fixes for 5.0-rc3

* Fix irq controller compatible for the MSM8996 platforms

* tag 'qcom-fixes-for-5.0-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux:
  arm64: dts: add msm8996 compatible to gicv3

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2019-01-30 11:34:40 +01:00
Arnd Bergmann
1229c729bb Merge tag 'renesas-fixes2-for-v5.0' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into arm/fixes
Second Round of Renesas ARM Based SoC Fixes for v5.0

Enable DMA for SCIF2 on R-Car M3-W (r8a7796) and M3-n (r8a77965), and
(RZ/G2M) r8a774a1 SoCs.

This is was omitted from patches enabling DMA for other SCIF devices on the
same SoCs due to missing documentation.  However, it is regarded as a fix
as arguably those patches claim to add this feature.

Per-SoC patches are provided to ease backporting of this fix as the kernel
version to be fixed is different for each SoC.

* tag 'renesas-fixes2-for-v5.0' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  arm64: dts: renesas: r8a77965: Enable DMA for SCIF2
  arm64: dts: renesas: r8a7796: Enable DMA for SCIF2
  arm64: dts: renesas: r8a774a1: Enable DMA for SCIF2

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2019-01-30 11:34:40 +01:00
Arnd Bergmann
03937704b8 Merge tag 'pxa-fixes-5.0' of https://github.com/rjarzmik/linux into arm/fixes
This is the pxa fixes set for v4.20 cycle:
 - only a single devm allocated pointer free fix, which was never
   triggered runtime but code analysis found.

* tag 'pxa-fixes-5.0' of https://github.com/rjarzmik/linux:
  ARM: pxa: ssp: unneeded to free devm_ allocated data

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2019-01-30 11:34:39 +01:00
Arnd Bergmann
3673a91c07 Merge tag 'imx-fixes-5.0-2' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into arm/fixes
i.MX fixes for 5.0, 2nd round:

It contains a single fix for i.MX8MQ clock numbers, removing the
duplicate use of 232 and numbering the clocks consecutively.

* tag 'imx-fixes-5.0-2' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
  dt-bindings: imx8mq: Number clocks consecutively

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2019-01-30 11:34:38 +01:00
Arnd Bergmann
e22dc7be4c soc/fsl fixes for v5.0
- qbman: avoid missing interrupts by only clearing processed events
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEhb3UXAyxp6UQ0v6khtxQDvusFVQFAlxCXogACgkQhtxQDvus
 FVTTNA//eeLePHOBjgAa1qeP49QUTzlWBfs47rm4gVutUBygtUlnvQkzVz/70u/k
 s/VI7IdSTU6OU43Dw6WC5EHax3zxeLER5k31WeIp5uGNuDOZmqgrLxvtsWtzDX/j
 Zvrh9SBlTtYjDIoWGq4iUWp4xmy9qh0OeY1NvdjUjSBPXtr1m/k+dM/LFAONIKrC
 8VCGkb4HaO8xc175esTJXScXQuWyL8PE6wPGChI/oV7beJ36vUEx3roYeKcZgUYV
 Qy+klH7fOt4triUNXEoK155HhfxYULqN2ODjnNCB/3loMZIZ6hIBUOH4upnTGZLk
 AqvbHsX/S2bhPRFJjiYFO+QKP12b3XzUs3naKfeTG8T4m/u3SpqfMwYNZFAEPX1D
 DV5KdchKdwg0Ni8G/+KLK+nmT+rcsEsD4enNZA/f5GajmcoK4/hKtTAjGGY0RCEG
 OusyLecRkLHCV0fwZofmAXEiWOZ8NttICFyQ9lH4Ppg7wAcgDEjNvGmO6b6hHLqM
 m1cZkzdBgCraudUqRhiLTZ4NYOO8xadvfc8+YVJ9icaPykKPqvVEoOicmOfwNlx/
 1QJAfI2vAl8wYwzfQ+3leCorXJrkU5Rcufo2jAp67EwrX3UxI6HbJ59XahFX4BlD
 8c0qY4/7yBALZjmhPNGSf7U6DTFH67WQDZCaM+yJGZ82o4COL+s=
 =lyv5
 -----END PGP SIGNATURE-----

Merge tag 'soc-fsl-fix-v5.0' of git://git.kernel.org/pub/scm/linux/kernel/git/leo/linux into arm/fixes

soc/fsl fixes for v5.0

- qbman: avoid missing interrupts by only clearing processed events

* tag 'soc-fsl-fix-v5.0' of git://git.kernel.org/pub/scm/linux/kernel/git/leo/linux:
  soc: fsl: qbman: avoid race in clearing QMan interrupt

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2019-01-30 11:14:04 +01:00
Arnd Bergmann
69835820f1 i.MX fixes for 5.0:
- Fix spi_bus_bridge DTC warning by correcting '#address-cells' of
    dspi3 node on vf610-bk4 board, as it's being used a SPI slave
    controller there.
  - Replace deprecated gpio-key,wakeup property with wakeup-source for
    board imx6q-pistachio and imx6sll-evk, into which the deprecated
    property sneaked during the merge window.
  - Correct the backward compatible for i.MX6SX GPT device, as it's
    actually compatible with i.MX6DL GPT rather than i.MX31 one.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABAgAGBQJcO/B7AAoJEFBXWFqHsHzOsl4IAL1ubDbUA4T+mbL5joEdmZYZ
 iOBVLq5L22uyqUU0i3qSoRi0Tym0ZKXJvP1XdNTlK4fJgabTlvJFlIssBM1FhUMk
 pmIDrlCZeoMY1iIJ2OHQ9On9njRA/B+ClZFzFAPR/8iLMC70RB5NMKa8uXYxSQ21
 EGjIlNsITD4F/IGt9eqdgt5fnfewgbnumxehvbcYPdreXVRuAyWXlPtc17mI+uof
 DmnfANdDZ/VREGJwekQIu2D/VRo6jfC5jc24ixX4Fp5kPZ0CGmXxRzQmTVcm9QQ4
 3jRMKf2PXlvW5vcqXLMoGJljVbeYITrF7ycswHge0LPs37ghjW+crAv5TzN6Agg=
 =HZIA
 -----END PGP SIGNATURE-----

Merge tag 'imx-fixes-5.0' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into arm/fixes

i.MX fixes for 5.0:
 - Fix spi_bus_bridge DTC warning by correcting '#address-cells' of
   dspi3 node on vf610-bk4 board, as it's being used a SPI slave
   controller there.
 - Replace deprecated gpio-key,wakeup property with wakeup-source for
   board imx6q-pistachio and imx6sll-evk, into which the deprecated
   property sneaked during the merge window.
 - Correct the backward compatible for i.MX6SX GPT device, as it's
   actually compatible with i.MX6DL GPT rather than i.MX31 one.

* tag 'imx-fixes-5.0' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
  ARM: dts: imx6sx: correct backward compatible of gpt
  ARM: dts: imx: replace gpio-key,wakeup with wakeup-source property
  ARM: dts: vf610-bk4: fix incorrect #address-cells for dspi3

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2019-01-30 11:12:16 +01:00
Geert Uytterhoeven
c051dc5e3c dt-bindings: arm: renesas: Fix SoC mismatch for Stout
make dtbs_check:

    arch/arm/boot/dts/r8a7790-stout.dt.yaml: compatible: ['renesas,stout', 'renesas,r8a7790'] is not valid under any of the given schemas

The Stout development board has an R-Car H2 (r8a7790) SoC, not an R-Car
H1 (r8a7779).

Fixes: 1274935056 ("dt-bindings: arm: Convert Renesas board/soc bindings to json-schema")
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2019-01-30 10:58:00 +01:00
Gerd Hoffmann
11ca1b663a drm/qxl: use ttm_tt
qxl device will not dma, so we don't need ttm_dma_tt.  Go use ttm_tt
instead, to avoid wasting resources (swiotlb bounce buffers for
example).

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Acked-by: Noralf Trønnes <noralf@tronnes.org>
Link: http://patchwork.freedesktop.org/patch/msgid/20190129082541.1392-1-kraxel@redhat.com
2019-01-30 10:51:35 +01:00
Bai Ping
85e4e6881d pinctrl: freescale: Add imx8mm pinctrl driver support
Add the pinctrl driver support for i.MX8MM.

Signed-off-by: Bai Ping <ping.bai@nxp.com>
Acked-by: Aisheng Dong <aisheng.dong@nxp.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2019-01-30 10:35:22 +01:00
Zhou Yanjie
b71c184412 Pinctrl: Ingenic: Unify the function name prefix to "ingenic_gpio_".
In the original code, some function names begin with "ingenic_gpio_",
and some with "gpio_ingenic_". For the sake of uniform style,
all of them are changed to the beginning of "ingenic_gpio_".

Signed-off-by: Zhou Yanjie <zhouyanjie@cduestc.edu.cn>
Reviewed-by: Paul Cercueil <paul@crapouillou.net>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2019-01-30 10:30:29 +01:00
Zhou Yanjie
5de1a73e78 Pinctrl: Ingenic: Add missing parts for JZ4770 and JZ4780.
Add mmc2 for JZ4770 and JZ4780:
According to the datasheet, both JZ4770 and JZ4780 have mmc2. But this
part of the original code is missing. It is worth noting that JZ4770's
mmc2 supports 8bit mode while JZ4780's does not, so we added the
corresponding code for both models.

Add nemc-wait for JZ4770 and JZ4780:
Both JZ4770 and JZ4780 have a nemc-wait pin. But this part of the
original code is missing.

Add mac for JZ4770:
JZ4770 have a mac. But this part of the original code is missing.

Signed-off-by: Zhou Yanjie <zhouyanjie@cduestc.edu.cn>
Reviewed-by: Paul Cercueil <paul@crapouillou.net>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2019-01-30 10:29:14 +01:00
Zhou Yanjie
ff656e47a9 Pinctrl: Ingenic: Fix bugs caused by differences between JZ4770 and JZ4780.
Delete uart4 and i2c3/4 from JZ4770:
According to the datasheet, only JZ4780 have uart4 and i2c3/4. So we
remove it from the JZ4770 code and add a section corresponding the JZ4780.

Fix bugs in i2c0/1:
The pin number was wrong in the original code.

Fix bugs in uart2:
JZ4770 and JZ4780 have different uart2 pins. So the original section JZ4770
has been modified and the corresponding section of JZ4780 has been added.

Fix bugs in mmc0:
JZ4770 and JZ4780 assigned different pins to mmc0's 4~7 data lines. So the
original section JZ4770 has been modified and the corresponding section of
JZ4780 has been added.

Fix bugs in mmc1:
JZ4770's mmc1 has 8bit mode, while JZ4780 doesn't. So the original
section JZ4770 has been modified and the corresponding section of
JZ4780 has been added.

Fix bugs in nemc:
JZ4770's nemc has 16bit mode, while JZ4780 doesn't. So the original section
JZ4770 has been modified and the corresponding section of JZ4780 has been
added. And add missing cs2~5 groups for JZ4770 and JZ4780.

Fix bugs in cim:
JZ4770's cim has 12bit mode, while JZ4780 doesn't. So the original
section JZ4770 has been modified and the corresponding section of
JZ4780 has been added.

Fix bugs in lcd:
Both JZ4770 and JZ4780 lcd should be 24bit instead of 32bit.

Signed-off-by: Zhou Yanjie <zhouyanjie@cduestc.edu.cn>
Reviewed-by: Paul Cercueil <paul@crapouillou.net>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2019-01-30 10:27:49 +01:00
David S. Miller
804a15cdbb Merge branch 'sctp-support-SCTP_FUTURE-CURRENT-ALL_ASSOC'
Xin Long says:

====================
sctp: support SCTP_FUTURE/CURRENT/ALL_ASSOC

This patchset adds the support for 3 assoc_id constants: SCTP_FUTURE_ASSOC
SCTP_CURRENT_ASSOC, SCTP_ALL_ASSOC, described in rfc6458#section-7.2:

   All socket options set on a one-to-one style listening socket also
   apply to all future accepted sockets.  For one-to-many style sockets,
   often a socket option will pass a structure that includes an assoc_id
   field.  This field can be filled with the association identifier of a
   particular association and unless otherwise specified can be filled
   with one of the following constants:

   SCTP_FUTURE_ASSOC:  Specifies that only future associations created
      after this socket option will be affected by this call.

   SCTP_CURRENT_ASSOC:  Specifies that only currently existing
      associations will be affected by this call, and future
      associations will still receive the previous default value.

   SCTP_ALL_ASSOC:  Specifies that all current and future associations
      will be affected by this call.

The functions for many other sockopts that use assoc_id also need to be
updated accordingly.
====================

Acked-by: Neil Horman <nhorman@tuxdriver.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2019-01-30 00:44:08 -08:00
Xin Long
7efba10d6b sctp: add SCTP_FUTURE_ASOC and SCTP_CURRENT_ASSOC for SCTP_STREAM_SCHEDULER sockopt
Check with SCTP_ALL_ASSOC instead in sctp_setsockopt_scheduler and
check with SCTP_FUTURE_ASSOC instead in sctp_getsockopt_scheduler,
it's compatible with 0.

SCTP_CURRENT_ASSOC is supported for SCTP_STREAM_SCHEDULER in this
patch. It also adds default_ss in sctp_sock to support
SCTP_FUTURE_ASSOC.

Signed-off-by: Xin Long <lucien.xin@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2019-01-30 00:44:08 -08:00
Xin Long
d251f05e3b sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_EVENT sockopt
Check with SCTP_ALL_ASSOC instead in sctp_setsockopt_event and
check with SCTP_FUTURE_ASSOC instead in sctp_getsockopt_event,
it's compatible with 0.

SCTP_CURRENT_ASSOC is supported for SCTP_EVENT in this patch.

It also adds sctp_assoc_ulpevent_type_set() to make code more
readable.

Signed-off-by: Xin Long <lucien.xin@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2019-01-30 00:44:08 -08:00
Xin Long
99a62135e1 sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_ENABLE_STREAM_RESET sockopt
Check with SCTP_ALL_ASSOC instead in sctp_setsockopt_enable_strreset and
check with SCTP_FUTURE_ASSOC instead in sctp_getsockopt_enable_strreset,
it's compatible with 0.

SCTP_CURRENT_ASSOC is supported for SCTP_ENABLE_STREAM_RESET in this patch.
It also adjusts some code to keep a same check form as other functions.

Signed-off-by: Xin Long <lucien.xin@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2019-01-30 00:44:08 -08:00
Xin Long
3a583059d1 sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_DEFAULT_PRINFO sockopt
Check with SCTP_ALL_ASSOC instead in sctp_setsockopt_default_prinfo and
check with SCTP_FUTURE_ASSOC instead in sctp_getsockopt_default_prinfo,
it's compatible with 0.

SCTP_CURRENT_ASSOC is supported for SCTP_DEFAULT_PRINFO in this patch.

Signed-off-by: Xin Long <lucien.xin@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2019-01-30 00:44:08 -08:00
Xin Long
2af66ff3ed sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_AUTH_DEACTIVATE_KEY sockopt
Check with SCTP_ALL_ASSOC instead in sctp_setsockopt_deactivate_key.
SCTP_CURRENT_ASSOC is supported for SCTP_AUTH_DEACTIVATE_KEY in this
patch.

Signed-off-by: Xin Long <lucien.xin@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2019-01-30 00:44:08 -08:00
Xin Long
3adcc30060 sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_AUTH_DELETE_KEY sockopt
Check with SCTP_ALL_ASSOC instead in sctp_setsockopt_del_key.
SCTP_CURRENT_ASSOC is supported for SCTP_AUTH_DELETE_KEY in this patch.

Signed-off-by: Xin Long <lucien.xin@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2019-01-30 00:44:07 -08:00
Xin Long
bf9fb6ad4f sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_AUTH_ACTIVE_KEY sockopt
Check with SCTP_ALL_ASSOC instead in sctp_setsockopt_auth_key.
SCTP_CURRENT_ASSOC is supported for SCTP_AUTH_ACTIVE_KEY in this patch.

Signed-off-by: Xin Long <lucien.xin@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2019-01-30 00:44:07 -08:00
Xin Long
7fb3be13a2 sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_AUTH_KEY sockopt
Check with SCTP_ALL_ASSOC instead in sctp_setsockopt_auth_key.
SCTP_CURRENT_ASSOC is supported for SCTP_AUTH_KEY in this patch.

Signed-off-by: Xin Long <lucien.xin@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2019-01-30 00:44:07 -08:00
Xin Long
e0651a0dc8 sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_MAX_BURST sockopt
Check with SCTP_ALL_ASSOC instead in sctp_setsockopt_maxburst and
check with SCTP_FUTURE_ASSOC instead in sctp_getsockopt_maxburst,
it's compatible with 0.

SCTP_CURRENT_ASSOC is supported for SCTP_CONTEXT in this patch.
It also adjusts some code to keep a same check form as other
functions.

Signed-off-by: Xin Long <lucien.xin@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2019-01-30 00:44:07 -08:00
Xin Long
49b037acca sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_CONTEXT sockopt
Check with SCTP_ALL_ASSOC instead in sctp_setsockopt_context and
check with SCTP_FUTURE_ASSOC instead in sctp_getsockopt_context,
it's compatible with 0.

SCTP_CURRENT_ASSOC is supported for SCTP_CONTEXT in this patch.
It also adjusts some code to keep a same check form as other
functions.

Signed-off-by: Xin Long <lucien.xin@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2019-01-30 00:44:07 -08:00
Xin Long
92fc3bd928 sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_DEFAULT_SNDINFO sockopt
Check with SCTP_ALL_ASSOC instead in sctp_setsockopt_default_sndinfo and
check with SCTP_FUTURE_ASSOC instead in sctp_getsockopt_default_sndinfo,
it's compatible with 0.

SCTP_CURRENT_ASSOC is supported for SCTP_DEFAULT_SNDINFO in this patch.

Signed-off-by: Xin Long <lucien.xin@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2019-01-30 00:44:07 -08:00
Xin Long
707e45b3dc sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_DEFAULT_SEND_PARAM sockopt
Check with SCTP_ALL_ASSOC instead in sctp_setsockopt_default_send_param and
check with SCTP_FUTURE_ASSOC instead in sctp_getsockopt_default_send_param,
it's compatible with 0.

SCTP_CURRENT_ASSOC is supported for SCTP_DEFAULT_SEND_PARAM in this patch.

Signed-off-by: Xin Long <lucien.xin@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2019-01-30 00:44:07 -08:00
Xin Long
9c5829e1c4 sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_DELAYED_SACK sockopt
Check with SCTP_ALL_ASSOC instead in sctp_setsockopt_delayed_ack and
check with SCTP_FUTURE_ASSOC instead in sctp_getsockopt_delayed_ack,
it's compatible with 0.

SCTP_CURRENT_ASSOC is supported for SCTP_DELAYED_SACK in this patch.

It also adds sctp_apply_asoc_delayed_ack() to make code more readable.

Signed-off-by: Xin Long <lucien.xin@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2019-01-30 00:44:07 -08:00
Xin Long
e7f2824891 sctp: add SCTP_CURRENT_ASSOC for SCTP_STREAM_SCHEDULER_VALUE sockopt
SCTP_STREAM_SCHEDULER_VALUE is a special one, as its value is not
save in sctp_sock, but only in asoc. So only SCTP_CURRENT_ASSOC
reserved assoc_id can be used in sctp_setsockopt_scheduler_value.

This patch adds SCTP_CURRENT_ASOC support for
SCTP_STREAM_SCHEDULER_VALUE.

Signed-off-by: Xin Long <lucien.xin@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2019-01-30 00:44:07 -08:00
Xin Long
2e7709d1cc sctp: use SCTP_FUTURE_ASSOC for SCTP_INTERLEAVING_SUPPORTED sockopt
Check with SCTP_FUTURE_ASSOC instead in
sctp_set/getsockopt_reconfig_supported, it's compatible with 0.

It also adjusts some code to keep a same check form as other functions.

Signed-off-by: Xin Long <lucien.xin@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2019-01-30 00:44:07 -08:00
Xin Long
acce7f3b8d sctp: use SCTP_FUTURE_ASSOC for SCTP_RECONFIG_SUPPORTED sockopt
Check with SCTP_FUTURE_ASSOC instead in
sctp_set/getsockopt_reconfig_supported, it's compatible with 0.

It also adjusts some code to keep a same check form as other functions.

Signed-off-by: Xin Long <lucien.xin@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2019-01-30 00:44:07 -08:00
Xin Long
fb19560508 sctp: use SCTP_FUTURE_ASSOC for SCTP_PR_SUPPORTED sockopt
Check with SCTP_FUTURE_ASSOC instead in
sctp_set/getsockopt_pr_supported, it's compatible with 0.

It also adjusts some code to keep a same check form as other functions.

Signed-off-by: Xin Long <lucien.xin@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2019-01-30 00:44:07 -08:00
Xin Long
8add543e36 sctp: add SCTP_FUTURE_ASSOC for SCTP_PEER_ADDR_THLDS sockopt
Check with SCTP_FUTURE_ASSOC instead in
sctp_set/getsockopt_paddr_thresholds, it's compatible with 0.

It also adds pf_retrans in sctp_sock to support SCTP_FUTURE_ASSOC.

Signed-off-by: Xin Long <lucien.xin@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2019-01-30 00:44:06 -08:00
Xin Long
48c072174d sctp: use SCTP_FUTURE_ASSOC for SCTP_LOCAL_AUTH_CHUNKS sockopt
Check with SCTP_FUTURE_ASSOC instead in
sctp_getsockopt_local_auth_chunks, it's compatible with 0.

Signed-off-by: Xin Long <lucien.xin@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2019-01-30 00:44:06 -08:00
Xin Long
6fd769beb0 sctp: use SCTP_FUTURE_ASSOC for SCTP_MAXSEG sockopt
Check with SCTP_FUTURE_ASSOC instead in
sctp_set/getsockopt_maxseg, it's compatible with 0.
Also check asoc_id early as other sctp setsockopts does.

Signed-off-by: Xin Long <lucien.xin@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2019-01-30 00:44:06 -08:00
Xin Long
8889394df2 sctp: use SCTP_FUTURE_ASSOC for SCTP_ASSOCINFO sockopt
Check with SCTP_FUTURE_ASSOC instead in
sctp_set/getsockopt_associnfo, it's compatible with 0.

Signed-off-by: Xin Long <lucien.xin@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2019-01-30 00:44:06 -08:00
Xin Long
7adb5ed5ee sctp: use SCTP_FUTURE_ASSOC for SCTP_RTOINFO sockopt
Check with SCTP_FUTURE_ASSOC instead in
sctp_set/getsockopt_rtoinfo, it's compatible with 0.

Signed-off-by: Xin Long <lucien.xin@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2019-01-30 00:44:06 -08:00
Xin Long
b99e5e028b sctp: use SCTP_FUTURE_ASSOC for SCTP_PEER_ADDR_PARAMS sockopt
Check with SCTP_FUTURE_ASSOC instead in
sctp_/setgetsockopt_peer_addr_params, it's compatible with 0.

Signed-off-by: Xin Long <lucien.xin@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2019-01-30 00:44:06 -08:00