]> git.karo-electronics.de Git - karo-tx-linux.git/log
karo-tx-linux.git
8 years agoMerge remote-tracking branch 'nfs/linux-next'
Stephen Rothwell [Mon, 7 Mar 2016 23:07:28 +0000 (10:07 +1100)]
Merge remote-tracking branch 'nfs/linux-next'

8 years agoMerge remote-tracking branch 'gfs2/for-next'
Stephen Rothwell [Mon, 7 Mar 2016 23:05:58 +0000 (10:05 +1100)]
Merge remote-tracking branch 'gfs2/for-next'

8 years agoMerge remote-tracking branch 'fscache/fscache'
Stephen Rothwell [Mon, 7 Mar 2016 23:05:41 +0000 (10:05 +1100)]
Merge remote-tracking branch 'fscache/fscache'

8 years agoMerge remote-tracking branch 'f2fs/dev'
Stephen Rothwell [Mon, 7 Mar 2016 22:55:32 +0000 (09:55 +1100)]
Merge remote-tracking branch 'f2fs/dev'

8 years agoMerge remote-tracking branch 'ext4/dev'
Stephen Rothwell [Mon, 7 Mar 2016 22:53:59 +0000 (09:53 +1100)]
Merge remote-tracking branch 'ext4/dev'

8 years agoMerge remote-tracking branch 'ext3/for_next'
Stephen Rothwell [Mon, 7 Mar 2016 22:43:50 +0000 (09:43 +1100)]
Merge remote-tracking branch 'ext3/for_next'

8 years agoMerge remote-tracking branch 'ecryptfs/next'
Stephen Rothwell [Mon, 7 Mar 2016 22:42:21 +0000 (09:42 +1100)]
Merge remote-tracking branch 'ecryptfs/next'

8 years agoMerge remote-tracking branch 'configfs/for-next'
Stephen Rothwell [Mon, 7 Mar 2016 22:40:49 +0000 (09:40 +1100)]
Merge remote-tracking branch 'configfs/for-next'

8 years agoMerge remote-tracking branch 'btrfs-kdave/for-next'
Stephen Rothwell [Mon, 7 Mar 2016 22:39:16 +0000 (09:39 +1100)]
Merge remote-tracking branch 'btrfs-kdave/for-next'

8 years agoMerge remote-tracking branch 'btrfs/next'
Stephen Rothwell [Mon, 7 Mar 2016 22:37:47 +0000 (09:37 +1100)]
Merge remote-tracking branch 'btrfs/next'

8 years agoMerge remote-tracking branch 'xtensa/for_next'
Stephen Rothwell [Mon, 7 Mar 2016 22:36:21 +0000 (09:36 +1100)]
Merge remote-tracking branch 'xtensa/for_next'

8 years agoMerge remote-tracking branch 'tile/master'
Stephen Rothwell [Mon, 7 Mar 2016 22:34:53 +0000 (09:34 +1100)]
Merge remote-tracking branch 'tile/master'

8 years agoMerge remote-tracking branch 's390/features'
Stephen Rothwell [Mon, 7 Mar 2016 22:33:28 +0000 (09:33 +1100)]
Merge remote-tracking branch 's390/features'

8 years agoMerge remote-tracking branch 'fsl/next'
Stephen Rothwell [Mon, 7 Mar 2016 22:30:56 +0000 (09:30 +1100)]
Merge remote-tracking branch 'fsl/next'

8 years agoMerge remote-tracking branch 'powerpc/next'
Stephen Rothwell [Mon, 7 Mar 2016 22:19:43 +0000 (09:19 +1100)]
Merge remote-tracking branch 'powerpc/next'

8 years agoMerge remote-tracking branch 'mips/mips-for-linux-next'
Stephen Rothwell [Mon, 7 Mar 2016 22:18:14 +0000 (09:18 +1100)]
Merge remote-tracking branch 'mips/mips-for-linux-next'

8 years agoMerge remote-tracking branch 'microblaze/next'
Stephen Rothwell [Mon, 7 Mar 2016 22:16:50 +0000 (09:16 +1100)]
Merge remote-tracking branch 'microblaze/next'

8 years agoMerge remote-tracking branch 'metag/for-next'
Stephen Rothwell [Mon, 7 Mar 2016 22:15:23 +0000 (09:15 +1100)]
Merge remote-tracking branch 'metag/for-next'

8 years agoMerge remote-tracking branch 'm68knommu/for-next'
Stephen Rothwell [Mon, 7 Mar 2016 22:13:58 +0000 (09:13 +1100)]
Merge remote-tracking branch 'm68knommu/for-next'

8 years agoMerge remote-tracking branch 'm68k/for-next'
Stephen Rothwell [Mon, 7 Mar 2016 22:12:35 +0000 (09:12 +1100)]
Merge remote-tracking branch 'm68k/for-next'

8 years agoMerge remote-tracking branch 'h8300/h8300-next'
Stephen Rothwell [Mon, 7 Mar 2016 22:11:04 +0000 (09:11 +1100)]
Merge remote-tracking branch 'h8300/h8300-next'

8 years agoMerge remote-tracking branch 'arm64/for-next/core'
Stephen Rothwell [Mon, 7 Mar 2016 22:01:25 +0000 (09:01 +1100)]
Merge remote-tracking branch 'arm64/for-next/core'

8 years agoMerge remote-tracking branch 'tegra/for-next'
Stephen Rothwell [Mon, 7 Mar 2016 21:59:43 +0000 (08:59 +1100)]
Merge remote-tracking branch 'tegra/for-next'

