Commit graph

691,473 commits

Author SHA1 Message Date
Nogah Frankel
2b77958bf4 mlxsw: resources: Add max cpu policers resource
Add a new resource to resources query: max cpu policers which tells us how
many policers can be used to limit the data rate to the cpu port.

Signed-off-by: Nogah Frankel <nogahf@mellanox.com>
Reviewed-by: Ido Schimmel <idosch@mellanox.com>
Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 21:22:14 -05:00
Nogah Frankel
117b0dad2d mlxsw: Create a different trap group list for each device
Trap groups can be used to control traps priority, both in terms of
which trap "wins" if a packet matches two traps (priority) and in terms
of packets from which trap group will be scheduled to the cpu first (tc).
They can also be used to set rate limiters (policers) on them (will be
added in the next patches).

Currently, we support two trap groups. In Spectrum we want a better
resolution, so every protocol / flow will have a different trap group,
so we can control its parameters separately. Once the policers will be
implemented, it will also allow us limit the rate of each protocol by
itself.

This patch change the trap group list to include:
* the emad trap group, which is shared for all the devices.
* Switchx2's trap groups, which are a copy of the current trap groups.
* Spectrum's new trap groups, in order to match the above guidelines.
(Switchib is using only the emad trap group, so it require no changes).

This patch also includes new configuration for Spectrum's trap groups,
with primary priority order within them.

Signed-off-by: Nogah Frankel <nogahf@mellanox.com>
Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 21:22:14 -05:00
Nogah Frankel
616d8040e5 mlxsw: spectrum: Add BGP trap
Add a trap for BGP protocol that was previously trapped by the generic trap
for IP2ME. This trap will allow us to have better control (over priority
and rate) of the traffic.

Signed-off-by: Nogah Frankel <nogahf@mellanox.com>
Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 21:22:14 -05:00
Nogah Frankel
579c82e4c5 mlxsw: Change trap groups setting
Trap groups have many options which we currently set to default values.
In the next patches we will use many of them with non-default values.

Some of these options have no default value, so this patch sets them as
params for the trap group set function. Others almost always use the same
values, so the set function will use this default values. In the rare cases
when they will need to be with other values, these values can be set
directly (using the macros for fields in registers).

Parameters without default value:
TC - the traffic class for packets that hit this trap group.
    (old default is the max tc)
priority - if one packet hits multiple trap groups, the group with the
	   higher priority will "catch" it. (old default is 0)
policer - limit rate policer (old default is disabled)

Default parameters:
swid - switch id, relevant for the emad trap only, ignored on Spectrum.
       (new default is 0)
rdq - CPU receive descriptor queue (new default is identical to trap
      group id)

Signed-off-by: Nogah Frankel <nogahf@mellanox.com>
Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 21:22:14 -05:00
Nogah Frankel
23432cb86a mlxsw: resources: Add max trap groups resource
Add the max number of trap groups to resource query.

Signed-off-by: Nogah Frankel <nogahf@mellanox.com>
Reviewed-by: Ido Schimmel <idosch@mellanox.com>
Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 21:22:14 -05:00
Nogah Frankel
9d87fceac6 mlxsw: core: Change emad trap group settings
Currently, the emad trap init was done in the core. In the future we will
want to add some changes to the traps groups, according to device type.
This commit create a driver function to create the trap group for the
emad, so later it can be changed by devices. It also changes the emad
registration to use the new generic functions.

Signed-off-by: Nogah Frankel <nogahf@mellanox.com>
Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 21:22:14 -05:00
Nogah Frankel
0fb78a4e9c mlxsw: Add option to choose trap group
Currently, we set the trap group to pre-determined option, based on whether
it is an rx or event trap.
This commit adds a possibility to chose the trap group, so it can be set
to different values in the following patches.

Signed-off-by: Nogah Frankel <nogahf@mellanox.com>
Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 21:22:14 -05:00
Nogah Frankel
d570b7ee4e mlxsw: Change trap set function
Change trap setting function so instead of determining the trap group by
trap id, it gets it as a parameter (so later we can have different trap
groups for Spectrum and Switchx2).
Add "is_ctrl" parameter to the trap setting function. It control whether
the trapped packets wait in a designated control buffer or in their
default one. This parameter is ignored by Switchx2 and Switchib.
Add these parameters to the traps array in Spectrum, Switchx2 and
Switchib.

Signed-off-by: Nogah Frankel <nogahf@mellanox.com>
Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 21:22:14 -05:00
Nogah Frankel
85d5c9cd90 mlxsw: switchib: Use generic listener struct for events
Change the event handling in Switchib to be comptible with Spectrum and
Switchx2.
Use the generic listener struct for the events. Init and fini them by loop
(and not by calling each event by its name).

Signed-off-by: Nogah Frankel <nogahf@mellanox.com>
Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 21:22:14 -05:00
Nogah Frankel
6bf08b53ed mlxsw: switchx2: Use generic listener struct for events
Change the events to use the generic listener struct.
Merge the event list into the trap list, so the same functions will
handle both.

Signed-off-by: Nogah Frankel <nogahf@mellanox.com>
Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 21:22:14 -05:00
Nogah Frankel
4544913ed7 mlxsw: spectrum: Use generic listener struct for events
Change the events to use the generic listener struct.
Merge the event list into the trap list, so the same functions will
handle both.

Signed-off-by: Nogah Frankel <nogahf@mellanox.com>
Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 21:22:14 -05:00
Nogah Frankel
fb9012d93f mlxsw: core: Introduce generic macro for event
Create a macro for creating the generic listener struct for events,
similar to the one for rx traps.

