Commit graph

691,473 commits

Author SHA1 Message Date
Olof Johansson
656b532ffc ARM64: DT: Hisilicon SoC DT updates for 4.11
- Add binding for Hi3660 SoC and HiKey960 Board
 - Add binding for ARM Cortex-A73
 - Add dts files for HiKey960 development board
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJYiNBNAAoJEAvIV27ZiWZcR4oQAJKZUqtZsOjKumrBU4wji/AS
 le3PE8Ygy3O2lKsCtRhfeKkM9s1FVasvCbou3QsmbmKIKHCN3eS1PV1pJYEaINUD
 MymbxkpG3jNnZkUXui/mzpDDsNSODXR7UkieKXfkVHtxkHJzFrBcRSqobQc71+/u
 ACmiorYSqxZtABN0vGj00F4Jv9I7HneTNjBs591PF8dPQvzCIuL/duYyBAGQNWnR
 hUseVgDa+DYm7nPWI30M+hjF4sL6oVvxODkubrB4Gfo+xzoXCoa2rT/qMrsDCuQJ
 OHmSfaIMgvs76w7iCMBouwgemATv9/kHL470B3mEXaqUs7hxJrtNdDHR3ghks09b
 1YKaO03DZJmRXe8Ym6Or/PWVPea9ZBMhptd4Coya8nEapR25XNXR90EQ2Sihh1O+
 xTVZnLF7wVcEV61U+eEKaoUmQpf4bviO4EiaoSZvr9Qzdtsv4B3wPWKPDZIQg89D
 49hSxtbP5RPWwX9K7Kn0ougV8USSPDkSpXgvUP50ynLab5dT4/uRbXZL65HThF2M
 cJgd5nnlt/wZ5B4SA/P0sJp5T5QeZ0GsuENK5fmVAgpQMsGnbwGERPqBsj2Ds+8/
 qVhoyp3PD3uqpN+bN0TsoU+VV3PUD5kV3v2cTV7OPQdaPvEiOVMV3b8aTv89jxvV
 h09M1EtcPwk3Mo5NiGmF
 =zJLi
 -----END PGP SIGNATURE-----

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

ARM64: DT: Hisilicon SoC DT updates for 4.11

- Add binding for Hi3660 SoC and HiKey960 Board
- Add binding for ARM Cortex-A73
- Add dts files for HiKey960 development board

* tag 'hisi-arm64-dt-for-4.11' of git://github.com/hisilicon/linux-hisi:
  arm64: dts: Add dts files for Hisilicon Hi3660 SoC
  dt-bindings: Add a support cpu type for cortex-a73
  document: dt: add binding for Hi3660 SoC

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-01-29 17:28:40 -08:00
Olof Johansson
5ee3dd850c For mt8173:
- set mm_sel clock to 400 MHz to support 4K HDMI
 - adjust power efficiency between the little and big cores
 - add a node for thermal calibration via e-fuse data
 -----BEGIN PGP SIGNATURE-----
 
 iQJLBAABCAA1FiEEiUuSfQSYnG8EMsBltDliWyzx00MFAliIjQgXHG1hdHRoaWFz
 LmJnZ0BnbWFpbC5jb20ACgkQtDliWyzx00PWjg//WVJsbVGXUcHGHmSOTNGjdAYR
 FB5ybdXDMyPhXLrUoY6xN0aCidXPTgv9gbLW37EWBlpGy+LAQN5ssMZMuEZeYJyb
 xR8yKrU+bcgQlwQrn3F35nJx7Eoh8T47dW2+C0ftzQxl0ZQirkmm9QnMg3/7xQ89
 LpA+Opqq3GkHG2Q2HTgpRqPaI3LZ/aZuWBtqhjxl0lYi+E2liA1cbvzIIeA3Uz+9
 rR+vlfQEG4CW9GnHDaLtg4Ad68YNlTQ7kU1070uwlpELwPAOV0SgxL1q0IBwj1WB
 FaTnfx5wFya8FZIPrnI+Dk1X1fDdkLZ16Cq+b3hBixiwLOs0XuLTAj/zMOoDLFcE
 vcyfRgFVbYo3ju+iQAZ49vt+OwDLjrCEGxO8XONT2bUN+3MW6EB0rKQC/uhO4vp7
 kEdJowUElvmDfnFqaAaWg8mrXzL+h/8y6SW1JT4pxTJpfXem3RnAiNywwrExdN5a
 9bj7WhJtA9t39wXkmdIAVQbIkGLwrks1TXaGoDPuuj21+Jzm+3uGZL4EyQU6TUA1
 jC04/5eBRVaA7JmU+/iegGdgaoyNs9PMhrjCUct6U3F2qvkRggAPnF9Eyj8stei6
 +kzRjhAup8exKHYUXTxROutngW7K93RpbMtsIDiiib4mKm3HueVMJEY5cJPW/yap
 4MttR/dH/W5PjTjkEVo=
 =hboI
 -----END PGP SIGNATURE-----

Merge tag 'v4.10-next-dts' of https://github.com/mbgg/linux-mediatek into next/dt64

For mt8173:
- set mm_sel clock to 400 MHz to support 4K HDMI
- adjust power efficiency between the little and big cores
- add a node for thermal calibration via e-fuse data

* tag 'v4.10-next-dts' of https://github.com/mbgg/linux-mediatek:
  arm64: dts: mt8173: add node for thermal calibration
  arm64: dts: mt8173: Fix cpu_thermal cooling-maps contributions
  arm64: dts: mt8173: add mmsel clocks for 4K support

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-01-29 17:21:10 -08:00
Olof Johansson
1a0c4ca509 Lots of updates for mt2701:
Rearrange the dt nodes and fix unit address for pincontroler
 Add nodes for:
 - clock controller subsystems
 - scpsys controller
 - iommu and smi
 - spi
 - nand
 - auxadc
 - thermal controller and zones
 
 Email address updated for mt7623 devicetree files.
 -----BEGIN PGP SIGNATURE-----
 
 iQJLBAABCAA1FiEEiUuSfQSYnG8EMsBltDliWyzx00MFAliIioEXHG1hdHRoaWFz
 LmJnZ0BnbWFpbC5jb20ACgkQtDliWyzx00Nn5BAAho8TohilGoDXa6aozC74sQf3
 w3ew/0DwdtUrPe6jS0MM9KAlscCiA+wcDKcg8bOoH9IlDBMkU1xFSDGjIKwEotL5
 +qKmYse+8SV/TAlCKkHGROT7DTIS3/mC0v57mAGglJ47Z4D1aFVFeWTxEUfj9VxE
 pwGH4rZJ+qUw1fMnYZBmbdg5iA4J6q54gXi62l1BnhF6qSvv6fJTsx7l5kT8+viU
 alUmQLvHPoOVxDfXHAUgvhIgzoK1tcvMeO4nqSZ+upoMX+Tq9wyrSbyXQsIoThOd
 GnjVUFV6YfniG2pUzqdA+g30ptTK8Itcb/xy3U4/FIHQjMLL+0SmdQQ8yqH5CPE1
 pK2uJbJUobrc2bL+faV+GAju1tnvQtccwuVjILAtR6tLzPb/Sr/j5+2BfAmolteb
 m4FxZEmwA+FWV9VX/ky554iXXz7QfMeEJEFRH9lAOaegBRYLykdXkWLTWZITZxDu
 b97mmfcD+MCgZETRmmfPH0/xed1CwrWp1A8hfub4O04EvSPTr47M5J8k3yAf8z/4
 dsGi/KCddeHP7K+mQMvsl7jYWXGbhOZX/jUXB8UniDeDBN7i3XGK4whoxKY2E2I7
 2ZLArji2obym1xy9KR7DYhhJUEbTxprMimV5K6BKAW2SGpFbZFAiJTbl80GWjIFb
 Xx3obOE7qA5LE74qwUY=
 =MxSr
 -----END PGP SIGNATURE-----

Merge tag 'v4.10-next-dts32' of https://github.com/mbgg/linux-mediatek into next/dt

Lots of updates for mt2701:
Rearrange the dt nodes and fix unit address for pincontroler
Add nodes for:
- clock controller subsystems
- scpsys controller
- iommu and smi
- spi
- nand
- auxadc
- thermal controller and zones

Email address updated for mt7623 devicetree files.

