summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2014-06-11bridge: memorize and export selected IGMP/MLD querier portLinus Lüssing3-6/+68
Adding bridge support to the batman-adv multicast optimization requires batman-adv knowing about the existence of bridged-in IGMP/MLD queriers to be able to reliably serve any multicast listener behind this same bridge. Signed-off-by: Linus Lüssing <linus.luessing@web.de> Signed-off-by: David S. Miller <davem@davemloft.net>
2014-06-11bridge: add export of multicast database adjacent to net_devLinus Lüssing3-12/+76
With this new, exported function br_multicast_list_adjacent(net_dev) a list of IPv4/6 addresses is returned. This list contains all multicast addresses sensed by the bridge multicast snooping feature on all bridge ports of the bridge interface of net_dev, excluding addresses from the specified net_device itself. Adding bridge support to the batman-adv multicast optimization requires batman-adv knowing about the existence of bridged-in multicast listeners to be able to reliably serve them with multicast packets. Signed-off-by: Linus Lüssing <linus.luessing@web.de> Signed-off-by: David S. Miller <davem@davemloft.net>
2014-06-11bridge: adhere to querier election mechanism specified by RFCsLinus Lüssing2-13/+95
MLDv1 (RFC2710 section 6), MLDv2 (RFC3810 section 7.6.2), IGMPv2 (RFC2236 section 3) and IGMPv3 (RFC3376 section 6.6.2) specify that the querier with lowest source address shall become the selected querier. So far the bridge stopped its querier as soon as it heard another querier regardless of its source address. This results in the "wrong" querier potentially becoming the active querier or a potential, unnecessary querying delay. With this patch the bridge memorizes the source address of the currently selected querier and ignores queries from queriers with a higher source address than the currently selected one. This slight optimization is supposed to make it more RFC compliant (but is rather uncritical and therefore probably not necessary to be queued for stable kernels). Signed-off-by: Linus Lüssing <linus.luessing@web.de> Signed-off-by: David S. Miller <davem@davemloft.net>
2014-06-11bridge: rename struct bridge_mcast_query/querierLinus Lüssing3-95/+100
The current naming of these two structs is very random, in that reversing their naming would not make any semantical difference. This patch tries to make the naming less confusing by giving them a more specific, distinguishable naming. This is also useful for the upcoming patches reintroducing the "struct bridge_mcast_querier" but for storing information about the selected querier (no matter if our own or a foreign querier). Signed-off-by: Linus Lüssing <linus.luessing@web.de> Signed-off-by: David S. Miller <davem@davemloft.net>
2014-06-11ipip, sit: fix ipv4_{update_pmtu,redirect} callsDmitry Popov2-4/+4
ipv4_{update_pmtu,redirect} were called with tunnel's ifindex (t->dev is a tunnel netdevice). It caused wrong route lookup and failure of pmtu update or redirect. We should use the same ifindex that we use in ip_route_output_* in *tunnel_xmit code. It is t->parms.link . Signed-off-by: Dmitry Popov <ixaphire@qrator.net> Signed-off-by: David S. Miller <davem@davemloft.net>
2014-06-11powerpc: Remove platforms/wsp and associated piecesMichael Ellerman32-4250/+1
__attribute__ ((unused)) WSP is the last user of CONFIG_PPC_A2, so we remove that as well. Although CONFIG_PPC_ICSWX still exists, it's no longer selectable for any Book3E platform, so we can remove the code in mmu-book3e.h that depended on it. Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
2014-06-11powerpc: Remove check for CONFIG_SERIAL_TEXT_DEBUGPaul Bolle1-19/+0
The Kconfig symbol SERIAL_TEXT_DEBUG was removed from arch/powerpc/Kconfig.debug in v2.6.22. (In v2.6.27 it was also removed from arch/ppc/Kconfig.debug.) So the check for its macro has evaluated to false for over five years now. Remove that check and the few lines of code hidden behind it. Signed-off-by: Paul Bolle <pebolle@tiscali.nl> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
2014-06-11powerpc: Add AT_HWCAP2 to indicate V.CRYPTO category supportBenjamin Herrenschmidt2-1/+3
The Vector Crypto category instructions are supported by current POWER8 chips, advertise them to userspace using a specific bit to properly differentiate with chips of the same architecture level that might not have them. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> CC: <stable@vger.kernel.org> [v3.10+]
2014-06-11Merge branch 'drm-nouveau-next' of ↵Dave Airlie90-1486/+3346
git://anongit.freedesktop.org/git/nouveau/linux-2.6 into drm-next display rework fixes lots of displayport issues. * 'drm-nouveau-next' of git://anongit.freedesktop.org/git/nouveau/linux-2.6: (43 commits) drm/nouveau/disp/dp: fix tmds passthrough on dp connector drm/nouveau/dp: probe dpcd to determine connectedness drm/nv50-: trigger update after all connectors disabled drm/nv50-: prepare for attaching a SOR to multiple heads drm/gf119-/disp: fix debug output on update failure drm/nouveau/disp/dp: make use of postcursor when its available drm/g94-/disp/dp: take max pullup value across all lanes drm/nouveau/bios/dp: parse lane postcursor data drm/nouveau/dp: fix support for dpms drm/nouveau: register a drm_dp_aux channel for each dp connector drm/g94-/disp: add method to power-off dp lanes drm/nouveau/disp/dp: maintain link in response to hpd signal drm/g94-/disp: bash and wait for something after changing lane power regs drm/nouveau/disp/dp: split link config/power into two steps drm/nv50/disp: train PIOR-attached DP from second supervisor drm/nouveau/disp/dp: make use of existing output data for link training drm/gf119/disp: start removing direct vbios parsing from supervisor drm/nv50/disp: start removing direct vbios parsing from supervisor drm/nouveau/disp/dp: maintain receiver caps in response to hpd signal drm/nouveau/disp/dp: create subclass for dp outputs ...
2014-06-11Merge MTD pullreq from 3.15-rc5Brian Norris0-0/+0
2014-06-11drm/nouveau/disp/dp: fix tmds passthrough on dp connectorBen Skeggs2-10/+54
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/nouveau/dp: probe dpcd to determine connectednessBen Skeggs3-40/+26
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/nv50-: trigger update after all connectors disabledBen Skeggs1-0/+1
We were sending the necessary state changes to unset the mode, but never actually hit the big GO button unless another modeset happens afterwards. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/nv50-: prepare for attaching a SOR to multiple headsBen Skeggs3-42/+46
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/gf119-/disp: fix debug output on update failureBen Skeggs1-3/+3
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/nouveau/disp/dp: make use of postcursor when its availableBen Skeggs1-8/+18
And at the same time, obey the spec better wrt out-of-range requests. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/g94-/disp/dp: take max pullup value across all lanesBen Skeggs2-2/+6
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/nouveau/bios/dp: parse lane postcursor dataBen Skeggs4-24/+27
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/nouveau/dp: fix support for dpmsBen Skeggs2-4/+50
SOR_PWR has no effect to power-off DP links, unlike other SOR protocols. Instead, on the source side, we cut power to the lanes after having put the sink into D3. Link training takes care of everything required to bring it back again. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/nouveau: register a drm_dp_aux channel for each dp connectorBen Skeggs2-3/+55
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/g94-/disp: add method to power-off dp lanesBen Skeggs5-0/+35
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/nouveau/disp/dp: maintain link in response to hpd signalBen Skeggs6-12/+125
This previously worked for the most part due to userspace doing a modeset in response to HPD interrupts. This will allow us to properly handle cases where sync is lost for other reasons, or if userspace isn't caring. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/g94-/disp: bash and wait for something after changing lane power regsBen Skeggs1-0/+3
Some kind of update? Needed to make the power-down take effect at least. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/nouveau/disp/dp: split link config/power into two stepsBen Skeggs6-12/+29
We want to be able to power down the lanes for DPMS off. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/nv50/disp: train PIOR-attached DP from second supervisorBen Skeggs1-21/+11
Same place as for SOR, between detach and attach phases. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/nouveau/disp/dp: make use of existing output data for link trainingBen Skeggs16-248/+133
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/gf119/disp: start removing direct vbios parsing from supervisorBen Skeggs1-75/+83
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/nv50/disp: start removing direct vbios parsing from supervisorBen Skeggs1-107/+116
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/nouveau/disp/dp: maintain receiver caps in response to hpd signalBen Skeggs2-8/+68
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/nouveau/disp/dp: create subclass for dp outputsBen Skeggs16-9/+265
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/nouveau: use connector events for HPD instead of GPIO watchingBen Skeggs3-44/+34
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/nouveau/disp: add internal representaion of output paths and connectorsBen Skeggs10-2/+619
This will, at some point, be used to replace various bits and pieces of code doing direct bios parsing. For now, it'll just be used for some DP improvements. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/nouveau/bios: extend connector table parsingBen Skeggs4-16/+79
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/nouveau/disp: nothing to see hereBen Skeggs3-21/+42
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/nouveau/i2c/anx9805: add debugging to aux transactionsBen Skeggs2-5/+34
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/nouveau/i2c: introduce locking at a per-port levelBen Skeggs14-34/+380
There's also provisions to allow a pad to be locked with a specific routing, for an indefinite period of time. This will be used in future patches. The G94+ pad driver will now also power-down pads when not required. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/nouveau/i2c: balance port acquire/releaseBen Skeggs4-14/+56
This was a half-finished hack before, just enough to handle the shared aux/i2c pad thing on G94 and up. We got lucky with locking etc up until now, as this was (generally) all protected by the DRM mode_config lock. It's about to become a lot more likely to hit the races. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/gk104/i2c: add aux channel interrupt driverBen Skeggs6-6/+79
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/g94/i2c: add aux channel interrupt driverBen Skeggs3-0/+39
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/nouveau/i2c: add interfaces to support handling aux channel interruptsBen Skeggs4-0/+94
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/nouveau/i2c: start hiding subdev-internal interfacesBen Skeggs21-236/+194
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/nouveau/i2c: remove unnecessary i2c_set_adapdata()Ben Skeggs1-2/+0
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/nouveau/i2c: properly hand aux reply back to caller, and only retry on deferBen Skeggs4-14/+20
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/nv50-/mc: also pass PMGR interrupts onto I2C subdevBen Skeggs3-3/+6
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/nouveau/gpio: send separate event types for high/low transitionsBen Skeggs4-14/+17
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/nouveau/gpio: use base constructor for all implementationsBen Skeggs8-119/+47
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/nouveau/gpio: move on-reset intr disable-and-ack to common codeBen Skeggs7-138/+80
Re-uses the implementation's accessor functions rather than requiring and init/fini implementation for each chipset. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/nouveau/gpio: split "toggled" interrupt into "went high" / "went low"Ben Skeggs7-114/+156
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/nouveau/gpio: split g92 class from nv50Ben Skeggs11-58/+110
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-06-11drm/nouveau/gpio: use indirect pointer to base class definitionBen Skeggs13-75/+75
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>