Signed-off-by: Nogah Frankel <nogahf@mellanox.com>
Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 21:22:14 -05:00
Nogah Frankel
2332d8c7df mlxsw: switchx2: Use generic listener struct for rx traps
Reorganize the traps to use the new generic listener struct and
functions. Use macros to shorten the traps list.

Signed-off-by: Nogah Frankel <nogahf@mellanox.com>
Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 21:22:14 -05:00
Nogah Frankel
14eeda99c4 mlxsw: spectrum: Use generic listener struct for rx traps
Replace the old rx listener struct definitions by the generic ones.
Use the new generic registering / unregistering functions for them.
Add some macros to organize the trap list.

Signed-off-by: Nogah Frankel <nogahf@mellanox.com>
Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 21:22:14 -05:00
Nogah Frankel
b63da93de8 mlxsw: core: Expose generic macros for rx trap
In Spectrum, there is a macro to arrange the traps list.
This macro is useful for everyone who is using rx traps.
Create a similar macro in core.h for creating the generic listener struct
for rx traps.

Signed-off-by: Nogah Frankel <nogahf@mellanox.com>
Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 21:22:14 -05:00
Nogah Frankel
0791051c43 mlxsw: core: Create a generic function to register / unregister traps
We have 2 types of HW traps to handle, rx traps and events.
The registration workflow for both is very similar. So it only make
sense to create one function to handle both.

This patch creates a struct to hold the data for both cases. It also
creates a registration and an un-registration functions that get this
generic struct as input.

