Commit Graph

649779 Commits

Author SHA1 Message Date
WANG Cong
06a77b07e3 af_unix: conditionally use freezable blocking calls in read
Commit 2b15af6f95 ("af_unix: use freezable blocking calls in read")
converts schedule_timeout() to its freezable version, it was probably
correct at that time, but later, commit 2b514574f7
("net: af_unix: implement splice for stream af_unix sockets") breaks
the strong requirement for a freezable sleep, according to
commit 0f9548ca10:

    We shouldn't try_to_freeze if locks are held.  Holding a lock can cause a
    deadlock if the lock is later acquired in the suspend or hibernate path
    (e.g.  by dpm).  Holding a lock can also cause a deadlock in the case of
    cgroup_freezer if a lock is held inside a frozen cgroup that is later
    acquired by a process outside that group.

The pipe_lock is still held at that point.

So use freezable version only for the recvmsg call path, avoid impact for
Android.

Fixes: 2b514574f7 ("net: af_unix: implement splice for stream af_unix sockets")
Reported-by: Dmitry Vyukov <dvyukov@google.com>
Cc: Tejun Heo <tj@kernel.org>
Cc: Colin Cross <ccross@android.com>
Cc: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Cc: Hannes Frederic Sowa <hannes@stressinduktion.org>
Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-18 13:58:39 -05:00
Woojung Huh
f6e3ef3e4d lan78xx: relocate mdix setting to phy driver
Relocate mdix code to phy driver to be called at config_init().

Signed-off-by: Woojung Huh <woojung.huh@microchip.com>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-18 13:57:33 -05:00
David S. Miller
82e527df28 Merge branch 'net-marvell-freescale-compile-test'
Florian Fainelli says:

====================
net: Enable COMPILE_TEST for Marvell & Freescale drivers

This patch series allows building the Freescale and Marvell Ethernet network
drivers with COMPILE_TEST.

Changes in v4:

- add proper HAS_DMA to fix build errors on m32r
- provide an inline stub for mvebu_mbus_get_dram_win_info
- added an additional patch to fix build errors with mv88e6xxx on m32r

Changes in v3:

- reorder patches to avoid introducing a build warning between commits

Changes in v2:

- rename register define clash when building for i386 (spotted by LKP)
====================

Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-18 13:54:22 -05:00
Florian Fainelli
0717b8769b net: dsa: mv88e6xxx: Select IRQ_DOMAIN
Some architectures may not define IRQ_DOMAIN (like m32r), fixes
undefined references to IRQ_DOMAIN functions.

Fixes: dc30c35be7 ("net: dsa: mv88e6xxx: Implement interrupt support.")
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-18 13:54:22 -05:00
Florian Fainelli
a0627f776a net: marvell: Allow drivers to be built with COMPILE_TEST
All Marvell Ethernet drivers actually build fine with COMPILE_TEST with
a few warnings. We need to add a few HAS_DMA dependencies to fix linking
failures on problematic architectures like m32r.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-18 13:54:22 -05:00
Florian Fainelli
603ab57363 bus: mvebu-bus: Provide inline stub for mvebu_mbus_get_dram_win_info
In preparation for allowing CONFIG_MVNETA_BM to build with COMPILE_TEST,
provide an inline stub for mvebu_mbus_get_dram_win_info().

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-18 13:54:21 -05:00
Florian Fainelli
0827be21a0 net: fsl: Allow most drivers to be built with COMPILE_TEST
There are only a handful of Freescale Ethernet drivers that don't
actually build with COMPILE_TEST:

* FEC, for which we would need to define a default register layout if no
  supported architecture is defined

* UCC_GETH which depends on PowerPC cpm.h header (which could be moved
  to a generic location)

* GIANFAR needs to depend on HAS_DMA to fix linking failures on some
  architectures (like m32r)

We need to fix an unmet dependency to get there though:
warning: (FSL_XGMAC_MDIO) selects OF_MDIO which has unmet direct
dependencies (OF && PHYLIB)

which would result in CONFIG_OF_MDIO=[ym] without CONFIG_OF to be set.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-18 13:54:21 -05:00
Florian Fainelli
00a19e55ca net: gianfar_ptp: Rename FS bit to FIPERST
FS is a global symbol used by the x86 32-bit architecture, fixes builds
re-definitions:

>> drivers/net/ethernet/freescale/gianfar_ptp.c:75:0: warning: "FS"
>> redefined
    #define FS                    (1<<28) /* FIPER start indication */

   In file included from arch/x86/include/uapi/asm/ptrace.h:5:0,
                    from arch/x86/include/asm/ptrace.h:6,
                    from arch/x86/include/asm/math_emu.h:4,
                    from arch/x86/include/asm/processor.h:11,
                    from include/linux/mutex.h:19,
                    from include/linux/kernfs.h:13,
                    from include/linux/sysfs.h:15,
                    from include/linux/kobject.h:21,
                    from include/linux/device.h:17,
                    from
drivers/net/ethernet/freescale/gianfar_ptp.c:23:
   arch/x86/include/uapi/asm/ptrace-abi.h:15:0: note: this is the
location of the previous definition
    #define FS 9

Reported-by: kbuild test robot <lkp@intel.com>
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-18 13:54:21 -05:00
David S. Miller
0e2d1af399 Merge branch 'cpsw-fixes'
Johan Hovold says:

====================
net: cpsw: fix leaks and probe deferral

This series fixes as number of leaks and issues in the cpsw probe-error
and driver-unbind paths, some which specifically prevented deferred
probing.

v2
 - Keep platform device runtime-resumed throughout probe instead of
   resuming in the probe error path as suggested by Grygorii (patch
   1/7).

 - Runtime-resume platform device before registering any children in
   order to make sure it is synchronously suspended after deregistering
   children in the error path (patch 3/7).
====================

Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-18 13:48:54 -05:00
Johan Hovold
23a0987322 net: ethernet: ti: cpsw: fix fixed-link phy probe deferral
Make sure to propagate errors from of_phy_register_fixed_link() which
can fail with -EPROBE_DEFER.

