Commit Graph

441217 Commits

Author SHA1 Message Date
Paolo Bonzini
36be0b9deb KVM: x86: Add nested virtualization support for MPX
This is simple to do, the "host" BNDCFGS is either 0 or the guest value.
However, both controls have to be present.  We cannot provide MPX if
we only have one of the "load BNDCFGS" or "clear BNDCFGS" controls.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2014-03-17 12:21:39 +01:00
Paolo Bonzini
4ff417320c KVM: x86: introduce kvm_supported_xcr0()
XSAVE support for KVM is already using host_xcr0 & KVM_SUPPORTED_XCR0 as
a "dynamic" version of KVM_SUPPORTED_XCR0.

However, this is not enough because the MPX bits should not be presented
to the guest unless kvm_x86_ops confirms the support.  So, replace all
instances of host_xcr0 & KVM_SUPPORTED_XCR0 with a new function
kvm_supported_xcr0() that also has this check.

Note that here:

		if (xstate_bv & ~KVM_SUPPORTED_XCR0)
			return -EINVAL;
		if (xstate_bv & ~host_cr0)
			return -EINVAL;

the code is equivalent to

		if ((xstate_bv & ~KVM_SUPPORTED_XCR0) ||
		    (xstate_bv & ~host_cr0)
			return -EINVAL;

i.e. "xstate_bv & (~KVM_SUPPORTED_XCR0 | ~host_cr0)" which is in turn
equal to "xstate_bv & ~(KVM_SUPPORTED_XCR0 & host_cr0)".  So we should
also use the new function there.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2014-03-17 12:21:38 +01:00
Paolo Bonzini
94b3ffcd41 Merge tag 'kvm-s390-20140317' of git://git.kernel.org/pub/scm/linux/kernel/git/kvms390/linux into HEAD
Two patches:
- one regression fix for reducing the amount of ucontrol userspace exits
- get rid of BUG_ONs in hot inner loops
2014-03-17 12:21:35 +01:00
Arnd Bergmann
0f4d5641a6 Merge tag 'mvebu-dt-3.15-5' of git://git.infradead.org/linux-mvebu into next/dt
Merge "mvebu dt changes for v3.15 (incremental #5)" from Jason Cooper:

 - mvebu

    - 38x
       - add 2GHz fixed clock, core divider clock, and nand controller

    - 385
       - add nand controller and partitions to 385-DB board

* tag 'mvebu-dt-3.15-5' of git://git.infradead.org/linux-mvebu:
  ARM: mvebu: Enable NAND controller in Armada 385-DB
  ARM: mvebu: Add support for NAND controller in Armada 38x SoC
  ARM: mvebu: Add the Core Divider clock to Armada 38x SoCs
  ARM: mvebu: Add a 2 GHz fixed-clock on Armada 38x SoCs

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-03-17 12:21:17 +01:00
Arnd Bergmann
64d865f403 Merge tag 'mvebu-dt-3.15-4' of git://git.infradead.org/linux-mvebu into next/dt
Merge "mvebu dt changes for v3.15 (incremental #4)" from Jason Cooper:

 - dove
    - add system controller node
    - drop pinctrl PMU reg property _before_ it hits mainline and becomes ABI

 - mvebu
    - XP/370
       - change default PCIe apertures
       - switch GP and DB boards internal registers to 0xf1000000
       - correct RAM size on Matrix board
    - 385
       - correct phy connection type for DB board
       - add RD board

* tag 'mvebu-dt-3.15-4' of git://git.infradead.org/linux-mvebu:
  ARM: dove: drop pinctrl PMU reg property
  ARM: mvebu: add Device Tree for the Armada 385 RD board
  ARM: mvebu: use the correct phy connection mode on Armada 385 DB
  ARM: mvebu: the Armada XP Matrix board has 4 GB
  ARM: mvebu: switch the Armada XP GP to use internal registers at 0xf1000000
  ARM: mvebu: switch the Armada XP DB to use internal registers at 0xf1000000
  ARM: mvebu: change the default PCIe apertures for Armada 370/XP
  ARM: dove: add system controller node

Conflicts:
	arch/arm/boot/dts/Makefile

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-03-17 12:20:27 +01:00
Igor Mammedov
6fec27d80f KVM: x86 emulator: emulate MOVAPD
Add emulation for 0x66 prefixed instruction of 0f 28 opcode
that has been added earlier.

Signed-off-by: Igor Mammedov <imammedo@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2014-03-17 12:14:30 +01:00
Igor Mammedov
27ce825823 KVM: x86 emulator: emulate MOVAPS
HCK memory driver test fails when testing 32-bit Windows 8.1
with baloon driver.

tracing KVM shows error:
reason EXIT_ERR rip 0x81c18326 info 0 0

x/10i 0x81c18326-20
0x0000000081c18312:  add    %al,(%eax)
0x0000000081c18314:  add    %cl,-0x7127711d(%esi)
0x0000000081c1831a:  rolb   $0x0,0x80ec(%ecx)
0x0000000081c18321:  and    $0xfffffff0,%esp
0x0000000081c18324:  mov    %esp,%esi
0x0000000081c18326:  movaps %xmm0,(%esi)
0x0000000081c18329:  movaps %xmm1,0x10(%esi)
0x0000000081c1832d:  movaps %xmm2,0x20(%esi)
0x0000000081c18331:  movaps %xmm3,0x30(%esi)
0x0000000081c18335:  movaps %xmm4,0x40(%esi)

which points to MOVAPS instruction currently no emulated by KVM.
Fix it by adding appropriate entries to opcode table in KVM's emulator.

Signed-off-by: Igor Mammedov <imammedo@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2014-03-17 12:14:24 +01:00
Arnd Bergmann
54cab10f63 Merge branch 'mvebu/soc3' into next/dt
The dts Makefile has a bunch of nasty conflicts, attempt to resolve
these now to avoid trouble later.

Conflicts:
	arch/arm/boot/dts/Makefile

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-03-17 12:13:09 +01:00
Denis Carikli
cf071d2ab3 video: imxfb: Add DT default contrast control register property.
Signed-off-by: Denis Carikli <denis@eukrea.com>
Acked-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Acked-by: Grant Likely <grant.likely@linaro.org>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2014-03-17 12:26:28 +02:00
Arnd Bergmann
3a516b6afb Merge tag 'mvebu-defconfig-3.15-2' of git://git.infradead.org/linux-mvebu into next/boards
Merge "mvebu defconfig changes for v3.15 (incremental pull #2)" from Jason Cooper

 - add multi_v5_defconfig
 - add mvebu_v5_defconfig
 - kirkwood: add HP T5325 devices

* tag 'mvebu-defconfig-3.15-2' of git://git.infradead.org/linux-mvebu:
  ARM: kirkwood: Add HP T5325 devices to {multi|mvebu}_v5_defconfig
  ARM: config: Add mvebu_v5_defconfig
  ARM: config: Add a multi_v5_defconfig

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-03-17 11:23:35 +01:00
Daniel Vetter
c94adc4a65 drm: Fix use-after-free in the shadow-attache exit code
This regression has been introduced in

commit b3f2333de8
Author: Daniel Vetter <daniel.vetter@ffwll.ch>
Date:   Wed Dec 11 11:34:31 2013 +0100

    drm: restrict the device list for shadow attached drivers

Reported-by: Dave Jones <davej@redhat.com>
Cc: Dave Jones <davej@redhat.com>
Cc: Dave Airlie <airlied@redhat.com>
Cc: David Herrmann <dh.herrmann@gmail.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Reviewed-by: David Herrmann <dh.herrmann@gmail.com>
2014-03-17 11:23:31 +01:00
Xiubo Li
04cfe97eb1 drm/fb-helper: Do the 'max_conn_count' zero check
Since we cannot make sure the 'max_conn_count' will always be none
zero from the users, and then if max_conn_count equals to zero, the
kcalloc() will return ZERO_SIZE_PTR, which equals to ((void *)16).

So this patch fix this with just doing the 'max_conn_count' zero check
in the front of drm_fb_helper_init().

Signed-off-by: Xiubo Li <Li.Xiubo@freescale.com>
CC: Jani Nikula <jani.nikula@linux.intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-17 11:23:08 +01:00
Damien Lespiau
409bbf1e3d drm: Check if the allocation has succeeded before dereferencing newmode
We allocate memory in drm_display_mode_from_vic_index() and use it
without checking the pointer is valid. Fix that.

Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-17 11:23:07 +01:00
Ville Syrjälä
366d480700 drm/fb-helper: Use drm_fb_helper_restore_fbdev_mode() in drm_fb_helper_set_par()
Use drm_fb_helper_restore_fbdev_mode() in drm_fb_helper_set_par() to
make sure extra planes get disabled whenever fbcon takes over.

Otherwise the code in drm_fb_helper_set_par() was already doing the
exact same thing as drm_fb_helper_restore_fbdev_mode(), so this doesn't
change the behaviour in any other way.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-17 11:23:07 +01:00
Arnd Bergmann
cda88c8be5 Merge tag 'mvebu-drivers-3.15-2' of git://git.infradead.org/linux-mvebu into next/drivers
Merge "mvebu drivers for v3.15" from Jason Cooper:

pull request #1:

 - mvebu mbus
    - use of_find_matching_node_and_match

 - rtc
    - use PTR_ERR_OR_ZERO in isl12057
    - work around issue in mv where date returned is 2038

 - kirkwood -> mach-mvebu
    - various Kconfig oneliners to allow building kirkwood in -mvebu/

pull request #2:

 - reset
    - re-use qnap-poweroff driver for Synology NASs

* tag 'mvebu-drivers-3.15-2' of git://git.infradead.org/linux-mvebu:
  Power: Reset: Generalize qnap-poweroff to work on Synology devices.
  drivers: Enable building of Kirkwood drivers for mach-mvebu
  rtc: mv: reset date if after year 2038
  rtc: isl12057: use PTR_ERR_OR_ZERO to fix coccinelle warnings
  bus: mvebu-mbus: make use of of_find_matching_node_and_match

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-03-17 11:14:34 +01:00
Florian Westphal
7d08487777 netfilter: connlimit: use rbtree for per-host conntrack obj storage
With current match design every invocation of the connlimit_match
function means we have to perform (number_of_conntracks % 256) lookups
in the conntrack table [ to perform GC/delete stale entries ].
This is also the reason why ____nf_conntrack_find() in perf top has
> 20% cpu time per core.

This patch changes the storage to rbtree which cuts down the number of
ct objects that need testing.

When looking up a new tuple, we only test the connections of the host
objects we visit while searching for the wanted host/network (or
the leaf we need to insert at).

The slot count is reduced to 32.  Increasing slot count doesn't
speed up things much because of rbtree nature.

before patch (50kpps rx, 10kpps tx):
+  20.95%  ksoftirqd/0  [nf_conntrack] [k] ____nf_conntrack_find
+  20.50%  ksoftirqd/1  [nf_conntrack] [k] ____nf_conntrack_find
+  20.27%  ksoftirqd/2  [nf_conntrack] [k] ____nf_conntrack_find
+   5.76%  ksoftirqd/1  [nf_conntrack] [k] hash_conntrack_raw
+   5.39%  ksoftirqd/2  [nf_conntrack] [k] hash_conntrack_raw
+   5.35%  ksoftirqd/0  [nf_conntrack] [k] hash_conntrack_raw

after (90kpps, 51kpps tx):
+  17.24%       swapper  [nf_conntrack]    [k] ____nf_conntrack_find
+   6.60%   ksoftirqd/2  [nf_conntrack]    [k] ____nf_conntrack_find
+   2.73%       swapper  [nf_conntrack]    [k] hash_conntrack_raw
+   2.36%       swapper  [xt_connlimit]    [k] count_tree

Obvious disadvantages to previous version are the increase in code
complexity and the increased memory cost.

Partially based on Eric Dumazets fq scheduler.

Reviewed-by: Jesper Dangaard Brouer <brouer@redhat.com>
Signed-off-by: Florian Westphal <fw@strlen.de>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
2014-03-17 11:11:57 +01:00
Florian Westphal
50e0e9b129 netfilter: connlimit: make same_source_net signed
currently returns 1 if they're the same.  Make it work like mem/strcmp
so it can be used as rbtree search function.

Reviewed-by: Jesper Dangaard Brouer <brouer@redhat.com>
Signed-off-by: Florian Westphal <fw@strlen.de>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
2014-03-17 11:11:52 +01:00
Florian Westphal
1442e7507d netfilter: connlimit: use keyed locks
connlimit currently suffers from spinlock contention, example for
4-core system with rps enabled:

+  20.84%   ksoftirqd/2  [kernel.kallsyms] [k] _raw_spin_lock_bh
+  20.76%   ksoftirqd/1  [kernel.kallsyms] [k] _raw_spin_lock_bh
+  20.42%   ksoftirqd/0  [kernel.kallsyms] [k] _raw_spin_lock_bh
+   6.07%   ksoftirqd/2  [nf_conntrack]    [k] ____nf_conntrack_find
+   6.07%   ksoftirqd/1  [nf_conntrack]    [k] ____nf_conntrack_find
+   5.97%   ksoftirqd/0  [nf_conntrack]    [k] ____nf_conntrack_find
+   2.47%   ksoftirqd/2  [nf_conntrack]    [k] hash_conntrack_raw
+   2.45%   ksoftirqd/0  [nf_conntrack]    [k] hash_conntrack_raw
+   2.44%   ksoftirqd/1  [nf_conntrack]    [k] hash_conntrack_raw

May allow parallel lookup/insert/delete if the entry is hashed to
another slot.  With patch:

+  20.95%  ksoftirqd/0  [nf_conntrack] [k] ____nf_conntrack_find
+  20.50%  ksoftirqd/1  [nf_conntrack] [k] ____nf_conntrack_find
+  20.27%  ksoftirqd/2  [nf_conntrack] [k] ____nf_conntrack_find
+   5.76%  ksoftirqd/1  [nf_conntrack] [k] hash_conntrack_raw
+   5.39%  ksoftirqd/2  [nf_conntrack] [k] hash_conntrack_raw
+   5.35%  ksoftirqd/0  [nf_conntrack] [k] hash_conntrack_raw
+   2.00%  ksoftirqd/1  [kernel.kallsyms] [k] __rcu_read_unlock

Improved rx processing rate from ~35kpps to ~50 kpps.

Reviewed-by: Jesper Dangaard Brouer <brouer@redhat.com>
Signed-off-by: Florian Westphal <fw@strlen.de>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
2014-03-17 11:11:49 +01:00
Christian Borntraeger
2955c83f72 KVM: s390: Optimize ucontrol path
Since commit 7c470539c9
(s390/kvm: avoid automatic sie reentry) we will run through the C code
of KVM on host interrupts instead of just reentering the guest. This
will result in additional ucontrol exits (at least HZ per second). Let
handle a 0 intercept in the kernel and dont return to userspace,
even if in ucontrol mode.

Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Reviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com>
CC: stable@vger.kernel.org
2014-03-17 11:06:51 +01:00
Dominik Dingel
fed495d25e KVM: s390: Removing untriggerable BUG_ONs
The BUG_ON in kvm-s390.c is unreachable, as we get the vcpu per common code,
which itself does this from the private_data field of the file descriptor,
and there is no KVM_UNCREATE_VCPU.

The __{set,unset}_cpu_idle BUG_ONs are not triggerable because the vcpu
creation code already checks against KVM_MAX_VCPUS.

Signed-off-by: Dominik Dingel <dingel@linux.vnet.ibm.com>
Acked-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
2014-03-17 11:06:45 +01:00
Arnd Bergmann
e887ae25b0 Merge tag 'mvebu-dt-3.15-3' of git://git.infradead.org/linux-mvebu into next/dt
Merge "mvebu dt changes for v3.15 (incremental pull #3)" from Jason Cooper:

 - mvebu
    - merge armada 375, 380, 385 boards (mvebu/dt-3xx)

 - kirkwood
    - Add many Synology NAS boards
    - add board HP T5325
    - add L2 cache node
    - add system-controller node
    - add audio node

 - dove
    - add pinctrl and global-config register

Depends:
 - tags/mvebu-dt-fixes-3.14 (mvebu/dt-fixes)
    - removed dove PMU interrupt controller

Conflicts:
 - mvebu/soc (arch/arm/boot/dts/Makefile)
    - add/add conflict.
    - move CONFIG_ARCH_LPC32XX to alphabetical order (after KIRKWOOD)

* tag 'mvebu-dt-3.15-3' of git://git.infradead.org/linux-mvebu:
  ARM: kirkwood: Add dts file describing HP T5325 thin client
  ARM: kirkwood: Add i2c alias so setting bus number
  ARM: kirkwood: Add audio node to kirkwood.dtsi
  ARM: mvebu: select dtbs from MACH_ARMADA_*
  ARM: dove: add global-config register node
  ARM: dove: add additional pinctrl registers
  ARM: mvebu: Instantiate system controller in kirkwood.dtsi
  ARM: kirkwood: Instantiate L2 cache from DT.
  ARM: mvebu: use macros for interrupt flags on Armada 375/38x
  ARM: mvebu: use GIC_{SPI,PPI} in Armada 375/38x DTs
  ARM: mvebu: use C preprocessor include for Armada 375/38x DTs
  ARM: Kirkwood: Add support for many Synology NAS devices
  DT: i2c: Trivial: Add sii,s35390a
  DT: Vendor prefixes: Add ricoh, qnap, sii and synology
  ARM: dove: dt: revert PMU interrupt controller node
  ARM: mvebu: add Device Tree for the Armada 385 DB board
  ARM: mvebu: add Device Tree description of the Armada 380/385 SoCs
  ARM: mvebu: add Device Tree for the Armada 375 DB board
  ARM: mvebu: add Device Tree description of the Armada 375 SoC
  ARM: mvebu: dt: add missing alias 'eth3' on Armada XP mv78260

Conflicts:
	Documentation/devicetree/bindings/vendor-prefixes.txt
	arch/arm/boot/dts/Makefile

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-03-17 11:05:37 +01:00
Arnd Bergmann
e7f274dccf Merge tag 'mvebu-soc-3.15-3' of git://git.infradead.org/linux-mvebu into next/soc
Merge "mvebu soc changes for v3.15 (incremental #3)" from Jason Cooper:

 - dove
    - move devicetree code from mach-dove/ to mach-mvebu/ :-)