Signed-off-by: Nogah Frankel <nogahf@mellanox.com>
Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 21:22:14 -05:00
Nogah Frankel
ee4a60d898 mlxsw: spectrum: Remove unused traps
Since commit 99724c18fc ("mlxsw: spectrum: Introduce support for
router interfaces") we no longer rely on flooding traffic to the CPU in
order to trap packets intended for the host itself. Therefore, the FDB
MC trap can be removed.
Remove traps for protocols that are not supported yet.

Signed-off-by: Nogah Frankel <nogahf@mellanox.com>
Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 21:22:14 -05:00
Arnd Bergmann
e8f967c3d8 mvpp2: use correct size for memset
gcc-7 detects a short memset in mvpp2, introduced in the original
merge of the driver:

drivers/net/ethernet/marvell/mvpp2.c: In function 'mvpp2_cls_init':
drivers/net/ethernet/marvell/mvpp2.c:3296:2: error: 'memset' used with length equal to number of elements without multiplication by element size [-Werror=memset-elt-size]

The result seems to be that we write uninitialized data into the
flow table registers, although we did not get any warning about
that uninitialized data usage.

Using sizeof() lets us initialize then entire array instead.

Fixes: 3f518509de ("ethernet: Add new driver for Marvell Armada 375 network unit")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 20:57:21 -05:00
Geliang Tang
5e7dfeb758 net/mlx5: drop duplicate header delay.h
Drop duplicate header delay.h from mlx5/core/main.c.

Signed-off-by: Geliang Tang <geliangtang@gmail.com>
Acked-by: Matan Barak <matanb@mellanox.com>
Acked-by: Saeed Mahameed <saeedm@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 20:33:10 -05:00
Geliang Tang
8f8a8b13b4 net: ieee802154: drop duplicate header delay.h
Drop duplicate header delay.h from adf7242.c.

Signed-off-by: Geliang Tang <geliangtang@gmail.com>
Acked-by: Stefan Schmidt <stefan@osg.samsung.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 20:33:10 -05:00
Geliang Tang
4ee12efa2d ibmvnic: drop duplicate header seq_file.h
Drop duplicate header seq_file.h from ibmvnic.c.

Signed-off-by: Geliang Tang <geliangtang@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 20:32:10 -05:00
Dan Carpenter
1f1e70efe5 fsl/fman: fix a leak in tgec_free()
We set "tgec->cfg" to NULL before passing it to kfree().  There is no
need to set it to NULL at all.  Let's just delete it.

Fixes: 57ba4c9b56 ("fsl/fman: Add FMan MAC support")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 20:29:48 -05:00
Dan Carpenter
eafa6abd99 net/mlx5: remove a duplicate condition
We verified that MLX5_FLOW_CONTEXT_ACTION_COUNT was set on the first
line of the function so we don't need to check again here.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Acked-by: Saeed Mahameed <saeedm@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 20:28:28 -05:00
Miroslav Lichvar
8006f6bf5e net: ethtool: don't require CAP_NET_ADMIN for ETHTOOL_GLINKSETTINGS
The ETHTOOL_GLINKSETTINGS command is deprecating the ETHTOOL_GSET
command and likewise it shouldn't require the CAP_NET_ADMIN capability.

Signed-off-by: Miroslav Lichvar <mlichvar@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 20:23:30 -05:00
David S. Miller
0ebc5b62a3 Merge branch 'thunderx-new-features'
Sunil Goutham says:

====================
net: thunderx: Support for 80xx, RED, PFC e.t.c

This patch series adds support for SLM modules present on 80xx
silicon, enables ramdom early discard, backpressure generation,
PFC and some ethtool changes to display supported link modes e.t.c.
====================

Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 20:21:24 -05:00
Sunil Goutham
430da20808 net: thunderx: Pause frame support
Enable pause frames on both Rx and Tx side, configure pause
interval e.t.c. Also support for enable/disable pause frames
on Rx/Tx via ethtool has been added.

Signed-off-by: Sunil Goutham <sgoutham@cavium.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 20:21:17 -05:00
Sunil Goutham
d5b2d7a718 net: thunderx: Configure RED and backpressure levels
This patch enables moving average calculation of Rx pkt's resources
and configures RED and backpressure levels for both CQ and RBDR.
Also initialize SQ's CQ_LIMIT properly.

Signed-off-by: Sunil Goutham <sgoutham@cavium.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 20:21:17 -05:00
Thanneeru Srinivasulu
1cc702591b net: thunderx: Add ethtool support for supported ports and link modes.
Signed-off-by: Thanneeru Srinivasulu <tsrinivasulu@cavium.com>
Signed-off-by: Sunil Goutham <sgoutham@cavium.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 20:21:17 -05:00
Sunil Goutham
5271156b1a net: thunderx: 80xx BGX0 configuration changes
On 80xx only one lane of DLM0 and DLM1 (of BGX0) can be used
, so even though lmac count may be 2 but LMAC1 should use
serdes lane of DLM1. Since it's not possible to distinguish
80xx from 81xx as PCI devid are same, this patch adds this
config support by replying on what firmware configures the
lmacs with.

Signed-off-by: Sunil Goutham <sgoutham@cavium.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 20:21:17 -05:00
Jon Paul Maloy
d876a4d2af tipc: improve sanity check for received domain records
In commit 35c55c9877 ("tipc: add neighbor monitoring framework") we
added a data area to the link monitor STATE messages under the
assumption that previous versions did not use any such data area.

For versions older than Linux 4.3 this assumption is not correct. In
those version, all STATE messages sent out from a node inadvertently
contain a 16 byte data area containing a string; -a leftover from
previous RESET messages which were using this during the setup phase.
This string serves no purpose in STATE messages, and should no be there.

Unfortunately, this data area is delivered to the link monitor
framework, where a sanity check catches that it is not a correct domain
record, and drops it. It also issues a rate limited warning about the
event.

Since such events occur much more frequently than anticipated, we now
choose to remove the warning in order to not fill the kernel log with
useless contents. We also make the sanity check stricter, to further
reduce the risk that such data is inavertently admitted.

Signed-off-by: Jon Maloy <jon.maloy@ericsson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 20:06:18 -05:00
Jon Paul Maloy
f79675563a tipc: fix compatibility bug in link monitoring
commit 817298102b ("tipc: fix link priority propagation") introduced a
compatibility problem between TIPC versions newer than Linux 4.6 and
those older than Linux 4.4. In versions later than 4.4, link STATE
messages only contain a non-zero link priority value when the sender
wants the receiver to change its priority. This has the effect that the
receiver resets itself in order to apply the new priority. This works
well, and is consistent with the said commit.

However, in versions older than 4.4 a valid link priority is present in
all sent link STATE messages, leading to cyclic link establishment and
reset on the 4.6+ node.

We fix this by adding a test that the received value should not only
be valid, but also differ from the current value in order to cause the
receiving link endpoint to reset.

Reported-by: Amar Nv <amar.nv005@gmail.com>
Signed-off-by: Jon Maloy <jon.maloy@ericsson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 20:06:18 -05:00
Woojung Huh
a7dac9f9c1 phy: fix error case of phy_led_triggers_(un)register
When phy_init_hw() fails at phy_attach_direct();
- phy_detach() calls phy_led_triggers_unregister() without
  previous call of phy_led_triggers_register().
- still call phy_led_triggers_register() and cause memory leak.

Fixes: 2e0bc452f4 ("net: phy: leds: add support for led triggers on phy link state change")
Signed-off-by: Woojung Huh <woojung.huh@microchip.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 19:57:57 -05:00
Andrew Lunn
97db8afa2a net: ethernet: mvneta: Remove IFF_UNICAST_FLT which is not implemented
The mvneta driver advertises it supports IFF_UNICAST_FLT. However, it
actually does not. The hardware probably does support it, but there is
no code to configure the filter. As a quick and simple fix, remove the
flag. This will cause the core to fall back to promiscuous mode.

Signed-off-by: Andrew Lunn <andrew@lunn.ch>
Fixes: b50b72de2f ("net: mvneta: enable features before registering the driver")
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 19:56:37 -05:00
Linus Torvalds
3ad0e83cf8 Merge branch 'parisc-4.9-4' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux
Pull parisc fixes from Helge Deller:
 "On parisc we were still seeing occasional random segmentation faults
  and memory corruption on SMP machines. Dave Anglin then looked again
  at the TLB related code and found two issues in the PCI DMA and
  generic TLB flush functions.

  Then, in our startup code we had some timing of the cache and TLB
  functions to calculate a threshold when to use a complete TLB/cache
  flush or just to flush a specific range. This code produced a race
  with newly started CPUs and thus lead to occasional kernel crashes
  (due to stale TLB/cache entries). The patch by Dave fixes this issue
  by flushing the local caches before starting secondary CPUs and by
  removing the race.

  The last problem fixed by this series is that we quite often suffered
  from hung tasks and self-detected stalls on the CPUs. It was somehow
  clear that this was related to the (in v4.7) newly introduced cr16
  clocksource and the own implementation of sched_clock(). I replaced
  the open-coded sched_clock() function and switched to the generic
  sched_clock() implementation which seems to have fixed this isse as
  well.

  All patches have been sucessfully tested on a variety of machines,
  including our debian buildd servers.

  All patches (beside the small pr_cont fix) are tagged for stable
  releases"

* 'parisc-4.9-4' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux:
  parisc: Also flush data TLB in flush_icache_page_asm
  parisc: Fix race in pci-dma.c
  parisc: Switch to generic sched_clock implementation
  parisc: Fix races in parisc_setup_cache_timing()
  parisc: Fix printk continuations in system detection
2016-11-25 16:47:15 -08:00
Eric Dumazet
f52dffe049 net: properly flush delay-freed skbs
Typical NAPI drivers use napi_consume_skb(skb) at TX completion time.
This put skb in a percpu special queue, napi_alloc_cache, to get bulk
frees.

It turns out the queue is not flushed and hits the NAPI_SKB_CACHE_SIZE
limit quite often, with skbs that were queued hundreds of usec earlier.
I measured this can take ~6000 nsec to perform one flush.

__kfree_skb_flush() can be called from two points right now :

1) From net_tx_action(), but only for skbs that were queued to
sd->completion_queue.

 -> Irrelevant for NAPI drivers in normal operation.