Fixes: 1f71e8c96f ("drivers: net: cpsw: Add support for fixed-link
PHY")
Signed-off-by: Johan Hovold <johan@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-18 13:48:54 -05:00
Johan Hovold
3420ea8850 net: ethernet: ti: cpsw: add missing sanity check
Make sure to check for allocation failures before dereferencing a
NULL-pointer during probe.

Fixes: 649a1688c9 ("net: ethernet: ti: cpsw: create common struct to
hold shared driver data")
Signed-off-by: Johan Hovold <johan@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-18 13:48:53 -05:00
Johan Hovold
a7fe9d466f net: ethernet: ti: cpsw: fix secondary-emac probe error path
Make sure to deregister the primary device in case the secondary emac
fails to probe.

kernel BUG at /home/johan/work/omicron/src/linux/net/core/dev.c:7743!
...
[<c05b3dec>] (free_netdev) from [<c04fe6c0>] (cpsw_probe+0x9cc/0xe50)
[<c04fe6c0>] (cpsw_probe) from [<c047b28c>] (platform_drv_probe+0x5c/0xc0)

Fixes: d9ba8f9e62 ("driver: net: ethernet: cpsw: dual emac interface
implementation")
Signed-off-by: Johan Hovold <johan@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-18 13:48:53 -05:00
Johan Hovold
8cbcc466fd net: ethernet: ti: cpsw: fix of_node and phydev leaks
Make sure to drop references taken and deregister devices registered
during probe on probe errors (including deferred probe) and driver
unbind.

Specifically, PHY of-node references were never released and fixed-link
PHY devices were never deregistered.

Fixes: 9e42f71526 ("drivers: net: cpsw: add phy-handle parsing")
Fixes: 1f71e8c96f ("drivers: net: cpsw: Add support for fixed-link
PHY")
Signed-off-by: Johan Hovold <johan@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-18 13:48:53 -05:00
Johan Hovold
a4e32b0d0a net: ethernet: ti: cpsw: fix deferred probe
Make sure to deregister all child devices also on probe errors to avoid
leaks and to fix probe deferral:

cpsw 4a100000.ethernet: omap_device: omap_device_enable() called from invalid state 1
cpsw 4a100000.ethernet: use pm_runtime_put_sync_suspend() in driver?
cpsw: probe of 4a100000.ethernet failed with error -22

Add generic helper to undo the effects of cpsw_probe_dt(), which will
also be used in a follow-on patch to fix further leaks that have been
introduced more recently.

Note that the platform device is now runtime-resumed before registering
any child devices in order to make sure that it is synchronously
suspended after having deregistered the children in the error path.

Fixes: 1fb19aa730 ("net: cpsw: Add parent<->child relation support
between cpsw and mdio")
Signed-off-by: Johan Hovold <johan@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-18 13:48:53 -05:00
Johan Hovold
86e1d5adce net: ethernet: ti: cpsw: fix mdio device reference leak
Make sure to drop the reference taken by of_find_device_by_node() when
looking up an mdio device from a phy_id property during probe.

Fixes: 549985ee9c ("cpsw: simplify the setup of the register
pointers")
Signed-off-by: Johan Hovold <johan@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-18 13:48:52 -05:00
Johan Hovold
c46ab7e08c net: ethernet: ti: cpsw: fix bad register access in probe error path
Make sure to keep the platform device runtime-resumed throughout probe
to avoid accessing the CPSW registers in the error path (e.g. for
deferred probe) with clocks disabled:

Unhandled fault: external abort on non-linefetch (0x1008) at 0xd0872d08
...
[<c04fabcc>] (cpsw_ale_control_set) from [<c04fb8b4>] (cpsw_ale_destroy+0x2c/0x44)
[<c04fb8b4>] (cpsw_ale_destroy) from [<c04fea58>] (cpsw_probe+0xbd0/0x10c4)
[<c04fea58>] (cpsw_probe) from [<c047b2a0>] (platform_drv_probe+0x5c/0xc0)

Fixes: df828598a7 ("netdev: driver: ethernet: Add TI CPSW driver")
Signed-off-by: Johan Hovold <johan@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-18 13:48:52 -05:00
Jeremy Linton
06ba3b2133 net: sky2: Fix shutdown crash
The sky2 frequently crashes during machine shutdown with:

sky2_get_stats+0x60/0x3d8 [sky2]
dev_get_stats+0x68/0xd8
rtnl_fill_stats+0x54/0x140
rtnl_fill_ifinfo+0x46c/0xc68
rtmsg_ifinfo_build_skb+0x7c/0xf0
rtmsg_ifinfo.part.22+0x3c/0x70
rtmsg_ifinfo+0x50/0x5c
netdev_state_change+0x4c/0x58
linkwatch_do_dev+0x50/0x88
__linkwatch_run_queue+0x104/0x1a4
linkwatch_event+0x30/0x3c
process_one_work+0x140/0x3e0
worker_thread+0x60/0x44c
kthread+0xdc/0xf0
ret_from_fork+0x10/0x50

This is caused by the sky2 being called after it has been shutdown.
A previous thread about this can be found here:

https://lkml.org/lkml/2016/4/12/410

An alternative fix is to assure that IFF_UP gets cleared by
calling dev_close() during shutdown. This is similar to what the
bnx2/tg3/xgene and maybe others are doing to assure that the driver
isn't being called following _shutdown().

Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-18 13:40:36 -05:00
Olof Johansson
f3dcae8f4d ARM: DT: Hisilicon ARMv7 SoC DT updates for 4.10
- Remove skeleton.dtsi inclusion for the Hip01, Hi3620 and Hix5hd2
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJYKvU1AAoJEAvIV27ZiWZcP9kP/2CvgIT90oxOMXN5TTXqQkhA
 XhFy92yXU3G+q6bH1908dugZkOLAIPomYfeENnnLrpfl8JQpfyNbaeaoe7VU9KWU
 Pr1Ra8ggfQiV7M2RZn0G1Hqf/cwefXdNjGgj0LPqHoIyCkWUmKUgbAGXrRbr971t
 wXDuRQr4369ezKsFzFZ4Pnhy3sCOT1Yy4/d6EpDhtWOv/EjH1IM/OBfTPf939s9A
 X5GtbIPEetMBm14lANJxwDfNfbJ9SAtmoOvr3E3ucqyErD1JHekgLwZK71b6PrHB
 c1qP1VBlitRy2ehOsTGd7MEUbHy0z79sSNMNvN6wSOIehcrIjHIOSBF+yoNUlzdJ
 t+c/8S7R4hhMqeQFmx10bSjm9ZXsNtRknR1XPqAAZ/DOBHt2d6gmO08jdLXuMGC/
 w47KG3fanMWlNZ/+v2UrH4SNIG+XtTLX5GOKTvOF1bPUUjDLGsZYubZxcA7m2PDO
 ix6elu8tMAUTPwFXL5MyeftJLr++NEvOI6JOZfX0rIN2mLy3zcAtwYqCjDVFdoxN
 qtI6KD5QlaZnLUtMJ7VWIHodZFFY8MN/27G5eug/7J9vM2uGNBAOggrw41G/u8E4
 idElAY9xUy0GhaBcAnefTWNSyJUCiBwndbU/X3P2BIoc3NzZ2m7ShDzsu7mjyEvf
 b0Uvn9V1+aI30ufc/oTQ
 =by9k
 -----END PGP SIGNATURE-----

Merge tag 'hisi-armv7-soc-dt-for-4.10' of git://github.com/hisilicon/linux-hisi into next/dt

ARM: DT: Hisilicon ARMv7 SoC DT updates for 4.10

- Remove skeleton.dtsi inclusion for the Hip01, Hi3620 and Hix5hd2

* tag 'hisi-armv7-soc-dt-for-4.10' of git://github.com/hisilicon/linux-hisi:
  ARM: dts: hisi-x5hd2: Remove skeleton.dtsi inclusion
  ARM: dts: hi3620: Remove skeleton.dtsi inclusion
  ARM: dts: hip01: Remove skeleton.dtsi inclusion

Signed-off-by: Olof Johansson <olof@lixom.net>
2016-11-18 10:38:47 -08:00
Olof Johansson
e702ddd3e8 ARM64: DT: Hisilicon SoC DT updates for 4.10
- Correct the hardware pin number of the usb node on the Hip06
 - Add the Hisilicon Hip07 D05 board dts binding
 - Add the initial dts for the Hip07 D05 board
 - Fix the warning for the node without reg propery on the Hip06
 - Fix the sas am max transmissions quirk property on the Hip06
 - Disable the sas0 and sas2 on D03 board
 - Add refclk node for SAS on the Hip06
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJYKvD8AAoJEAvIV27ZiWZcIdgP/RXYCWB8yztd3K74qSJ8xydr
 SBKY77zXwQBHzmDEbB881pJOaaBKzO9uTHo6nbkWRoE/cMYONohc+cO7WkkY4Lav
 gMEJ9Ss7ckwCAjQAkzh4hHV4V8EMA1+aMDNbNR/slw+neQnzBuTMd4EERmve3Wzg
 d4exeYgXVWGZLWhfFxp9xwyDt8fn03LoYYgqkM6wFKKpCXFx6dDVvjZw/V7W5vn0
 GVBSxgam2BW4ug4/Q6ZlnBrNU1db8DzhGUfqXOd8569v8QUxBq19Gy1DP1eTEtCl
 5WvnOIUSDQ+1MEFIaybq9CIWcM792XoQEpV9OI1EouAOYN4JeAiutGPQY0seyEIF
 X1jIPBteetqLtXSf3uQdYf8hVmTMNZp+/f/jRWK6K/BPgeVts0N9t1jqhcSMzOaH
 cneUkCuXsN4crBzBszhSsSPNMg7vvuprJNJCepESdiA4lBpn/KKFRj3aDNOw+ev3
 dpC6Rn0htzeg4wWWez9MptlXnMhRoL01FR+0nNy4R3FB4OEphzzMZuTWEAe7EyKA
 wwPG0u2WqR8nqFgk7iphHcoI1/NevSr0HbxRl0dWZ2UDZtESvSseZl0AEQRTU2ES
 /rg9S6ShNQvQI9bHhITIXixZ07gpyM/TPbJlAUp6PHtxwiVpLoDsCQEzCYnktFl+
 S/4pvu6yetne9bIPz59s
 =MVHS
 -----END PGP SIGNATURE-----

Merge tag 'hisi-arm64-dt-4.10' of git://github.com/hisilicon/linux-hisi into next/dt64

ARM64: DT: Hisilicon SoC DT updates for 4.10

- Correct the hardware pin number of the usb node on the Hip06
- Add the Hisilicon Hip07 D05 board dts binding
- Add the initial dts for the Hip07 D05 board
- Fix the warning for the node without reg propery on the Hip06
- Fix the sas am max transmissions quirk property on the Hip06
- Disable the sas0 and sas2 on D03 board
- Add refclk node for SAS on the Hip06

* tag 'hisi-arm64-dt-4.10' of git://github.com/hisilicon/linux-hisi:
  arm64: dts: hisi: add refclk node to hip06 dts files for SAS
  arm64: dts: hisi: disable sas0 and sas2 for d03
  arm64: dts: hisi: fix hip06 sas am-max-trans quirk
  arm64: dts: hip06: Fix no reg property warning
  arm64: dts: hisilicon: Add initial dts for Hip07 D05 board
  Documentation: arm64: Add Hisilicon Hip07 D05 dts binding
  arm64: dts: hip06: Correct hardware pin number of usb node

Signed-off-by: Olof Johansson <olof@lixom.net>
2016-11-18 10:38:12 -08:00
Theodore Ts'o
c48ae41baf ext4: add sanity checking to count_overhead()
The commit "ext4: sanity check the block and cluster size at mount
time" should prevent any problems, but in case the superblock is
modified while the file system is mounted, add an extra safety check
to make sure we won't overrun the allocated buffer.

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Cc: stable@vger.kernel.org
2016-11-18 13:37:47 -05:00
Olof Johansson
7af5664e0c STM32 DT updates for v4.10, round 2.
Highlights:
 ----------
  - Add support of STM32F746 MCU and STM32746G-Eval board
  - Add QSPI support for STM32F469-Disco board
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJYKx16AAoJEH+ayWryHnCF9bEP/jKtDO76cumlrZys7mttuKoF
 MHolgPj2wI9etfniOvJA3wjC++WYRnkJlMxt1KxjaAVDVxgO3r6j8YOli11OKbUk
 1yKFVUzjq5Z3k9dvr0UdZsk5PZ46j+UwvYtvkQfX+ErEKOkVjdv1m9Ktjfkv1+dM
 VubIKtYaUH9ELR6dVOH36R/S4tlKBw7oboj+4P+jVPcNu/jlhELw0VszQ3cYvrt9
 wJ4I2bNXTomLzqVJ61AEPDRg86v317ZlBnwxfGRMzwUa1zNLACQDqtem+e9hnLHx
 yDmeIoAKZpuFsqJZ+c1VetE9GNAmp9fhHmDaZZ/rikt6GeszYdGXvkJ7rn3nyVp2
 nbb7xPBXcMXD5lIDeVn7jddT5CfpzrRnNiH1ovfkv2WLViM6GarJMs4yOs0iOY/w
 5E67tv0J3eJgK5kAuq7NmKwBbBbRsHEM3Vng8ijAdZ278RpG9PzOarMU8FZWnCWz
 uFOP3/Ls8DgZe/CMdq5eQPN/JooViSXhg4JUEvSIjulze8W55sYtpGiYidYD8Ein
 XrAwQt8br3hlqi9QAcpSU8drTOa3gn38iE5svQ+JkUT6akI4blT1CDuIr9gc1lSn
 zz9OiuB/f8QM5+gO37sWOwD9QrgdMFcVjAeF/eJROBkBEoxAhCWf3h6pmQa2+8jk
 jtR6Ec1eguD/s9PthiHs
 =h9qv
 -----END PGP SIGNATURE-----

Merge tag 'stm32-dt-for-v4.10-2' of git://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32 into next/dt

STM32 DT updates for v4.10, round 2.

Highlights:
----------
 - Add support of STM32F746 MCU and STM32746G-Eval board
 - Add QSPI support for STM32F469-Disco board

* tag 'stm32-dt-for-v4.10-2' of git://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32:
  ARM: dts: stm32f429: Add QSPI clock
  ARM: dts: Add STM32F746 MCU and STM32746g-EVAL board

Signed-off-by: Olof Johansson <olof@lixom.net>
2016-11-18 10:36:53 -08:00
Trond Myklebust
3e7dfb1659 NFSv4: Fix CLOSE races with OPEN
If the reply to a successful CLOSE call races with an OPEN to the same
file, we can end up scribbling over the stateid that represents the
new open state.
The race looks like:

  Client				Server
  ======				======

  CLOSE stateid A on file "foo"
					CLOSE stateid A, return stateid C
  OPEN file "foo"
					OPEN "foo", return stateid B
  Receive reply to OPEN
  Reset open state for "foo"
  Associate stateid B to "foo"

  Receive CLOSE for A
  Reset open state for "foo"
  Replace stateid B with C

The fix is to examine the argument of the CLOSE, and check for a match
with the current stateid "other" field. If the two do not match, then
the above race occurred, and we should just ignore the CLOSE.

Reported-by: Benjamin Coddington <bcodding@redhat.com>
Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
2016-11-18 13:35:58 -05:00
Trond Myklebust
23ea44c215 NFSv4.1: Fix a regression in DELEGRETURN
We don't want to call nfs4_free_revoked_stateid() in the case where
the delegreturn was successful.

Reported-by: Benjamin Coddington <bcodding@redhat.com>
Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
2016-11-18 13:35:54 -05:00
Olof Johansson
e1cb1c7835 STM32 SOC updates for v4.10, round 1.
Highlights:
 ----------
  - Add new MCU SOC STM32F746
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJYKxh1AAoJEH+ayWryHnCFva0P/1O3hNhRf1lJbJ9ZM8yKbUM5
 AGWRoS7ePBLdEz9CUEgTTFMMz2a2oovq2k/maWaUQu/+g+hGnIPz+KZtE3+QqrMN
 EFe8s4vWqB7GkSb651M7khVZI8I6qSlbZurVNT9Fg8/lqd/vJJ0lbTeTjvo9bD+B
 af4YWoYjfMR9KMilZjl5HOok3gjDI3qTHKFeQwK9PUx6aZWB0gq5q7C8rcef5Evd
 HHnIOteXj+rZGo+04S88Z8Hjmnu5LAtWUgSUqrAVs8s+ycXyx/AZktr48iGNZc5B
 z/RSAXT1oRW0UiNonj5Uca0No4d0M6dNlWg+qP/Uw245ykZ2nWRlOGpnua6kG0F1
 ChJ1vGE5Sq4cjvGu8YAlYcQmFCCzyM90rTDBaOLA+Ln4dFXmbALLhk8bN7iiCyGt
 UtC0neFO+r08wdl+zmNY5rx/jNsAF3gDNyKjq1l07ueF20PrdZnQhL16DEM0ynkb
 7X+nC/DeZAxoyKeT5zj9dTG7wLVDhxRMXSN4gngooTWL/D/H3fSbcUBr04vC4if3
 zOzOqnn1OshnUdKSKiVs+dPcgwedJ97KNZaxh1FutsQqUFl5SVM5rkpAumOq0e08
 mYY4pRdbt8vKm2QzOIONjyWowApHMvy6witHXjoFnRlp/zNOsKqgPHJCVoHlSG0E
 lfCvp5nJIzyqlnhocTY2
 =sQ6M
 -----END PGP SIGNATURE-----

Merge tag 'soc-for-4.10-1' of git://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32 into next/soc

STM32 SOC updates for v4.10, round 1.

Highlights:
----------
 - Add new MCU SOC STM32F746

* tag 'soc-for-4.10-1' of git://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32:
  ARM: Kconfig: Introduce MACH_STM32F746 flag
  ARM: mach-stm32: Add a new SOC - STM32F746

Signed-off-by: Olof Johansson <olof@lixom.net>
2016-11-18 10:33:36 -08:00
Olof Johansson
43d461f16c i.MX defconfig updates for 4.10:
- Increase CMA size to 64 MiB, so that we can use etnaviv driver with
    1920x1080 display devices.
  - Enable ES8328 codec driver support, which is required by Kosagi
    Novena boards.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABAgAGBQJYKrrAAAoJEFBXWFqHsHzOj4EH/2hdhqbgnOXkYfxU1vp+Pic1
 n3CAeRwtgIkfVWRxPn0ljx3XUppqnkGbTtn0JcgNDiPJnmiwhdPdVzUaekw+HVXL
 kGp3O7gxnop7txSsCuMy6jFJxIpPPO0eiH8j0NfYv1WqjFo/6lJJmCaowxoEEKXn
 T51/e7+W76WR294JruYDTgtDYHXphX58gI1vqAs/2r/wDFxThkxGSDQlNq8edrA7
 dtP1urqDR6Q99eeA4gBNl/xqkN0NOKImf7wM05Pvyf5uRzVtHiYBhl3/3x2wgcsF
 u9sehmu8vFPaifYbCoczxcRmiJew1ZAg0LdrFh1BJMnKRxbTVOl4NGPKYxALRT8=
 =vMwU
 -----END PGP SIGNATURE-----

Merge tag 'imx-defconfig-4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into next/defconfig

i.MX defconfig updates for 4.10:
 - Increase CMA size to 64 MiB, so that we can use etnaviv driver with
   1920x1080 display devices.
 - Enable ES8328 codec driver support, which is required by Kosagi
   Novena boards.

* tag 'imx-defconfig-4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
  ARM: imx_v6_v7_defconfig: Select the es8328 codec driver
  ARM: imx_v6_v7_defconfig: Increase CMA size

Signed-off-by: Olof Johansson <olof@lixom.net>
2016-11-18 10:32:48 -08:00
Olof Johansson
22381d08c7 Freescale arm64 device tree updates for 4.10:
- Enable Thermal Monitoring Unit (TMU) for thermal management on
    LS1043A and LS2080A.
  - Add support for LS1046A SoC, which has similar peripherals as
    LS1043A but integrates 4 A72 cores.
  - Add two LS1046A based board support: LS1046A-QDS and LS1046A-RDB.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABAgAGBQJYKrk2AAoJEFBXWFqHsHzOQlwH+wQXK2WABTOjRVchLOzup/cD
 UtB7mbmXJrBSePa3OTvF8xMk4VFfjm9oljmLnUEnzWEfjsS2aURT2GJBWv/ddhqw
 Mg/fYcZ1LgzJq8VOnenLpF1L2jc/I2hivCkBNmmkMK0HQvURKEAsdqNDc7Zg0meY
 64qokll9Uz4DM2yeHkrUs9Q13UPs9/88ikYbE+CVDFaI0TCJjZUTImmjYkt8pJyk
 poDtW6yE8ibMNk2DK4e4tthPRcYnhkFOtSJF6Qy6jouV/J9+aaKG5+rj4MBeF8Aj
 T2+RFSQ4s2BuI5cH3qQq8Fv7lvF0Ay4wNWZl420R7shjbPWQNdIcbAbKL+51De0=
 =jiir
 -----END PGP SIGNATURE-----

Merge tag 'imx-dt64-4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into next/dt64

Freescale arm64 device tree updates for 4.10:
 - Enable Thermal Monitoring Unit (TMU) for thermal management on
   LS1043A and LS2080A.
 - Add support for LS1046A SoC, which has similar peripherals as
   LS1043A but integrates 4 A72 cores.
 - Add two LS1046A based board support: LS1046A-QDS and LS1046A-RDB.

* tag 'imx-dt64-4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
  arm64: dts: ls2080a: Add TMU device tree support for LS2080A
  arm64: dts: ls1043a: Add TMU device tree support for LS1043A
  arm64: dts: add LS1046A-QDS board support
  Documentation: DT: Add entry for QorIQ LS1046A-QDS board
  arm64: dts: add LS1046A-RDB board support
  Documentation: DT: Add entry for QorIQ LS1046A-RDB board
  arm64: dts: add QorIQ LS1046A SoC support
  dt-bindings: ahci-fsl-qoriq: updated for SoC ls1046a
  dt-bindings: qoriq-clock: add LS1043A/LS1046A/LS2080A compatible for clockgen
  dt-bindings: i2c: adds two more nxp devices
  dt-bindings: fsl: add LS1043A/LS1046A/LS2080A compatible for SCFG and DCFG
  dt-bindings: fsl: Add LS1043A/LS1046A/LS2080A SoC compatible strings

Signed-off-by: Olof Johansson <olof@lixom.net>
2016-11-18 10:32:14 -08:00
Theodore Ts'o
cd6bb35bf7 ext4: use more strict checks for inodes_per_block on mount
Centralize the checks for inodes_per_block and be more strict to make
sure the inodes_per_block_group can't end up being zero.

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Reviewed-by: Andreas Dilger <adilger@dilger.ca>
Cc: stable@vger.kernel.org
2016-11-18 13:28:30 -05:00
Theodore Ts'o
5aee0f8a3f ext4: fix in-superblock mount options processing
Fix a large number of problems with how we handle mount options in the
superblock.  For one, if the string in the superblock is long enough
that it is not null terminated, we could run off the end of the string
and try to interpret superblocks fields as characters.  It's unlikely
this will cause a security problem, but it could result in an invalid
parse.  Also, parse_options is destructive to the string, so in some
cases if there is a comma-separated string, it would be modified in
the superblock.  (Fortunately it only happens on file systems with a
1k block size.)

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Cc: stable@vger.kernel.org
2016-11-18 13:24:26 -05:00
Cao jin
f4cb410019 vfio/pci: Drop unnecessary pcibios_err_to_errno()
As of commit d97ffe2368 ("PCI: Fix return value from
pci_user_{read,write}_config_*()") it's unnecessary to call
pcibios_err_to_errno() to fixup the return value from these functions.

pcibios_err_to_errno() already does simple passthrough of -errno values,
therefore no functional change is expected.

[aw: changelog]
Signed-off-by: Cao jin <caoj.fnst@cn.fujitsu.com>
Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
2016-11-18 11:06:42 -07:00
Theodore Ts'o
9e47a4c9fc ext4: sanity check the block and cluster size at mount time
If the block size or cluster size is insane, reject the mount.  This
is important for security reasons (although we shouldn't be just
depending on this check).

Ref: http://www.securityfocus.com/archive/1/539661
Ref: https://bugzilla.redhat.com/show_bug.cgi?id=1332506
Reported-by: Borislav Petkov <bp@alien8.de>
Reported-by: Nikolay Borisov <kernel@kyup.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Cc: stable@vger.kernel.org
2016-11-18 13:00:24 -05:00
Olof Johansson
1fc7210c1d i.MX device tree updates for 4.10:
- New boards support: i.MX6SX UDOO Neo, Boundary Devices Nitrogen6_SOM2,
    Engicam i.CoreM6, Grinn i.MX6UL liteSOM/liteBoard, Toradex Colibri
    iMX6 module, i.MX6ULL and EVK board.
  - Remove skeleton.dtsi inclusion from all i.MX SoC dts files, as it's
    been deprecated, since commit 9c0da3cc61 ("ARM: dts: explicitly
    mark skeleton.dtsi as deprecated").
  - Misc device addition and enabling: OCOTP for Vybrid, MMDC for i.MX6QP,
    TMU for LS1021A, FEC for imx6qdl-icore, DMA for Vybrid DSPI.
  - A few cleanups: use hyphens for node names, fix white spaces, move
    imx-weim parameters into SoC dtsi, replace gpio-key,wakeup with
    wakeup-source, remove pwm-leds from imx6q-apalis-ixora, remove I2C3
    from vf610-zii-dev-rev-b.
  - Other small random changes: calibrate USB PHY for b650v3 board,
    update TX D_CAL for USBPHY, use enable-gpios for backlight on
    imx6qdl-apalis, etc.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABAgAGBQJYKrEtAAoJEFBXWFqHsHzOpnIH/j4Ot/09VQR7IddDY4PkOX53
 7zsYkzVLvUIlAkylICfyjoz8XeiyLl9rM4jg8ubnWBOiKDl1lMxeUfvAmAeX+D5U
 9bgLgNxok7ugUZZKNt6h3+4Q6eAsXBltXBwIMiFEVsHa6sDFro2S4xq74DytEpZR
 Czg6inH9GHix7urlNn5YWvxHDCJMRx3AUQtYlUCb7dd3MrNegvddE3osF49KCdzA
 yKwdN+BdAKL0avWS9BurmXYCVl7OcReIuCIEKA9235V7o5HnBPHbDrxBUO9shqOp
 KcIpTM6rUMRNdzs7CcvkOco2nDkHnOt0u5v4ON29GVq8w2jX+lmbVZCSkCVk44I=
 =+GDb
 -----END PGP SIGNATURE-----

Merge tag 'imx-dt-4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into next/dt

i.MX device tree updates for 4.10:
 - New boards support: i.MX6SX UDOO Neo, Boundary Devices Nitrogen6_SOM2,
   Engicam i.CoreM6, Grinn i.MX6UL liteSOM/liteBoard, Toradex Colibri
   iMX6 module, i.MX6ULL and EVK board.
 - Remove skeleton.dtsi inclusion from all i.MX SoC dts files, as it's
   been deprecated, since commit 9c0da3cc61 ("ARM: dts: explicitly
   mark skeleton.dtsi as deprecated").
 - Misc device addition and enabling: OCOTP for Vybrid, MMDC for i.MX6QP,
   TMU for LS1021A, FEC for imx6qdl-icore, DMA for Vybrid DSPI.
 - A few cleanups: use hyphens for node names, fix white spaces, move
   imx-weim parameters into SoC dtsi, replace gpio-key,wakeup with
   wakeup-source, remove pwm-leds from imx6q-apalis-ixora, remove I2C3
   from vf610-zii-dev-rev-b.
 - Other small random changes: calibrate USB PHY for b650v3 board,
   update TX D_CAL for USBPHY, use enable-gpios for backlight on
   imx6qdl-apalis, etc.

* tag 'imx-dt-4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: (38 commits)
  ARM: dts: imx6ull: add imx6ull support
  ARM: dts: imx6q: replace gpio-key,wakeup with wakeup-source for Utilite Pro
  ARM: dts: vfxxx: Enable DMA for DSPI2 and DSPI3
  ARM: dts: imx: Remove skeleton.dtsi
  ARM: dts: imx6q-utilite-pro: i2c1 is muxed
  ARM: dts: add new compatible string for i.MX6QP mmdc
  ARM: dts: imx6sx-udoo: Add board specific compatible strings
  ARM: dts: mx5: Add new M53EVK manufacturer compat
  ARM: dts: mxs: Add new M28EVK manufacturer compat
  ARM: dts: imx6ul-14x14-evk: update TX D_CAL for USBPHY
  ARM: dts: imx6sx-sdb: update TX D_CAL for USBPHY
  ARM: dts: imx6: Add imx-weim parameters to dtsi's
  ARM: dts: imx: Fix "ERROR: code indent should use tabs where possible"
  ARM: dts: imx6qdl-nitrogen6_max: use hyphens for nodes name
  ARM: dts: imx6qdl-nit6xlite: use hyphens for nodes name
  ARM: dts: imx6qdl-nitrogen6x: use hyphens for nodes name
  ARM: dts: imx6qdl-sabrelite: use hyphens for nodes name
  ARM: dts: imx: add Boundary Devices Nitrogen6_SOM2 support
  ARM: dts: imx6qdl-icore: Add FEC support
  ARM: dts: imx6q: Add Engicam i.CoreM6 DualLite/Solo initial support
  ...

Signed-off-by: Olof Johansson <olof@lixom.net>
2016-11-18 09:59:57 -08:00
Olof Johansson
5c55a60eb2 i.MX SoC changes for 4.10:
- Drop PL310_ERRATA_769419 for Vybrid, as it turns out that the SoC
    integrates revision r3p2 of the L2C-310, which is not affected by
    errata 769419.
  - Support perf for i.MX6 Multi-Mode DDR Controller (MMDC), so that we
    can profile memory access performance.
  - Support i.MX6ULL SoC using i.MX6UL base, since it's a derivative of
    i.MX6UL and pin-to-pin compatible with i.MX6UL.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABAgAGBQJYKqdtAAoJEFBXWFqHsHzOzOwIAKwTOHmA90KHhG1P0CX2B/aL
 0v5WKJM/gxHda51AivVncH63ozQ6E3MdHf0MgszYre+AIDwaKNTt6MnPTb2DYIo5
 C0YCzP43r5wiDMczdcXsYVuq376OwpyDV1lzbUwNpSLaX80i1fZyxU+9SH3zEd5G
 XF2DtGzZR5nWJJ4eATXA6FXjGIzN4/k0xORLdppOfD2WHd45xXwcd0kUWo1IKba/
 jCKPchfkd34vJXqdxM2dfb2SrFclkLm+ew9uaNNs9uTUNF5zclO57wLhQcbtnjR8
 rKBP3eiH9j5o1KckjA9DxijKmOMiJ5YAqYh6bZy6y6lwDB7ov+wNOUIFpA3yVc8=
 =YJDd
 -----END PGP SIGNATURE-----

Merge tag 'imx-soc-4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into next/soc

i.MX SoC changes for 4.10:
 - Drop PL310_ERRATA_769419 for Vybrid, as it turns out that the SoC
   integrates revision r3p2 of the L2C-310, which is not affected by
   errata 769419.
 - Support perf for i.MX6 Multi-Mode DDR Controller (MMDC), so that we
   can profile memory access performance.
 - Support i.MX6ULL SoC using i.MX6UL base, since it's a derivative of
   i.MX6UL and pin-to-pin compatible with i.MX6UL.

* tag 'imx-soc-4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
  ARM: imx: mach-imx6ul: add imx6ull support
  ARM: imx: Drop errata 769419 for Vybrid
  ARM: imx: mmdc perf function support i.MX6QP
  ARM: imx: Added perf functionality to mmdc driver

Signed-off-by: Olof Johansson <olof@lixom.net>
2016-11-18 09:59:26 -08:00
Olof Johansson
04c0d567d3 i.MX non-critical fixes for 4.10:
- A series from Vladimir to fix broken i.MX31 DT clock initialization.
    As i.MX31 DT support is still not quite complete, the changes are
    tested on qemu kzm target and mx31lite board with simple written DTS
    files.
  - A fix for CompuLab's sbc-fx6 baseboard to remove wrong fec pinctrl
    setting.
  - A DTS correction for i.MX6QP to reflect the change that the gate of
    LDB clock has been moved before the divider.
  - An imx7d-pinfunc fix for UART pinmux defines
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABAgAGBQJYKoTwAAoJEFBXWFqHsHzOGyMH/03fFizPHl+LQYilR8hKbFLg
 amAhmqVEM0gRv/yvBwi/I0FXUyoBY4rhhAzvjy+1eF23wlipXt+2FozlXLW3jy2w
 YP1bTnSy3qN5+eZakfeARFDh7Q1ab/19ZBJYFyQaRB2yY3CRDz3xeY5mOeVHdnUb
 jI1+GpDAr37acGlGVOrsYJlpNlzX8HjAfRhPvlEqMH1Xp/1O5EgkzHyICKR9ysaB
 f7fDTAhVsxivdCF/XU6TpyOUtWshu0v4ji+JtvRkz0p+9gHgWGKzu9ixQTr1FFxZ
 YHPnxpDf4jtygLtrrzT4qBww/84PemAfQ3Rhpl1aG9331VB962UZ3R+JDoSSwnE=
 =Xqw0
 -----END PGP SIGNATURE-----

Merge tag 'imx-fix-nc-4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into next/fixes-non-critical

i.MX non-critical fixes for 4.10:
 - A series from Vladimir to fix broken i.MX31 DT clock initialization.
   As i.MX31 DT support is still not quite complete, the changes are
   tested on qemu kzm target and mx31lite board with simple written DTS
   files.
 - A fix for CompuLab's sbc-fx6 baseboard to remove wrong fec pinctrl
   setting.
 - A DTS correction for i.MX6QP to reflect the change that the gate of
   LDB clock has been moved before the divider.
 - An imx7d-pinfunc fix for UART pinmux defines

* tag 'imx-fix-nc-4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
  ARM: dts: imx6q-cm-fx6: fix fec pinctrl
  ARM: dts: imx7d-pinfunc: fix UART pinmux defines
  ARM: dts: imx6qp: correct LDB clock inputs
  ARM: clk: imx31: properly init clocks for machines with DT
  clk: imx31: fix rewritten input argument of mx31_clocks_init()
  ARM: dts: imx31: move CCM device node to AIPS2 bus devices
  ARM: dts: imx31: fix clock control module interrupts description

Signed-off-by: Olof Johansson <olof@lixom.net>
2016-11-18 09:56:49 -08:00
Alan Tull
3c263bc7b7 add bindings document for altera freeze bridge
Add bindings document for the Altera Freeze Bridge.  A Freeze
Bridge is used to gate traffic to/from a region of a FPGA
such that that region can be reprogrammed.  The Freeze Bridge
exist in FPGA fabric that is not currently being reconfigured.

Signed-off-by: Alan Tull <atull@opensource.altera.com>
Signed-off-by: Matthew Gerlach <mgerlach@opensource.altera.com>
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Rob Herring <robh@kernel.org>
2016-11-18 11:55:18 -06:00
Alan Tull
1adcbea420 ARM: socfpga: add bindings doc for arria10 fpga manager
Add a device tree bindings document for the SoCFPGA Arria10
FPGA Manager driver.

Signed-off-by: Alan Tull <atull@opensource.altera.com>
Acked-by: Rob Herring <robh@kernel.org>
Acked-By: Moritz Fischer <moritz.fischer@ettus.com>
Signed-off-by: Rob Herring <robh@kernel.org>
2016-11-18 11:55:18 -06:00
Alan Tull
e3d19244c8 ARM: socfpga: add bindings document for fpga bridge drivers
Add bindings documentation for Altera SOCFPGA bridges:
 * fpga2sdram
 * fpga2hps
 * hps2fpga
 * lwhps2fpga

Signed-off-by: Alan Tull <atull@opensource.altera.com>
Signed-off-by: Matthew Gerlach <mgerlach@altera.com>
Signed-off-by: Dinh Nguyen <dinguyen@opensource.altera.com>
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Rob Herring <robh@kernel.org>
2016-11-18 11:55:17 -06:00
Olof Johansson
f05646c94b Add #pinctrl-cells for pinctrl-single using dts files. This allows
us to use generic parser later on. Note that the driver supports
 handling the legacy binding also with no #pinctrl-cells so these
 changes can be queued separately from the driver changes.
 -----BEGIN PGP SIGNATURE-----
 
 iQIuBAABCAAYBQJYKlcwERx0b255QGF0b21pZGUuY29tAAoJEBvUPslcq6Vz/GQP
 /2+QScOal19fL4GL2IQRZA7k6BqNIwig2Rn1Kc1y6ONDeXRcVBFLP7Rbe2LFjygJ
 y+XcRcZePtspqQXCxESNxM+IClNHqFf/zY3055GAIkXCmWgKjs12CXU+u23ApUwx
 uSTzPGCBp7aSakX+U1h4sBB/2vCyQbUyiyxQ3rEijnZAfNgAOvxj+Tk1YaZQzltA
 /FJ06Nko9Os3jWHbEFudjTsYiFJyCa9x6MquupQKT9TF+P28Mb/+SFv05OLLITOV
 eUEpuca2ml1KBgyRDnBZdhbfzzsHDwcP26JWEsejeOn5FIXMKdK7Ayo/lcZgHYn9
 4hsQoarIrTI9F/7DSZIS4W9tOYCM+5cEensRo6yajaKGmeCGHtFveNftcXSloKSN
 SrIc47l+XEXC+BFRrcurm9nf61HbmlozVpiURCtuw8vANLLtenWWzew12QFuBsDU
 D2yNVg7e9rHg5cJzS3oq3rkb7/XGg2EnwQvV+xUuLorWtp7Eo5YWy4aBu/9UVVQX
 kx3lj2PsGrrKofwyP711vUMqO8uEwZbx3SDW+S7WpSC6JoxObCh0kd+3YP1P2+8+
 i7ltGDbI4gm+zAzUcB27CUOuLbx720DTUTbfHhi50KLjkWM/FEKTW+9MeJ9VChD4
 t/JZSUYPGHR7DS+9a3qVew04Rjl4GsSthHNidahj4izj
 =qXyV
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v4.10/pinctrl-cells-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/dt

Add #pinctrl-cells for pinctrl-single using dts files. This allows
us to use generic parser later on. Note that the driver supports
handling the legacy binding also with no #pinctrl-cells so these
changes can be queued separately from the driver changes.

* tag 'omap-for-v4.10/pinctrl-cells-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: dts: Add #pinctrl-cells for pinctrl-single instances

Signed-off-by: Olof Johansson <olof@lixom.net>
2016-11-18 09:54:54 -08:00
Olof Johansson
555b2b5d25 Drivers for 4.10:
- few fixes for the memory drivers
  - minimal security module driver
  - support for the Secure SRAM
 -----BEGIN PGP SIGNATURE-----
 
 iQIcBAABCgAGBQJYKgVyAAoJENiigzvaE+LCklUP/imbZ7nV0IVxiajDDPSNSkho
 1Bu+0TV0DZJ0tx055suKS9uC9zWGEdSJhbvKZdjixB2TC4DAVDZO0Xx2Gj+Ux2HP
 wiMgtDfvgSyFjp6PGWo/sspgAM/WbA7G7x/f0x7JCE8TpyrqEnN0bbiabH7L6X2g
 K8u2KEywQdg/lOgr177fwFSwBlOx0BaHodvrXNqI58VQGNpcqv0l/8TgiPPdY0w9
 fhg1JCvkZtDbAYgDmCvenGGF0IskjAWwi9fCXL+hsKurLYrS5udFFZLUvnFieKtN
 4zTyzb8LtD9EUuawK6fGe5wHo786A4VCX2fQ7lKYyBT4ysJ7baeTfZGK3XGn0one
 BVlyeLVZw4p65esx12fEkB2Nm7YSlKp64Jd/8wYPW5doSd/HaPG9MbWeVlRhmQYr
 f5Frn2oiBbkh414LjpARkDY2ZY1fmqVfLZ6A3FUktIsocULDMEa3rzNAG0VQyAlx
 9PnW05/HQnVVhtmfv9+wgMVH5ZJmQLZnkmgX35mjoo5cRvpBqxsif/3Ul0lGb4Y3
 IZDIVBiZpnBPF9OpJ+cTexOsXT/UVcHpjOT7MT72NprVF0OpfkI5TSa79eQX6bmD
 TiabMkE5RmVkaQVuIlErut0gxvGl72N93F3LDDP1ZYWaYmU4u/JirImuhw/e+U5v
 00JrVYaM6TDahSl2PMO6
 =/UOn
 -----END PGP SIGNATURE-----

Merge tag 'at91-ab-4.10-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux into next/drivers

Drivers for 4.10:

 - few fixes for the memory drivers
 - minimal security module driver
 - support for the Secure SRAM

* tag 'at91-ab-4.10-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux:
  misc: sram: add Atmel securam support
  misc: sram: document new compatible
  ARM: at91: add secumod register definitions
  Documentation: dt: atmel-at91: Document secumod bindings
  memory: atmel-sdramc: use builtin_platform_driver to simplify the code
  memory: atmel-ebi: fix return value check in at91_ebi_dev_disable()

Signed-off-by: Olof Johansson <olof@lixom.net>
2016-11-18 09:53:55 -08:00
Olof Johansson
c60c41e8c0 DT changes for 4.10:
- Many additions for sama5d2
  - few non urgent fixes for sam9260ek, sama5d4 and sama5d2
 -----BEGIN PGP SIGNATURE-----
 
 iQIcBAABCgAGBQJYKf3QAAoJENiigzvaE+LCQXEP/j/NldTvf9GVnG5rKitQ4Yxi
 NROzWUM2dEPAN0GFsIQX7g1nIAHp/+ZxaWWE94a6Jc2N5bIrDIPyl8lVtD0rEiV2
 gxV79lWESEOSdlCszBYP93Zk4zvzX8hn9BSR48E3otWrVoVJT+u5MLkChdEyrk6N
 cbeudrq3+5SNz+TSYaLH21Fcj+BcOMMIwJnsiH2+RhzbPTrvWvblAfdupfsnAzwB
 eOqrA9Clvab939nzUAwWzkdeB7g63J8jxNksbLAt1dvIPYNOKP6Znc+zGMLxNFzP
 LHNoT9QY6wzN6Wti10JU8abJ1qtTtoQreUUir1eXNuH5exoPfplUyVYDXbs8gRHA
 dS/rwFjcOVg0UrkZQ2bM5lxgyPZbjoE5i2iS6CN43du9VSShRzMq11qmq6AAGeT1
 782M28HN0tWvWnFnuxYvg2YW4xdWEVyO8QGJ7j3XdIbHTN8yd2sa+qfLdnNgxYVr
 NKV+6ftKLoZDbeV2dGCU7kQtJBz8AWh01X/5VVSjDZuHO51f2xoQev8BI6cog713
 k9bz5Lh31USfwRE78vKrBubFLfMSfFSw7wc7BI8fP8kpFgqK6ntCnnQOHtHf2w5w
 ZtF+tEPkdy60eqakWgx+Q7XhYGVocHHQ0o6Jgke+hE3C5RNJIJw1qTY9Ly3LjuPd
 bIvJQeCOmZuhFamwJyxF
 =60OR
 -----END PGP SIGNATURE-----

Merge tag 'at91-ab-4.10-dt1' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux into next/dt

DT changes for 4.10:

 - Many additions for sama5d2
 - few non urgent fixes for sam9260ek, sama5d4 and sama5d2

* tag 'at91-ab-4.10-dt1' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux:
  ARM: dts: at91: replace gpio-key,wakeup with wakeup-source for sam9260ek
  ARM: dts: at91: sama5d2: Add securam node
  ARM: dts: at91: sama5d2: Add secumod node
  ARM: dts: at91: sama5d2: use correct sckc compatible
  ARM: dts: at91: sama5d4: use proper sckc compatible
  ARM: dts: at91: fixes dbgu pinctrl, set pullup on rx, clear pullup on tx
  dt-bindings: usb: atmel: fix a couple of copy-paste style typos
  ARM: dts: at91: sama5d2: enable FIFOs for high-speed i2c controllers
  ARM: dts: at91: sama5d4: Add new MA5D4EVK manufacturer compat

Signed-off-by: Olof Johansson <olof@lixom.net>
2016-11-18 09:53:28 -08:00
Linus Walleij
672806a5f1 ARM: defconfig: turn on the DT cpufreq for Integrator
The Integrators are now migrated to handle the CPUfreq
scaling using the generic devicetree CPUfreq driver using the
common clock framework and have the required device tree
modifications, so turn off the old driver and turn on the new
generic driver.

Cc: Rafael J. Wysocki <rjw@rjwysocki.net>
Cc: Viresh Kumar <viresh.kumar@linaro.org>
Cc: Russell King <linux@armlinux.org.uk>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Olof Johansson <olof@lixom.net>
2016-11-18 09:52:32 -08:00
Linus Walleij
964971c8a3 ARM: dts: Add Integrator/AP cpus node and operating points
This adds the cpus node to the Integrator/AP device tree so
that we have a proper placeholder to put in the DT-defined
operating points for the generic DT/OPP cpufreq driver,
along with the proper operating points.

The old Integrator cpufreq driver would resolve the max
frequency to 71MHz, and the min frequency to 12 MHz, but
the clock driver can actually handle any frequency inbetween
so I picked a few select frequencies as OPPs. The cpufreq
framework doesn't seem to deal with sliding frequency scales,
only fixed points so 7 OPPs is better than 2 atleast.

We define a CPU node since this is required for cpufreq-dt,
however we do not define any compatible string for the CPU
since this architecture has pluggable CPU modules and we
do not know which one will be used. If necessary, the CPU
compatible can be filled in by the boot loader, but for
just cpufreq-dt it is not required.

Cc: Rafael J. Wysocki <rjw@rjwysocki.net>
Cc: Viresh Kumar <viresh.kumar@linaro.org>
Cc: Russell King <linux@armlinux.org.uk>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Olof Johansson <olof@lixom.net>
2016-11-18 09:52:14 -08:00
Linus Walleij
426610dd8c ARM: dts: Add Integrator/CP cpus node and operating points
This adds the cpus node to the Integrator/CP device tree so
that we have a proper placeholder to put in the DT-defined
operating points for the generic DT/OPP cpufreq driver,
along with two working operating points.

I have only put in 48 and 50 MHz because going to e.g. 36
MHz hangs the system when CLCD graphics are active.
Presumably the memory bus gets to slow to feed the display
and the systems hangs for this reason. The ideal solution
would be for the display controller to put constraints on
the memory bus frequency, but that need to be a separate
longer-term project.

We define a CPU node since this is required for cpufreq-dt,
however we do not define any compatible string for the CPU
since this architecture has pluggable CPU modules and we
do not know which one will be used. If necessary, the CPU
compatible can be filled in by the boot loader, but for
just cpufreq-dt it is not required.

Cc: Rafael J. Wysocki <rjw@rjwysocki.net>
Cc: Viresh Kumar <viresh.kumar@linaro.org>
Cc: Russell King <linux@armlinux.org.uk>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Olof Johansson <olof@lixom.net>
2016-11-18 09:52:13 -08:00
Shaohua Li
504634f60f md: add blktrace event for writes to superblock
superblock write is an expensive operation. With raid5-cache, it can be called
regularly. Tracing to help performance debug.

Signed-off-by: Shaohua Li <shli@fb.com>
Cc: NeilBrown <neilb@suse.com>
2016-11-18 09:47:57 -08:00
Olof Johansson
eed67c9951 Qualcomm ARM64 Updates for v4.10
* Add Hexagon SMD/PIL nodes
 * Add DB820c PMIC pins
 * Fixup APQ8016 voltage ranges
 * Add various MSM8996 nodes to support SMD/SMEM/SMP2P
 * Add support for Huawei Nexus 6P (Angler)
 * Add support for LG Nexus 5x (Bullhead)
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJYJ/UbAAoJEFKiBbHx2RXVdeEP/jucpOousGzXUgHYAwwJLqDx
 RmBQu+lMmYHv7N3euCyIgJ74ZorMbVANO/NKoLpWFuaoFEZfBXckytulkTkNt3Qi
 2HvfxUYVthm0Gwucrc6xe0Pr9XVdNJQbIvfREvt2QM2H2SzO5nrIL/M2JDzjTFAR
 OYh7OqvpR6LSl9SfLi02caoA08180R4jHpWJXuKYUZSMy6JGVsdyVqkLvoKS+xgo
 C6ANTXjYVsHY5iFYACBipusucHkOM4qAw9pkvJd2AI2XdT/lNhnXkBAtNkvDsVek
 euJ8EmyIeSZo+mnMzDvOt10nSSvTppJZ31AJMEG5WB/uRZsCj1rtK0coV3k3ejTf
 elDeHvu5IWRxPfMQ+pEgRNZhgGvIieUPiRfspAZJ2xkHgroDkwrNXrP43Z1PJY9H
 qFEHmjE05ScXcnyNEeEVwK6PYRM1uey7gNgHgkU09xZmj/9GVnnYURuLbKYx3oKV
 lG0kaJNgU0THirtAlYjbc0Y4T1Y9juaOAThwt+P4x9kXFf0BGvqMnbxyyp/ecrTN
 94K8Te8tnl0m5iPZ1DgwZwPaL2M5Xc6ROwcnQslvcdQbjU5XKsr3ZELNdxmWApqi
 HvFucNJP1fGt/pmeLfR1oMMSIvy2dybTjq0tB3krgTKusxoyWsem2WXLWd8xjUTo
 0vhukntWZ17Q7c10Ye1r
 =85aH
 -----END PGP SIGNATURE-----

Merge tag 'qcom-arm64-for-4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux into next/dt64

Qualcomm ARM64 Updates for v4.10

* Add Hexagon SMD/PIL nodes
* Add DB820c PMIC pins
* Fixup APQ8016 voltage ranges
* Add various MSM8996 nodes to support SMD/SMEM/SMP2P
* Add support for Huawei Nexus 6P (Angler)
* Add support for LG Nexus 5x (Bullhead)

* tag 'qcom-arm64-for-4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux:
  arm64: dts: msm8994 SoC and Huawei Angler (Nexus 6P) support
  dt-bindings: qcom: Add msm899(2/4) bindings
  arm64: dts: msm8992 SoC and LG Bullhead (Nexus 5X) support
  arm64: dts: msm8996: Add SMP2P and APCS nodes
  arm64: dts: msm8996: Add SMEM DT nodes
  arm64: dts: msm8996: Add reserve-memory nodes
  arm64: dts: msm8996: Add SMEM reserve-memory node
  arm64: dts: apq8016-sbc: add analog audio support with multicodec
  arm64: dts: qcom: Add missing interrupt entry for pm8994 gpios
  arm64: dts: apq8016-sbc: Set up LDO2, LDO6 and LDO17 regulator voltage ranges
  dts: arm64: db820c: add pmic pins specific dts file
  arm64: dts: qcom: msm8916: Add Hexagon PIL node
  arm64: dts: qcom: msm8916: Add Hexagon SMD edge

Signed-off-by: Olof Johansson <olof@lixom.net>
2016-11-18 09:42:26 -08:00
Olof Johansson
d02262afe0 Merge branch 'clk-qcom-8994' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux into next/dt64
* 'clk-qcom-8994' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux:
  clk: qcom: Add support for msm8994 global clock controller
  dt-bindings: qcom: clocks: Add msm8994 clock bindings
2016-11-18 09:42:08 -08:00
NeilBrown
578b54ade8 md/raid1, raid10: add blktrace records when IO is delayed
Both raid1 and raid10 will sometimes delay handling an IO request,
such as when resync is happening or there are too many requests queued.

Add some blktrace messsages so we can see when that is happening when
looking for performance artefacts.

Signed-off-by: NeilBrown <neilb@suse.com>
Signed-off-by: Shaohua Li <shli@fb.com>
2016-11-18 09:35:37 -08:00
NeilBrown
581dbd94da md/bitmap: add blktrace event for writes to the bitmap
We trace wheneven bitmap_unplug() finds that it needs to write
to the bitmap, or when bitmap_daemon_work() find there is work
to do.

This makes it easier to correlate bitmap updates with data writes.

Signed-off-by: NeilBrown <neilb@suse.com>
Signed-off-by: Shaohua Li <shli@fb.com>
2016-11-18 09:34:45 -08:00
NeilBrown
109e376530 md: add block tracing for bio_remapping
The block tracing infrastructure (accessed with blktrace/blkparse)
supports the tracing of mapping bios from one device to another.
This is currently used when a bio in a partition is mapped to the
whole device, when bios are mapped by dm, and for mapping in md/raid5.
Other md personalities do not include this tracing yet, so add it.

When a read-error is detected we redirect the request to a different device.
This could justifiably be seen as a new mapping for the originial bio,
or a secondary mapping for the bio that errors.  This patch uses
the second option.

When md is used under dm-raid, the mappings are not traced as we do
not have access to the block device number of the parent.

Signed-off-by: NeilBrown <neilb@suse.com>
Signed-off-by: Shaohua Li <shli@fb.com>
2016-11-18 09:32:50 -08:00
Max Kellermann
e7cd17a29d [media] drivers/media/media-device: fix double free bug in _unregister()
While removing all interfaces in media_device_unregister(), all
media_interface pointers are freed.  This is illegal and results in
double kfree() if any media_interface is still linked at this point;
maybe because a userspace process still has a file handle.  Once the
process closes the file handle, dvb_media_device_free() gets called,
which frees the dvb_device.intf_devnode again.

This patch removes the unnecessary kfree() call, and documents who's
responsible for really freeing it.

Signed-off-by: Max Kellermann <max.kellermann@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
2016-11-18 15:29:27 -02:00
Lendacky, Thomas
5a4e4c8f02 amd-xgbe: Update connection validation for backplane mode
Update the connection type enumeration for backplane mode and return
an error when there is a mismatch between the mode and the connection
type.

Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-18 12:28:09 -05:00