* tag 'v4.10-next-dts32' of https://github.com/mbgg/linux-mediatek:
  arm: dts: mt2701: Add thermal device node.
  arm: dts: mt2701: Add auxadc device node.
  arm: dts: mt2701: Add nand device node
  arm: dts: mt2701: Add spi device node
  ARM: dts: mt2701: add iommu/smi dtsi node for mt2701
  ARM: dts: mediatek: update my email address
  arm: dts: mt2701: Add power domain controller device node
  arm: dts: mt2701: Add subsystem clock controller device nodes
  arm: dts: mt2701: Sort DT nodes by register address

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-01-29 17:19:58 -08:00
Olof Johansson
8179a77deb Few omap2plus_defconfig changes for v4.11 merge window:
- Switch to use LIS3LV02DL IIO driver instead of the
   LIS3LC02D misc driver
 
 - Set CONFIG_SERIAL_8250_RUNTIME_UARTS=6 to avoid runtime
   warnings on omap5 and dra7
 
 - Enable ksz9021 phy and m41t80 rtc as they are used at
   least on phyCORE-AM335x
 -----BEGIN PGP SIGNATURE-----
 
 iQJFBAABCAAvFiEEkgNvrZJU/QSQYIcQG9Q+yVyrpXMFAliHbxYRHHRvbnlAYXRv
 bWlkZS5jb20ACgkQG9Q+yVyrpXPLDBAAmEKb4eMFYBJ2Df48PugoIhslvfS/in8a
 3mNtH8RY9TzoB7+wu2535hVifBGrLtg10TateZLzJtGNZ0eZurms+gvP4pP+Pgsw
 +aUz3pQgYyx9xCdvPR4rGxrgU7fjk+NI8JqgoPgVo6WU/+vWpvFu8TJguSst1VDX
 jxSeQUOvDDK5N3w42WSiLrecg+hCiZqiMbK/+UtuJvgfByeVqA3Azk8/imQxOISU
 A2TNCTlcCgSiCEOueIP9JDJZuUkqeswzThhNUksRfl3WhjOyXso2iOqvN2tbUH5o
 gLC3GSTmBVgu0O5tf8Zjnqkp+2aAKgb6Ilwzcjk0FkRfCty/wnJAGh/izfUJTcPK
 aza99As0WFFKmRiD/9QNKaoDptTINQAA8SpXLNp/KBvok67j84YoP3SXUC7fwnYd
 UnC9DGleBBhj/6I7S9TcBdn06lTDXZ0vvFGXQTTxQG/u6erI+DuzMYRbrBEO5e1H
 L44BSL7/enZ3Bk9DzqkrIuJudXYuHxxMsjL1J4IdA8YBrs6JhByBEjFkyzVR3CWH
 1AhCtZWTAVGSebTSgVUompCQfynond9prae0pUz+p7GQzXQcMnmxh5rWHM9OTV2C
 3PnFb6brhLomkIoAujgH3O60N9EvpXKx+hl6JGSXB0Gorf4zU7INswZkjLtoZhNo
 FyghpmnV/W0=
 =Vv0t
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v4.11/defconfig-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/defconfig

Few omap2plus_defconfig changes for v4.11 merge window:

- Switch to use LIS3LV02DL IIO driver instead of the
  LIS3LC02D misc driver
- Set CONFIG_SERIAL_8250_RUNTIME_UARTS=6 to avoid runtime
  warnings on omap5 and dra7
- Enable ksz9021 phy and m41t80 rtc as they are used at
  least on phyCORE-AM335x

* tag 'omap-for-v4.11/defconfig-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: omap2plus_defconfig: Enable support for RTC M41T80
  ARM: omap2plus_defconfig: Enable support for micrell phys
  ARM: omap2plus_defconfig: Fix probe errors on UARTs 5 and 6
  ARM: defconfig: omap2plus: switch LIS3LV02DL driver

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-01-29 17:18:21 -08:00
Olof Johansson
7a38003b69 Device tree changes for omaps for v4.11 merge window. These
changes add earlycon stdout-path propety for the SoCs so far
 tested with it. The other changes are addition of BeagleBone
 green and making WLAN work on BeagleBone black wireless and
 green wireless. The rest of the changes are the usual enabling
 features on various devices:
 
 - Enable devices on am335x-sl50
 
 - Changes to dra7-evm boards to enable enable irqs for dp83867
   eth phys, add pinmux configuration for mmc, remov erratum
   i869 pinmux configurations, disable NAND support because of
   pin conflict, add pcf8575 used for lcd
 
 - Remove NAND partition table for omap3-igep
 
 - Configure USB Ethernet MAC from device tree for beagleboard
   xm, pandaboard, omap5-uevm and igepv5
 
 - Configure am335x-chilisom to wake from RTC-only state
 
 - Update Nanobone for external FRAM chip
 
 - Clean up n900 dts
 
 - Update am335x-phycore and am335x-wega for various devices
 
 - Changes for am57xx-beagle-x15 to implement rgmii2 errata
 -----BEGIN PGP SIGNATURE-----
 
 iQJFBAABCAAvFiEEkgNvrZJU/QSQYIcQG9Q+yVyrpXMFAliHfDQRHHRvbnlAYXRv
 bWlkZS5jb20ACgkQG9Q+yVyrpXPCJBAAyuB6b3ebspjJXNgJetboPsfms81pqSCr
 5ZcYLRsOkPc0858Q/vhXqkWdsfeZ62hIu/8DKj98dpjL/0w0hvzqK2eUpdrcmf74
 AUf1lXkhj9lIX3K3g/3oQNgfhhpFpYduepzuBtaWio5KE0nTH0NcPEBa8YsKXTAZ
 geCP6eB1aTjhBBxzvI2UNmbzoJmhBUf6ccGv7uNWhF2yRh52e6uyUMD48Z2+ti7A
 N40k9+n2vbp8M1nijszUU0GzsvIKKNaA2tH+c1V57IW7KUPQJ2XXE6aTycrqrg7W
 aDz5jjwZOppud2o5TihMPzKsJzj9KFbk8VeRSV57N7dBjstHvWBHh67OCpKVL9rb
 8lDYu+ndkHDBSHjBfz32tRWceIjpc8n/dDn3IAZSL88Xd2/3Juw0XsJDeVuMu0Xr
 zNBcdIA9ph8rPMO2y9oPGhEo136NveuvnblazNBzsFzgRu9O9sBKDLnfEx1tRGCo
 cwqQf6H5slw4JwoiEFUBc3eERiImT1l7A5qFtrjQGQ9JGn6gN3bHEUM2uaC9KH1D
 HG4kru5QLMnvxWxDC6+vw9mosqlDvzalpz71gdAeGJgS2iaswuCvy0ITTKlxXzLP
 Fl6+Dm7aaTakc2cD0acMG+apyXQOmIOiJ7gKQ8R7VNVMQyS7JfjJWWUTy3hr9sN1
 VYYccZ5tO1M=
 =URbm
 -----END PGP SIGNATURE-----

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

Device tree changes for omaps for v4.11 merge window. These
changes add earlycon stdout-path propety for the SoCs so far
tested with it. The other changes are addition of BeagleBone
green and making WLAN work on BeagleBone black wireless and
green wireless. The rest of the changes are the usual enabling
features on various devices:

- Enable devices on am335x-sl50
- Changes to dra7-evm boards to enable enable irqs for dp83867
  eth phys, add pinmux configuration for mmc, remov erratum
  i869 pinmux configurations, disable NAND support because of
  pin conflict, add pcf8575 used for lcd
- Remove NAND partition table for omap3-igep
- Configure USB Ethernet MAC from device tree for beagleboard
  xm, pandaboard, omap5-uevm and igepv5
- Configure am335x-chilisom to wake from RTC-only state
- Update Nanobone for external FRAM chip
- Clean up n900 dts
- Update am335x-phycore and am335x-wega for various devices
- Changes for am57xx-beagle-x15 to implement rgmii2 errata