8 years agoMerge remote-tracking branch 'sunxi/sunxi/for-next'
Stephen Rothwell [Mon, 7 Mar 2016 21:58:10 +0000 (08:58 +1100)]
Merge remote-tracking branch 'sunxi/sunxi/for-next'

8 years agoMerge remote-tracking branch 'samsung-krzk/for-next'
Stephen Rothwell [Mon, 7 Mar 2016 21:56:02 +0000 (08:56 +1100)]
Merge remote-tracking branch 'samsung-krzk/for-next'

8 years agoMerge remote-tracking branch 'rockchip/for-next'
Stephen Rothwell [Mon, 7 Mar 2016 21:54:16 +0000 (08:54 +1100)]
Merge remote-tracking branch 'rockchip/for-next'

8 years agoMerge remote-tracking branch 'renesas/next'
Stephen Rothwell [Mon, 7 Mar 2016 21:52:37 +0000 (08:52 +1100)]
Merge remote-tracking branch 'renesas/next'

8 years agoMerge remote-tracking branch 'qcom/for-next'
Stephen Rothwell [Mon, 7 Mar 2016 21:51:10 +0000 (08:51 +1100)]
Merge remote-tracking branch 'qcom/for-next'

8 years agoMerge remote-tracking branch 'omap/for-next'
Stephen Rothwell [Mon, 7 Mar 2016 21:49:01 +0000 (08:49 +1100)]
Merge remote-tracking branch 'omap/for-next'

8 years agoMerge remote-tracking branch 'mvebu/for-next'
Stephen Rothwell [Mon, 7 Mar 2016 21:47:15 +0000 (08:47 +1100)]
Merge remote-tracking branch 'mvebu/for-next'

8 years agoMerge remote-tracking branch 'keystone/next'
Stephen Rothwell [Mon, 7 Mar 2016 21:45:49 +0000 (08:45 +1100)]
Merge remote-tracking branch 'keystone/next'

8 years agoMerge remote-tracking branch 'imx-mxs/for-next'
Stephen Rothwell [Mon, 7 Mar 2016 21:45:36 +0000 (08:45 +1100)]
Merge remote-tracking branch 'imx-mxs/for-next'

8 years agoMerge remote-tracking branch 'berlin/berlin/for-next'
Stephen Rothwell [Mon, 7 Mar 2016 21:45:24 +0000 (08:45 +1100)]
Merge remote-tracking branch 'berlin/berlin/for-next'

8 years agoMerge remote-tracking branch 'at91/at91-next'
Stephen Rothwell [Mon, 7 Mar 2016 21:45:02 +0000 (08:45 +1100)]
Merge remote-tracking branch 'at91/at91-next'

8 years agoMerge remote-tracking branch 'arm-soc/for-next'
Stephen Rothwell [Mon, 7 Mar 2016 21:42:55 +0000 (08:42 +1100)]
Merge remote-tracking branch 'arm-soc/for-next'

8 years agoMerge remote-tracking branch 'arm-perf/for-next/perf'
Stephen Rothwell [Mon, 7 Mar 2016 21:41:32 +0000 (08:41 +1100)]
Merge remote-tracking branch 'arm-perf/for-next/perf'

8 years agoMerge remote-tracking branch 'arm/for-next'
Stephen Rothwell [Mon, 7 Mar 2016 21:31:00 +0000 (08:31 +1100)]
Merge remote-tracking branch 'arm/for-next'

8 years agoMerge remote-tracking branch 'arc/for-next'
Stephen Rothwell [Mon, 7 Mar 2016 21:29:36 +0000 (08:29 +1100)]
Merge remote-tracking branch 'arc/for-next'

8 years agoMerge remote-tracking branch 'asm-generic/master'
Stephen Rothwell [Mon, 7 Mar 2016 21:18:28 +0000 (08:18 +1100)]
Merge remote-tracking branch 'asm-generic/master'

8 years agoMerge remote-tracking branch 'drm-intel-fixes/for-linux-next-fixes'
Stephen Rothwell [Mon, 7 Mar 2016 21:12:12 +0000 (08:12 +1100)]
Merge remote-tracking branch 'drm-intel-fixes/for-linux-next-fixes'

8 years agoMerge remote-tracking branch 'sound-current/for-linus'
Stephen Rothwell [Mon, 7 Mar 2016 21:11:43 +0000 (08:11 +1100)]
Merge remote-tracking branch 'sound-current/for-linus'

8 years agoMerge remote-tracking branch 'ipvs/master'
Stephen Rothwell [Mon, 7 Mar 2016 21:11:36 +0000 (08:11 +1100)]
Merge remote-tracking branch 'ipvs/master'

8 years agoMerge remote-tracking branch 'ipsec/master'
Stephen Rothwell [Mon, 7 Mar 2016 21:11:35 +0000 (08:11 +1100)]
Merge remote-tracking branch 'ipsec/master'

8 years agoMerge remote-tracking branch 'net/master'
Stephen Rothwell [Mon, 7 Mar 2016 21:11:32 +0000 (08:11 +1100)]
Merge remote-tracking branch 'net/master'

8 years agovmxnet3: avoid calling pskb_may_pull with interrupts disabled
Neil Horman [Fri, 4 Mar 2016 18:40:48 +0000 (13:40 -0500)]
vmxnet3: avoid calling pskb_may_pull with interrupts disabled

vmxnet3 has a function vmxnet3_parse_and_copy_hdr which, among other operations,
uses pskb_may_pull to linearize the header portion of an skb.  That operation
eventually uses local_bh_disable/enable to ensure that it doesn't race with the
drivers bottom half handler.  Unfortunately, vmxnet3 preforms this
parse_and_copy operation with a spinlock held and interrupts disabled.  This
causes us to run afoul of the WARN_ON_ONCE(irqs_disabled()) warning in
local_bh_enable, resulting in this:

WARNING: at kernel/softirq.c:159 local_bh_enable+0x59/0x90() (Not tainted)
Hardware name: VMware Virtual Platform
Modules linked in: ipv6 ppdev parport_pc parport microcode e1000 vmware_balloon
vmxnet3 i2c_piix4 sg ext4 jbd2 mbcache sd_mod crc_t10dif sr_mod cdrom mptspi
mptscsih mptbase scsi_transport_spi pata_acpi ata_generic ata_piix vmwgfx ttm
drm_kms_helper drm i2c_core dm_mirror dm_region_hash dm_log dm_mod [last
unloaded: mperf]
Pid: 6229, comm: sshd Not tainted 2.6.32-616.el6.i686 #1
Call Trace:
 [<c04624d9>] ? warn_slowpath_common+0x89/0xe0
 [<c0469e99>] ? local_bh_enable+0x59/0x90
 [<c046254b>] ? warn_slowpath_null+0x1b/0x20
 [<c0469e99>] ? local_bh_enable+0x59/0x90
 [<c07bb936>] ? skb_copy_bits+0x126/0x210
 [<f8d1d9fe>] ? ext4_ext_find_extent+0x24e/0x2d0 [ext4]
 [<c07bc49e>] ? __pskb_pull_tail+0x6e/0x2b0
 [<f95a6164>] ? vmxnet3_xmit_frame+0xba4/0xef0 [vmxnet3]
 [<c05d15a6>] ? selinux_ip_postroute+0x56/0x320
 [<c0615988>] ? cfq_add_rq_rb+0x98/0x110
 [<c0852df8>] ? packet_rcv+0x48/0x350
 [<c07c5839>] ? dev_queue_xmit_nit+0xc9/0x140
...

Fix it by splitting vmxnet3_parse_and_copy_hdr into two functions:

vmxnet3_parse_hdr, which sets up the internal/on stack ctx datastructure, and
pulls the skb (both of which can be done without holding the spinlock with irqs
disabled

and

vmxnet3_copy_header, which just copies the skb to the tx ring under the lock
safely.

tested and shown to correct the described problem.  Applies cleanly to the head
of the net tree

Signed-off-by: Neil Horman <nhorman@tuxdriver.com>
CC: Shrikrishna Khare <skhare@vmware.com>
CC: "VMware, Inc." <pv-drivers@vmware.com>
CC: "David S. Miller" <davem@davemloft.net>
Acked-by: Shrikrishna Khare <skhare@vmware.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
8 years agoMerge tag 'wireless-drivers-for-davem-2016-03-04' of git://git.kernel.org/pub/scm...
David S. Miller [Mon, 7 Mar 2016 19:58:11 +0000 (14:58 -0500)]
Merge tag 'wireless-drivers-for-davem-2016-03-04' of git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/wireless-drivers

Kalle Valo says:

====================
wireless-drivers fixes for 4.5

iwlwifi

* free firmware paging memory when the module is unloaded or device removed
* fix pending frames counter to fix an issue when removing stations

ssb

* fix a build problem related to ssb_fill_sprom_with_fallback()
====================

Signed-off-by: David S. Miller <davem@davemloft.net>
8 years agonet: ethernet: Add missing MFD_SYSCON dependency on HAS_IOMEM
Krzysztof Kozlowski [Fri, 4 Mar 2016 01:04:52 +0000 (10:04 +0900)]
net: ethernet: Add missing MFD_SYSCON dependency on HAS_IOMEM

The MFD_SYSCON depends on HAS_IOMEM so when selecting it avoid unmet
direct dependencies.

Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
8 years agoibmveth: check return of skb_linearize in ibmveth_start_xmit
Thomas Falcon [Thu, 3 Mar 2016 21:22:36 +0000 (15:22 -0600)]
ibmveth: check return of skb_linearize in ibmveth_start_xmit

If skb_linearize fails, the driver should drop the packet
instead of trying to copy it into the bounce buffer.

Signed-off-by: Thomas Falcon <tlfalcon@linux.vnet.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
8 years agocdc_ncm: toggle altsetting to force reset before setup
Bjørn Mork [Thu, 3 Mar 2016 21:20:53 +0000 (22:20 +0100)]
cdc_ncm: toggle altsetting to force reset before setup

Some devices will silently fail setup unless they are reset first.
This is necessary even if the data interface is already in
altsetting 0, which it will be when the device is probed for the
first time.  Briefly toggling the altsetting forces a function
reset regardless of the initial state.

This fixes a setup problem observed on a number of Huawei devices,
appearing to operate in NTB-32 mode even if we explicitly set them
to NTB-16 mode.

Signed-off-by: Bjørn Mork <bjorn@mork.no>
Signed-off-by: David S. Miller <davem@davemloft.net>
8 years agodrm/i915: Fix bogus dig_port_map[] assignment for pre-HSW
Takashi Iwai [Wed, 24 Feb 2016 14:35:22 +0000 (15:35 +0100)]
drm/i915: Fix bogus dig_port_map[] assignment for pre-HSW

The recent commit [0bdf5a05647a: drm/i915: Add reverse mapping between
port and intel_encoder] introduced a reverse mapping to retrieve
intel_dig_port object from the port number.  The code assumed that the
port vs intel_dig_port are 1:1 mapping.  But in reality, this was a
too naive assumption.

As Martin reported about the missing HDMI audio on his SNB machine,
pre-HSW chips may have multiple intel_dig_port objects corresponding
to the same port.  Since we assign the mapping statically at the init
time and the multiple objects override the map, it may not match with
the actually enabled output.

This patch tries to address the regression above.  The reverse mapping
is provided basically only for the audio callbacks, so now we set /
clear the mapping dynamically at enabling and disabling HDMI/DP audio,
so that we can always track the latest and correct object
corresponding to the given port.

Fixes: 0bdf5a05647a ('drm/i915: Add reverse mapping between port and intel_encoder')
Reported-and-tested-by: Martin Kepplinger <martink@posteo.de>
Cc: drm-intel-fixes@lists.freedesktop.org
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Tested-by: Martin Kepplinger <martink@posteo.de>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1456324522-21591-1-git-send-email-tiwai@suse.de
(cherry picked from commit 9dfbffcf4ac0707097af9e6c1372192b9d03a357)
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
8 years agousbnet: cleanup after bind() in probe()
Oliver Neukum [Mon, 7 Mar 2016 10:31:10 +0000 (11:31 +0100)]
usbnet: cleanup after bind() in probe()

In case bind() works, but a later error forces bailing
in probe() in error cases work and a timer may be scheduled.
They must be killed. This fixes an error case related to
the double free reported in
http://www.spinics.net/lists/netdev/msg367669.html
and needs to go on top of Linus' fix to cdc-ncm.

Signed-off-by: Oliver Neukum <ONeukum@suse.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
8 years agoMerge branch 'mlxsw-fixes'
David S. Miller [Mon, 7 Mar 2016 16:39:16 +0000 (11:39 -0500)]
Merge branch 'mlxsw-fixes'

Jiri Pirko says:

====================
mlxsw: couple of fixes

Couple of fixes from Ido.
====================

Signed-off-by: David S. Miller <davem@davemloft.net>
8 years agomlxsw: pci: Correctly determine if descriptor queue is full
Ido Schimmel [Mon, 7 Mar 2016 14:15:30 +0000 (15:15 +0100)]
mlxsw: pci: Correctly determine if descriptor queue is full

The descriptor queues for sending (SDQs) and receiving (RDQs) packets
are managed by two counters - producer and consumer - which are both
16-bit in size. A queue is considered full when the difference between
the two equals the queue's maximum number of descriptors.

However, if the producer counter overflows, then it's possible for the
full queue check to fail, as it doesn't take the overflow into account.
In such a case, descriptors already passed to the device - but for which
a completion has yet to be posted - will be overwritten, thereby causing
undefined behavior. The above can be achieved under heavy load (~30
netperf instances).

Fix that by casting the subtraction result to u16, preventing it from
being treated as a signed integer.

Fixes: eda6500a987a ("mlxsw: Add PCI bus implementation")
Signed-off-by: Ido Schimmel <idosch@mellanox.com>
Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
8 years agomlxsw: spectrum: Always decrement bridge's ref count
Ido Schimmel [Mon, 7 Mar 2016 14:15:29 +0000 (15:15 +0100)]
mlxsw: spectrum: Always decrement bridge's ref count

Since we only support one VLAN filtering bridge we need to associate a
reference count with it, so that when the last port netdev leaves it, we
would know that a different bridge can be offloaded to hardware.

When a LAG device is memeber in a bridge and port netdevs are leaving
the LAG, we should always decrement the bridge's reference count, as it's
incremented for any port in the LAG.

Fixes: 4dc236c31733 ("mlxsw: spectrum: Handle port leaving LAG while bridged")
Signed-off-by: Ido Schimmel <idosch@mellanox.com>
Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
8 years agos390/pci: add ioctl interface for CLP
Martin Schwidefsky [Wed, 13 Jan 2016 11:54:28 +0000 (12:54 +0100)]
s390/pci: add ioctl interface for CLP

Provide a user space interface to issue call logical-processor instructions.
Only selected CLP commands are allowed, enough to get the full overview of
the installed PCI functions.

Reviewed-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
8 years agoARC: [intc-*] switch to linear domain
Vineet Gupta [Thu, 28 Jan 2016 04:10:10 +0000 (09:40 +0530)]
ARC: [intc-*] switch to linear domain

Now that we have Timers probed from DT, don't need legacy domain

Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
8 years agoARC: [intc-*] Do a domain lookup in primary handler for hwirq -> linux virq
Vineet Gupta [Fri, 1 Jan 2016 09:42:54 +0000 (15:12 +0530)]
ARC: [intc-*] Do a domain lookup in primary handler for hwirq -> linux virq

The primary interrupt handler arch_do_IRQ() was passing hwirq as linux
virq to core code. This was fragile and worked so far as we only had legacy/linear
domains.

This came out of a rant by Marc Zyngier.
http://lists.infradead.org/pipermail/linux-snps-arc/2015-December/000298.html

Cc: Marc Zyngier <marc.zyngier@arm.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Noam Camus <noamc@ezchip.com>
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
8 years agoARC: RIP arc_{get|set}_core_freq() clk API
Alexey Brodkin [Mon, 1 Feb 2016 14:30:17 +0000 (17:30 +0300)]
ARC: RIP arc_{get|set}_core_freq() clk API

There are no more users of this - so RIP!

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
[vgupta: update changelog]
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
8 years agoARC: [plat-axs] Don't use arc_{get|set}_core_freq() for manipulating core clk
Alexey Brodkin [Mon, 1 Feb 2016 14:30:17 +0000 (17:30 +0300)]
ARC: [plat-axs] Don't use arc_{get|set}_core_freq() for manipulating core clk

For AXS103, certain bitfile configurations may not work with stock
"clock-frequency" specified in DT. Instead of duplicating the DT files, we
fixup the DT in-place.

This used to be done differently - as in top level "clock-frequency" was
read very early from FDT and exported using arc_{get|set}_core_freq()
also used in setting up clockevent/clocksource timers

This homebrew clk API served well for legacy timer probe (non DT)

However TIMERS are now probed from DT and use "core_clk" defined in DT,
and thus can no longer use the top level "clock-frequency".
This change reduces the number of users of ARC clk hack and paves way
for removal.

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
[vgupta: broken out of from bigger patch]
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
8 years agoARC: use fixed frequencies in arc_set_early_base_baud()
Alexey Brodkin [Mon, 1 Feb 2016 13:31:14 +0000 (16:31 +0300)]
ARC: use fixed frequencies in arc_set_early_base_baud()

UARTs usually have fixed clock so we're switching to use of
constant values instead of something derived from core clock
frequency.

Among other things this will allow us to get rid of
arc_{get|set}_core_freq() and switch to generic clock
framework later on.

Cc: Christian Ruppert <christian.ruppert@alitech.com>
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
8 years agoARC: clocksource: DT based probe
Vineet Gupta [Fri, 1 Jan 2016 12:35:48 +0000 (18:05 +0530)]
ARC: clocksource: DT based probe

- Remove explicit clocksource setup and let it be done by OF framework
  by defining CLOCKSOURCE_OF_DECLARE() for various timers

- This allows multiple clocksources to be potentially registered
  simultaneouly: previously we could only do one - as all of them had
  same arc_counter_setup() routine for registration

- Setup routines also ensure that the underlying timer actually exists.

- Remove some of the panic() calls if underlying timer is NOT detected as
  fallback clocksource might still be available
  1. If GRFC doesn't exist, jiffies clocksource gets registered anyways
  2. if RTC doesn't exist, TIMER1 can take over (as it is always
     present)

