Commit graph

932,869 commits

Author SHA1 Message Date
Tao Ren
8c014e90bd ARM: dts: aspeed: yamp: Use common dtsi
Simplify the Yamp device tree by using the common dtsi.

In addition this enables the following the second firmware flash and the
eMMC device in slot #1.

Signed-off-by: Tao Ren <taoren@fb.com>
Signed-off-by: Joel Stanley <joel@jms.id.au>
2019-11-01 20:54:47 +10:30
Tao Ren
2bd4c3d3f4 ARM: dts: aspeed: minipack: Use common dtsi
Simplify the Minipack device tree by using the common dtsi.

In addition this enables the enabling the second firmware flash, and
updates it's size from 32MB to 64MB. It also enables the eMMC device in
slot #1.

Signed-off-by: Tao Ren <taoren@fb.com>
Signed-off-by: Joel Stanley <joel@jms.id.au>
2019-11-01 20:54:46 +10:30
Tao Ren
7e4dd1ed48 ARM: dts: aspeed: cmm: Use common dtsi
Simplify the CMM device tree by using the common dtsi.

In addition this enables the second firmware flash and the emmc device
in slot #0.

Signed-off-by: Tao Ren <taoren@fb.com>
Signed-off-by: Joel Stanley <joel@jms.id.au>
2019-11-01 20:54:46 +10:30
Tao Ren
2b7ca63ccd ARM: dts: aspeed: Common dtsi for Facebook AST2500 Network BMCs
This common descirption is included by all Facebook AST2500 Network BMC
platforms to minimize duplicated device entries across Facebook Network
BMC device trees.

Signed-off-by: Tao Ren <taoren@fb.com>
Signed-off-by: Joel Stanley <joel@jms.id.au>
2019-11-01 20:54:46 +10:30
Brandon Wyman
1dd785ba30 ARM: dts: aspeed: rainier: gpio-keys for PSU presence
Add in a gpio-keys section to the Rainier device tree source, add in the
power supply presence GPIOs.

Signed-off-by: Brandon Wyman <bjwyman@gmail.com>
Reviewed-by: Eddie James <eajames@linux.ibm.com>
Signed-off-by: Joel Stanley <joel@jms.id.au>
2019-11-01 20:54:46 +10:30
Jinu Thomas
7f4a0ad5f0 ARM: dts: aspeed: rainier: Fix i2c eeprom size
Fix the size of the Proc VRM card's eeprom used for vpd storage. The
size is changed from 64Kbit to 128Kbit.

Signed-off-by: Jinu Joy Thomas <jinu.joy.thomas@in.ibm.com>
Reviewed-by: Santosh Puranik <santosh.puranik.ibm@gmail.com>
Signed-off-by: Joel Stanley <joel@jms.id.au>
2019-11-01 20:54:46 +10:30
Andrew Jeffery
253d39f5a6 ARM: dts: tacoma: Hog LPC pinmux
Requesting pinmux configuration is done at driver probe time. The LPC IP
is composed of many sub-devices, each with their own driver, and no
driver exists for the entire IP block. Avoid having each sub-device
request the LPC pinmux by just hogging it in the pinctrl node.

Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
Signed-off-by: Joel Stanley <joel@jms.id.au>
2019-11-01 20:54:46 +10:30
Brad Bishop
8fc6327f0f ARM: dts: aspeed: rainier: Enable VUART1
Like most OpenPower machines the VUART is expected to be at /dev/ttyS5
for communication with the host over LPC.

Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
Signed-off-by: Joel Stanley <joel@jms.id.au>
2019-11-01 20:54:46 +10:30
Jinu Thomas
a3bff4fec5 ARM: dts: aspeed: rainier: Add i2c eeproms
Added eeproms for the below VPD devices
- BMC
- TPM
- System Planar
- DCM 0 VRM
- DCM 1 VRM
- Base Op panel
- Lcd Op panel
- DASD (All)
- PCIe Cards (All)

Signed-off-by: Jinu Joy Thomas <jinu.joy.thomas@in.ibm.com>
Reviewed-by: Santosh Puranik <santosh.puranik.ibm@gmail.com>
Signed-off-by: Joel Stanley <joel@jms.id.au>
2019-11-01 20:54:46 +10:30
Joel Stanley
575640201e ARM: dts: aspeed: tacoma: Use 64MB for firmware memory
OpenBMC requires a window the same size as the image being loaded.