* tag 'omap-for-v4.11/dt-signed-v2' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: (35 commits)
  ARM: dts: dra72/1-evm: add pcf8575 used for lcd
  ARM: dts: dra7xx: Add stdout-path property
  ARM: dts: am57xx: Add stdout-path property
  ARM: dts: am43xx: Add stdout-path property
  ARM: dts: am33xx: Add stdout-path property
  ARM: dts: am335x-sl50: Enable the Ambient Light Sensor.
  ARM: dts: am335x-sl50: Enable the MCP23017 GPIO Expander.
  ARM: dts: am335x-sl50: Enable BQ32000 Real Time Clock.
  ARM: dts: am335x-sl50: Enable SPI0 interface and Flash Memory.
  ARM: dts: am335x-sl50: Enable UART1.
  ARM: dts: am335x-sl50: Remove I2C1 node.
  ARM: dts: omap3-igep: Remove NAND partition table
  ARM: dts: am57xx-beagle-x15: implement errata "Ethernet RGMII2 Limited to 10/100 Mbps"
  ARM: dts: am335x-phycore-som: Remove partition tables
  ARM: dts: dra72-evm-revc: enable irqs for dp83867 eth phys
  ARM: dts: Configure BeagleBone peripheral USB VBUS irq
  ARM: dts: omap5-igep0050: Allow bootloader to configure USB Ethernet MAC
  ARM: dts: omap5-uevm: Allow bootloader to configure USB Ethernet MAC
  ARM: dts: pandaboard: Allow bootloader to configure USB Ethernet MAC
  ARM: omap3: beagleboard-xm: dt: Add ethernet to the device tree
  ...

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-01-29 17:16:52 -08:00
Olof Johansson
874767e52c Just a single wkup_m3_ipc clean-up for v4.11 merge window.
We don't currently have anything else for drivers/soc to
 merge, but I'd expect that to change as soon as we can start
 moving PM code into drivers with the recently posted SRAM
 changes. Anyways, sent as a separate pull request to make
 it easy to group the ARM SoC pull requests.
 -----BEGIN PGP SIGNATURE-----
 
 iQJFBAABCAAvFiEEkgNvrZJU/QSQYIcQG9Q+yVyrpXMFAliHdM8RHHRvbnlAYXRv
 bWlkZS5jb20ACgkQG9Q+yVyrpXNOQw//Zgkp0SOv9oiQdYLoymbAfM1KmclPVK9x
 VWsmiMwMNslseOgme/6wvc4NGC9SqQixQLJllXuK0RL/AxblKNIM6VQJL66FQOkK
 99ZET2fzlF0rFBC8mhx+x4Y9B8yhhLLOvxRas7mY4qWlcUKIsd/AGx2GObkng9JR
 LHF+Sh2DqIZGm3vlO1+rE+/V+nQXlGLAIA5QbJ2TxkH7sN/q84Ne+0iiO3A6nr3Q
 pRimOYgzcGoLKF6weSygpL+Pf3Qhx7XaPxgS9bwwQ9u1tzcorP6odRGJf/d8ltes
 FdhKewfS7xgV3187o/NIuvUwCNbB1tmQhfobsEz67z5rc7Yx3kx0ylKDSVRMqUOM
 P8MzlI1BvPT2u5pFpj+7WvfqF0iKwvUZRNL2O4DjXf1wI95G7rEWAeq0AFtf48RT
 7BQ/7LH/2Xi1CpPRfEDEepeskE6DMCOKpdmMn6XgOjOVmK+ppoWOMZJlQq8NC+Km
 BS0Cei75vcaHanENkBiA06gCz6/IbArhSLnufmkQ/KZBmQsDwsh0ueWf1MHxHU+r
 kEgohFFdIQtYtWFZz6jMIUr+MUj0hxNBLqUhLwzxaZdFr6SF9ztGAGBilLgpAH6x
 zzoG8d598kx3e4rEwHu20IHcFfSubtBrQZm6g5i4322A/qw4aXxWeBO7Tymsgf21
 swUoRsRPiic=
 =2tPW
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v4.11/drivers-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/drivers

Just a single wkup_m3_ipc clean-up for v4.11 merge window.
We don't currently have anything else for drivers/soc to
merge, but I'd expect that to change as soon as we can start
moving PM code into drivers with the recently posted SRAM
changes. Anyways, sent as a separate pull request to make
it easy to group the ARM SoC pull requests.

* tag 'omap-for-v4.11/drivers-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  soc: ti: wkup_m3_ipc: Drop wait from wkup_m3_rproc_boot_thread

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-01-29 17:16:17 -08:00
Olof Johansson
f0d0b8cb6b SoC changes for omaps for v4.11 merge window. This adds support
for keeping the interconnect target module active for uart if
 earlycon is specified. And we're adding Aaro Koskinen as a
 co-maintainer for omap1 to make sure things stay working for
 omap1. The other changes are mostly clean-up of old legacy code:
 
 - Remove unused omap_display_init()
 
 - Make omapdss_find_dss_of_node() function static
 
 - Add support for earlycon
 
 - Tidy up omap1 usb logging output with pr_cont
 
 - Make omap_otg_init() static
 
 - Delete redundant CPU class checks for omap1
 
 - Remove unused mpurate cmdline option that has not done
   anything for past 1.5 years at least
 -----BEGIN PGP SIGNATURE-----
 
 iQJFBAABCAAvFiEEkgNvrZJU/QSQYIcQG9Q+yVyrpXMFAliHc5MRHHRvbnlAYXRv
 bWlkZS5jb20ACgkQG9Q+yVyrpXNVVBAAoNj2A8PfRJMYhQthtmUn0ORPe9QrF3k7
 5WaIRWhithkRIJl+kVuGLTzR0Uqvzo1CCXug+rJxs0JQ6PJEe+cp++ygioZzjZwE
 t0oHugvT1+MYCM475OwMG9ajgKYBX/GMsWDmuuG5nLm1JRzWQfMAQsmuyP0Oey+D
 bWOC0Hlz1gHn2xrlvjZah54rkERaWnKUIdi1YMqAAjmh/RuDED5VNskOcacVbqI1
 0C8wLC7mOviM3RyiQSCNTIKLC5illanjoZ/QHFnPLHV36KXJWCL/dB8gnAX+ORpF
 oCsL3t8erjq6cyhJIchs+UbqCEZv7HpIgbJBwc1oli3ExzS5iqmGQjhNkVN7Q+8Z
 TEQP6OhpPL4EXNEYOnE5pDgXATluWhD0rsg6XHt2CEsLZCOTzPTZCl0Of0vg3kcE
 eID7dz9CPXRquzyilVmyYla9Ty4XF3ePhdvLuI/06WgGU/M+6AvlZ40L8G73xKAu
 0wHx2rpN0H4ySXsAtnyanCxld5njPGiLn5Ehmnib0CQU16Zxc6mbxVQVfaaSSbAu
 LJrLHBdeqWYEkUJV6n+lBg1WeCgL4qDolMTm8aRhESTCBHQEaLYXe57dluYCt0g2
 2Rj1g/OuGFw+cViT2ICCvsAwE3jcHj32g8iJdnvfsypJ8pIO0znp2Sk7T7AYUXzw
 AafZ0ClGrws=
 =GiAL
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v4.11/soc-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/soc

SoC changes for omaps for v4.11 merge window. This adds support
for keeping the interconnect target module active for uart if
earlycon is specified. And we're adding Aaro Koskinen as a
co-maintainer for omap1 to make sure things stay working for
omap1. The other changes are mostly clean-up of old legacy code:

- Remove unused omap_display_init()
- Make omapdss_find_dss_of_node() function static
- Add support for earlycon
- Tidy up omap1 usb logging output with pr_cont
- Make omap_otg_init() static
- Delete redundant CPU class checks for omap1
- Remove unused mpurate cmdline option that has not done
  anything for past 1.5 years at least

* tag 'omap-for-v4.11/soc-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: OMAP: clock: Remove unused mpurate cmdline option
  ARM: OMAP2+: omap_hwmod: Add support for earlycon
  MAINTAINERS: Add Aaro Koskinen as TI omap1 SoC co-maintainer
  ARM: OMAP1: USB: delete redundant CPU class checks
  ARM: OMAP1: USB: make omap_otg_init() static
  ARM: OMAP1: USB: tidy up logging output
  ARM: OMAP2+: Make the omapdss_find_dss_of_node() function static
  ARM: OMAP2+: Remove unused omap_display_init() function

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-01-29 17:15:36 -08:00
Olof Johansson
c0d3245609 Non-urgent fixes for omaps for v4.11 merge window. These all are
fixes for things that have never worked or have been broken for
 a long time and nobody noticed:
 
 - Fix omap3 off mode pull defines
 
 - Allow multiple pdata quirks instead of just one
 
 - Fix am335x and dm814x scm syscon to probe children too
 
 - Fix compatible for ti81xx to allow use with 8250_omap as well
 
 - Fix 8250_omap on omap5 by adding HWMOD_SWSUP_SIDLE_ACT flag
 
 - Fix SoC detection for omap36/37 SoCs
 -----BEGIN PGP SIGNATURE-----
 
 iQJFBAABCAAvFiEEkgNvrZJU/QSQYIcQG9Q+yVyrpXMFAliHdcARHHRvbnlAYXRv
 bWlkZS5jb20ACgkQG9Q+yVyrpXOdpA//cV9JLHoQWAheQIxPKcSC6bNANOJDik7I
 thKcbOmiH23xbLbOI/DoOY/jNfXIKHm67LUbfWRCljW03n2EaPgdaaM4Yar66MNC
 /n1JNqOF4ldetMb1uFw6Mlr5Jq44i4yZf6Q/0QwTN9pWnMBFj91nsKBSONrFEQJP
 snNtUwK1lSBHeVoOHVUujKHJJGpZvtclnPlzZ2Xqf1eDysfjQRrA1PAHljB8ScmY
 JfSVifZcR8MGMezEHbonimEH725Cwev/GuDJ3ADqBah1E/3ahRL3F9bkZnro9eqv
 0kPagVla+HSDS8SDzBYeUBwsUccYKx4haGGzQ5bHACbEtCGOgjO3wRdFNkCALnxG
 jcLerUI4DVPYYAuzowUK6gU60cErxIbVhMCxkDcslliFzuK4i9xVYhdPTnE/7pAN
 14dgNjz8drYm6SJHg4LWY9nq5UE2H3Gk5eWr52zlwhID2M0FJXCp2Fr51OocS/JB
 qrCLsuJCmtcxMEaI++iRf6b6OblfAV5bwpHOBX1QkZfz7GwhhKhK2ZERewTWWJS4
 eagdF4B+aw9zrRq/nLf09RMB4OjE+7OqvIVnA1MWxnDyfACcYuOodkXys4DxB7In
 z+3ToH3lwzqLP4Zi3enr7Bs669Hz2KWJzjf8WwfbDG3e9IEa9t5sLMBFtrVfPRG9
 qH53nlHABqQ=
 =SNQE
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v4.11/fixes-not-urgent-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/fixes-non-critical