Cc: Daniel Lezcano <daniel.lezcano@linaro.org>
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
8 years agoARC: clockevent: DT based probe
Vineet Gupta [Fri, 1 Jan 2016 12:28:45 +0000 (17:58 +0530)]
ARC: clockevent: DT based probe

 - timer frequency is derived from DT (no longer rely on top level
   DT "clock-frequency" probed early and exported by asm/clk.h)

 - TIMER0_IRQ need not be exported across arch code, confided to intc as
   it is property of same

Cc: Daniel Lezcano <daniel.lezcano@linaro.org>
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
8 years agoARC: [dts] Introduce Timer bindings
Vineet Gupta [Fri, 1 Jan 2016 13:18:40 +0000 (18:48 +0530)]
ARC: [dts] Introduce Timer bindings

ARC Timers have historically been probed directly.
As precursor to start probing Timers thru DT introduce these bindings
Note that to keep series bisectable, these bindings are not yet used in
code.

Cc: Daniel Lezcano <daniel.lezcano@linaro.org>
Cc: Rob Herring <robh@kernel.org>
Cc: devicetree@vger.kernel.org
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
8 years agoARC: [dts] Add clk feeding into timers to DTs
Vineet Gupta [Fri, 1 Jan 2016 13:18:40 +0000 (18:48 +0530)]
ARC: [dts] Add clk feeding into timers to DTs

This allows us to introduce timers in DT in next commit

Cc: Daniel Lezcano <daniel.lezcano@linaro.org>
Cc: Rob Herring <robh@kernel.org>
Cc: devicetree@vger.kernel.org
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
8 years agoARC: [dts] Rename cpu_intc -> core_intc
Vineet Gupta [Thu, 28 Jan 2016 04:27:12 +0000 (09:57 +0530)]
ARC: [dts] Rename cpu_intc -> core_intc

This is again for future changes to use common DTSI for timers which
refer to core intc

Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
8 years agoARCv2: [dts]: Introduce HS38 specific include DTS ...
Vineet Gupta [Tue, 19 Jan 2016 10:30:42 +0000 (16:00 +0530)]
ARCv2: [dts]: Introduce HS38 specific include DTS ...

... and add them to plat-sim DTS.

This allows for future change to introduce timers in DT in single place

Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
8 years agos390: Use pr_warn instead of pr_warning
Joe Perches [Fri, 4 Mar 2016 04:49:57 +0000 (20:49 -0800)]
s390: Use pr_warn instead of pr_warning

Convert the uses of pr_warning to pr_warn so there are fewer
uses of the old pr_warning.

Miscellanea:

o Align arguments
o Coalesce formats

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
8 years agos390/dasd: remove casts to dasd_*_private
Sebastian Ott [Fri, 4 Mar 2016 09:34:05 +0000 (10:34 +0100)]
s390/dasd: remove casts to dasd_*_private

Convert dasd_device.private to be a void pointer to get
rid of a lot of explicit casts.

Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
Reviewed-by: Stefan Haberland <sth@linux.vnet.ibm.com>
Acked-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
8 years agos390/dasd: Refactor dasd format functions
Jan Höppner [Wed, 19 Aug 2015 09:16:35 +0000 (11:16 +0200)]
s390/dasd: Refactor dasd format functions

Prepare for new format checking function by renaming functions and
moving reusable code to separate functions:

- Move sanity checks into a new function and make it reusable.
- Move common format code to a new function called
  dasd_eckd_format_process_data.
- Create the generic function dasd_eckd_format_build_ccw_req, which
  itself will then decide what ccw request is being built according to
  the input data. (with upcoming functionality).