* tag 'mvebu-soc-3.15-3' of git://git.infradead.org/linux-mvebu:
  ARM: mvebu: move DT Dove to MVEBU

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-03-17 10:53:49 +01:00
Arnd Bergmann
d4324ce357 Merge tag 'mvebu-soc-3.15-2' of git://git.infradead.org/linux-mvebu into next/soc
Merge "mvebu soc changes for v3.15 (incremental pull #2)" from Jason Cooper:

 - mvebu
    - Add Armada 375, 380 and 385 SoCs

 - kirkwood
    - move kirkwood DT support to mach-mvebu
    - add mostly DT support for HP T5325 thin client

* tag 'mvebu-soc-3.15-2' of git://git.infradead.org/linux-mvebu:
  ARM: kirkwood: Add HP T5325 thin client
  ARM: kirkwood: select dtbs based on SoC
  ARM: kirkwood: Remove redundant kexec code
  ARM: mvebu: Armada 375/38x depend on MULTI_V7
  ARM: mvebu: Simplify headers and make local
  ARM: mvebu: Enable mvebu-soc-id on Kirkwood
  ARM: mvebu: Let kirkwood use the system controller for restart
  ARM: mvebu: Move kirkwood DT boards into mach-mvebu
  ARM: MM Enable building Feroceon L2 cache controller with ARCH_MVEBU
  ARM: Fix default CPU selection for ARCH_MULTI_V5
  ARM: MM: Add DT binding for Feroceon L2 cache
  ARM: orion: Move cache-feroceon-l2.h out of plat-orion
  ARM: mvebu: Add ARCH_MULTI_V7 to SoCs
  ARM: kirkwood: ioremap memory control register
  ARM: kirkwood: ioremap the cpu_config register before using it.
  ARM: kirkwood: Separate board-dt from common and pcie code.
  ARM: kirkwood: Drop printing the SoC type and revision
  ARM: kirkwood: Convert mv88f6281gtw_ge switch setup to DT
  ARM: kirkwood: Give pm.c its own header file.
  ARM: mvebu: Rename the ARCH_MVEBU menu option

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-03-17 10:49:14 +01:00
Arnd Bergmann
de65ded49e Merge tag 'socfpga_updates_for_3.15_v2' of git://git.rocketboards.org/linux-socfpga-next into next/drivers
Merge "SOCFPGA updates for 3.15 version 2" from Dinh Nguyen:

*Update SOCFPGA DTS to include ethernet, sd/mmc, and clock fixes
*Add stmmac ethernet glue layer
*Update socfpga_defconfig to include sd/mmc, and micrel_phy

* tag 'socfpga_updates_for_3.15_v2' of git://git.rocketboards.org/linux-socfpga-next:
  dts: socfpga: Add sysmgr node so the gmac can use to reference
  dts: socfpga: Add support for SD/MMC on the SOCFPGA platform
  dts: socfpga: Update clock entry to support multiple parents
  ARM: socfpga: Update socfpga_defconfig
  dts: socfpga: Add DTS entry for adding the stmmac glue layer for stmmac.
  net: stmmac: Add SOCFPGA glue driver

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-03-17 10:26:40 +01:00
Arnd Bergmann
3c883ef345 Merge tag 'efm32-next' of git://git.pengutronix.de/git/ukl/linux into next/dt
Merge "Two more dt related efm32 fixes" from Uwe Kleine-König:

* tag 'efm32-next' of git://git.pengutronix.de/git/ukl/linux:
  ARM: efm32: properly namespace i2c location property
  ARM: efm32: fix unit address part in USART2 device nodes' names

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-03-17 10:14:46 +01:00
Arnd Bergmann
8d445234dc Merge branch 'efm32/cleanup' into next/dt
Dependency for efm32/dt branch.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-03-17 10:14:20 +01:00
Alexander Shiyan
76aeec83e4 can: mcp251x: Fix regulators operation without CONFIG_REGULATOR
If CONFIG_REGULATOR is not set, devm_regulator_get() returns NULL,
so use IS_ERR_OR_NULL() macro for checks.

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2014-03-17 09:20:17 +01:00
Christopher R. Baker
3e66d0138c can: populate netdev::dev_id for udev discrimination
My objective is to be able to totally discriminate CAN ports on multi-port
cards via udev so as to rename them to semantically interesting/unique names
for my system (e.g., "ecuCAN" and "auxCAN" instead of "can0" and "can1").