Reviewed-by: Andrew Jeffery <andrew@aj.id.au>
Signed-off-by: Joel Stanley <joel@jms.id.au>
2019-11-01 20:54:46 +10:30
Joel Stanley
a981c93300 ARM: dts: aspeed: tacoma: Add host FSI description
This adds the description of the Power9 CPUs that are attached to the
BMC.

Signed-off-by: Joel Stanley <joel@jms.id.au>
2019-11-01 20:54:46 +10:30
Joel Stanley
a750904577 ARM: dts: ast2600evb: Enable UART workaround
The UART has an issue on A0 that can be worked around by using the
Synopsis driver.

Tested-by: Eddie James <eajames@linux.ibm.com>
Signed-off-by: Joel Stanley <joel@jms.id.au>
2019-11-01 20:54:45 +10:30
Joel Stanley
77ef1b3991 ARM: dts: aspeed: tacoma: Add UART1 and workaround
The UARTs on the AST2600 A0 have a known issue that can be worked around
by using the Synopsys driver.

Tested-by: Eddie James <eajames@linux.ibm.com>
Signed-off-by: Joel Stanley <joel@jms.id.au>
2019-11-01 20:54:45 +10:30
Joel Stanley
c0d3e181d7 ARM: dts: aspeed-g6: Add remaining UARTs
The AST2600 has five UARTs. Add UART 1 to 4.

Tested-by: Eddie James <eajames@linux.ibm.com>
Signed-off-by: Joel Stanley <joel@jms.id.au>
2019-11-01 20:54:45 +10:30
Joel Stanley
8bba55f743 ARM: dts: aspeed-g6: Fix i2c clock source
The upstream clock for the I2C buses is APB2.

Reviewed-by: Andrew Jeffery <andrew@aj.id.au>
Signed-off-by: Joel Stanley <joel@jms.id.au>
2019-11-01 20:54:45 +10:30
Andrew Jeffery
37ece7e341 ARM: dts: aspeed: Add RCLK to MAC clocks for RMII interfaces
We need to ungate RCLK on AST2500- and AST2600-based platforms for RMII
to function. RMII interfaces are commonly used for NCSI.

Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
Signed-off-by: Joel Stanley <joel@jms.id.au>
2019-11-01 20:54:45 +10:30
Joel Stanley
9d40f423d7 Merge branch 'aspeed-clk-for-v5.5'
This contains the dt-bindings headers for the ethernet clocks.

Signed-off-by: Joel Stanley <joel@jms.id.au>
2019-11-01 20:54:12 +10:30
Chris Wilson
e5661c6ab0 drm/i915/selftests: Start kthreads before stopping
An interesting observation made with our parallel selftests was that on
our small/single cpu systems we would call kthread_stop() before the
kthreads were spawned. If this happens, the kthread is never run at all;
completely bypassing the test.

A simple yield() from the parent will ensure that all children have the
opportunity to start before we reap them.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Matthew Auld <matthew.auld@intel.com>
Reviewed-by: Matthew Auld <matthew.auld@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20191101084940.31838-1-chris@chris-wilson.co.uk
2019-11-01 10:12:29 +00:00
Chris Wilson
292a27b0a8 drm/i915/lmem: Check against i915_selftest only under CONFIG_SELFTEST
The i915_selftest module parameters only exist when
CONFIG_DRM_I915_SELFTEST is set.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Matthew Auld <matthew.auld@intel.com>
Reviewed-by: Matthew Auld <matthew.auld@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20191101095147.9769-1-chris@chris-wilson.co.uk
2019-11-01 10:12:29 +00:00
Gabriela Bittencourt
f8be8d1ede staging: rts5208: Eliminate the use of Camel Case in file sd.h
Cleans up checks of "Avoid CamelCase" in file sd.h
Even though the constant "DCM_LOW_FREQUENCY_MODE_SET" is defined and never used,
it's useful to keep it because it documents the device.

Signed-off-by: Gabriela Bittencourt <gabrielabittencourt00@gmail.com>

Link: https://lore.kernel.org/r/20191031230243.3462-4-gabrielabittencourt00@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-11-01 10:55:10 +01:00
Gabriela Bittencourt
1a0afbec55 staging: rts5208: Eliminate the use of Camel Case in files xd.{h, c}
Cleans up checks of "Avoid CamelCase" in files xd.{h,c}