Signed-off-by: Jan Höppner <hoeppner@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
8 years agos390/dasd: Simplify code in format logic
Jan Höppner [Mon, 21 Sep 2015 15:32:11 +0000 (17:32 +0200)]
s390/dasd: Simplify code in format logic

Currently, dasd_format is calling the format logic of a DASD discipline
with PAV enabled. If that fails with an error code of -EAGAIN the value
of retries is decremented and the discipline function is called with PAV
turned off.

The loop is supposed to try this up to 255 times until success. However,
-EAGAIN can only occur once here and therefore the loop will never reach
the 255 retries.

So, replace the unnecessarily complicated loop logic and simply try again
without PAV enabled in case of an -EAGAIN error.

Signed-off-by: Jan Höppner <hoeppner@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
8 years agos390/dasd: Improve dasd format code
Jan Höppner [Wed, 14 Oct 2015 15:01:04 +0000 (17:01 +0200)]
s390/dasd: Improve dasd format code

- Make sure a calling function can rely on data in fdata by resetting to
  its initial values
- Move special treatment for track 0 and 1 to dasd_eckd_build_format
- Replace dangerous backward goto with a loop logic
- Add define for number that specifies the maximum amount of CCWs per
  request and is used for format_step calculation
- Remove unused variable

Signed-off-by: Jan Höppner <hoeppner@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
8 years agoMIPS: traps: Correct the SIGTRAP debug ABI in `do_watch' and `do_trap_or_bp'
Maciej W. Rozycki [Fri, 4 Mar 2016 01:44:28 +0000 (01:44 +0000)]
MIPS: traps: Correct the SIGTRAP debug ABI in `do_watch' and `do_trap_or_bp'

Follow our own rules set in <asm/siginfo.h> for SIGTRAP signals issued
from `do_watch' and `do_trap_or_bp' by setting the signal code to
TRAP_HWBKPT and TRAP_BRKPT respectively, for Watch exceptions and for
those Breakpoint exceptions whose originating BREAK instruction's code
does not have a special meaning.  Keep Trap exceptions unaffected as
these are not debug events.

No existing user software is expected to examine signal codes for these
signals as SI_KERNEL has been always used here.  This change makes the
MIPS port more like other Linux ports, which reduces the complexity and
provides for performance improvement in GDB.

Signed-off-by: Maciej W. Rozycki <macro@imgtec.com>
Cc: Pedro Alves <palves@redhat.com>
Cc: Luis Machado <lgustavo@codesourcery.com>
Cc: linux-mips@linux-mips.org
Cc: gdb@sourceware.org
Patchwork: https://patchwork.linux-mips.org/patch/12758/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
8 years agoMIPS: BCM47xx: Move SPROM driver to drivers/firmware/
Rafał Miłecki [Mon, 25 Jan 2016 08:50:29 +0000 (09:50 +0100)]
MIPS: BCM47xx: Move SPROM driver to drivers/firmware/

Broadcom ARM home routers store SPROM content in NVRAM just like MIPS
ones. To share SPROM code we need to move it out of arch/mips/ to some
common place. We already have bcm47xx_nvram in firmware path and SPROM
should fit there as well.
This driver is responsible for parsing SoC configuration data into a
struct shared between ssb and bcma buses.
This was tested with BCM4706 & BCM5357C0 (BCM47XX) and BCM4708A0
(ARCH_BCM_5301X).

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Cc: Hauke Mehrtens <hauke@hauke-m.de>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/12210/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
8 years agoMIPS: ci20: Enable NAND and UBIFS support in defconfig.
Harvey Hunt [Fri, 26 Feb 2016 16:03:48 +0000 (16:03 +0000)]
MIPS: ci20: Enable NAND and UBIFS support in defconfig.

Update the Ci20's defconfig to enable the JZ4780's NAND driver and
therefore access to the UBIFS rootfs.

Signed-off-by: Harvey Hunt <harvey.hunt@imgtec.com>
Cc: Paul Burton <paul.burton@imgtec.com>
Cc: linux-kernel@vger.kernel.org
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/12699/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
8 years agoMIPS: ralink: Make reset_control_ops const
Philipp Zabel [Thu, 25 Feb 2016 09:45:47 +0000 (10:45 +0100)]
MIPS: ralink: Make reset_control_ops const

The reset_ops structure is never modified. Make it const.

Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Acked-by: John Crispin <blogic@openwrt.org>
Cc: linux-mips@linux-mips.org
Cc: kernel@pengutronix.de
Patchwork: https://patchwork.linux-mips.org/patch/12618/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
8 years agoMIPS: lantiq: Make reset_control_ops const
Philipp Zabel [Thu, 25 Feb 2016 09:45:46 +0000 (10:45 +0100)]
MIPS: lantiq: Make reset_control_ops const

The reset_ops structure is never modified. Make it const.

Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Acked-by: John Crispin <blogic@openwrt.org>
Cc: linux-mips@linux-mips.org
Cc: kernel@pengutronix.de
Patchwork: https://patchwork.linux-mips.org/patch/12619/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
8 years agoMIPS: Fix misspellings in comments.
Adam Buchbinder [Thu, 25 Feb 2016 08:44:58 +0000 (00:44 -0800)]
MIPS: Fix misspellings in comments.

Signed-off-by: Adam Buchbinder <adam.buchbinder@gmail.com>
Cc: linux-mips@linux-mips.org
Cc: trivial@kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/12617/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
8 years agoMIPS: Octeon: device_tree_init: fill mac addresses when using appended dtb
Aaro Koskinen [Tue, 23 Feb 2016 22:52:07 +0000 (00:52 +0200)]
MIPS: Octeon: device_tree_init: fill mac addresses when using appended dtb