The following patch assigns the dev_id field to match the channel number on all
multi-channel devices. I can only test my two-port Peak PCI card, but it works
as expected: ATTRS{dev_id} now expresses the port number and my udev rules now
unambiguously pick out and rename my individual CAN ports.

Signed-off-by: Christopher R. Baker <cbaker@rec.ri.cmu.edu>
Tested-by: Oliver Hartkopp <socketcan@hartkopp.net> [PEAK PCAN-USB pro and EMS PCMCIA]
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2014-03-17 09:20:16 +01:00
Oliver Hartkopp
c971fa2ae4 can: Unify MTU settings for CAN interfaces
CAN interfaces only support MTU values of 16 (CAN 2.0) and 72 (CAN FD).
Setting the MTU to other values is pointless but it does not really hurt.
With the introduction of the CAN FD support in drivers/net/can a new
function to switch the MTU for CAN FD has been introduced.

This patch makes use of this can_change_mtu() function to check for correct
MTU settings also in legacy CAN (2.0) devices.

Signed-off-by: Oliver Hartkopp <socketcan@hartkopp.net>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2014-03-17 09:20:16 +01:00
Olof Johansson
a929478f67 Merge tag 'renesas-clock4-for-v3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/drivers
Merge "Fourth Round of Renesas ARM Based SoC Clock Updates for v3.15" from
Simon Horman:

r8a7791 (R-Car M2) SoC
* Correct SCIFA3-5 clocks

* tag 'renesas-clock4-for-v3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: shmobile: r8a7791: Fix SCIFA3-5 clocks

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-03-17 00:50:41 -07:00
Olof Johansson
56f55deb6e Merge tag 'renesas-soc3-for-v3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/soc
Merge "Third Round of Renesas ARM Based SoC Updates for v3.15" from Simon
Horman:

Fix warnings due to improper printk formats in shared APMU code.

* tag 'renesas-soc3-for-v3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: shmobile: APMU: Fix warnings due to improper printk formats

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-03-17 00:49:36 -07:00
Olof Johansson
5e79cc1f40 Merge tag 'renesas-clock3-for-v3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/drivers
Merge "Third Round of Renesas ARM Based SoC Clock Updates for v3.15" from Simon
Horman:

r7s72100 (RZ/A1H) SoC
* Correct bus clock calculation

* tag 'renesas-clock3-for-v3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: shmobile: r7s72100: fix bus clock calculation

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-03-17 00:48:44 -07:00
Olof Johansson
7070008066 Merge tag 'renesas-clock2-for-v3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/drivers
Merge "Second Round of Renesas ARM Based SoC Clock Updates for v3.15" from
Simon Horman:

r8a7790 (R-Car H2) SoC
- Add sound SCU clock support

r8a7791 (R-Car M2) SoC
- Remove legacy clock aliases for DT devices

* tag 'renesas-clock2-for-v3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: shmobile: r8a7790: add sound SCU clock support
  ARM: shmobile: r8a7791: Remove legacy clock aliases for DT devices

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-03-17 00:47:52 -07:00
Olof Johansson
c5d326c22b Merge tag 'renesas-dt4-for-v3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/dt
Merge "Fourth Round of Renesas ARM Based SoC DT Updates for v3.15" from Simon
Horman:

* r8a7791 (R-Car M2) based koelsch board
  - Add SDHI devices
  - Add ethernet

* r8a7791 (R-Car M2) SoC
  - Correct clock index for i2c5

* r8a7790 (R-Car H2) based lager board
  - Add ethernet

* tag 'renesas-dt4-for-v3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: shmobile: Add SDHI devices for Koelsch DTS
  ARM: shmobile: Add SDHI devices to r8a7791 DTSI
  ARM: shmobile: r8a7791: fix clock index for i2c5
  ARM: shmobile: koelsch: add Ether DT support
  ARM: shmobile: r8a7791: add Ether DT support
  ARM: shmobile: lager: add Ether DT support
  ARM: shmobile: r8a7790: add Ether DT support

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-03-17 00:46:17 -07:00
Olof Johansson
4664f3d339 Merge tag 'renesas-soc2-for-v3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/soc
Merge "Second Round of Renesas ARM Based SoC Updates for v3.15" from Simon
Horman:

* R-Car Gen2 SoCs: r8a7791 (R-Car M2) and r8a7790 (R-Car H2)
  - Remove __init from rcar_gen2_read_mode_pins()

* r8a7791 (R-Car M2)
  - Use 64-bit dma_addr_t

* r8a7790 (R-Car H2)
  - Add CA15-SCU, CA7-SCU
  - Add SYSC setup code
  - Use 64-bit dma_addr_t

* tag 'renesas-soc2-for-v3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: shmobile: Move SYSC base variable to inside ifdefs
  ARM: shmobile: Remove __init from rcar_gen2_read_mode_pins()
  ARM: shmobile: r8a7790 CA15-SCU enablement
  ARM: shmobile: r8a7790 CA7-SCU enablement
  ARM: shmobile: r8a7790 SYSC setup code
  ARM: shmobile: Break out R-Car SYSC PM code
  ARM: shmobile: Use 64-bit dma_addr_t on r8a7790/r8a7791

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-03-17 00:38:40 -07:00
Olof Johansson
6020dd9b01 Merge tag 'renesas-clock-for-v3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/drivers
Merge "Renesas ARM Based SoC Clock Updates for v3.15" from Simon Horman:

* r7s72100 SoC (RZ/A1H)
  - Add clock for SH Ethernet
  - Add RSPI clocks

* r8a7791 (R-Car M2)
  - Add QSPI and SDHI clocks

* r8a7790 (R-Car H2)
  - Add audio clock
  - Remove legacy DT clocks
  - Correct SYS DMAC clock defines

* tag 'renesas-clock-for-v3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: shmobile: Remove legacy r8a7790 DT clocks
  ARM: shmobile: Add r8a7791 legacy SDHI clocks
  ARM: shmobile: r8a7790: Correct SYS DMAC clock defines
  ARM: shmobile: r7s72100: Add clock for r7s72100-ether
  ARM: shmobile: r8a7791 clock: add QSPI clocks
  ARM: shmobile: r7s72100 clock: Add RSPI clocks for DT
  ARM: shmobile: r7s72100 clock: Add RSPI clocks
  ARM: shmobile: r8a7790: add audio clock
  ARM: shmobile: r8a7778: add audio clock in new style

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-03-17 00:36:37 -07:00
Olof Johansson
46d34000e3 Merge tag 'renesas-dt3-for-v3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/dt
Merge "Third Round of Renesas ARM Based SoC DT Updates for v3.15" from Simon
Horman:

* r7s72100 SoC (RZ/A1H)
  - Add nodes for i2c controllers to DT

* r7s72100 (RZ/A1H) based Genmai board
  - genmai: adapt dts to use native i2c driver