Acked-by: Julia Lawall <julia.lawall@lip6.fr>
Signed-off-by: Gabriela Bittencourt <gabrielabittencourt00@gmail.com>
Link: https://lore.kernel.org/r/20191031230243.3462-3-gabrielabittencourt00@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-11-01 10:55:09 +01:00
Gabriela Bittencourt
6e653e9cac staging: rts5208: Eliminate the use of Camel Case in files ms.{h, c}
Cleans up checks of "Avoid CamelCase" in files ms.{h,c}

Signed-off-by: Gabriela Bittencourt <gabrielabittencourt00@gmail.com>

Link: https://lore.kernel.org/r/20191031230243.3462-2-gabrielabittencourt00@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-11-01 10:53:16 +01:00
Roi Martin
129376c6d6 staging: exfat: replace kmalloc with kmalloc_array
Replace expressions of the form:
	kmalloc(count * size, GFP_KERNEL);
With:
	kmalloc_array(count, size, GFP_KERNEL);

Signed-off-by: Roi Martin <jroi.martin@gmail.com>
Link: https://lore.kernel.org/r/20191031123139.32361-1-jroi.martin@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-11-01 10:50:37 +01:00
Davidlohr Bueso
3ae82f449c drivers/staging/exfat: Replace binary semaphores for mutexes
At a slight footprint cost (24 vs 32 bytes), mutexes are more optimal
than semaphores; it's also a nicer interface for mutual exclusion,
which is why they are encouraged over binary semaphores, when possible.

For both v_sem and z_sem, their semantics imply traditional lock
ownership; that is, the lock owner is the same for both lock/unlock
operations. Therefore it is safe to convert.

Signed-off-by: Davidlohr Bueso <dave@stgolabs.net>
Acked-by: Valdis Kletnieks <valdis.kletnieks@vt.edu>
Link: https://lore.kernel.org/r/20191030144916.10802-1-dave@stgolabs.net
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-11-01 10:50:37 +01:00
Thierry Reding
84db889e6d drm/tegra: Unconditionally select IOMMU_IOVA
Currently configurations can be generated where IOMMU_SUPPORT is
disabled but IOMMU_IOVA is built as a module and DRM_TEGRA as built-in.
In such a case, the symbols guarded by IOMMU_IOVA will not be available
when linking the Tegra DRM driver and cause a linking failure.

Simplify this by unconditionally selecting IOMMU_IOVA, which makes sure
that it will be forced to =y if DRM_TEGRA=y. Technically we can now get
IOMMU_IOVA code built-in even if we don't use it (Tegra DRM only uses it
when IOMMU_SUPPORT is also enabled), but such configuration are of a
mostly academic nature. In all practical configurations we want IOMMU
support anyway.

Signed-off-by: Thierry Reding <treding@nvidia.com>
2019-11-01 10:49:29 +01:00
Thierry Reding
c8a2036474 gpu: host1x: Unconditionally select IOMMU_IOVA
Currently configurations can be generated where IOMMU_SUPPORT is
disabled but IOMMU_IOVA is built as a module and HOST1X as built-in. In
such a case, the symbols guarded by IOMMU_IOVA will not be available
when linking the host1x driver and cause a linking failure.

Simplify this by unconditionally selecting IOMMU_IOVA, which makes sure
that it will be forced to =y if HOST1X=y. Technically we can now get
IOMMU_IOVA code built-in even if we don't use it (host1x only uses it
when IOMMU_SUPPORT is also enabled), but such configuration are of a
mostly academic nature. In all practical configurations we want IOMMU
support anyway.

Signed-off-by: Thierry Reding <treding@nvidia.com>
2019-11-01 10:49:17 +01:00
Chris Wilson
4a31741521 drm/i915/gem: Refine occupancy test in kill_context()
Don't just look at the very last request in a queue when deciding if we
need to evict the context from the GPU, as that request may still be in
the submission queue while the rest of the context is running!

Instead, walk back along the queued requests looking for the active
request and checking that.

Fixes: 2e0986a58c ("drm/i915/gem: Cancel contexts when hangchecking is disabled")
Testcase: igt/gem_ctx_persistence/queued
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Cc: Matthew Auld <matthew.auld@intel.com>
Reviewed-by: Matthew Auld <matthew.auld@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20191031090104.22245-1-chris@chris-wilson.co.uk
2019-11-01 09:44:48 +00:00
Nicolas Saenz Julienne
8b5369ea58 dma/direct: turn ARCH_ZONE_DMA_BITS into a variable
Some architectures, notably ARM, are interested in tweaking this
depending on their runtime DMA addressing limitations.