Fill MAC addresses from bootinfo when using appended DTB.

Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi>
Acked-by: David Daney <david.daney@cavium.com>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/12590/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
8 years agoMIPS: Octeon: device_tree_init: don't fill mac if already set
Aaro Koskinen [Tue, 23 Feb 2016 22:52:06 +0000 (00:52 +0200)]
MIPS: Octeon: device_tree_init: don't fill mac if already set

Don't fill MAC address if it's already set. This allows DTB to
override the bootinfo.

Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi>
Acked-by: David Daney <david.daney@cavium.com>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/12589/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
8 years agoMIPS: Octeon: device_tree_init: use separate pass to fill mac addresses
Aaro Koskinen [Tue, 23 Feb 2016 22:52:05 +0000 (00:52 +0200)]
MIPS: Octeon: device_tree_init: use separate pass to fill mac addresses

Use separate pass to fill MAC addresses. This is needed because we want
to do this also for the appended DTB.

Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi>
Acked-by: David Daney <david.daney@cavium.com>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/12588/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
8 years agoMIPS: Octeon: Use model string from DTB for unknown board type
Aaro Koskinen [Mon, 22 Feb 2016 22:22:57 +0000 (00:22 +0200)]
MIPS: Octeon: Use model string from DTB for unknown board type

Use model string from DTB for board type if the board is unknown.
This is more informative, e.g. with EdgeRouter Pro the /proc/cpuinfo
will display "ubnt,e200 (CN6120p1.1-1000-NSP)" instead of misleading
"Unsupported Board".

Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi>
Cc: David Daney <ddaney.cavm@gmail.com>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/12582/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
8 years agoMIPS: Octeon: Initialize system type string after device tree init.
Aaro Koskinen [Mon, 22 Feb 2016 22:22:56 +0000 (00:22 +0200)]
MIPS: Octeon: Initialize system type string after device tree init.

Initialize system type string after device tree init.

Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi>
Cc: David Daney <ddaney.cavm@gmail.com>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/12583/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
8 years agoMIPS: Octeon: board_type_to_string: return NULL for unsupported board
Aaro Koskinen [Mon, 22 Feb 2016 22:22:55 +0000 (00:22 +0200)]
MIPS: Octeon: board_type_to_string: return NULL for unsupported board

Return NULL for unsupported board.

Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi>
Cc: David Daney <ddaney.cavm@gmail.com>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/12581/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
8 years agoMIPS: tlb-r4k: panic if the MMU doesn't support PAGE_SIZE
Paul Burton [Mon, 13 Jul 2015 16:12:44 +0000 (17:12 +0100)]
MIPS: tlb-r4k: panic if the MMU doesn't support PAGE_SIZE

After writing the appropriate mask to the cop0 PageMask register, read
the register back & check it matches what we want. If it doesn't then
the MMU does not support the page size the kernel is configured for and
we're better off bailing than continuing to do odd things with TLB
exceptions.

Signed-off-by: Paul Burton <paul.burton@imgtec.com>
Cc: Steven J. Hill <Steven.Hill@imgtec.com>
Cc: Joshua Kinard <kumba@gentoo.org>
Cc: Rafał Miłecki <zajec5@gmail.com>
Cc: James Hogan <james.hogan@imgtec.com>
Cc: Markos Chandras <markos.chandras@imgtec.com>
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/10691/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
8 years agoMIPS: OCTEON: Simplify code in octeon_irq_ciu_gpio_set_type()
David Daney [Tue, 9 Feb 2016 19:00:13 +0000 (11:00 -0800)]
MIPS: OCTEON: Simplify code in octeon_irq_ciu_gpio_set_type()

Use the trigger type passed in to the function instead of reading it
back out of the irq_data.

Signed-off-by: David Daney <david.daney@cavium.com>
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/12501/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
8 years agoMIPS: OCTEON: Add SMP support for OCTEON cn78xx et al.
David Daney [Tue, 9 Feb 2016 19:00:12 +0000 (11:00 -0800)]
MIPS: OCTEON: Add SMP support for OCTEON cn78xx et al.

OCTEON chips with the CIU3 interrupt controller use a different IPI
mechanism that previous models.

Add plat_smp_ops for the cn78xx and probing code to choose between the
two types of ops.

Signed-off-by: David Daney <david.daney@cavium.com>
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/12499/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
8 years agoMIPS: OCTEON: Add support for OCTEON III interrupt controller.
David Daney [Tue, 9 Feb 2016 19:00:11 +0000 (11:00 -0800)]
MIPS: OCTEON: Add support for OCTEON III interrupt controller.

Add irq_chip support for both IPI and "normal" interrupts of the CIU3
controller.  Document the device tree binding for the CIU3.

Some functions are non-static as they will be used by follow-on
support for MSI-X.

Signed-off-by: David Daney <david.daney@cavium.com>
Acked-by: Rob Herring <robh@kernel.org>
Cc: Rob Herring <robh+dt@kernel.org>
Cc: Pawel Moll <pawel.moll@arm.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Ian Campbell <ijc+devicetree@hellion.org.uk>
Cc: Kumar Gala <galak@codeaurora.org>
Cc: devicetree@vger.kernel.org
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/12500/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
8 years agoMIPS: OCTEON: Don't attempt to use nonexistent registers on OCTEON III models.
David Daney [Tue, 9 Feb 2016 19:00:10 +0000 (11:00 -0800)]
MIPS: OCTEON: Don't attempt to use nonexistent registers on OCTEON III models.

Attempts to read the nonexistent registers results in bus errors.
Either use registers that exist, or don't do the access as appropriate.