* r8a7791 SoC (R-Car M2)
  - Remove superfluous interrupt-parents

* r8a7791 (R-Car M2) based Koelsch board
  - Add i2c2 bus to DT
  - Add DU device to DT

* r8a7790 SoC (R-Car H2)
  - Add i2c aliases
  - Remove superfluous interrupt-parents
  - Add QSPI node

* r8a7790 SoC (R-Car M2) based Lager
  - Add DU, SDHI0/1 and QSPI to DT

* r8a7778 SoC (R-Car M1)
  - Remove duplicate i2c nodes

* tag 'renesas-dt3-for-v3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: shmobile: genmai: adapt dts to use native i2c driver
  ARM: shmobile: r7s72100: add nodes for i2c controllers to dtsi
  ARM: shmobile: r8a7791: add i2c2 bus to koelsch dt
  ARM: shmobile: r8a7791: add i2c master nodes to dtsi
  ARM: shmobile: r8a7790: add i2c aliases to dtsi
  ARM: shmobile: r8a7790: remove superfluous interrupt-parents
  ARM: shmobile: r8a7791: remove superfluous interrupt-parents
  ARM: shmobile: koelsch-reference: Add DU device to DTS
  ARM: shmobile: lager: Add DU device to DTS
  ARM: shmobile: r8a7778 dtsi: Remove duplicate i2c nodes
  ARM: shmobile: lager: add SDHI0/2 support on DTS
  ARM: shmobile: lager dts: Add QSPI nodes
  ARM: shmobile: r8a7790 dtsi: Add QSPI node

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-03-17 00:16:56 -07:00
Olof Johansson
af8cdfd332 Merge tag 'renesas-defconfig3-for-v3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/boards
Merge "Third Round of Renesas ARM Based SoC Defconfig Updates for v3.15" from
Simon Horman:

* r7s72100 (RZ/A1H) based Genmai board
  - update defconfig for I2C usage

* r8a7791 (R-Car M2) based Koelsch board
  - Enable SDHI, GPIO and regulators in defconfig

* r8a7790 (R-Car H2) based Lager board
  - Enable RSPI and MTD_M25P80

* emev2 (Emma Mobile) based KZM9D board
  - Remove legacy KZM9D defconfig

* Multiplatform
  - Add defconfig for shmobile multiplatform

* tag 'renesas-defconfig3-for-v3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: shmobile: r7s72100: update defconfig for I2C usage
  ARM: shmobile: koelsch: Enable SDHI, GPIO and regulators in defconfig
  ARM: shmobile: Get rid of legacy KZM9D defconfig
  ARM: shmobile: Add defconfig for shmobile multiplatform
  ARM: shmobile: lager defconfig: Enable RSPI and MTD_M25P80

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-03-17 00:02:36 -07:00
Olof Johansson
d89893272a Merge tag 'renesas-boards3-for-v3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/boards
Merge "Third Round of Renesas ARM Based SoC Boards Updates for v3.15" from
Simon Horman:

* r7s72100 SoC (RZ/A1H) based Genmai board
  - Set proper DMA masks for Ether device

* r8a7791 (R-Car M2) based Koelsch board
  - Remove Koelsch DT reference legacy clock bits
  - Set proper DMA masks for Ether device
  - Add DU device to koelsch-reference
  - Refactor clock lookup hack in koelsch-reference
  - Add SDHI devices

* r8a7790 (R-Car H2) based Lager board
  - Remove Lager DT reference legacy clock bits
  - Set proper DMA masks for Ether device
  - Add internal USB PCI support
  - Add QSPI pinmux
  - Sdd SDHI0/2 support

* emev2 (Emma Mobile EV2) based kzm9d board
  - Remove KZM9D board code

* r8a7778 (R-Car M1) based bock-w board
  - Set proper DMA masks for Ether device

* r8a7740 (R-Mobile A1) based Armadillo 800 EVA board
  - Set proper DMA masks for Ether device

* tag 'renesas-boards3-for-v3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: shmobile: Remove Lager DT reference legacy clock bits
  ARM: shmobile: Remove Koelsch DT reference legacy clock bits
  ARM: shmobile: Remove KZM9D board code
  ARM: shmobile: Genmai: set proper DMA masks for Ether device
  ARM: shmobile: Koelsch: set proper DMA masks for Ether device
  ARM: shmobile: Lager: set proper DMA masks for Ether device
  ARM: shmobile: BOCK-W: set proper DMA masks for Ether device
  ARM: shmobile: Armadillo 800 EVA: set proper DMA masks for Ether device
  ARM: shmobile: koelsch-reference: Add DU device
  ARM: shmobile: koelsch-reference: Refactor clock lookup hack
  ARM: shmobile: lager-reference: Add DU device
  ARM: shmobile: lager-reference: Refactor clock lookup hack
  ARM: shmobile: lager: Add internal USB PCI support
  ARM: shmobile: lager legacy: Add QSPI pinmux
  ARM: shmobile: lager: add SDHI0/2 support
  ARM: shmobile: Add SDHI devices for legacy Koelsch

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-03-17 00:00:03 -07:00
Olof Johansson
13ce64c8f7 Merge tag 'renesas-intc-for-v3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/sh
Merge "Renesas intc Updates for v3.15" from Simon Horman:

* Enable driver compilation with COMPILE_TEST

* tag 'renesas-intc-for-v3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  sh: intc: Enable driver compilation with COMPILE_TEST

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-03-16 23:30:04 -07:00
Aybuke Ozdemir
cc43adab9a staging: bcm: Typedefs.h Fix "foo * bar" warning.
This patch fixes these error messages found by checkpatch.pl:
ERROR: "foo* bar" should be "foo *bar"

Signed-off-by: Aybuke Ozdemir <aybuke.147@gmail.com>
Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
2014-03-16 22:24:41 -07:00
Aybuke Ozdemir
54585e56ed staging: bcm: Typedefs.h Fix do not use // c99 comments.
This patch fixes "do not use // C99 comments"
errors in Typedefs.h

Signed-off-by: Aybuke Ozdemir <aybuke.147@gmail.com>
Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
2014-03-16 22:23:01 -07:00
Aybuke Ozdemir
64052b783d staging: vt6656: power.c Fix line over 80 characters.
Fix checkpatch.pl issue with
line over 80 characters in power.c

Signed-off-by: Aybuke Ozdemir <aybuke.147@gmail.com>
Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
2014-03-16 22:10:23 -07:00
Aybuke Ozdemir
0315dd70a5 staging: nokia_h4p: nokia_fw-bcm.c Fix line over 80 characters.
Fix checkpatch.pl issue with
line over 80 characters in nokia_fw-bcm.c

Signed-off-by: Aybuke Ozdemir <aybuke.147@gmail.com>
Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
2014-03-16 22:10:23 -07:00
Gulsah Kose
beeefedee3 staging: winbond: Moved trailing statement to next line
Fix checkpatch.pl issues with trailing statement to next line in wb35reg.c

Signed-off-by: Gulsah Kose <gulsah.1004@gmail.com>
Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
2014-03-16 22:10:23 -07:00
Gulsah Kose
0a6088c3e6 staging: cxt1e1: Fix space prohibited between function name and open parenthesis
Fix checkpatch.pl issues with space prohibited between function name and
open parenthesis in libsbew.h

Signed-off-by: Gulsah Kose <gulsah.1004@gmail.com>
Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
2014-03-16 22:04:48 -07:00
Gulsah Kose
d5229247c8 staging: dgnc: Fix quoted string split across lines warning
This patch fixes "quoted string split across lines warning" warning in
dgnc_cls.c

Signed-off-by: Gulsah Kose <gulsah.1004@gmail.com>
Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
2014-03-16 22:04:41 -07:00
Gulsah Kose
6461900342 staging: line6: Fix line over 80 characters
Fix checkpatch.pl issue with line over 80 characters in midi.c

Signed-off-by: Gulsah Kose <gulsah.1004@gmail.com>
Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
2014-03-16 22:01:50 -07:00
Himangi Saraogi
432f8574a7 staging:keucr: Remove typedefs
As suggested by Pablo, this patch uses a coccinelle script to remove the
typedefs:
typedef u8 BOOLEAN;  <-- use "bool" instead.
typedef u8 BYTE;     <-- use "u8"
typedef u8 *PBYTE;   <-- use "u8 *"
typedef u16 WORD;    <-- use "u16"
typedef u16 *PWORD;  <-- use "u16 *"
typedef u32 DWORD;   <-- use "u32"
typedef u32 *PDWORD; <-- use "u32 *"
in common.h.

The coccinelle script is:
/* coccinelle script to remove typedefs. */
@remove_typedef@
@@
-typedef bool BOOLEAN;
-typedef u8 BYTE;
-typedef u8 *PBYTE;
-typedef u16 WORD;
-typedef u16 *PWORD;
-typedef u32 DWORD;
-typedef u32 *PDWORD;

@fix_usage@
typedef BOOLEAN;
@@
-BOOLEAN
+bool

@fix_usage1@
typedef BYTE;
@@
-BYTE
+u8

@fix_usage2@
typedef PBYTE;
@@
-PBYTE
+u8 *

@fix_usage3@
typedef WORD;
@@
-WORD
+u16

@fix_usage4@
typedef PWORD;
@@
-PWORD
+u16 *

@fix_usage5@
typedef DWORD;
identifier f;
@@
-DWORD
+u32

@fix_usage6@
typedef PDWORD;
@@
-PDWORD
+u32 *

Signed-off-by: Himangi Saraogi <himangi774@gmail.com>
Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
2014-03-16 22:01:41 -07:00
Ana Rey
68b350073f staging: rtl8187se: Remove initialization of static variable in ieee80211/ieee80211_softmac.c
Fix checkpatch.pl errors:
ERROR: do not initialise statics to 0 or NULL

Signed-off-by: Ana Rey <anarey@gmail.com>
Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
2014-03-16 21:57:24 -07:00