Acked-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
2019-11-01 09:41:18 +00:00
Georgii Staroselskii
5878524ee0
arm64: dts: allwinner: bluetooth for Emlid Neutis N5
The Emlid Neutis N5 board has AP6212 BT+WiFi chip. This patch is in
line with 8558c6e21c ("ARM: dts: sun8i: h3: bluetooth for Banana Pi
M2 Zero board") and other commits that add Bluetooth support for
similar boards.

Signed-off-by: Georgii Staroselskii <georgii.staroselskii@emlid.com>
Signed-off-by: Maxime Ripard <maxime@cerno.tech>
2019-11-01 10:12:42 +01:00
Greg Kroah-Hartman
ebc8f4f603 Second set of IIO + counter new device support, features etc for the 5.5 cycle.
Note two merge commits in here, both for immutable branches based
 of 5.4-rc1.
 1. Ti eqep driver because of some file moves in precursor patches.
    I suspect no one else will pull this one.
 2. ab8500 refactor as changes in power supply, hwmon and mfd trees.
    This may come via numerous trees as well as IIO.
 
 Counter subsystem related
 * ti eqep
   - New device support with bindings.
   - Includes prior file move to reflect more general use of ti-pwmss.
 * Counter core
   - simplify count_read and count_write callbacks + document change.
   - fix a typo in docs.
 
 Various subsystems related
 * AB8500
   - ab8500_btemp driver converted to be an IIO consumer driver.
   - ab8500_charger driver converted to be an IIO consumer driver.
   - ab8500_fg fuel gauge driver converted to be an IIO consumer driver.
   - ab8500 hwmon driver converted to be an IIO consumer driver.
   - mfd bindings augmented with the adc channels to make the above work.
   - drop original mfd driver.
 
 New device support
 * ab8500
   - new ADC driver used by the above other subystems via the IIO consumer
     interface.
 * adux1020 photometric sensor
   - new driver and dt bindings.
 * fxos877cq
   - new driver for this simple(ish) IMU with DT bindings.
 * intel_mrfld_adc
   -  new driver for the ADC found on Intel Merrifield platforms.
 * ltc2983
   - new driver for this multi-sensor type temperature interface.
     Includes complex DT bindings.
 * max1027
   - support for 12 bit devices, max1227, max1229 and max1231 + add to trivial
     bindings.
 * st_lsm6dsx
   - support for the LSM6DS0 6 axis MEMs sensor.
     Note different from the LSM6DSO which the driver already supports *sigh*
   - support for the LSM6DSRX 6 axis MEMs sensor.
 
 Features and cleanups
 * ad7303
   - replace use of core mlock with a local lock with cleanly defined scope.
 * ad9834
   - add a check for devm_clk_get failing.
 * at91-sama5d2
   - tidy up a 0 as NULL warning.
 * bmp280
   - endian type tidy ups.
   - use bulk regulator ops for a small reduction in code.
   - use devm_add_action... to simplify error path handling.
 * exynos
   - drop stray semicolon.
   - use devm_platform_ioremap_resource to reduce boilerplate.
 * hx711
   - various tricks to improve the frequency of read out possible.
 * max1027
   - debugfs support.
   - make interrupts optional.
   - reset at probe to get clean state.
   - refactors to allow addition of new device support.
 * maxim thermocouple
   - drop an unneeded semicolon.
 * mb1232
   - yaml binding conversion.
 * mcp320x
   - tidy up an endian types in cast warning.
 * meson_saradc
   - use devm_platform_ioremap_resource to reduce boilerplate.
 * mpu3050
   - make a poison value explicity big endian to supress a warning.
 * pulsedlight v2
   - endian type tidy ups.
 * sgp30
   - drop an excess semicolon.
 * sps30
   - make truncation explicit with masking to clean up a warning.
 * st sensors
   - drop gpio include as none of these support gpios.
 * st_lsm6dsx
   - tidy up some alignment issues.
   - refactors to allow addition of new device support.
     * allow varients of irq related reg definitions.
     * avoid accessing active-low, open-drain regs if not provided.
     * allow varients of bdu/boot and reset regs.
     * allow for enabling or disabling wakeup sources through platform
       data (seems someone still uses this).
   - enable wake-up events for LSM6DS0
   - use the drdy mask to avoid some invalid samples during initial start
     of sensor.
   - Add support to trim the timestamp.
 * stm32_adc
   - kernel-doc fixes.
 * stm32_dac
   - power management support.
 * stmpe-adc
   - Fix endian type of local variable.
 * twl4030
   - use false / true instead of 0 / 1 for booleans.
 * xilinx-xadc
   - use devm_platform_ioremap_resouce to reduce boilerplate.
 * zpa2326
   - reorganise buffer handling setup to be more consistent.
 
 Fixes (mostly recent additions)
 * cpcap-adc
   - Fix mising IRQF_ONESHOT that would cause warnings to be printed.
 * st_lsm6dsx
   - Sanity check the read_fifo pointer is set.
   - use locked read and update functions to prevent some races.
   - avoid accessing enable_reg if not provided.
   - take a lock to prevent a race in updating the config.
   - kernel-doc fixes.
   - document wakeup-source property in dt binding.
   - fix lsm9ds1 gyro gain definitions.
 -----BEGIN PGP SIGNATURE-----
 
 iQJEBAABCAAvFiEEbilms4eEBlKRJoGxVIU0mcT0FogFAl27PN8RHGppYzIzQGtl
 cm5lbC5vcmcACgkQVIU0mcT0FojRzA/4svFkyp9+08sZxYN3Z6enw6VwS+OxgVXx
 ikM+j6Wny/kv71yhALoU0SY/GzWnqpudz9SUKVUgXGhOZbG7mJLYx9Ahk1/g2zrI
 wHVwO+PZIxBHUtpewKmcB+uVpaCfXGH6Bu9XYtefnhB1LeGbgS1UQ8q0RbveIyZ6
 sI1cOY7rMr0Sfzf+MgPuZ5sceLDXUuLRgTCro0hHSo8IVG1+raE37UMbmlQ8EYVl
 8gEHoeBrjM4ky8SX+DRyDjxfdgK/am6jqJhOrgmq72+/ltaytz8RaTs/X17GTi6J
 Jii2ODxdfUoxyN0/C57/2iTuL/yXmsEm7nKNdc3VFyjDiUlBs/kSgXpXTX2g3q8m
 SVG0OYHPfJlkwWkSKF463hD5hZ29yBwUNKKyQPwGD4x8+hs8xcw7Zx+KUu/PRkjW
 iZmiQksbJUgU1n8IMINz0NeHCbtI1psfMv+ZnNKwxlPWczYducLNfYPJbhdjuUpT
 Mi5r1An4xpSrlKgwr3JLsXetJLNxvCxbqQQq9kMZW2CF+tBuLhUJMd/7KDrfUQ/P
 wyWJ5TxlVA05ZwsuIWW+gCsQuXTDb6w2y0s9YxjiAUpRP3VAUZhZVWG5VWyxxfr/
 zCx+GT7NSPh70ActiUWrHOyB6zzGeIo8SVX43e7sxdmNkyPK2/d+24u/GOVBP7hg
 hGQ9Ra8JoA==
 =zfsO
 -----END PGP SIGNATURE-----

Merge tag 'iio-for-5.5b' of https://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio into staging-next

Second set of IIO + counter new device support, features etc for the 5.5 cycle.

Note two merge commits in here, both for immutable branches based
of 5.4-rc1.
1. Ti eqep driver because of some file moves in precursor patches.
   I suspect no one else will pull this one.
2. ab8500 refactor as changes in power supply, hwmon and mfd trees.
   This may come via numerous trees as well as IIO.

Counter subsystem related
* ti eqep
  - New device support with bindings.
  - Includes prior file move to reflect more general use of ti-pwmss.
* Counter core
  - simplify count_read and count_write callbacks + document change.
  - fix a typo in docs.

Various subsystems related
* AB8500
  - ab8500_btemp driver converted to be an IIO consumer driver.
  - ab8500_charger driver converted to be an IIO consumer driver.
  - ab8500_fg fuel gauge driver converted to be an IIO consumer driver.
  - ab8500 hwmon driver converted to be an IIO consumer driver.
  - mfd bindings augmented with the adc channels to make the above work.
  - drop original mfd driver.

New device support
* ab8500
  - new ADC driver used by the above other subystems via the IIO consumer
    interface.
* adux1020 photometric sensor
  - new driver and dt bindings.
* fxos877cq
  - new driver for this simple(ish) IMU with DT bindings.
* intel_mrfld_adc
  -  new driver for the ADC found on Intel Merrifield platforms.
* ltc2983
  - new driver for this multi-sensor type temperature interface.
    Includes complex DT bindings.
* max1027
  - support for 12 bit devices, max1227, max1229 and max1231 + add to trivial
    bindings.
* st_lsm6dsx
  - support for the LSM6DS0 6 axis MEMs sensor.
    Note different from the LSM6DSO which the driver already supports *sigh*
  - support for the LSM6DSRX 6 axis MEMs sensor.

Features and cleanups
* ad7303
  - replace use of core mlock with a local lock with cleanly defined scope.
* ad9834
  - add a check for devm_clk_get failing.
* at91-sama5d2
  - tidy up a 0 as NULL warning.
* bmp280
  - endian type tidy ups.
  - use bulk regulator ops for a small reduction in code.
  - use devm_add_action... to simplify error path handling.
* exynos
  - drop stray semicolon.
  - use devm_platform_ioremap_resource to reduce boilerplate.
* hx711
  - various tricks to improve the frequency of read out possible.
* max1027
  - debugfs support.
  - make interrupts optional.
  - reset at probe to get clean state.
  - refactors to allow addition of new device support.
* maxim thermocouple
  - drop an unneeded semicolon.
* mb1232
  - yaml binding conversion.
* mcp320x
  - tidy up an endian types in cast warning.
* meson_saradc
  - use devm_platform_ioremap_resource to reduce boilerplate.
* mpu3050
  - make a poison value explicity big endian to supress a warning.
* pulsedlight v2
  - endian type tidy ups.
* sgp30
  - drop an excess semicolon.
* sps30
  - make truncation explicit with masking to clean up a warning.
* st sensors
  - drop gpio include as none of these support gpios.
* st_lsm6dsx
  - tidy up some alignment issues.
  - refactors to allow addition of new device support.
    * allow varients of irq related reg definitions.
    * avoid accessing active-low, open-drain regs if not provided.
    * allow varients of bdu/boot and reset regs.
    * allow for enabling or disabling wakeup sources through platform
      data (seems someone still uses this).
  - enable wake-up events for LSM6DS0
  - use the drdy mask to avoid some invalid samples during initial start
    of sensor.
  - Add support to trim the timestamp.
* stm32_adc
  - kernel-doc fixes.
* stm32_dac
  - power management support.
* stmpe-adc
  - Fix endian type of local variable.
* twl4030
  - use false / true instead of 0 / 1 for booleans.
* xilinx-xadc
  - use devm_platform_ioremap_resouce to reduce boilerplate.
* zpa2326
  - reorganise buffer handling setup to be more consistent.

Fixes (mostly recent additions)
* cpcap-adc
  - Fix mising IRQF_ONESHOT that would cause warnings to be printed.
* st_lsm6dsx
  - Sanity check the read_fifo pointer is set.
  - use locked read and update functions to prevent some races.
  - avoid accessing enable_reg if not provided.
  - take a lock to prevent a race in updating the config.
  - kernel-doc fixes.
  - document wakeup-source property in dt binding.
  - fix lsm9ds1 gyro gain definitions.

* tag 'iio-for-5.5b' of https://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio: (73 commits)
  dt-bindings: iio: imu: st_lsm6dsx: add lsm6dsrx device bindings
  iio: imu: st_lsm6dsx: add support to LSM6DSRX
  iio: st: Drop GPIO include
  iio: adc: hx711: optimize performance in read cycle
  iio: adc: stm32-adc: fix kernel-doc warnings
  iio: pressure: zpa2326: fix iio_triggered_buffer_postenable position
  iio: chemical: sgp30: drop excess semicolon
  iio: adc: twl4030: Use false / true instead of 0 / 1 with booleans
  dt-bindings: iio: Add ltc2983 documentation
  iio: temperature: Add support for LTC2983
  iio: pressure: bmp280: use devm action and remove labels from probe
  iio: pressure: bmp280: use bulk regulator ops
  iio: imu: Add support for the FXOS8700 IMU
  dt-bindings: iio: imu: add fxos8700 imu binding
  staging: iio: ad9834: add a check for devm_clk_get
  iio: adc: xilinx-xadc: use devm_platform_ioremap_resource
  iio: temp: maxim thermocouple: Drop unneeded semi colon.
  iio: adc: cpcap-adc: Fix missing IRQF_ONESHOT as only threaded handler.
  iio: adc: meson_saradc: use devm_platform_ioremap_resource
  iio: adc: exynos: use devm_platform_ioremap_resource
  ...
2019-11-01 10:06:10 +01:00
Karl Palsson
6d1aa40e10
ARM: dts: sunxi: h3/h5: add missing uart2 rts/cts pins
uart1 and uart3 had existing pin definitions for the rts/cts pairs.
Add definitions for uart2 as well.

Signed-off-by: Karl Palsson <karlp@tweak.net.au>
Acked-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Maxime Ripard <maxime@cerno.tech>
2019-11-01 10:04:52 +01:00
Priit Laes
9567832aba
ARM: configs: sunxi: Enable MICREL_PHY
Include support for Micrel KSZ9031 PHY driver in sunxi_defconfig,
which fixes issues of link not coming up at boot time with
certain link partners.

Micrel KSZ9031 PHY chip is used on Olimex A20-OLinuXino-LIME2
boards.

The errata fix itself has been implemented in commit
"3aed3e2a14: net: phy: micrel: add Asym Pause workaround"

Signed-off-by: Priit Laes <plaes@plaes.org>
Signed-off-by: Maxime Ripard <maxime@cerno.tech>
2019-11-01 10:03:39 +01:00
Corentin Labbe
2fabf6dd77
arm64: defconfig: add new Allwinner crypto options
This patch adds the new allwinner crypto configs to ARM64 defconfig

Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
Signed-off-by: Maxime Ripard <maxime@cerno.tech>
2019-11-01 10:02:27 +01:00
Corentin Labbe
46b257b185
ARM: configs: sunxi: add new Allwinner crypto options
This patch adds the new Allwinner crypto configs to sunxi_defconfig

Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
Signed-off-by: Maxime Ripard <maxime@cerno.tech>
2019-11-01 09:59:31 +01:00
Corentin Labbe
edabfce623
ARM: dts: sun9i: a80: Add Security System node
The Security System is a hardware cryptographic accelerator that support
AES/MD5/SHA1/DES/3DES/PRNG/RSA algorithms.
It could be found on Allwinner SoC A80 and A83T

This patch adds it on the Allwinner A80 SoC Device-tree.

Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
Signed-off-by: Maxime Ripard <maxime@cerno.tech>
2019-11-01 09:58:37 +01:00
Corentin Labbe
c4cf3f5cdd
ARM: dts: sun8i: a83t: Add Security System node
The Security System is a hardware cryptographic accelerator that support
AES/MD5/SHA1/DES/3DES/PRNG/RSA algorithms.
It could be found on Allwinner SoC A80 and A83T

This patch adds it on the Allwinner A83T SoC Device-tree.

Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
Signed-off-by: Maxime Ripard <maxime@cerno.tech>
2019-11-01 09:58:31 +01:00
Corentin Labbe
709b86ff01
arm64: dts: allwinner: sun50i: Add Crypto Engine node on H6
The Crypto Engine is a hardware cryptographic accelerator that supports
many algorithms.

This patch enables the Crypto Engine on the Allwinner H6 SoC Device-tree.

Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
Signed-off-by: Maxime Ripard <maxime@cerno.tech>
2019-11-01 09:58:01 +01:00
Corentin Labbe
8002c454d4
arm64: dts: allwinner: sun50i: Add crypto engine node on H5
The Crypto Engine is a hardware cryptographic accelerator that supports
many algorithms.
It could be found on most Allwinner SoCs.

This patch enables the Crypto Engine on the Allwinner H5 SoC Device-tree.

Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
Signed-off-by: Maxime Ripard <maxime@cerno.tech>
2019-11-01 09:57:19 +01:00
Corentin Labbe
0f5fc15885
arm64: dts: allwinner: sun50i: Add Crypto Engine node on A64
The Crypto Engine is a hardware cryptographic accelerator that supports
many algorithms.
It could be found on most Allwinner SoCs.

This patch enables the Crypto Engine on the Allwinner A64 SoC Device-tree.

Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
Signed-off-by: Maxime Ripard <maxime@cerno.tech>
2019-11-01 09:56:31 +01:00
Corentin Labbe
e7ef094aea
ARM: dts: sun8i: H3: Add Crypto Engine node
The Crypto Engine is a hardware cryptographic accelerator that supports
many algorithms.
It could be found on most Allwinner SoCs.

This patch enables the Crypto Engine on the Allwinner H3 SoC Device-tree.

Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
Signed-off-by: Maxime Ripard <maxime@cerno.tech>
2019-11-01 09:56:17 +01:00
Corentin Labbe
96d8dec97b
ARM: dts: sun8i: R40: add crypto engine node
The Crypto Engine is a hardware cryptographic offloader that supports
many algorithms.
It could be found on most Allwinner SoCs.

This patch enables the Crypto Engine on the Allwinner R40 SoC Device-tree.

Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
Signed-off-by: Maxime Ripard <maxime@cerno.tech>
2019-11-01 09:55:56 +01:00
Corentin Labbe
a246070323
dt-bindings: crypto: Add DT bindings documentation for sun8i-ce Crypto Engine
This patch adds documentation for Device-Tree bindings for the
Crypto Engine cryptographic accelerator driver.

Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
Signed-off-by: Maxime Ripard <maxime@cerno.tech>
2019-11-01 09:55:01 +01:00
Tudor Ambarus
cc86f3e705
mtd: spi-nor: Constify data to write to the Status Register
Constify the data to write to the Status Register.

Signed-off-by: Tudor Ambarus <tudor.ambarus@microchip.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
2019-11-01 10:20:45 +02:00
Tudor Ambarus
4b3745361c
mtd: spi-nor: Fix retlen handling in sst_write()
In case the write of the first byte failed, retlen was incorrectly
incremented to *retlen += actual; on the exit path. retlen should be
incremented when actual data was written to the flash.

Signed-off-by: Tudor Ambarus <tudor.ambarus@microchip.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
2019-11-01 10:20:44 +02:00
Tudor Ambarus
70d2c6dcf8
mtd: spi-nor: Drop redundant error reports in Reg Ops callers
Drop the error messages from the callers, since the callees
already print an error message in case of failure.

Signed-off-by: Tudor Ambarus <tudor.ambarus@microchip.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
2019-11-01 10:20:43 +02:00
Tudor Ambarus
b662d398cc
mtd: spi-nor: Pointer parameter for CR in spi_nor_read_cr()
Let the callers pass the pointer to the DMA-able buffer where
the value of the Configuration Register will be written. This way we
avoid the casts between int and u8, which can be confusing.

Callers stop compare the return value of spi_nor_read_cr() with negative,
spi_nor_read_cr() returns 0 on success and -errno otherwise.

Signed-off-by: Tudor Ambarus <tudor.ambarus@microchip.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
2019-11-01 10:20:36 +02:00
Kiran Gunda
8663c188be backlight: qcom-wled: Add auto string detection logic
The auto string detection algorithm checks if the current WLED
sink configuration is valid. It tries enabling every sink and
checks if the OVP fault is observed. Based on this information
it detects and enables the valid sink configuration.
Auto calibration will be triggered when the OVP fault interrupts
are seen frequently thereby it tries to fix the sink configuration.

The auto-detection also kicks in when the connected LED string
of the display-backlight malfunctions (because of damage) and
requires the damaged string to be turned off to prevent the
complete panel and/or board from being damaged.

Signed-off-by: Kiran Gunda <kgunda@codeaurora.org>
Reviewed-by: Daniel Thompson <daniel.thompson@linaro.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
2019-11-01 08:11:39 +00:00
Kiran Gunda
feeab87b30 backlight: qcom-wled: Add support for short circuit handling
Handle the short circuit interrupt and check if the short circuit
interrupt is valid. Re-enable the module to check if it goes
away. Disable the module altogether if the short circuit event
persists.

Signed-off-by: Kiran Gunda <kgunda@codeaurora.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Reviewed-by: Daniel Thompson <daniel.thompson@linaro.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
2019-11-01 08:11:39 +00:00
Kiran Gunda
03b2b5e869 backlight: qcom-wled: Add support for WLED4 peripheral
WLED4 peripheral is present on some PMICs like pmi8998 and
pm660l. It has a different register map and configurations
are also different. Add support for it.

Signed-off-by: Kiran Gunda <kgunda@codeaurora.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Reviewed-by: Daniel Thompson <daniel.thompson@linaro.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
2019-11-01 08:11:50 +00:00
Kiran Gunda
775d2ffb4a backlight: qcom-wled: Restructure the driver for WLED3
Restructure the driver to add the support for new WLED
peripherals.

Signed-off-by: Kiran Gunda <kgunda@codeaurora.org>
Acked-by: Daniel Thompson <daniel.thompson@linaro.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
2019-11-01 08:11:47 +00:00