Non-urgent fixes for omaps for v4.11 merge window. These all are
fixes for things that have never worked or have been broken for
a long time and nobody noticed:

- Fix omap3 off mode pull defines
- Allow multiple pdata quirks instead of just one
- Fix am335x and dm814x scm syscon to probe children too
- Fix compatible for ti81xx to allow use with 8250_omap as well
- Fix 8250_omap on omap5 by adding HWMOD_SWSUP_SIDLE_ACT flag
- Fix SoC detection for omap36/37 SoCs

* tag 'omap-for-v4.11/fixes-not-urgent-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: OMAP3: Fix SoC detection of OMAP36/37 Family
  ARM: OMAP5: Add HWMOD_SWSUP_SIDLE_ACT flag for UART
  ARM: dts: Fix compatible for ti81xx uarts for 8250
  ARM: dts: Fix am335x and dm814x scm syscon to probe children
  ARM: OMAP2+: Fix init for multiple quirks for the same SoC
  ARM: dts: Fix omap3 off mode pull defines

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-01-29 17:14:43 -08:00
Marc Gonzalez
e66e937121 ARM: Import tango4_defconfig
Import a minimal defconfig for tango4 boards.

Signed-off-by: Marc Gonzalez <marc_gonzalez@sigmadesigns.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
2017-01-29 17:06:45 -08:00
Olof Johansson
cf63d01af4 Enable config options for DaVinci
VPIF, LCDC, PWM, Pull up/down pinconf
 driver and IIO in davinci_all_defconfig
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJYh0ffAAoJEGFBu2jqvgRNppQP/RW9eM+v81QmDrP6797F/Dl3
 5RBiBoV5ayrZ+hs5SH6T5J/2jrlCSp5CzmVIJdzxplgTprieO6zo6YsW5bXNeZ1D
 PO9C5H/VMk3aUnC0NGZ4Hf+aJD3/7dEd9mzc2lKHkG0Jd7+lGi7ZrtqoI+6zVvHp
 hQtjwz6Ye33Wclgd/PZhaSUFzv47LI41hicT+tG3uRVPv8bBIzJeX9lMH56xrSYo
 ys0EX2okoh5sBl5hOs3tnsBeA6VtI87KT/gSwkKQUsIezlnIAaz5ErJuO2CyehLB
 RpkCZ2yWNl2/sombgNWRVK+0cCUPDQyCLDjOMW+QibYqlIbC10/pr5Wl0e8x5IeA
 KQCHGEHsUX1cHuFe19u8bmkPBiToBPBnWEa0fH2kbJAjn4FAvkbjYsltQCsIDUMw
 hylAGmANzavczKT45lpq1VstqzJkj5JXd2zfsmTzumnc/IhglcIoIolbnkIs/pdU
 3Eje/FRIwOD56RtC8ql61OorVMSXNHnyaw6QNlZ4R6dOdKhNll/WeE74znTGU76o
 AwOfpjQNheMRkreDPVdjLUzU/V9i2x61w5C+TiF2qGhIh/50E62hJQ8Isaes/5cE
 jaelOzAPxrOYHHECE+iY424SU+h/WPXHXJqgxwCa0USLg9WhGSv+fF/Jak8WmEgs
 Gxitz4/zBY2lR3tZhDsj
 =zXfG
 -----END PGP SIGNATURE-----

Merge tag 'davinci-for-v4.11/defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/nsekhar/linux-davinci into next/defconfig

Enable config options for DaVinci
VPIF, LCDC, PWM, Pull up/down pinconf
driver and IIO in davinci_all_defconfig

* tag 'davinci-for-v4.11/defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/nsekhar/linux-davinci:
  ARM: davinci_all_defconfig: enable iio
  ARM: davinci_all_defconfig: Enable PWM modules
  ARM: davinci_all_defconfig: enable DA8xx pinconf
  ARM: davinci_all_defconfig: enable pwm-beeper
  ARM: davinci_all_defconfig: enable dumb vga-dac drm bridge
  ARM: davinci_all_defconfig: enable video capture as modules

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-01-29 17:05:52 -08:00
Olof Johansson
2e33f29400 Device tree updates for DaVinci DA850
* GPIO keys on DA850 LCDK
 * LCDC display on DA850 LCDK
 * USB OHCI on DA850 LCDK
 * VPIF (video input) on DA850 LCDK
 * Add a DA8xx specific compatible for UARTs
 * Introduce support for Lego Mindstorms EV3
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJYh0jIAAoJEGFBu2jqvgRNivsQAJpyONkOU7T7GQ/w4cU699zP
 Af83IFATZWvaeuscKNWHF/Fb9kTiPk8CB+HYSs0CFybGX8XoSaN8l/EI0jG0k4Zv
 7izWjvt/jFkIXEsKcORBXeRQ4MirmsWOY/J0J761L0WHO1GyoPtrtnOFzxWNO9jC
 P7e+1kwd0umtLhHJ4LKOqarfiFA70MiOw7FAN9luRQBgCD8sSfsYkgqne5MFCrc1
 Aaf8OV49ayTqjJRynDb2I6JnAt5WFt8q1AR/3Q5b4P1QK2wxJLA/ISAbgoNvZL9h
 NG1jTrKhk5iXF9XoeE4THi5nKupSpVk4zhl0tenwLg/SRcW97LZ3ar3cg96XrrZU
 Ng4poCkh5EdtgaMGstScoSr5DACRMsZWvTI4Ie9x8oPQiirT1an0w2xSVRDI77Kc
 Qmv3InOteRQJU9xoYC6DBb2CmaGsE0SJjuMgjguguQQkeznXFAl0PVj841c5ipUP
 JFAq4hUYE9G6/vBf+oOvtO3IsPDeEv3DCgW03gL2gxgZLd8BE65SPyGEMV2jeW57
 ctO0MJdRTg4VnYoOHwKU3LKytc/fjYC9ETx+VEManqIdwXj0wxtOdncUNLwYxKeo
 1U076HVBdmqXU45Qn9+ZIfkb1g9QJCqKYq8giOeaQzfG5HMAefoVHTfnhEeRPHs4
 R5KaT9XMRkUuNC4CNyMb
 =EOxA
 -----END PGP SIGNATURE-----

Merge tag 'davinci-for-v4.11/dt' of git://git.kernel.org/pub/scm/linux/kernel/git/nsekhar/linux-davinci into next/dt

Device tree updates for DaVinci DA850

* GPIO keys on DA850 LCDK
* LCDC display on DA850 LCDK
* USB OHCI on DA850 LCDK
* VPIF (video input) on DA850 LCDK
* Add a DA8xx specific compatible for UARTs
* Introduce support for Lego Mindstorms EV3