Signed-off-by: David Daney <david.daney@cavium.com>
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/12502/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
8 years agoMIPS: OCTEON: Add model checking support for cn73xx, cnf75xx and cn78xx
David Daney [Tue, 9 Feb 2016 19:00:09 +0000 (11:00 -0800)]
MIPS: OCTEON: Add model checking support for cn73xx, cnf75xx and cn78xx

Follow on patchs need to be able to distinguish the new models.

Signed-off-by: David Daney <david.daney@cavium.com>
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/12498/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
8 years agoMIPS: OCTEON: Add register definitions for cn73xx, cnf75xx and cn78xx.
David Daney [Tue, 9 Feb 2016 19:00:08 +0000 (11:00 -0800)]
MIPS: OCTEON: Add register definitions for cn73xx, cnf75xx and cn78xx.

These new members of the OCTEON III family have some new registers,
update some of the definitions for use in follow on patches.

Signed-off-by: David Daney <david.daney@cavium.com>
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/12497/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
8 years agoMIPS: Select CONFIG_HANDLE_DOMAIN_IRQ and make it work.
David Daney [Tue, 9 Feb 2016 19:00:07 +0000 (11:00 -0800)]
MIPS: Select CONFIG_HANDLE_DOMAIN_IRQ and make it work.

Per the subject, always select HANDLE_DOMAIN_IRQ, and implement
set_irq_regs() so that it actually works.

Signed-off-by: David Daney <david.daney@cavium.com>
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/12496/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
8 years agoMIPS: OCTEON: Remove some code limiting NR_IRQS to 255
David Daney [Tue, 9 Feb 2016 19:00:06 +0000 (11:00 -0800)]
MIPS: OCTEON: Remove some code limiting NR_IRQS to 255

Follow-on patches for OCTEON III will increase the number of irqs to
potentially more than 256.

Increase the width of the octeon_irq_ciu_to_irq to int to be able to
handle this case.  Remove the hacky code that verified that u8 would
not be overflowed.

Signed-off-by: David Daney <david.daney@cavium.com>
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/12495/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
8 years agoMIPS: OCTEON: Extend number of supported CPUs past 32
David Daney [Tue, 2 Feb 2016 01:46:54 +0000 (17:46 -0800)]
MIPS: OCTEON: Extend number of supported CPUs past 32

To support more than 48 CPUs, the bootinfo structure grows a new
coremask structure.  Add the definition of the structure and add it to
struct cvmx_bootinfo.  In prom_init(), copy the new coremask data into
the sysinfo structure, and use it in smp_setup().

Signed-off-by: David Daney <david.daney@cavium.com>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/12319/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
8 years agoMIPS: OCTEON: Remove dead code from cvmx-sysinfo.
David Daney [Tue, 2 Feb 2016 01:46:53 +0000 (17:46 -0800)]
MIPS: OCTEON: Remove dead code from cvmx-sysinfo.

Get rid of the long unused code.

Signed-off-by: David Daney <david.daney@cavium.com>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/12318/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
8 years agoMIPS: Add CPU identifiers and probing for Cavium CN73xx and CNF75xx processors.
David Daney [Mon, 1 Feb 2016 22:43:41 +0000 (14:43 -0800)]
MIPS: Add CPU identifiers and probing for Cavium CN73xx and CNF75xx processors.

Add new processor identifiers for Cavium CN73xx and CNF75xx
processors, and probe for them in cpu-probe.c

Signed-off-by: David Daney <david.daney@cavium.com>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/12311/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
8 years agoMIPS: highmem: Turn flush_cache_kmaps into a no-op.
Ralf Baechle [Thu, 28 Jan 2016 13:26:00 +0000 (14:26 +0100)]
MIPS: highmem: Turn flush_cache_kmaps into a no-op.

It was calling flush_cache_all() which is a no-op since a long time anyway
and which was overkill in the old days when it was actually doing something
because only the D-cache needs to be flushed, never the I-cache, never
the S-cache.  Since however highmem on MIPS is still only supported on
processors that don't suffer from cache aliases, we could turn
flush_cache_kmaps() into a no-op - but for paranoia's sake we rather make
it BUG_ON(cpu_has_dc_aliases()).

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
8 years agoMIPS: Loongson64: Remove call to flush_cache_all().
Ralf Baechle [Wed, 27 Jan 2016 18:02:12 +0000 (19:02 +0100)]
MIPS: Loongson64: Remove call to flush_cache_all().

flush_cache_all() is a nop and loongson 3 is fully coherent.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
8 years agoMIPS: VR41xx: Use __flush_cache_all instead of flush_cache_all.
Ralf Baechle [Wed, 27 Jan 2016 17:39:33 +0000 (18:39 +0100)]
MIPS: VR41xx: Use __flush_cache_all instead of flush_cache_all.

It's probably a good idea to flush caches before reset and by the time
this code was written flush_cache_all did actually still do something.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
8 years agoMIPS: MSP71xx: Use __flush_cache_all instead of flush_cache_all.
Ralf Baechle [Wed, 27 Jan 2016 17:16:15 +0000 (18:16 +0100)]
MIPS: MSP71xx: Use __flush_cache_all instead of flush_cache_all.

Flushing caches is probably sensible on reset but flush_cache_all has been
a no-op for a very long time.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
8 years agoMIPS: Octeon: Use __flush_cache_all instead of flush_cache_all.
Ralf Baechle [Wed, 27 Jan 2016 17:07:00 +0000 (18:07 +0100)]
MIPS: Octeon: Use __flush_cache_all instead of flush_cache_all.

flush_cache_all will go away.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>