summaryrefslogtreecommitdiff
path: root/arch/arm
AgeCommit message (Collapse)Author
2015-01-16ARM: shmobile: R-Mobile: Consolidate rmobile_pd_suspend_*()Geert Uytterhoeven
Consolidate the identical rmobile_pd_suspend_*() routines that just return -EBUSY to prevent a PM domain from being powered down into a single rmobile_pd_suspend_busy(). Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2015-01-15ARM: efm32: update defconfigUwe Kleine-König
Enable i2c driver for efm32. The other two changes are just results from oldconfig after commits - 08b964ff3c51 (ARM: 8198/1: make kuser helpers depend on MMU) - 8357041a69b3 (of: remove /proc/device-tree) Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-15arm: boot: dts: dra7: enable dwc3 suspend PHY quirkFelipe Balbi
Whenever Suspend PHY bit is set on DRA7x devices, USB will not work due to Set EP Configuration command always failing. This was only found after a recent commit 2164a47 (usb: dwc3: set SUSPHY bit for all cores, which will be merged for v3.19) added a missing *required* step to dwc3 initialization. Synopsys Databook requires that we enable Suspend PHY bit after initialization but that, unfortunately, breaks DRA7x. Note that the same regression was already patched for AM437x. Reported-by: Roger Quadros <rogerq@ti.com> Signed-off-by: Felipe Balbi <balbi@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-01-15ARM: at91: sama5: enable atmel-isi and ov2640 in defconfigJosh Wu
Signed-off-by: Josh Wu <josh.wu@atmel.com> Acked-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-01-15ARM: at91: dts: sama5d3: add ov2640 camera sensor supportJosh Wu
According to v4l2 dt document, we add: a camera host: ISI port. a i2c camera sensor: ov2640 port. to sama5d3xmb.dtsi. The ov2640 node defines the pinctrls, clocks and refer to isi port. The ISI node also has a reference to the ov2640 port. Signed-off-by: Josh Wu <josh.wu@atmel.com> Acked-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-01-15ARM: at91: dts: sama5d3: change name of pinctrl of ISI_MCKJosh Wu
For sama5d3xmb board, the pins: pinctrl_isi_pck_as_mck is pck1, and used to provide MCK for camera sensor. We change its name to: pinctrl_pck1_as_isi_mck. As we want camera sensor instead of ISI to configure the pck1 (ISI_MCK) pin. So we remove this pinctrl from ISI DT node. It will be added in sensor's DT node. Signed-off-by: Josh Wu <josh.wu@atmel.com> Acked-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-01-15ARM: at91: dts: sama5d3: change name of pinctrl_isi_{power,reset}Josh Wu
For sama5d3xmb board, the pins: pinctrl_isi_{power,reset} is used to power-down or reset camera sensor. So we should let camera sensor instead of ISI to configure the pins. This patch will change pinctrl name from pinctrl_isi_{power,reset} to pinctrl_sensor_{power,reset}. And remove these two pinctrl from ISI's DT node. We will add these two pinctrl to sensor's DT node. Signed-off-by: Josh Wu <josh.wu@atmel.com> Acked-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-01-15ARM: at91: dts: sama5d3: move the isi mck pin to mbBo Shen
The mck is decided by the board design, move it to mb related dtsi file. Signed-off-by: Bo Shen <voice.shen@atmel.com> Acked-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Signed-off-by: Josh Wu <josh.wu@atmel.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-01-15ARM: at91: dts: sama5d3: add missing pins of isiBo Shen
The ISI has 12 data lines, add the missing two data lines. Signed-off-by: Bo Shen <voice.shen@atmel.com> Acked-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-01-15ARM: at91: dts: sama5d3: split isi pinctrlBo Shen
As the ISI has 12 data lines, however we only use 8 data lines with sensor module. So, split the data line into two groups which make it can be choosed depends on the hardware design. Signed-off-by: Bo Shen <voice.shen@atmel.com> Acked-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Signed-off-by: Josh Wu <josh.wu@atmel.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-01-15ARM: at91: dts: sama5d3: add isi clockJosh Wu
Add ISI peripheral clock in sama5d3.dtsi. Signed-off-by: Josh Wu <josh.wu@atmel.com> Acked-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-01-15ARM: at91/dt: ethernut5: use at91sam9xe.dtsiAlexandre Belloni
The ethernut5 is actually based on an at91sam9xe, use the correct dts include. Cc: Martin Reimann <martin.reimann@egnite.de> Cc: Tim Schendekehl <tim.schendekehl@egnite.de> Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-01-15ARM: at91/dt: Add a dtsi for at91sam9xeAlexandre Belloni
at91sam9xe is slightly different from at91sam9260, in particular it has a different SRAM size and location. Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-01-15ARM: at91/dt: add SRAM nodesAlexandre Belloni
Add nodes for the SRAM available on atmel SoCs For the at91sam9260 and the at91sam9g20, address mirroring is used to create a single contiguous SRAM range instead of declaring two separate banks. Also remove leftover TODOs in the sam9g45 file Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com> [nicolas.ferre@atmel.com: correct at91sam9rl sram size => 0x10000] Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-01-15ARM: at91/dt: at91rm9200ek: enable RTCAlexandre Belloni
Enable the RTC on the at91rm9200ek. Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-01-15ARM: at91/dt: rm9200: add RTC nodeAlexandre Belloni
Add a node for the RTC available on at91rm9200. Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-01-15ARM: at91/dt: at91sam9n12: Add RTC nodeAlexandre Belloni
Add node for the RTC available on the at91sam9n12. Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-01-15ARM: at91: remove useless at91rm9200_set_type()Alexandre Belloni
Since all rm9200 board files have been removed, there is no user of at91rm9200_set_type() left. Remove it Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-01-15ARM: at91: remove useless at91rm9200_dt_initialize()Alexandre Belloni
at91rm9200_dt_initialize() is doing the same as at91_dt_initialize(), use that one instead. Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-01-15ARM: at91: move debug-macro.S into the common spaceAlexandre Belloni
Move debug-macro.S from include/mach/ to include/debug where all other common debug macros are. Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-01-15ARM: at91: remove useless at91_sysirq_mask_rtxAlexandre Belloni
The irq fixup from at91_sysirq_mask_rtc and at91_sysirq_mask_rtt is now handled by aic_common_rtc_irq_fixup and aic_common_rtt_irq_fixup. Remove those useless functions. Also remove the now unused mach/at91_rtt.h header. Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-01-15ARM: at91: remove useless config MACH_AT91SAM9_DTAlexandre Belloni
Now that at91sam9 SoCs are only supported through DT, remove CONFIG_MACH_AT91SAM9_DT and use CONFIG_SOC_AT91SAM9 instead. Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-01-15ARM: at91: remove useless config MACH_AT91RM9200_DTAlexandre Belloni
Now that rm9200 is only supported through DT, remove CONFIG_MACH_AT91RM9200_DT and use CONFIG_SOC_AT91RM9200 instead. Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-01-15ARM: at91: remove unused mach/memory.hAlexandre Belloni
CONFIG_NEED_MACH_MEMORY_H is not set by any at91 platform, remove mach/memory.h Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-01-15ARM: at91: remove useless header file includesBoris Brezillon
Since removal of !DT boards, asm/irq.h inclusion is not needed in these product files. Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-01-15ARM: at91: remove unneeded header fileNicolas Ferre
These GPIO pin descriptions are now moved with the pinctrl driver. We can safely remove this useless header file. Reported-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-01-15ARM: at91: sama5d4: Add SFRAlexandre Belloni
The sama4d4 has Special Function Registers that allow to manage DDR, OHCI, EBI and AIC interrupt redirection. Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com> [nicolas.ferre@atmel.com: reg size: 0x60] Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-01-15ARM: at91: sama5d3: Add SFRAlexandre Belloni
The sama5d3 has Special Function Registers that allow to manage OHCI, EBI and the UTMI clock. Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com> [nicolas.ferre@atmel.com: reg size: 0x60] Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-01-15ARM: at91/dt: sam9263: Fix typo: ac91_clk -> ac97_clkAlexander Stein
That clock should be called ac97_clk. Signed-off-by: Alexander Stein <alexanders83@web.de> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-01-15ARM: at91/dt: sama5d3: enable D2 as the heartbeat LEDJosh Wu
This D2 led is available for all sama5d3x-ek board. So make it a heartbeat LED. Signed-off-by: Josh Wu <josh.wu@atmel.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-01-15ARM: KVM: extend WFI tracepoint to differentiate between wfi and wfeAndre Przywara
Currently the trace printk talks about "wfi" only, though the trace point triggers both on wfi and wfe traps. Add a parameter to differentiate between the two. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Wei Huang <wei@redhat.com> Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
2015-01-15Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/netDavid S. Miller
Conflicts: drivers/net/xen-netfront.c Minor overlapping changes in xen-netfront.c, mostly to do with some buffer management changes alongside the split of stats into TX and RX. Signed-off-by: David S. Miller <davem@davemloft.net>
2015-01-14ARM: OMAP2+: Disable omap3 PM init for ti81xxTony Lindgren
We cannot use the omap3 pm support on 81xx. Cc: Brian Hutchinson <b.hutchman@gmail.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-01-14ARM: OMAP2+: Fix reboot for 81xxTony Lindgren
We are missing proper hooks for 81xx for reboot to work. Cc: Brian Hutchinson <b.hutchman@gmail.com> Reviewed-by: Felipe Balbi <balbi@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-01-14ARM: OMAP2+: Fix dm814 and dm816 for clocks and timer initTony Lindgren
Fix dm814 and dm816 clocks and timer init. Cc: Brian Hutchinson <b.hutchman@gmail.com> Cc: Paul Walmsley <paul@pwsan.com> Cc: Tero Kristo <t-kristo@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-01-14ARM: OMAP2+: Fix ti81xx class typeTony Lindgren
Otherwise it will return true for cpu_is_omap34xx() which we don't want for the clocks and hwmod. It's closer to am33xx for the clocks and hwmod than to the omap34xx. We also want to be able to detect 814x and 816x separately as at least the clocks are different with 814x using a apll and 816x using a fapll for the source clocks. Note that we can also remove omap3xxx_clk_init() call as it's wrong and ti81xx are booting in device tree only mode. Cc: Brian Hutchinson <b.hutchman@gmail.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-01-14ARM: OMAP2+: Fix ti81xx devtypeTony Lindgren
Otherwise we get error "Cannot detect omap type!" and many things can fail with following: Unhandled fault: imprecise external abort (0xc06) at 0xc6031fb0 This is because the omap_type is being used to set up th SoC specific functions for omaps. Cc: Brian Hutchinson <b.hutchman@gmail.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-01-14ARM: OMAP2+: Fix error handling for omap2_clk_enable_init_clocksTony Lindgren
We need to check if we got the clock before trying to do anything with it. Otherwise we will get something like this: Unable to handle kernel paging request at virtual address fffffffe ... [<c04bef78>] (clk_prepare) from [<c00338a4>] (omap2_clk_enable_init_clocks+0x50/0x8) [<c00338a4>] (omap2_clk_enable_init_clocks) from [<c0876838>] (dm816x_dt_clk_init+0) ... Let's add check for the clock and WARN if the init clock was not found. Cc: Brian Hutchinson <b.hutchman@gmail.com> Cc: Paul Walmsley <paul@pwsan.com> Cc: Tero Kristo <t-kristo@ti.com> Reviewed-by: Felipe Balbi <balbi@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-01-14ARM: versatile: core: Remove unused functionRickard Strandqvist
Remove the function versatile_leds_event() that is not used anywhere. This was partially found by using a static code analysis program called cppcheck. Signed-off-by: Rickard Strandqvist <rickard_strandqvist@spectrumdigital.se> Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-14ARM: OMAP2+: Remove unused ti81xx platform init codeTony Lindgren
The support for 81xx was never working in mainline, and the broken legacy booting support has been removed. There are patches coming to make 81xx boot with device tree, and for that we won't need any of this legacy platform code, so let's just remove it. Cc: Brian Hutchinson <b.hutchman@gmail.com> Reviewed-by: Felipe Balbi <balbi@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-01-14ARM: multi_v7_defconfig: Enable Hip01 platformWang Long
Enable Hip01 platform support for multi_v7_defconfig. Signed-off-by: Wang Long <long.wanglong@huawei.com> Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-14Merge tag 'mvebu-dt-3.20' of git://git.infradead.org/linux-mvebu into next/dtOlof Johansson
Merge "mvebu: dt for v3.20" from Andrew Lunn: mvebu dt changes for v3.20 (part #1) - Add Armada 388 General Purpose Development Board support - Add Device Tree description of the Armada 388 SoC - Document the Device Tree binding for the Armada 388 SoC - a38x: Add missing labels - a38x: Add more pinctrl functions - Add Armada 385 Access Point Development Board support - Add a number of pinctrl functions - A38x: Remove redundant pinctrl informations - a38x: Fix node names - Add support for Seagate BlackArmor NAS220 - kirkwood: enable phy driver for SATA controller on 88f6192 - gpio_poweroff support for Iomega ix2-200 - Use all remaining MTD space foor rootfs of Iomega ix2-200 * tag 'mvebu-dt-3.20' of git://git.infradead.org/linux-mvebu: ARM: mvebu: Add Armada 388 General Purpose Development Board support ARM: mvebu: Add Device Tree description of the Armada 388 SoC ARM: mvebu: Document the Device Tree binding for the Armada 388 SoC ARM: mvebu: a38x: Add missing labels ARM: mvebu: a38x: Add more pinctrl functions ARM: mvebu: Add Armada 385 Access Point Development Board support ARM: mvebu: Add a number of pinctrl functions ARM: mvebu: A38x: Remove redundant pinctrl informations ARM: mvebu: a38x: Fix node names Kirkwood: add support for Seagate BlackArmor NAS220 ARM: dts: kirkwood: enable phy driver for SATA controller on 88f6192 ARM: dts: add gpio_poweroff support for Iomega ix2-200 ARM: dts: use all remaining MTD space foor rootfs of Iomega ix2-200 Signed-off-by: Olof Johansson <olof@lixom.net> Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-14Merge tag 'mvebu-defconfig-3.20' of git://git.infradead.org/linux-mvebu into ↵Olof Johansson
next/defconfig Merge "mvebu: defconfig for v3.20" from Andrew Lunn: mvebu defconfig changes for v3.20 - enable CPUFREQ_DT in mvebu_v7_defconfig * tag 'mvebu-defconfig-3.20' of git://git.infradead.org/linux-mvebu: ARM: mvebu: enable CPUFREQ_DT in mvebu_v7_defconfig Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-14Merge tag 'mvebu-soc-3.20' of git://git.infradead.org/linux-mvebu into next/socOlof Johansson
Merge "mvebu: SoC for 3.20" from Andrew Lunn: mvebu SoC changes for v3.20 (part #1) - Update the SoC ID and revision definitions - Add UART1 as DEBUG_LL possible target - Rename DEBUG_LL to indicate UART index * tag 'mvebu-soc-3.20' of git://git.infradead.org/linux-mvebu: ARM: mvebu: Update the SoC ID and revision definitions ARM: mvebu: Add UART1 as DEBUG_LL possible target ARM: mvebu: Rename DEBUG_LL to indicate UART index Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-15ARM: shmobile: sh73a0 dtsi: Add memory-controller nodesGeert Uytterhoeven
Add device nodes for the two SDRAM Bus State Controllers. The SBSCs are located in the A4BC0 resp. A4BC1 PM domains, which must not be powered down, else the system will crash. References to the A4BC0 and A4BC1 PM domains will be added later. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2015-01-15ARM: shmobile: r8a7740 dtsi: Add memory-controller nodeGeert Uytterhoeven
Add a device node for the DDR3 Bus State Controller (DBSC3). The DBSC3 is located in the A4S PM domain, which must not be powered down, else the system will crash. This has no visible effect for now, as A4S was never turned off anyway because its child PM domain A3SM contains the CPU core. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2015-01-15ARM: shmobile: r8a73a4 dtsi: Add memory-controller nodesGeert Uytterhoeven
Add device nodes for the two DDR Bus State Controllers (DBSC). The DBSCs are located in the A3BC PM domain, which must not be powered down, else the system will crash. A reference to the A3BC PM domain will be added later. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2015-01-15ARM: shmobile: R-Mobile: Add DT support for PM domainsGeert Uytterhoeven
Populate the PM domains from DT, and provide support to hook up devices to their respective PM domain. The always-on power area (e.g. C5 on r8a7740) is created as a PM domain without software control, to allow Run-Time management of module clocks for hardware blocks inside this area. Special cases like PM domains containing CPUs, the console device, or Coresight-ETM, are handled by scanning the DT topology. As long as the ARM debug/perf code doesn't use resource management with runtime PM support, the power area containing Coresight-ETM (e.g. D4 on r8a7740) must be kept powered to avoid a crash during resume from s2ram (dbg_cpu_pm_notify() calls reset_ctrl_regs() unconditionally, causing an undefined instruction oops). Initialization is done from core_initcall(), as the "renesas,intc-irqpin" driver uses postcore_initcall(). Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2015-01-14Merge tag 'uaccess_for_upstream' of ↵Arnd Bergmann
git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost into asm-generic Merge "uaccess: fix sparse warning on get/put_user for bitwise types" from Michael S. Tsirkin: At the moment, if p and x are both tagged as bitwise types, some of get_user(x, p), put_user(x, p), __get_user(x, p), __put_user(x, p) might produce a sparse warning on many architectures. This is a false positive: *p on these architectures is loaded into long (typically using asm), then cast back to typeof(*p). When typeof(*p) is a bitwise type (which is uncommon), such a cast needs __force, otherwise sparse produces a warning. Some architectures already have the __force tag, add it where it's missing. I verified that adding these __force casts does not supress any useful warnings. Specifically, vhost wants to read/write bitwise types in userspace memory using get_user/put_user. At the moment this triggers sparse errors, since the value is passed through an integer. For example: __le32 __user *p; __u32 x; both put_user(x, p); and get_user(x, p); should be safe, but produce warnings on some architectures. While there, I noticed that a bunch of architectures violated coding style rules within uaccess macros. Included patches to fix them up. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Arnd Bergmann <arnd@arndb.de> * tag 'uaccess_for_upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost: (37 commits) sparc32: nocheck uaccess coding style tweaks sparc64: nocheck uaccess coding style tweaks xtensa: macro whitespace fixes sh: macro whitespace fixes parisc: macro whitespace fixes m68k: macro whitespace fixes m32r: macro whitespace fixes frv: macro whitespace fixes cris: macro whitespace fixes avr32: macro whitespace fixes arm64: macro whitespace fixes arm: macro whitespace fixes alpha: macro whitespace fixes blackfin: macro whitespace fixes sparc64: uaccess_64 macro whitespace fixes sparc32: uaccess_32 macro whitespace fixes avr32: whitespace fix sh: fix put_user sparse errors metag: fix put_user sparse errors ia64: fix put_user sparse errors ...
2015-01-15Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/netLinus Torvalds
Pull networking fixes from David Miller: 1) Don't use uninitialized data in IPVS, from Dan Carpenter. 2) conntrack race fixes from Pablo Neira Ayuso. 3) Fix TX hangs with i40e, from Jesse Brandeburg. 4) Fix budget return from poll calls in dnet and alx, from Eric Dumazet. 5) Fix bugus "if (unlikely(x) < 0)" test in AF_PACKET, from Christoph Jaeger. 6) Fix bug introduced by conversion to list_head in TIPC retransmit code, from Jon Paul Maloy. 7) Don't use GFP_NOIO under spinlock in USB kaweth driver, from Alexey Khoroshilov. 8) Fix bridge build with INET disabled, from Arnd Bergmann. 9) Fix netlink array overrun for PROBE attributes in openvswitch, from Thomas Graf. 10) Don't hold spinlock across synchronize_irq() in tg3 driver, from Prashant Sreedharan. * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (44 commits) tg3: Release tp->lock before invoking synchronize_irq() tg3: tg3_reset_task() needs to use rtnl_lock to synchronize tg3: tg3_timer() should grab tp->lock before checking for tp->irq_sync team: avoid possible underflow of count_pending value for notify_peers and mcast_rejoin openvswitch: packet messages need their own probe attribtue i40e: adds FCoE configure option cxgb4vf: Fix queue allocation for 40G adapter netdevice: Add missing parentheses in macro bridge: only provide proxy ARP when CONFIG_INET is enabled neighbour: fix base_reachable_time(_ms) not effective immediatly when changed net: fec: fix MDIO bus assignement for dual fec SoC's xen-netfront: use different locks for Rx and Tx stats drivers: net: cpsw: fix multicast flush in dual emac mode cxgb4vf: Initialize mdio_addr before using it net: Corrected the comment describing the ndo operations to reflect the actual prototype for couple of operations usb/kaweth: use GFP_ATOMIC under spin_lock in usb_start_wait_urb() MAINTAINERS: add me as ibmveth maintainer tipc: fix bug in broadcast retransmit code update ip-sysctl.txt documentation (v2) net/at91_ether: prepare and unprepare clock ...