* tag 'davinci-for-v4.11/dt' of git://git.kernel.org/pub/scm/linux/kernel/git/nsekhar/linux-davinci:
  ARM: dts: Add LEGO MINDSTORMS EV3 dts
  dt-bindings: add "microchip,24c128" compatible string
  dt-bindings: Add LEGO MINDSTORMS EV3 compatible specification
  dt-bindings: Add vendor prefix for LEGO
  ARM: dts: da850: Add ti,da830-uart compatible for serial ports
  ARM: dts: davinci: da850-lcdk: enable VPIF
  ARM: dts: davinci: da850-evm: enable VPIF
  ARM: dts: davinci: da850: VPIF: add node and muxing
  ARM: dts: da850-lcdk: Enable ohci for omapl138 lcdk
  ARM: dts: da850: Add usb device node
  ARM: dts: da850: specify the maximum pixel clock rate for tilcdc
  ARM: dts: da850-lcdk: add the vga-bridge node
  ARM: dts: da850: rename the display node label
  ARM: dts: da850-lcdk: add gpio-keys

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-01-29 17:05:23 -08:00
Olof Johansson
2af49ab686 Non-critical DaVinci fixes for v4.11
* Coding style and typo fix
 * Make PLL0 rate setting API for DA850
   less confusing to use.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJYh0mWAAoJEGFBu2jqvgRNx2UQAJhfKAccehGfPHA+JguI3fWv
 uYKCf5OjyaKOmXfx60QhVvqf0LHA8JTfMRtCz4Q/aUjNogylMJvbOGYZi7zptusZ
 yUJHQpk9deAzpj0vUlgMMtWWAryfhzLzyTvBOhTrUZJM9+3ELTGOiBZEOJmWZdmh
 h/Xm0TBzpPjFZkHQuw8YQTDfqTwh1qObRQqsVa3shJHuORVv7OhlTe50jQsypRUX
 2W0fx4LuvpSVGSR0pW8zmNJFHcIBswih7FvRuMH4jCllJeNYP4X6Yz8cTtPZc8uX
 YD/65FlTkngx/7iqBecO+tn1Km6S/CPxyDNcuYsPLa/elEUNsHaZyxCoxHgwWmS9
 YjwtP7hphtEPQwLYlvZ9MYLA2+a+NdErxCFKY1snTdgOevvepKXjLG0oAvb+06vw
 55o5B0EPaLwgACeVhAYH0XBZMzFiwMvWacLb1gCXU4YCZ+QNNz08iWp+w20w38Qd
 K94gqBy8+NQ0FmpgO68x3qtSXMwLxjHqMmjGg2MMr85KwUobfSgzlCCimaGp/mxw
 /fLphOv2IBrPezaTwbBpTp7TkwZ6LLeCNrt5bKaqjTE5Ol6KCPO6whWMqX8mCqvS
 W/rCLf0JhaWS30PMzeQeZQCgabnPK3JCNZYxMRLupGrb5WMo8X9ObgicQDjPSLw3
 6Mf/YkZqTGlQEcIcs7Ls
 =rf0t
 -----END PGP SIGNATURE-----

Merge tag 'davinci-for-v4.11/fixes-non-critical' of git://git.kernel.org/pub/scm/linux/kernel/git/nsekhar/linux-davinci into next/fixes-non-critical

Non-critical DaVinci fixes for v4.11

* Coding style and typo fix
* Make PLL0 rate setting API for DA850
  less confusing to use.

* tag 'davinci-for-v4.11/fixes-non-critical' of git://git.kernel.org/pub/scm/linux/kernel/git/nsekhar/linux-davinci:
  bus: da850-mstpri: fix my e-mail address
  ARM: davinci: da850: fix da850_set_pll0rate()
  ARM: davinci: da850: coding style fix

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-01-29 16:58:18 -08:00
Rafał Miłecki
40be0dda07 net: add devm version of alloc_etherdev_mqs function
This patch adds devm_alloc_etherdev_mqs function and devm_alloc_etherdev
macro. These can be used for simpler netdev allocation without having to
care about calling free_netdev.

Thanks to this change drivers, their error paths and removal paths may
get simpler by a bit.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-29 19:24:12 -05:00
David S. Miller
936f459bea Here are two fixes for batman-adv for net-next:
- fix double call of dev_queue_xmit(), caused by the recent introduction
    of net_xmit_eval(), by Sven Eckelmann
 
  - Fix includes for IS_ERR/ERR_PTR, by Sven Eckelmann
 -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEE1ilQI7G+y+fdhnrfoSvjmEKSnqEFAliMd+IWHHN3QHNpbW9u
 d3VuZGVybGljaC5kZQAKCRChK+OYQpKeofArD/0RArnwnJLDZbL79oBzuYk3vFWy
 /8BhZN+Bw/D6laMpE6yOM3zzDM0H9kvwgVl5ZFx5thmDgBj/cKbB2+2SjiPrQQk1
 I4hDFatzo+jEtGIGDv59UsAzxbBPgFjK0ZX61tfEYIUFo3DnbJj/pcxI7+QQvkOK
 vc+pyaPcYGViopyLVoy9XTt3ZhpRLdk7rlGE7vl8tydmJXrOGG+GQRbd1Emn1U63
 OH/HW94hufD5dK5LsxNj1HhViEs4DPJ55+K9UeKY8caoAfn7tzXlOEdsh9uqXU1p
 Zqnk2Q2n2D7/Yvs+umuj+7I1IXzykSfGAJjMv843mHuAloyyMDeDGzMxXFXnZ4Hq
 DM4DgAeVcGYjYwLrPaeoLkVPMF/2e0z0S7Hfdzhp5UKk9j+846eyTsdISUEyb73h
 vl+qPFc6eJ+PLTb8wMvdnuDuJWTqHDlJ2Id1GadJ86si2ZtYYrmNZp8Sn+YQg0zc
 9tVI1jATxv3XU22jCnpwnrXMdDMQBX1crtY4N0MtOz3NqZdexpQR4p5LsC+PB2zJ
 2JjAJExGpe4bGWorcRnHTTP5mVRdezB8vE8lKs4iIf40wdGGV3xJxq3xBBGH9S21
 IpLcROfshDQfMhntpd42bw2AEDIkz4Vp/GvO8r2YUkQfKPFmX9duilQvi0VRDKNk
 FfO6GqDuy6WIGcljgQ==
 =iLbv
 -----END PGP SIGNATURE-----

Merge tag 'batadv-next-for-davem-20170128' of git://git.open-mesh.org/linux-merge

Simon Wunderlich says:

====================
Here are two fixes for batman-adv for net-next:

 - fix double call of dev_queue_xmit(), caused by the recent introduction
   of net_xmit_eval(), by Sven Eckelmann

 - Fix includes for IS_ERR/ERR_PTR, by Sven Eckelmann
====================

Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-29 19:21:26 -05:00
Yuchung Cheng
678550c651 tcp: include locally failed retries in retransmission stats
Currently the retransmission stats are not incremented if the
retransmit fails locally. But we always increment the other packet
counters that track total packet/bytes sent.  Awkwardly while we
don't count these failed retransmits in RETRANSSEGS, we do count
them in FAILEDRETRANS.

If the qdisc is dropping many packets this could under-estimate
TCP retransmission rate substantially from both SNMP or per-socket
TCP_INFO stats. This patch changes this by always incrementing
retransmission stats on retransmission attempts and failures.

Another motivation is to properly track retransmists in
SCM_TIMESTAMPING_OPT_STATS. Since SCM_TSTAMP_SCHED collection is
triggered in tcp_transmit_skb(), If tp->total_retrans is incremented
after the function, we'll always mis-count by the amount of the
latest retransmission.

Signed-off-by: Yuchung Cheng <ycheng@google.com>
Signed-off-by: Soheil Hassas Yeganeh <soheil@google.com>
Acked-by: Neal Cardwell <ncardwell@google.com>
Acked-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-29 19:17:23 -05:00
Yuchung Cheng
7e98102f48 tcp: record pkts sent and retransmistted
Add two stats in SCM_TIMESTAMPING_OPT_STATS:

TCP_NLA_DATA_SEGS_OUT: total data packets sent including retransmission
TCP_NLA_TOTAL_RETRANS: total data packets retransmitted

The names are picked to be consistent with corresponding fields in
TCP_INFO. This allows applications that are using the timestamping
API to measure latency stats to also retrive retransmission rate
of application write.

Signed-off-by: Yuchung Cheng <ycheng@google.com>
Signed-off-by: Soheil Hassas Yeganeh <soheil@google.com>
Acked-by: Neal Cardwell <ncardwell@google.com>
Acked-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-29 19:17:23 -05:00
Olof Johansson
43d08e211f Qualcomm Device Tree Changes for v4.11
* Add Coresight components for APQ8064
 * Fixup PM8058 nodes
 * Add APQ8060 gyro and accel support
 * Enable SD600 HDMI support
 * Add RIVA supprort for Sony Yuga and SD600
 * Add PM8821 support
 * Add MSM8974 ADSP, USB gadget, SMD, and SMP2P support
 * Fix IPQ8064 clock frequencies
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJYhiypAAoJEFKiBbHx2RXVvUAP/2l1mGHcPWrQ5IYclxJUgT65
 OmjA9MDWHgqpOAjibGZoNj8+CuS54/JlHCGXv9vuU9r96YmnpCyoebFdpWiE6KfM
 K+RYmraGVrUl673jmIxxJR5kZ3AkFb1fapfx8wBLcQ1FU8203HPB+izVrSxMFHwS
 KrVpJHl2qp8D6E+O6bhLl2iBQo1njwMDW0dgs+1V8mmRkeBSC44JoY/dxgay0/7M
 c6MP8/EWg63Luo+wrNNyiQemiyCM/ZwXOr/el62QDi0vdNVu9FTWx3iFSU3N277q
 Kgr+gJNrMQy8KcIrTtw5sLBTIHvrl6f7kXJ1KA6QtGEEiQI99opLwOdrqKq/O1yD
 bFbKLzG+KdzymTTfOf2kyB/jscQDPq9bbqTC8LYg1FVO63OHFtm2suBgZwtf8WJT
 j1o/pZBl7s3PpOemEfhm9i+SbwBZKfssb6cFinvqaDkfo+re3FGH02f0227YgB2Q
 2xhhekEU0xUH5w5ZUWXOmvCTXYghBINEtZydCvOFETemOmpWiAT0l8BRNjdG7fid
 py+EVbCp19F8u/tBKb32q6yPvDZTR1vdVGiD4Pt+j09vPuU6SMagu5bmlCYqDSca
 bcw7g3Fa37Za8Buv3GOYByZourY4ol+1Te0tqxQbPwu5N+H5zKvHGMiUnlmbtkKD
 WM/tWW4vz7kDUcvRFt3c
 =i5Qt
 -----END PGP SIGNATURE-----