2) From net_rx_action(), but only under high stress or if RPS/RFS has a
pending action.

This patch changes net_rx_action() to perform the flush in all cases and
after more urgent operations happened (like kicking remote CPUS for
RPS/RFS).

Signed-off-by: Eric Dumazet <edumazet@google.com>
Cc: Jesper Dangaard Brouer <brouer@redhat.com>
Cc: Alexander Duyck <alexander.h.duyck@intel.com>
Acked-by: Alexander Duyck <alexander.h.duyck@intel.com>
Acked-by: Jesper Dangaard Brouer <brouer@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 19:37:49 -05:00
Linus Torvalds
86b01b5419 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security
Pull keys fixes from James Morris:
 "From David:

   - Fix mpi_powm()'s handling of a number with a zero exponent
     [CVE-2016-8650].

     Integrate my and Andrey's patches for mpi_powm() and use
     mpi_resize() instead of RESIZE_IF_NEEDED() - the latter adds a
     duplicate check into the execution path of a trivial case we
     don't normally expect to be taken.

   - Fix double free in X.509 error handling"

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security:
  mpi: Fix NULL ptr dereference in mpi_powm() [ver #3]
  X.509: Fix double free in x509_cert_parse() [ver #3]
2016-11-25 15:53:45 -08:00
Arnd Bergmann
d0bf34f39b Allwinner DT additions for 4.10, bis
The usual bunch of DT additions, but most notably:
   - A31 DRM driver
   - A31 audio codec
   - WiFi for the A80-Based boards and the CHIP
   - Support for the NextThing Co CHIP Pro (the first board with NAND
     enabled)
   - New board: NanoPi M1
 -----BEGIN PGP SIGNATURE-----
 
 iQIcBAABCAAGBQJYNFgQAAoJEBx+YmzsjxAg8zAP/0j7VH8Vs0cPqk2fjS8g+aKH
 26vHXWVWmBPjoUXHn+EtGxQZdWR8IU80nwrg2ZYfNqK6/4Z4krFTkfATY1EstNeL
 Ps8O00P+sUoDV/VTeT4j9fby5kdsHod6fSGZD5aA7UL5s1jfCnp8ZrGqjeWs3LIB
 fVMpqMwWBSOs6o0aw73eKv7K5sM+fDkGx7ziQg8f9SzTuAHj4gRocbJO8XwbcAvh
 3JJ9SQnQV3CGaOP2d6vAWi457zAFF0nqo1IrsxLiMj0l3lq3taTPAEm9VH1SZwoD
 UT2lQiOD3oggUCNJ6K+KN5EdqktLz+l0qkSyZHuKxxk49NvbKt2H78rGFuF1wa0d
 cOPAXq+N3jzrZTzkFLxWTzaCLYBy48keVvSFMRZPZqsiMwuujEo6/UY5tBbwbq6u
 4aVd3FaUIAM8sY65uj+lvZjdZvPZT0vh6lWDMNtAMT6jt6ZKaaIvLiXwAHsjntPa
 WL9k2OOs47H6DVOFnL5nQm88bblHBVtMzTv4ouFIOLSiMAGsKlbR0uG5B6M0h6QB
 nZ+kcWlpMVkHXfDnypvDGZiD3FHdatagkw5V5uGiYjB1CyH0r9DZRpiGhKSPFK7L
 Mx0GSbWOLS+q0obCZ2DPhXGviRmYibLetKqBlZyxsOZjMDujDbDEjm2ZmRVBw7az
 Qd9tS3YtTiWOXmL7HulQ
 =cln8
 -----END PGP SIGNATURE-----

Merge tag 'sunxi-dt-for-4.10-bis' of https://git.kernel.org/pub/scm/linux/kernel/git/mripard/linux into next/dt

Pull "Allwinner DT additions for 4.10, bis" from Maxime Ripard:

The usual bunch of DT additions, but most notably:
  - A31 DRM driver
  - A31 audio codec
  - WiFi for the A80-Based boards and the CHIP
  - Support for the NextThing Co CHIP Pro (the first board with NAND
    enabled)
  - New board: NanoPi M1

* tag 'sunxi-dt-for-4.10-bis' of https://git.kernel.org/pub/scm/linux/kernel/git/mripard/linux: (41 commits)
  ARM: dts: sun6i: hummingbird-a31: Enable display output through VGA bridge
  ARM: dts: sun5i: Add touchscreen node to reference-design-tablet.dtsi
  ARM: sunxi: Add the missing clocks to the pinctrl nodes
  ARM: dts: sun7i: bananapi-m1-plus: Enable USB OTG
  ARM: dts: sun7i: bananapi-m1-plus: Add PMIC regulators
  ARM: dts: sun7i: bananapi-m1-plus: Enable USB PHY for USB host support
  ARM: sun8i: sina33: Enable USB gadget
  ARM: dts: sun8i: reference-design-tablet: ldo_io1 is vcc-touchscreen
  ARM: dts: sun8i: replace enable-sdio-wakeup with wakeup-source for BananaPi M1+
  ARM: gr8: evb: Add i2s codec
  ARM: dts: sun6i: sina31s: Enable internal audio codec
  ARM: dts: sun6i: hummingbird: Enable internal audio codec
  ARM: dts: sun6i: Add audio codec device node
  ARM: gr8: evb: Enable SPDIF
  ARM: dts: sun8i: Add SPI controller node in H3
  ARM: dts: sun8i: Add SPI pinctrl node in H3
  ARM: dts: sun8i: Add dts file for NanoPi M1 SBC
  ARM: dts: sun8i: Use the common file in NanoPi NEO SBC
  ARM: dts: sun8i: Add common dtsi file for NanoPi SBCs
  ARM: dts: sun9i: cubieboard4: Enable AP6330 WiFi
  ...
2016-11-26 00:52:10 +01:00
Arnd Bergmann
ba13357e68 mvebu dt64 for 4.10 (part 2)
Fix DTC warning on Armada 37xx and 7K/8K
 -----BEGIN PGP SIGNATURE-----
 
 iGkEABECACoFAlgwEHAjHGdyZWdvcnkuY2xlbWVudEBmcmVlLWVsZWN0cm9ucy5j
 b20ACgkQCwYYjhRyO9VIzACgpB+IM/uM1EMD3IUQM3Wk8TodfwQAmLUWZdt1at2+
 VU9vmax2KRbR00I=
 =K7yX
 -----END PGP SIGNATURE-----

Merge tag 'mvebu-dt64-4.10-2' of git://git.infradead.org/linux-mvebu into next/dt64

Pull "mvebu dt64 for 4.10 (part 2)" from Gregory CLEMENT:

Fix DTC warning on Armada 37xx and 7K/8K

* tag 'mvebu-dt64-4.10-2' of git://git.infradead.org/linux-mvebu:
  ARM64: dts: marvell: Fixup memory DT warning for Armada 37xx
  arm64: dts: marvell: Fixup config-space DT warning For Armada 7K/8K
  arm64: dts: marvell: Fixup internal-regs DT warning for Armada 37xx
2016-11-26 00:49:49 +01:00
Arnd Bergmann
e70a13e7d7 mvebu soc for 4.10 (part 1)
remove legacy support of orion5x ls-chl
 -----BEGIN PGP SIGNATURE-----
 
 iGoEABECACoFAlgwDyEjHGdyZWdvcnkuY2xlbWVudEBmcmVlLWVsZWN0cm9ucy5j
 b20ACgkQCwYYjhRyO9XvjwCffCGDTTvUAn1iBzbI+ijo3Zx1+iwAnAt3aa2pXiSI
 Aya4ElGbmbfODIbo
 =cSoP
 -----END PGP SIGNATURE-----

Merge tag 'mvebu-soc-4.10-1' of git://git.infradead.org/linux-mvebu into next/soc

Pull "mvebu soc for 4.10 (part 1)" from Gregory CLEMENT:

remove legacy support of orion5x ls-chl

* tag 'mvebu-soc-4.10-1' of git://git.infradead.org/linux-mvebu:
  ARM: orion5x: remove legacy support of ls-chl
2016-11-26 00:48:43 +01:00
Arnd Bergmann
6c3026980e mvebu dt for 4.10 (part 1)
Add missing pinmux declaration for netgear NASes
 Fix i2c compatible string for netgear NASes
 Fix on a wrong comment about PLL frequency
 Fix spelling mistake of the manufacturer's name of the Topkick
 Add dt support for the orion5x ls-chl Linkstation device
 First step of fixing DTC warning for Armada 370, 375 and XP
 -----BEGIN PGP SIGNATURE-----
 
 iGoEABECACoFAlgwC9wjHGdyZWdvcnkuY2xlbWVudEBmcmVlLWVsZWN0cm9ucy5j
 b20ACgkQCwYYjhRyO9VAsgCfdqwKz5V7XP/xfkIUxoykhtrLL4QAoJlAAwV+UG2U
 Gbvc3BMoymvienDl
 =06ld
 -----END PGP SIGNATURE-----

Merge tag 'mvebu-dt-4.10-1' of git://git.infradead.org/linux-mvebu into next/dt

Pull "mvebu dt for 4.10 (part 1)" from Gregory CLEMENT:

Add missing pinmux declaration for netgear NASes
Fix i2c compatible string for netgear NASes
Fix on a wrong comment about PLL frequency
Fix spelling mistake of the manufacturer's name of the Topkick
Add dt support for the orion5x ls-chl Linkstation device
First step of fixing DTC warning for Armada 370, 375 and XP

* tag 'mvebu-dt-4.10-1' of git://git.infradead.org/linux-mvebu: (30 commits)
  ARM: dts: armada-375: Fixup ethernet child DT warning
  ARM: dts: armada-375: Fixup memory DT warning
  ARM: dts: armada-375: Remove skeleton.dtsi
  ARM: dts: armada-375: Fixup pinctrl DT warnings
  ARM: dts: armada-375: Fixup pcie DT warnings
  ARM: dts: armada-375: Fixup mdio DT warning
  ARM: dts: armada-375: Use the node labels
  ARM: dts: armada-375: Add node labels
  ARM: dts: armada-370-xp: Fixup regulator DT warning
  ARM: dts: armada-370-xp: Remove button address and fixup names
  ARM: dts: armada-370-xp: Remove address from dsa unit name
  ARM: dts: armada-370-xp: Fixup memory DT warning
  ARM: dts: armada-370-xp: Fixup l2-cache DT warning
  ARM: dts: armada-370-xp: Remove skeleton.dtsi
  ARM: dts: armada-370: Fixup pcie DT warnings
  ARM: dts: armada-xp: Fixup pcie DT warnings
  ARM: dts: armada-370-xp: Fixup mdio DT warning
  ARM: dts: armada-370-xp: Use the node labels
  ARM: dts: armada-370-xp: add node labels
  ARM: dts: armada-370-xp: move the cpurst node in the common file
  ...
2016-11-26 00:45:02 +01:00
Linus Torvalds
cd3caefb46 Fix subtle CONFIG_MODVERSIONS problems
CONFIG_MODVERSIONS has been broken for pretty much the whole 4.9 series,
and quite frankly, nobody has cared very deeply.  We absolutely know how
to fix it, and it's not _complicated_, but it's not exactly pretty
either.

This oneliner fixes it without the ugliness, and allows for further
future cleanups.

  "We've secretly replaced their regular MODVERSIONS with nothing at
   all, let's see if they notice"

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2016-11-25 15:44:47 -08:00
Arnd Bergmann
192a5e8c96 - Add SMP support for the Oxford Semiconductor OX820 SoC
from http://lkml.kernel.org/r/20161021085848.1754-1-narmstrong@baylibre.com
 
 Changes since v1 Pull Request at : http://lkml.kernel.org/r/1305c61f-b1ef-7caf-7788-67e2b907e873@baylibre.com
  - Clarify copyright dates in commit message
  - Remove linux/arch/... lines from the top of the files
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJYNVmZAAoJEHfc29rIyEnRzhcQAKeMdvEHMAduI94jnQNK8i8g
 rF0zXYb3h2WUHi/aCtUG13wQtgJibWeruwSVKFq/G18KkAD78tb+sSu7njFeYSXF
 30D9jANzbqOY6p+R8SKBnbasw6Z5yO5wNpIHSng2FThTSfZL/rlBhmx9AJ431/Hy
 eiosyyDAnwNef71mbrK9g7hw8iwTzuHpUkWILqSf48mkq8Sgn3nSyX1SP33CQaqT
 BI1MSYXcDJGvu5iJ6l3JwVxeJ0NbS77vz3xL93t9vMS0kx+nj+r5Rfa+t0nFwJLg
 xqyG8qIM8NRf2isZaH/mzIZt3r1GZkuOtL7zOmK8kq0U+Epdt5FQPk8Hs3H55SuC
 xqn9s5xqPul3kxAERZQGXvBHfI0q7By5jX1TkR904mBvzAdYDrZk8/Tfql5pEyAD
 U3KkjE7XAOYbiiUlJmqAMzklbEL387XnWej+1+Fs1/wqbNuNAhFSEnzyQt1V1RSD
 CLz5nksDNxYlqUFxIGxjhc05Gfy6nyHvf1NO4gGEB630TacATJ/F6HfwYrM4AU3k
 eyaakQo+FKeM1onrbnrX5+VFLcstmKb43P2yAdWyz2Y/EAAkvFuQy55pRRlW6WgD
 dTqERUpHGnlTNzsSZbcovh3JQ0PQTWUYamH6HNmWcKmjt3HHAdhG6eER7ITzxvsp
 Eu4A+iuHtRXeAVSFNmWB
 =Xa6Z
 -----END PGP SIGNATURE-----

Merge tag 'oxnas-arm-soc-for-4.10-v2' of https://github.com/OXNAS/linux into next/soc

Pull "ARM: OXNAS SoC updates for 4.10" from Neil Armstrong:

- Add SMP support for the Oxford Semiconductor OX820 SoC
from http://lkml.kernel.org/r/20161021085848.1754-1-narmstrong@baylibre.com

Changes since v1 Pull Request at : http://lkml.kernel.org/r/1305c61f-b1ef-7caf-7788-67e2b907e873@baylibre.com
 - Clarify copyright dates in commit message
 - Remove linux/arch/... lines from the top of the files

* tag 'oxnas-arm-soc-for-4.10-v2' of https://github.com/OXNAS/linux:
  ARM: oxnas: Add OX820 config and makefile entry
  ARM: oxnas: Add OX820 SMP support
2016-11-26 00:30:46 +01:00
Arnd Bergmann
112525b147 Qualcomm Device Tree Changes for v4.10 - v2
* Add EBI2 support to MSM8660
 * Add SMSC ethernet support to APQ8060
 * Add support for display, pstore, iommu, and hdmi to APQ8064
 * Add SDHCI node to MSM8974 Hammerhead
 * Add WP8548 MangOH board support (MDM9615)
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJYL+fsAAoJEFKiBbHx2RXVWcMQANE6iAFOlrwGL9RYmq35e5gi
 WnNxigc6pZpZWO6xz6+pVTTs6yu942T26ipKaZSVrLByDayQE6hpU4KgTPwmf25f
 5sGfbFXsQEKiqzct9cFcpGTWr641gV28Uk9B6TjSlll9XkB3AWzYFB1mLqhpth/k
 XjiyNSkZZfPvrothgLoDg16kyUV2BthJhdbXVb+V8c3XkwDiCiPkaMb/Ee1ECgm0
 8l6WHZydCXVx1QzO+1l/CJxC7BBwKL9l00gcTlbzmDS6jW8Y6GBF9rApyrmgk2GH
 oxnRVWtzrwFNVeYV3Gy1CVB8W1MhZQDtq0qH/cH7KbA+xpmxy3/tqZRZAdk6OV46
 5YvtCIGRSnwYE/JWunedESsi9kmi6rDYPn2BwUrLULMjwzwAVX3yh4dwAHNSu9a7
 nogl7qS1t+WsvEzb4rHSZTs7EDJU660TTmFXHnNDpFHNn/0xonxYWXswPxKUCLkn
 2RWm6mG6+YA3KxsPqsch0sCWFNfaoZ5/HhfPnvkMI+mNtaXzjaKx6IjgkMTZV7P+
 II2gBI9s40pznge0h8Aw/+lVCp1YoSYt4Z+ZhryK/BuywG5EvVVf93Sy2Z91l+Ux
 lmNRNoaluGiI/A5x+vdkikfqfABM96MnA8GnREOjrQGLchg42dcOB2c9zBmUWVt+
 lQaL7RSqDHDFEhQ111nh
 =wgqF
 -----END PGP SIGNATURE-----

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

Pull "Qualcomm Device Tree Changes for v4.10 - v2" from Andy Gross:

* Add EBI2 support to MSM8660
* Add SMSC ethernet support to APQ8060
* Add support for display, pstore, iommu, and hdmi to APQ8064
* Add SDHCI node to MSM8974 Hammerhead
* Add WP8548 MangOH board support (MDM9615)

* tag 'qcom-dts-for-4.10-1' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux:
  ARM: dts: add SMSC ethernet on the APQ8060 Dragonboard
  ARM: dts: add EBI2 to the Qualcomm MSM8660 DTSI
  arm: dts: qcom: apq8064-nexus7: Add pstore support to nexus7
  arm: dts: qcom: apq8064-nexus7: Add DSI and panel nodes
  arm: dts: qcom: apq8064: Add dsi, gpu and iommu nodes
  arm: dts: qcom: apq8064-ifc6410: Add HDMI support
  arm: dts: qcom: apq8064: Add display DT nodes
  ARM: dts: qcom: msm8974-hammerhead: Add sdhci1 node
  dt-bindings: arm: Add Sierra Wireless modules bindings
  ARM: dts: Add WP8548 based MangOH Green board DTS
  ARM: dts: Add Sierra Wireless WP8548 dtsi
  dt-bindings: qcom: Add MDM9615 bindings
  ARM: dts: Add MDM9615 dtsi
2016-11-26 00:27:56 +01:00
Arnd Bergmann
2ad5c1a5fc This device-tree pxa update brings :
- pxa25x support
  - cpu operating points in preparation for cpufreq-dt
  - small fixes
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJYLyfrAAoJEAP2et0duMsSNDIP/iawhBloix8n9XH0qZWKNX5a
 Tq/ZIjhMTI3ncp6yKRCju3cNsZ32XwjE8/OkTkdEGp6AGbgc3u0AdBZU21qYUBDt
 B/qsN7EAiXoJPMvRy/2yfnmO+G4McZQxkhU8rdCBSffn6wayAISMGNp9xJ49s55g
 bYl3fFT5jHQ1fLS7XxssSThMg1IZ6myCBqWm6efAgxTUqE0gdwIe3/h8+9kNZSF6
 GUuHhB1A3RAOOI7pFyM9z4Gq8pXxQ19L7oI8Ka4eIGwATeHU6GTpaaR7tSRM6CkX
 qFear02/z+9WTIvUjIhzSKhiDyHeB8nTVQUhUTyoQDOLKV0AWrlZ6y8/0dpa+PDp
 Xn8znF6btxMCHo/lIarRQ2phK64sgoSThrpKWk7WyzQyAbA865vcqYxobQwgjUNX
 qrS/eB9s6HZjL6jv8RD9AYrVAv4VpiGjY58q3sLdFBVB8Otr5kKrcY8kc47jo0Kc
 hRDXW2OAuX/IUEbD5KZKdrcfqoa2Qy2K4oGpAUGPhhmpmNh7xlchi/vcAmmHAVDl
 /Zge+d+pzZ12r0PHrGnyeNZ7oruncRHL2YHN3tPgP3c1kuA53tZFkBxrDGcWdfmf
 vwDYeNI8KlH9jmRkFAgqEhGk4nDk+B2z6nyFkp+aAGm7ZZriZP/TtR80Mym3PixD
 XH1qx1FUCoamXS0qe57I
 =j3ZP
 -----END PGP SIGNATURE-----

Merge tag 'pxa-dt-4.10' of https://github.com/rjarzmik/linux into next/dt

Pull "This device-tree pxa update brings" from Robert Jarzmik:

 - pxa25x support
 - cpu operating points in preparation for cpufreq-dt
 - small fixes

* tag 'pxa-dt-4.10' of https://github.com/rjarzmik/linux:
  ARM: dts: pxa: add pxa27x cpu operating points
  ARM: dts: pxa: add pxa25x cpu operating points
  ARM: dts: pxa: fix gpio0 and gpio1 interrupts
  ARM: dts: pxa: fix no. of gpio cells in the pxa gpio binding documentation
  ARM: dts: pxa: add pxa25x .dtsi file
2016-11-26 00:25:04 +01:00
Geliang Tang
4362321817 ARM: lpc32xx: drop duplicate header device.h
Drop duplicate header device.h from phy3250.c.

Signed-off-by: Geliang Tang <geliangtang@gmail.com>
Reviewed-by: Sylvain Lemieux <slemieux.tyco@gmail.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2016-11-26 00:22:51 +01:00
Geliang Tang
7548dd7e47 ARM: ixp4xx: drop duplicate header gpio.h
Drop duplicate header gpio.h from dsmg600-setup.c.

Signed-off-by: Geliang Tang <geliangtang@gmail.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2016-11-26 00:21:50 +01:00
Alexandre TORGUE
292b44c3a3 ARM: configs: Add new config fragment to change RAM start point
Signed-off-by: Alexandre TORGUE <alexandre.torgue@st.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2016-11-26 00:20:09 +01:00
Linus Torvalds
beb53e4b23 ACPI fixes for v4.9-rc7
- Revert the recent commit that caused the ACPI _PTS method to
    be executed in the power-off/reboot code path (as per the
    specification) in an attempt to improve things on some systems
    (apparently expecting _PTS to be executed in that code path),
    but broke power-off/reboot on at least one other machine (Rafael
    Wysocki).
 
  - Fix kernel builds with the new WDAT watchdog driver enabled in
    some configurations by explicitly selecting WATCHDOG_CORE when
    enabling the WDAT watchdog driver (Mika Westerberg).
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
 iQIcBAABCAAGBQJYOK+oAAoJEILEb/54YlRxMB8P/jJbhBsaIDzn/UJAQs37Qhc+
 ERykoY5v8Knsg896IfFn/YsJbRFBozbuVTOif8ePpMoUMAkhJMYs5uejSK6WeZK8
 l0haoPKJ/UrWp1Tc5zkdY3n/rUUivtmX2r4nMU+qEhAp+zz7q+peZTUecpisdOvv
 kpQG0imnnQbphIGex2wxorox7BYsBeNXPq0tbtez6dz7dzw3i5+1OGcPgHZ5vb/i
 +wiH1LKI83CRB9dFGVN9cVVHgai2/nAGw/ZWimhI1qbeXQG1ZwR1CU61cvO/46CJ
 pj0P40nuA4XzIQPigzsGM+UvuxTw4vm5Cg+I3IMjl0T+PoeE0Hp5JfR+2DJlJtj5
 UeX0oi5yGJjjpWdX8MOtzLSCloo7Gyv5W3/5JhL6j0Wp415rM02iRvZJ/fse6aqM
 E461rlwSniHx/0lo2cDh49oPIxS72BqCJJiho4im/9whPVDNvwYeRUG2/5mytbIs
 /5ERG7dmnizwjKVddZK2X6MrT/u6AzfiAIvLcDi4hPfeqaVEEphcIozmv0wc0qGr
 2mNv4WHsH/cqP9baB7Cy+p+5TM6J+x2kfBwOrWg8g7XqiN4wOHzslSrWtf0Bv0oH
 gPh+lIwJCqWZ0T8nbtEKm940xr34LnJuswMDhYiSnCJuPAE5Fk0dXfvLD2lGoD0R
 7UpwOYlFWqhGGqarttqk
 =q/vx
 -----END PGP SIGNATURE-----

Merge tag 'acpi-4.9-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm

Pull ACPI fixes from Rafael Wysocki:
 "Two ACPI fixes for 4.9-rc7.

  One of them reverts a recent ACPI commit that attempted to improve
  reboot/power-off on some systems, but introduced problems elsewhere,
  and the other one fixes kernel builds with the new WDAT watchdog
  driver enabled in some configurations.

  Specifics:

   - Revert the recent commit that caused the ACPI _PTS method to be
     executed in the power-off/reboot code path (as per the
     specification) in an attempt to improve things on some systems
     (apparently expecting _PTS to be executed in that code path), but
     broke power-off/reboot on at least one other machine (Rafael
     Wysocki).

   - Fix kernel builds with the new WDAT watchdog driver enabled in some
     configurations by explicitly selecting WATCHDOG_CORE when enabling
     the WDAT watchdog driver (Mika Westerberg)"

* tag 'acpi-4.9-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
  watchdog: wdat_wdt: Select WATCHDOG_CORE
  Revert "ACPI: Execute _PTS before system reboot"
2016-11-25 15:16:51 -08:00
Rafael J. Wysocki
686564434e MAINTAINERS: Add bug tracking system location entry type
Following the kernel Bugzilla discussion during the Kernel Summit
(https://lwn.net/Articles/705245/), add bug tracking system location
entry type (B) to MAINTAINERS and populate it for several subsystems
known to be using the kernel BZ actively (and add the upstream BZ for
ACPICA too).

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2016-11-25 15:16:28 -08:00
Niklas Cassel
c00f318841 ARM: dts: artpec: add pcie support
Add PCIe support to the ARTPEC-6 SoC. This uses the existing
pcie-artpec6 driver.
So, all that is needed is device tree entries in the DTS.

Signed-off-by: Niklas Cassel <niklas.cassel@axis.com>
Signed-off-by: Jesper Nilsson <jespern@axis.com>
2016-11-26 00:11:30 +01:00