Merge tag 'qcom-dts-for-4.11' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux into next/dt

Qualcomm Device Tree Changes for v4.11

* Add Coresight components for APQ8064
* Fixup PM8058 nodes
* Add APQ8060 gyro and accel support
* Enable SD600 HDMI support
* Add RIVA supprort for Sony Yuga and SD600
* Add PM8821 support
* Add MSM8974 ADSP, USB gadget, SMD, and SMP2P support
* Fix IPQ8064 clock frequencies

* tag 'qcom-dts-for-4.11' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux:
  ARM: dts: qcom: Add apq8064 CoreSight components
  ARM: dts: Add gyro and accel to APQ8060 Dragonboard
  ARM: dts: reference PM8058 as IRQ parent
  ARM: dts: rename MSM8660/APQ8060 pmicintc to pm8058
  ARM: dts: sd-600eval: enable 1.8v regulator on LS expansion
  ARM: dts: sd-600eval: add hdmi support
  ARM: dts: move hdmi pinctrl out of board file.
  ARM: dts: qcom: sd600eval: Enable riva-pil
  ARM: dts: qcom: sd600-eval: pm8921_s2 regulator properties
  ARM: dts: qcom: apq8064-sony-yuga: Enable riva-pil
  ARM: dts: qcom: apq8064: Add riva-pil node
  ARM: dts: apq8064: add support to pm8821
  arm: dts: qcom: Fix ipq board clock rates
  ARM: dts: msm8974: Remove "unused" reserved region
  ARM: dts: msm8974: Add ADSP PIL node
  ARM: dts: msm8974: Add ADSP smp2p and smd nodes
  ARM: dts: qcom: msm8974: Add USB gadget nodes

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-01-29 16:09:01 -08:00
Olof Johansson
1ae7776189 Qualcomm ARM Based Driver Updates for v4.11
* Fix issues with SCM compile testing
 * Add SCM set remote state API
 * Mask APQ8064 SCM clock dependency issue
 * Add Qualcomm DMA folder to MAINTAINERS
 * Fix EBI2 dependencies
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJYhigsAAoJEFKiBbHx2RXVHtcP/jcF1VmTbEytfV2XXVV5AuMx
 /wif9bR4HTrw2rR6WFmjJr0fTTteItpuc+KHge92WHteAvNlB5N1JmXqP9oMZu5c
 J5xMwbRv/0v46kTKH0ddmHNRPU6dM+YGTAvU4ELx6TDtaZLnfT42P0J237fmSLxI
 5omiuowu3oyx+EsLUT3BBLzYrjaW6iZinY3XF5PdfCh35YNxLqk1VmMPmJFJPNVb
 QlD2a57/4pthV6xCNVOrxVtXYpv1TAuErkKKlZmcbSJ1YRe1ZlIE3oBKJpGYEHw4
 gQGf/HnJP86gxjCit5IvA9GA5AfM29qvt1SmP/8ahTvEODXH+liR45E9fp2Xc1f5
 hmCyl+Qald6aek0ivxW8k3BBueSeIIlqBs2hUZBs4YwbBLr7jztLSclz8Sg37GNN
 Mwwi5ru3RzO8lyhnrtZB+gcXjRIxeuXu4JLV6E6jz4FntMqBVOEkQ0Ptss7Le/tG
 GkrQUDa+W7Zl7fPp90zQBRGxTqq/5qEpVjn9OgdkcWRRr1Pyvx+kiTKSpmnga5P1
 VxWXUWVWBP+8hN2Y6PePGw5HOPQy76CoW8yXrG8Syu+plWXqvN+arhAcJKpDFIsg
 49GJvbhjYYTuz0TQm5CB8gCCk7sw+Yqp0g2BPnKu3ghSgSRtI4l5umtd3HmuWuBj
 lIimN7WD6NEiAqjhaOxN
 =E4FV
 -----END PGP SIGNATURE-----

Merge tag 'qcom-drivers-for-4.11' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux into next/drivers

Qualcomm ARM Based Driver Updates for v4.11

* Fix issues with SCM compile testing
* Add SCM set remote state API
* Mask APQ8064 SCM clock dependency issue
* Add Qualcomm DMA folder to MAINTAINERS
* Fix EBI2 dependencies

* tag 'qcom-drivers-for-4.11' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux:
  firmware: qcom_scm: Add set remote state API
  MAINTAINERS: Update the files to include the Qualcomm DMA folder
  bus: qcom_ebi2: default y if ARCH_QCOM
  firmware: qcom: scm: Mask APQ8064 core clk dependency
  firmware: qcom: scm: Add empty functions to help compile testing

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-01-29 16:08:07 -08:00
David S. Miller
f33f4ac3d3 Merge branch 'qcom-emac-misc'
Timur Tabi says:

====================
net: qcom/emac:

Although not related, these patches affect the same files, so they should
be applied in order.

The first patch cleans up logging of when the the phy driver is attached.

The second patch always configures the SGMII to use autonegotiation mode.

The third patch removes a redundant call to emac_mac_start().

The fourth patch removes some extraneous non-functioning WOL code.

The fifth patch adds an error handler for the SGMII block.
====================

Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-29 19:07:03 -05:00
Timur Tabi
fd0e97b806 net: qcom/emac: add an error interrupt handler for the sgmii
The SGMII (internal PHY) can report decode errors via an interrupt.  It
can also report autonegotiation status changes, but we don't need to track
those.  The SGMII can recover automatically from most decode errors, so
we only reset the interface if we get multiple consecutive errors.

It's possible for bogus decode errors to be reported while the link is
being brought up.  The interrupt is registered when the interface is
opened, and it's enabled after the link is up.

Signed-off-by: Timur Tabi <timur@codeaurora.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-29 19:07:02 -05:00
Timur Tabi
e7e7454b40 net: qcom/emac: remove extraneous wake-on-lan code
The EMAC driver does not support wake-on-lan, but there is still
code left-over that partially enables it.  Remove that code and a few
macros that support it.

Signed-off-by: Timur Tabi <timur@codeaurora.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-29 19:07:02 -05:00
Timur Tabi
0f20276dd5 net: qcom/emac: do not call emac_mac_start twice
emac_mac_start() uses information from the external PHY to program
the MAC, so it makes no sense to call it before the link is up.

Signed-off-by: Timur Tabi <timur@codeaurora.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-29 19:07:02 -05:00
Timur Tabi
3db5d555ea net: qcom/emac: always use autonegotiation to configure the SGMII link
Regardless of how the external PHY is configured, the internal PHY
(the "SGMII" block) is capable of configuring the SGMII link automatically.
When the external PHY link comes up, regardless of how it is configured,
the SGMII link is configured automatically.

Signed-off-by: Timur Tabi <timur@codeaurora.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-29 19:07:02 -05:00
Timur Tabi
9da34f27c1 net: qcom/emac: display the phy driver info after we connect
The PHY driver is attached only when the driver calls
phy_connect_direct().  Calling phy_attached_print() to display
information about the PHY driver prior to that point is meaningless.
The interface can be brought down, a new PHY driver can be loaded,
and the interface then brought back up.  This is the correct time
to display information about the attached driver.

Since phy_attached_print() also prints information about the
interrupt, that needs to be set as well.

Signed-off-by: Timur Tabi <timur@codeaurora.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-29 19:07:02 -05:00
Alexey Khoroshilov
d1156b489f net: adaptec: starfire: add checks for dma mapping errors
init_ring(), refill_rx_ring() and start_tx() don't check
if mapping dma memory succeed.
The patch adds the checks and failure handling.

Found by Linux Driver Verification project (linuxtesting.org).

Signed-off-by: Alexey Khoroshilov <khoroshilov@ispras.ru>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-29 19:04:11 -05:00
andy zhou
5b8784aaf2 openvswitch: Simplify do_execute_actions().
do_execute_actions() implements a worthwhile optimization: in case
an output action is the last action in an action list, skb_clone()
can be avoided by outputing the current skb. However, the
implementation is more complicated than necessary.  This patch
simplify this logic.

Signed-off-by: Andy Zhou <azhou@ovn.org>
Acked-by: Pravin B Shelar <pshelar@ovn.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-29 19:00:16 -05:00
Mohit Gambhir
cc272163ea x86/xen: Fix APIC id mismatch warning on Intel
This patch fixes the following warning message seen when booting the
kernel as Dom0 with Xen on Intel machines.

[0.003000] [Firmware Bug]: CPU1: APIC id mismatch. Firmware: 0 APIC: 1]

The code generating the warning in validate_apic_and_package_id() matches
cpu_data(cpu).apicid (initialized in init_intel()->
detect_extended_topology() using cpuid) against the apicid returned from
xen_apic_read(). Now, xen_apic_read() makes a hypercall to retrieve apicid
for the boot  cpu but returns 0 otherwise. Hence the warning gets thrown
for all but the boot cpu.

The idea behind xen_apic_read() returning 0 for apicid is that the
guests (even Dom0) should not need to know what physical processor their
vcpus are running on. This is because we currently  do not have topology
information in Xen and also because xen allows more vcpus than physical
processors. However, boot cpu's apicid is required for loading
xen-acpi-processor driver on AMD machines. Look at following patch for
details:

commit 558daa289a ("xen/apic: Return the APIC ID (and version) for CPU
0.")

So to get rid of the warning, this patch modifies
xen_cpu_present_to_apicid() to return cpu_data(cpu).apicid instead of
calling xen_apic_read().

The warning is not seen on AMD machines because init_amd() populates
cpu_data(cpu).apicid by calling hard_smp_processor_id()->xen_apic_read()
as opposed to using apicid from cpuid as is done on Intel machines.

Signed-off-by: Mohit Gambhir <mohit.gambhir@oracle.com>
Reviewed-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
2017-01-29 18:59:16 -05:00
Juergen Gross
56dd5af9bc xen/netback: set default upper limit of tx/rx queues to 8
The default for the maximum number of tx/rx queues of one interface is
the number of cpus of the system today. As each queue pair reserves 512
grant pages this default consumes a ridiculous number of grants for
large guests.

Limit the queue number to 8 as default. This value can be modified
via a module parameter if required.

Signed-off-by: Juergen Gross <jgross@suse.com>
Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Signed-off-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
2017-01-29 18:48:27 -05:00
Juergen Gross
034702a64a xen/netfront: set default upper limit of tx/rx queues to 8
The default for the number of tx/rx queues of one interface is the
number of vcpus of the system today. As each queue pair reserves 512
grant pages this default consumes a ridiculous number of grants for
large guests.

Limit the queue number to 8 as default. This value can be modified
via a module parameter if required.

Signed-off-by: Juergen Gross <jgross@suse.com>
Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Signed-off-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
2017-01-29 18:48:27 -05:00
Sean Nyekjaer
cf626c3b25 net: phy: micrel: KSZ8795 do not set SUPPORTED_[Asym_]Pause
As pr commit "net: phy: phy drivers should not set SUPPORTED_[Asym_]Pause"
this phy driver should not set these feature bits.

Signed-off-by: Sean Nyekjaer <sean.nyekjaer@prevas.dk>
Fixes: 9d162ed69f ("net: phy: micrel: add support for KSZ8795")
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-29 18:45:15 -05:00
David S. Miller
6d45408db1 Merge branch 'dsa-multi-chip-prep'
Vivien Didelot says:

====================
net: dsa: preparatory patches for multi-chip

In order to introduce support for multi-chip configuration, we need to
do a few enhancements. This patchset makes the number of ports in a
switch dynamic (instead of capping to DSA_MAX_PORTS), stores the switch
and index of a port in the dsa_port structure, uses it in the slave
private structure, and exposes the bridge device a port belongs to.
====================

Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-29 18:42:47 -05:00
Vivien Didelot
ddd3a0c840 net: dsa: b53: use dsa_port's bridge pointer
Now that DSA exposes the bridge device pointer to which a port belongs,
use it when programming the port based VLANs and thus remove the cache.

Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-29 18:42:46 -05:00
Vivien Didelot
922754a48a net: dsa: qca8k: use dsa_port's bridge pointer
Now that DSA exposes the bridge device pointer to which a port belongs,
use it when programming the port based VLANs and thus remove the cache.

Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-29 18:42:46 -05:00
Vivien Didelot
fae8a25e5b net: dsa: mv88e6xxx: use dsa_port's bridge pointer
Now that DSA exposes the bridge device pointer to which a port belongs,
use it when programming the port based VLANs and thus remove the cache.

Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-29 18:42:46 -05:00
Vivien Didelot
f123f2fbed net: dsa: pass bridge device when a port leaves
Upon reception of the NETDEV_CHANGEUPPER, a leaving port is already
unbridged, so reflect this by assigning the port's bridge_dev pointer to
NULL before calling the port_bridge_leave DSA driver operation.

Now that the bridge_dev pointer is exposed to the drivers, reflecting
the current state of the DSA switch fabric is necessary for the drivers
to adjust their port based VLANs correctly.

Pass the bridge device pointer to the port_bridge_leave operation so
that drivers have all information to re-program their chips properly,
and do not need to cache it anymore.

Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-29 18:42:46 -05:00
Vivien Didelot
a5e9a02e1f net: dsa: move bridge device in dsa_port
Move the bridge_dev pointer from dsa_slave_priv to dsa_port so that DSA
drivers can access this information and remove the need to cache it.

Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-29 18:42:46 -05:00
Vivien Didelot
afdcf151c1 net: dsa: store a dsa_port in dsa_slave_priv
Store a pointer to the dsa_port structure in the dsa_slave_priv
structure, instead of the switch/port index.

This will allow to store more information such as the bridge device,
needed in DSA drivers for multi-chip configuration.

Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-29 18:42:46 -05:00
Vivien Didelot
818be8489d net: dsa: add ds and index to dsa_port
Add the physical switch instance and port index a DSA port belongs to to
the dsa_port structure.

That can be used later to retrieve information about a physical port
when configuring a switch fabric, or lighten up struct dsa_slave_priv.

Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-29 18:42:46 -05:00
Vivien Didelot
26895e299c net: dsa: use ds->num_ports when possible
The dsa_switch structure contains the number of ports. Use it where the
structure is valid instead of the DSA_MAX_PORTS value.

Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-29 18:42:46 -05:00
Vivien Didelot
a0c02161ec net: dsa: variable number of ports
Change the ports[DSA_MAX_PORTS] array of the dsa_switch structure for a
zero-length array, allocated at the same time as the dsa_switch
structure itself. A dsa_switch_alloc() helper is provided for that.

This commit brings no functional change yet since we pass DSA_MAX_PORTS
as the number of ports for the moment. Future patches can update the DSA
drivers separately to support dynamic number of ports.

Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-29 18:42:46 -05:00
Olof Johansson
e6fb51c1a9 Qualcomm ARM Based defconfig Updates for v4.11
* Enable APQ8060 Dragonboard related devices
 * Enable AHCI, PCIE, USB, thermal sensors, and ATL1C related configs
 * Enable RPM/RPM-SMD clocks
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJYhit4AAoJEFKiBbHx2RXV4NYQAK2EvuxfXoNEoEajbCUuFJIv
 RlL0fuS/vjymLcXq483VxELlj4G3w2NWzDgOWpfMcdUka0zdR44HQA4353qZV1GM
 0jHhEE/xyWU8D2DZfQbJzudGUsG+1z/o2TG5WCkHCWQlpM8v0Z4HLtpuYzuf0xtT
 DicFcP5XxcO2FaTtv7btKnX+8dORh6AR17Og4XimLytkzA111mjS3d2a0MbH+hMa
 WSuOSY+4F4t+zUJ++WsH2Qbl+KkYtmHvy4Y5S4qwIf89SKPTtH2VyRxd/dSEc7W7
 3XpEjHFINsMxR8K6/drOOo892pDFKpMUGQvWEAutWv05AZwEDIgioP9RwtQOBcHA
 L3KZAoAYmkAB6xImoVdRK8r1qTm18+wLwVGNULpld5y1/ue/EtjW1GB91k2z42iZ
 UM7B4J0aiUsMqtd1F2RjSLEGEzbQt4yeTSda8/wHcH6+ltX/zvftFD17RISZIj6v
 UalpSzJprMSoThgEC0ZjWvdV2b9f/pfIbLra5L2n/w1hAACIUBp7pv6STW8UVNfn
 8stAZ9NO3GEysgMT7Ctq4dh3NcNhoCESQkj2Zvf0qMuCG9aX0mqmmfPsFBBmZWqi
 KwEuDbWU31Gxg+Ndjdxtck1wvSWKK0ka3eFiC7ew3drXPNe9tlooMXEML5bsQ5CJ
 KA1i4OPY0HtLWYtfV/Sl
 =4Unw
 -----END PGP SIGNATURE-----

Merge tag 'qcom-defconfig-for-4.11' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux into next/defconfig

Qualcomm ARM Based defconfig Updates for v4.11

* Enable APQ8060 Dragonboard related devices
* Enable AHCI, PCIE, USB, thermal sensors, and ATL1C related configs
* Enable RPM/RPM-SMD clocks

* tag 'qcom-defconfig-for-4.11' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux:
  ARM: defconfig: qcom: add APQ8060 DragonBoard devices
  ARM: qcom_defconfig: enable thermal sensors
  ARM: qcom_defconfig: add ahci configs
  ARM: qcom_defconfig: add pcie and atl1c ethernet configs
  ARM: qcom_defconfig: add usb related configs
  ARM: qcom_defconfig: Enable RPM/RPM-SMD clocks

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-01-29 15:40:07 -08:00
David S. Miller
1f5d492a34 Merge branch 'ravb-gigabit-R-Car-H3-ES1.1-and-R-Car-M3-W'
Simon Horman says:

====================
ravb: Support 1Gbps on R-Car H3 ES1.1+ and R-Car M3-W

this series adds support for gigabit communication to the Renesas
EthernetAVB controller when used in conjunction with R-Car Gen3 H3
ES1.1+ and M3-W SoCs.  Gigabit is already supported with R-Car Gen 2
SoCs.

The patch from Geert was previously posted for inclusion in v4.10 and
acked by Dave for that purpose. It was, however, not accepted by the
ARM SoC maintainers.

The path from Mizuguchi-san is to address timing problems observed
with gigabit transfers. I would like it considered although my own
testing on M3-W did not show any timing problems.

Changes since v1:
* Address various feedback for "APSR" patch as noted in its changelog
====================

Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-29 18:35:44 -05:00
Geert Uytterhoeven
0e98f9d5f0 ravb: Support 1Gbps on R-Car H3 ES1.1+ and R-Car M3-W
The limitation to 10/100Mbit speeds on R-Car Gen3 is valid for R-Car H3
ES1.0 only. Check for the exact SoC model to allow 1Gbps on newer
revisions of R-Car H3, and on R-Car M3-W.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Acked-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-29 18:35:43 -05:00
Kazuya Mizuguchi
61fccb2d62 ravb: Add tx and rx clock internal delays mode of APSR
This patch enables tx and rx clock internal delay modes (TDM and RDM).

This is to address a failure in the case of 1Gbps communication using the
by salvator-x board with the KSZ9031RNX phy. This has been reported to
occur with both the r8a7795 (H3) and r8a7796 (M3-W) SoCs.

With this change APSR internal delay modes are enabled for
"rgmii-id", "rgmii-rxid" and "rgmii-txid" phy modes as follows:

phy mode   | ASPR delay mode
-----------+----------------
rgmii-id   | TDM and RDM
rgmii-rxid | RDM
rgmii-txid | TDM

Signed-off-by: Kazuya Mizuguchi <kazuya.mizuguchi.ks@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Acked-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-29 18:35:43 -05:00
Eric Dumazet
f1712c7371 can: Fix kernel panic at security_sock_rcv_skb
Zhang Yanmin reported crashes [1] and provided a patch adding a
synchronize_rcu() call in can_rx_unregister()

The main problem seems that the sockets themselves are not RCU
protected.

If CAN uses RCU for delivery, then sockets should be freed only after
one RCU grace period.

Recent kernels could use sock_set_flag(sk, SOCK_RCU_FREE), but let's
ease stable backports with the following fix instead.

[1]
BUG: unable to handle kernel NULL pointer dereference at (null)
IP: [<ffffffff81495e25>] selinux_socket_sock_rcv_skb+0x65/0x2a0

Call Trace:
 <IRQ>
 [<ffffffff81485d8c>] security_sock_rcv_skb+0x4c/0x60
 [<ffffffff81d55771>] sk_filter+0x41/0x210
 [<ffffffff81d12913>] sock_queue_rcv_skb+0x53/0x3a0
 [<ffffffff81f0a2b3>] raw_rcv+0x2a3/0x3c0
 [<ffffffff81f06eab>] can_rcv_filter+0x12b/0x370
 [<ffffffff81f07af9>] can_receive+0xd9/0x120
 [<ffffffff81f07beb>] can_rcv+0xab/0x100
 [<ffffffff81d362ac>] __netif_receive_skb_core+0xd8c/0x11f0
 [<ffffffff81d36734>] __netif_receive_skb+0x24/0xb0
 [<ffffffff81d37f67>] process_backlog+0x127/0x280
 [<ffffffff81d36f7b>] net_rx_action+0x33b/0x4f0
 [<ffffffff810c88d4>] __do_softirq+0x184/0x440
 [<ffffffff81f9e86c>] do_softirq_own_stack+0x1c/0x30
 <EOI>
 [<ffffffff810c76fb>] do_softirq.part.18+0x3b/0x40
 [<ffffffff810c8bed>] do_softirq+0x1d/0x20
 [<ffffffff81d30085>] netif_rx_ni+0xe5/0x110
 [<ffffffff8199cc87>] slcan_receive_buf+0x507/0x520
 [<ffffffff8167ef7c>] flush_to_ldisc+0x21c/0x230
 [<ffffffff810e3baf>] process_one_work+0x24f/0x670
 [<ffffffff810e44ed>] worker_thread+0x9d/0x6f0
 [<ffffffff810e4450>] ? rescuer_thread+0x480/0x480
 [<ffffffff810ebafc>] kthread+0x12c/0x150
 [<ffffffff81f9ccef>] ret_from_fork+0x3f/0x70

Reported-by: Zhang Yanmin <yanmin.zhang@intel.com>
Signed-off-by: Eric Dumazet <edumazet@google.com>
Acked-by: Oliver Hartkopp <socketcan@hartkopp.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-29 18:30:56 -05:00
Rafal Ozieblo
dc97a89e72 net: macb: Fix 64 bit addressing support for GEM
This patch adds support for 32 bit GEM in
64 bit system. It checks capability at runtime
and uses appropriate buffer descriptor.

Signed-off-by: Rafal Ozieblo <rafalo@cadence.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-29 18:26:23 -05:00
Colin Ian King
1a28242bac net: ethernet: aquantia: return -ETIME in macro AQ_HW_WAIT_FOR
The macro is returning ETIME which means various checks to see if
the returned err is less than zero never work. I believe a -ETIME
should be returned instead.

Signed-off-by: Colin Ian King <colin.king@canonical.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-29 18:24:00 -05:00
Colin Ian King
f81e5ca915 net: ethernet: aquantia: remove another redundant err check
The check on err < 0 is redundant and can be removed. Detected
by CoverityScan, CID#1398318 ("Logically Dead Code")

Signed-off-by: Colin Ian King <colin.king@canonical.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-29 18:24:00 -05:00
Colin Ian King
e52cfb63a0 net: ethernet: aquantia: remove redundant err check
The check on err < 0 is redundant and can be removed. Detected
by CoverityScan, CID#1398321 ("Logically Dead Code")

Signed-off-by: Colin Ian King <colin.king@canonical.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-29 18:24:00 -05:00
Alexey Brodkin
0a764db103 stmmac: Discard masked flags in interrupt status register
DW GMAC databook says the following about bits in "Register 15 (Interrupt
Mask Register)":
--------------------------->8-------------------------
When set, this bit __disables_the_assertion_of_the_interrupt_signal__
because of the setting of XXX bit in Register 14 (Interrupt
Status Register).
--------------------------->8-------------------------

In fact even if we mask one bit in the mask register it doesn't prevent
corresponding bit to appear in the status register, it only disables
interrupt generation for corresponding event.

But currently we expect a bit different behavior: status bits to be in
sync with their masks, i.e. if mask for bit A is set in the mask
register then bit A won't appear in the interrupt status register.

This was proven to be incorrect assumption, see discussion here [1].
That misunderstanding causes unexpected behaviour of the GMAC, for
example we were happy enough to just see bogus messages about link
state changes.

So from now on we'll be only checking bits that really may trigger an
interrupt.

[1] https://lkml.org/lkml/2016/11/3/413

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Cc: Fabrice Gasnier <fabrice.gasnier@st.com>
Cc: Joachim Eastwood <manabian@gmail.com>
Cc: Phil Reid <preid@electromag.com.au>
Cc: David Miller <davem@davemloft.net>
Cc: Alexandre Torgue <alexandre.torgue@gmail.com>
Cc: Vineet Gupta <vgupta@synopsys.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-29 18:15:18 -05:00