Commit graph

322177 commits

Author SHA1 Message Date
Hauke Mehrtens
1ef1a57de7 brcmsmac: use chip and package id constants from bcma
This patch depends on addin the chip IDs to bcma done in this commit in
my pending patch series for bcma.
Author: Hauke Mehrtens <hauke@hauke-m.de>
Date:   Sun Jun 3 18:17:57 2012 +0200

    bcma: add constants for chip ids

Acked-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-07-10 12:16:52 -04:00
Hauke Mehrtens
780b9c4644 brcmsmac: use core id constants from bcma
This patch depends on adding the IDs to bcma done in
this commit in my pending patch series for bcma.
Author: Hauke Mehrtens <hauke@hauke-m.de>
Date:   Sun Jun 3 18:17:57 2012 +0200

    bcma: add constants for chip ids

Acked-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-07-10 12:16:51 -04:00
Hauke Mehrtens
6236dc2e26 brcmsmac: remove some redundant chip common workarounds
The removed workarounds are already performed in bcma_pmu_workarounds()
and bcma_core_chipcommon_init()

This patch depends on the completion of the workarounds in bcma done in
this commit in my pending patch series for bcma.
Author: Hauke Mehrtens <hauke@hauke-m.de>
Date:   Mon Jun 4 00:20:26 2012 +0200

    bcma: complete workaround for BCMA43224 and BCM4313

Acked-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-07-10 12:16:51 -04:00
Hauke Mehrtens
33ae5a5e1c brcmsmac: remove si_pmu_spuravoid_pllupdate()
si_pmu_spuravoid_pllupdate() is now replaced by
bcma_pmu_spuravoid_pllupdate() which does the same thing, but supports
more chips.

This function is in my pending patch series for bcma.
Author: Hauke Mehrtens <hauke@hauke-m.de>
Date:   Mon Jun 4 01:31:32 2012 +0200

    bcma: add bcma_pmu_spuravoid_pllupdate()

Acked-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-07-10 12:16:50 -04:00
Hauke Mehrtens
4d22641b92 brcmsmac: remove si_pmu_init() and si_pmu_res_init()
This is already done by bcma_pmu_init() and bcma_pmu_resources_init() in bcma.

Acked-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-07-10 12:16:49 -04:00
Hauke Mehrtens
40bd94ce32 brcmsmac: remove ai_findcore()
bcma also stores a pointer to the chipcommon core in its struct,
brcmsmac should use it and not search for the core by its own.

Acked-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-07-10 12:16:49 -04:00
Hauke Mehrtens
ed1dd81464 brcmsmac: use container_of instead of cast
Now "struct si_pub pub" does not have to be the first member in struct
si_info any more, if it is the resulting code after compilation should
be the same.

Acked-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-07-10 12:16:48 -04:00
Hauke Mehrtens
72d4d66205 brcmsmac: remove ai_get_buscore{type,rev}()
These two functions are not used any more.

Acked-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-07-10 12:16:48 -04:00
Hauke Mehrtens
1dfef20a4c brcmsmac: remove PCI_FORCEHT() macro
The BCM4716 is a SoC and does not have a PCI client interface, so this
condition is never true.

Acked-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-07-10 12:16:47 -04:00
Hauke Mehrtens
a55b316e02 brcmsmac: remove PCIE() macro
Instead of checking if there is a PCIe core on the bus, better check if
hosttype is PCIe.

In the original submission to staging PCIE() checked, if the bustype is
PCI and the buscore is a PCIe core. Now we assume that all cores bcma
supports are PCIe based, so we just have to check if the bustype is PCI.

The old code bcmsmac currently uses searches for a PCIe core on the bus
and if there is one assumes that this is the buscore, which is wrong.
Some SoCs have a PCIe core operating in host mode and this is not the
bus core. The old code also caused a null pointer in
ai_get_buscoretype() and ai_get_buscorerev() if buscore was not set
because there was no PCIe core on the bus.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Acked-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-07-10 12:16:46 -04:00
John W. Linville
bdb903e499 iwmc3200wifi: remove driver for unavailable hardware
This hardware never became available to normal humans.  Leaving this
driver imposes unwelcome maintenance costs for no clear benefit.

Signed-off-by: John W. Linville <linville@tuxdriver.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
2012-07-10 12:16:32 -04:00
Laxman Dewangan
7be531883a regulator: tps65910: correct init value of n_voltages
Recent change in the core driver to get the maximum voltage
is based on the (n_voltages -1) steps of voltage.
For the tps65910, the (n_voltages -1)th step voltage is
calculated based on the callback function list_voltage.
This function direct maps the datasheet and adjust the
first few steps for initial voltage as per datasheet,
and hence initialize the n_voltages based on datasheet.

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2012-07-10 17:16:05 +01:00
Dan Carpenter
f7ace5f044 wlcore: fix a couple small memory leaks
We should free "chunk" here before returning the error code.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Luciano Coelho <coelho@ti.com>
2012-07-10 12:10:15 -04:00
Arik Nemtsov
0344dcd3b5 wlcore: determine AP extra rates correctly
Don't use the ht_mode module parameter for determining AP supported
rates. We can rely on channel type, since HT40 won't be enabled if our
HT cap doesn't support it.

Enable MIMO only if there enough antennas, and rely on per-peer rate
limitation to prevent IOPs.

Signed-off-by: Arik Nemtsov <arik@wizery.com>
2012-07-10 12:10:15 -04:00
Eliad Peller
faae5aae2d wlcore: check ssid length against the correct element
commit 587cc28 ("wlcore: compare ssid_len before comparing
ssids") introduced a new bug - the ssid length from the
request struct was compared against the ssid length of
another request, instead the one of the cmd.

This might cause the sched scan request to fail
(with -EINVAL) in many cases.

Signed-off-by: Eliad Peller <eliad@wizery.com>
2012-07-10 12:10:15 -04:00
Arik Nemtsov
0fc1d2e9fe wl12xx/wl18xx: use a dynamic PS timeout of 1.5sec
It seems some parties have bad user experience when smaller values
are used. This should have little implications for power consumption,
since traffic is bursty in nature.

Signed-off-by: Arik Nemtsov <arik@wizery.com>
2012-07-10 12:10:15 -04:00
Arik Nemtsov
091185d6bc wlcore: define number of supported bands internally
Avoid using the IEEE80211_NUM_BANDS constant for arrays sizes etc, as
this can contain bands unsupported by the driver (e.g. 60Ghz). Use an
internal constant to determine the number of bands.

Signed-off-by: Arik Nemtsov <arik@wizery.com>
2012-07-10 12:10:14 -04:00
Arik Nemtsov
4455556d71 wlcore: don't set SDIO_FAILED flag when driver state is off
If some IO read/write fails while the FW is not loaded, a recovery
will not take place. This means the SDIO_FAILED flag will stay in place
forever and prevent further read/writes.

This can happen if a check for STATE_OFF was forgotten in some routine.

Take this opportunity to rename the flag to IO_FAILED, since we support
other buses as well.

Reported-by: Ido Yariv <ido@wizery.com>
Signed-off-by: Arik Nemtsov <arik@wizery.com>
2012-07-10 12:10:14 -04:00
Yoni Divinsky
c45ee4ff1f wlcore: change the wait for event mechanism
wlcore needs to wait for certain events for example
for roc complete event. Usually the events are received
from the FW very fast, therefore wlcore can poll with
a short delay and if after a second the event was
not received yet poll with a long (1-5 msec) delay.

This implementation is similar to the sending of
commands to the FW.

Empirically the change reduced the wait for roc event
from ~10-40msec to 100s of usecs.

[replace udelay/msleep with usleep_range - Arik]

Signed-off-by: Yoni Divinsky <yoni.divinsky@ti.com>
Signed-off-by: Arik Nemtsov <arik@wizery.com>
2012-07-10 12:10:14 -04:00
Ido Yariv
c24ec83bca wlcore: Prevent processing of work items during op_stop
The interrupt line is disabled in op_stop using disable_irq. Since
pending interrupts are synchronized, the mutex has to be released before
disabling the interrupt to avoid a deadlock with the interrupt handler.

In addition, the internal state of the driver is only set to 'off'
after the interrupt is disabled. Otherwise, if an interrupt fires after
the state is set but before the interrupt line is disabled, the
interrupt handler will not be able to acknowledge the interrupt
resulting in an interrupt storm.

The driver's operations might be called during recovery. If these
acquire the mutex after it was released by op_stop, but before the
driver's state is changed, they may queue new work items instead of just
failing. This is especially problematic in the case of scans, in which a
new scan may be scheduled after all scan requests were cancelled.

Signed-off-by: Ido Yariv <ido@wizery.com>
Signed-off-by: Arik Nemtsov <arik@wizery.com>
2012-07-10 12:10:14 -04:00
Eliad Peller
d8ae5a257c wlcore: implement .flush callback
implement the .flush() callback by simply calling wl1271_tx_flush().

Signed-off-by: Eliad Peller <eliad@wizery.com>
Signed-off-by: Luciano Coelho <coelho@ti.com>
2012-07-10 12:10:14 -04:00
Luciano Coelho
66ef60ad03 wl12xx/wlcore: increase FW filename version
We have some API changes and new features in the new firmwares that
are not compatible with older drivers.  Increase the version of the FW
filenames for wl12xx to 5.

Additionally, remove the duplicate definitions from wlcore_i.h and
remove the MODULE_FIRMWARE macro calls from the SDIO and SPI modules,
since they're irrelevant there.

Signed-off-by: Luciano Coelho <coelho@ti.com>
2012-07-10 12:10:13 -04:00
Yoni Divinsky
3df74f46d8 wlcore: add probe request templates for sched and one-shot scans
The driver configures the firmware template for probe requests during
the scan process.  If the same template is used for one-shot and sched
scans they will override each other when running scans simultaneously.

This fix works only on firmwares later than X.3.9.2.112 for single
role and X.3.9.2.23 for multi-role.

[Some cleaning-up and renaming of the quirk to something smaller --
Luca.]

Signed-off-by: Yoni Divinsky <yoni.divinsky@ti.com>
Signed-off-by: Luciano Coelho <coelho@ti.com>
2012-07-10 12:10:13 -04:00
Arik Nemtsov
b034fd6f4f wlcore: always clear recovery flag during recovery_work
If recovery is called when the FW is off, we should clear the recovery
flag. Otherwise we risk booting the driver in permanent pending-recovery
state.

Signed-off-by: Arik Nemtsov <arik@wizery.com>
Signed-off-by: Luciano Coelho <coelho@ti.com>
2012-07-10 12:10:13 -04:00
Arik Nemtsov
aafec111dd wlcore: avoid debug prints during intended FW recovery
Don't read the FW panic log or print other debug data when recovery is
intended (i.e. FW type switch). This takes valuable time and can be
confusing to the user.

Signed-off-by: Arik Nemtsov <arik@wizery.com>
Signed-off-by: Luciano Coelho <coelho@ti.com>
2012-07-10 12:10:13 -04:00
Arik Nemtsov
fd92dc5d5d wlcore: remove recover cmd from testmode
This command is buggy (doesn't take the mutex) and unused. Instead, the
"start_recovery" file is used for the same purpose. Remove the code but
keep the command constant to avoid breaking the testmode ABI.

Signed-off-by: Arik Nemtsov <arik@wizery.com>
Signed-off-by: Luciano Coelho <coelho@ti.com>
2012-07-10 12:10:13 -04:00
Arik Nemtsov
8cdc44aab2 wlcore: don't stop tx queue via watermark if already stopped
If a Tx queue is currently stopped because of our Tx watermark flow
control, don't stop it again. This causes a warning to appear.

Signed-off-by: Arik Nemtsov <arik@wizery.com>
Signed-off-by: Luciano Coelho <coelho@ti.com>
2012-07-10 12:10:12 -04:00
Arik Nemtsov
4a1ccce852 wlcore/wl12xx/wl18xx: check min FW version
Refuse to boot if the FW version is too old. The minimum version is set
per chip, with the option of setting it per PG in the future.

When boot fails because of an old FW, display a helpful message.

Signed-off-by: Arik Nemtsov <arik@wizery.com>
Signed-off-by: Luciano Coelho <coelho@ti.com>
2012-07-10 12:10:12 -04:00
Victor Goldenshtein
01b3c0e4df wlcore: enable sched scan while connected
New wl12xx firmware supports scheduled scans also while connected.
Stop blocking sched scan requests when connected and add a quirk to
block in hardware that don't support it (currently wl18xx doesn't).

This requires FW version 6/7.3.10.2.112 for single-role and
6/7.5.6.0.25 for multi-role.

Signed-off-by: Victor Goldenshtein <victorg@ti.com>
Signed-off-by: Luciano Coelho <coelho@ti.com>
2012-07-10 12:10:12 -04:00
Jan Kara
57b9655d01 udf: Improve table length check to avoid possible overflow
When a partition table length is corrupted to be close to 1 << 32, the
check for its length may overflow on 32-bit systems and we will think
the length is valid. Later on the kernel can crash trying to read beyond
end of buffer. Fix the check to avoid possible overflow.

CC: stable@vger.kernel.org
Reported-by: Ben Hutchings <ben@decadent.org.uk>
Signed-off-by: Jan Kara <jack@suse.cz>
2012-07-10 18:02:17 +02:00
Arnd Bergmann
0e3585113f Merge branch 'devel-omap5' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/newsoc
From Tony Lindgren <tony@atomide.com>:

This branch contains minimal support for omap5 to boot to a
console without clock framework support. This branch depends
on omap-cleanup-part2-for-v3.6.

* 'devel-omap5' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: Kconfig update to support additional GPIOs in OMAP5
  ARM: OMAP5: Add the build support
  arm/dts: OMAP5: Add omap5 dts files
  ARM: OMAP5: board-generic: Add device tree support
  ARM: omap2+: board-generic: clean up the irq data from board file
  ARM: OMAP5: Add SMP support
  ARM: OMAP5: Add the WakeupGen IP updates
  ARM: OMAP5: l3: Add l3 error handler support for omap5
  ARM: OMAP5: gpmc: Update gpmc_init()
  ARM: OMAP5: timer: Add clocksource, clockevent support
  ARM: OMAP5: Add minimal support for OMAP5430 SOC
  ARM: OMAP5: id: Add cpu id for ES versions
  ARM: OMAP: counter-32k: Select the CR register offset using the IP scheme
  ARM: OMAP2+: Move stubbed secure_sram_reserve function to a common.c and call it __weak

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2012-07-10 17:43:22 +02:00
Arnd Bergmann
229ce6f45b Merge branch 'omap/cleanup2' into next/newsoc
Dependency for omap/minimal-omap5
2012-07-10 17:42:59 +02:00
Christian Lamparter
353d09c6ce mac80211: fix read outside array bounds
ieee802_1d_to_ac is defined as a const int[8],
but the tid parameter has a range from 0 to 15.

Cc: stable@vger.kernel.org
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-07-10 11:42:52 -04:00
Mathias Jeppsson
f8bf65bf36 NFC: Fix order of arguments to list_add_tail() when queueing HCP frames
The HCP message should be added to transmit queue, not the other way around.

Signed-off-by: Mathias Jeppsson <mathias.jeppsson@sonymobile.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-07-10 11:42:51 -04:00
Mathias Jeppsson
1913e57cf9 NFC: Fix empty HCI message list check
list_first_entry() will never return NULL. Instead use
list_for_each_entry_safe() to iterate through the list.

Signed-off-by: Mathias Jeppsson <mathias.jeppsson@sonymobile.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-07-10 11:42:50 -04:00
Arnd Bergmann
4450cb7d58 This branch adds clock data for am33xx. Note that eventually these
will use the common clock framework, but those patches are not quite
 ready yet for omaps. This branch depends on omap-cleanup-part2-for-v3.6
 branch.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.12 (GNU/Linux)
 
 iQIcBAABAgAGBQJP++1AAAoJEBvUPslcq6VziosQAM/+DxsVdNLLObNpKsPeGBnB
 Tsfc/7VIRl+RZDPHZHMUmszCeuiEiqVmIcS6E7nTNObeIApqx01f5VeBMrr09ftq
 SMo0ap03Mrrl1nQlXju7kjG5AgCztoqnrcpkwXMLfWZTJXiiBunW4O7k5IIu5E/U
 tOmqnk7icmel2/BB/DAcYdbvR4IC2WBLIVtZu+UFxYahT/j2QS71jejSQYy69Pma
 iinjSaM2Nn77CxiC2XIFEwBhDhx7yLQEBugM8ncHk2onq3ouMvH/y1laTzgUTjnO
 FHy/RjUJMmcKcIHcoLQp4awjJgD+c0NNK93YEPRT6f37lmoKdLOYQmyUwp2KxNQP
 +8uOxeVCiapcVxANyV5YQqxr6O2i0vsHerWBP0D3Yv32GhvqwMEy7t5W/ojl1Mku
 06sFRmDH3vCvDG+ZENJFcBcs8aEsfTciO3Fv7kVtWoj3xWwBGnYMoYb9Um8wk/GA
 5wZ57hAJTyGPs6Eqmoa4PFgthxGjfxCu0/dGc1X7vt6WJtqPWdMXlNc+yzWVDlhW
 ek9jQqNf2QlsTswgG7LnHG2XLW7Vf8GETzxMdBA2M80zwU2fKsXwOshNT9PlFpQy
 TXqM2+efY4swFzOSDXd1iHZ06IVndXXshTeF7svvFMt+QDVl/dvWvdUtISEVXFgX
 TJETN89nXC6nf7IT/Vz3
 =GF3s
 -----END PGP SIGNATURE-----

Merge tag 'omap-devel-am33xx-data-for-v3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/clk

From Tony Lindgren <tony@atomide.com>:

This branch adds clock data for am33xx. Note that eventually these
will use the common clock framework, but those patches are not quite
ready yet for omaps. This branch depends on omap-cleanup-part2-for-v3.6
branch.

* tag 'omap-devel-am33xx-data-for-v3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: OMAP3+: clock33xx: Add AM33XX clock tree data
  ARM: OMAP3+: clock: Move common clksel_rate & clock data to common file

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2012-07-10 17:41:13 +02:00
Arnd Bergmann
99ac7b577f Merge branch 'omap/cleanup2' into next/clk
Dependency for omap/am33xx-clk branch
2012-07-10 17:40:43 +02:00
Artem Bityutskiy
e95d8aafa5 of: mtd: nuke useless const qualifier
This patch does the following:
 -const int of_get_nand_ecc_mode(struct device_node *np)
 +int of_get_nand_ecc_mode(struct device_node *np)

because:
1. it is probably just a typo?
2. it causes warnings like this when people assing the returned
   value to an 'int' variable:
   include/linux/of_mtd.h:14:18: warning: type qualifiers ignored on functi=
on return type [-Wignored-qualifiers]

Remove also the unnecessary "extern" qualifier to be consistent with other
declarations in this file.

Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
2012-07-10 10:32:06 -05:00
Arnd Bergmann
db3c47a3af This branch contains more clean-up like changes and minor fixes for making
it easier to support new omap SoCs, such as omap5 and am33xx.
 
 This branch has dependencies to earlier clean-up in omap-cleanup-for-v3.6
 and  omap-devel-dmtimer-for-v3.6 branches, and also depends on the
 omap-devel-am33xx-for-v3.6 branch, and are based on a merge of these
 branches.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.12 (GNU/Linux)
 
 iQIcBAABAgAGBQJP+saxAAoJEBvUPslcq6VzObcP/1Wpa5qZC7y8hc/UbQOziD2M
 NFpLOQal3mugSeFjvtNXxI6nw0fekLxlbvZ8kzYyHOdMPgkVHgJJo0H1E7olYEXK
 gZ6L2cySmQBsyoIcRvNFSCqwN3ej96+fctFEiquvTOyupZnn0fLmh3TPX68ZEdNL
 nrKR9O2xVSLuEwHL6z/BJYI1360KcoB6isDRW8udOo7lpb1jQSc1l9FyLIpwdBgl
 qWRTQlQ+kNf6DGt3iwdt7ssqz1oBeCPNvPp1+tJ9t9aarA/KfQmxFW0gf5RFwX3y
 P9kgF9SZI6HCmzbVDgqb1SA+udCND/4hxJZ3RKHwphx/MbMyIorjy6+OZ/0MJASG
 bu6f4QBZ0TfGuf/uKQEl3P4HiHm57/FKC8WbrMkGwSCE0XgC8YVV/2EYrZa0JYBg
 7f8wk5LJ15dcndvvUqn55DXU5XwglgJ/fUL+UDMUVGsIYuhdLhRKmgkDzGpQCpbO
 c8Q2w4Rvz5Zf3OoB4C8Zxh6GDbiTevae/cU7nhKb1UoN+jlmNchKmHShTvzm5txo
 zIK8Tb9W0eLr81Z7Z7m+Q3hFLuBTcmWD9Dnq/pVceP5qf8XzOQeW1Dy+lDYY+xIx
 LPdKN34JGuqaBhNykXpsA9EfIgfJXadtnaudvv/oy8etEHHTGSGJAwdeXuIIAvkD
 wN9gWFnKOE9cuFH/Hk0T
 =6Zcd
 -----END PGP SIGNATURE-----

Merge tag 'omap-cleanup-part2-for-v3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/cleanup2

From Tony Lindgren <tony@atomide.com>:
This branch contains more clean-up like changes and minor fixes for making
it easier to support new omap SoCs, such as omap5 and am33xx.

This branch has dependencies to earlier clean-up in omap-cleanup-for-v3.6
and  omap-devel-dmtimer-for-v3.6 branches, and also depends on the
omap-devel-am33xx-for-v3.6 branch, and are based on a merge of these
branches.

* tag 'omap-cleanup-part2-for-v3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: OMAP: sdrc: Fix the build break for OMAP4 only builds
  ARM: OMAP2+: dmtimer: cleanup fclk usage
  ARM: OMAP2+: Fix mismerge for omap_hwmod_get_main_clk() API
  ARM: OMAP2+: Remove unnecessary ifdef around __omap2_set_globals
  ARM: OMAP2+: am33xx: Change cpu_is_am33xx to soc_is_am33xx
  ARM: OMAP2+: am33xx: Make am33xx as a separate class
  ARM: OMAP2+: Move omap3 dpll ops to dpll3xxx.c
  ARM: OMAP2+: All OMAP2PLUS uses omap-device.o target so add one entry
  ARM: OMAP: dmtimer: use devm_ API and do some cleanup in probe()
  ARM: OMAP2+: hwmod code: add support to set dmadisable in hwmod framework
  ARM: OMAP2+: PRM/CM: Move the stubbed prm and cm functions to prcm.c file and make them __weak
  ARM: OMAP2+: hwmod: add omap_hwmod_get_main_clk() API
  ARM: OMAP3+: dpll: optimize noncore dpll locking logic
  ARM: OMAP3: control: add definition for CONTROL_CAMERA_PHY_CTRL
  ARM: OMAP2+: powerdomain code: Fix Wake-up power domain power status
  ARM: OMAP4: clockdomain/CM code: Update supported transition modes
  ARM: OMAP3/4: omap_hwmod: Add rstst_offs field to struct omap_hwmod_omap4_prcm
  ARM: OMAP2+: hwmod: Add new sysc_type3 into omap_hwmod required for am33xx

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2012-07-10 16:58:19 +02:00
Arnd Bergmann
e190df2400 Board and platform data related changes for omaps
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.12 (GNU/Linux)
 
 iQIcBAABAgAGBQJP++wDAAoJEBvUPslcq6VzhF4P/AqzPc9rhqgLv+jaXlrD1E5k
 XGKOObZks2lni9ivcQvgwCdedjoJW5BQVZKrQi8u0Sa7PJExUwsef1H23Df0O4u+
 DKaKz4H/k7Jc4qd8W6N9VI4DcSjR1n0QO9x3xvnLa92zR9s6xF1oU+Aia+rPkgbI
 3WQDqlmOGzEHz8fPK9iOxgz55y2gBmyP7v+Qdj33yDPoRsPcMG3GCw0r+iVtjGMZ
 cxLbpICz3gXTSIdN0bPsuivDxjJNYQo2u3bNMMnx5TNULvBjCBKXtFEzVqHe8rxd
 QXhLjcbDL7SLW/Fs/wAPfcr4F2UlRiK04B7aavf0fxRO1Fw6IfhdnQJ2k94YTNWT
 M5AFavtlN/Pm49QPlkf9Jkj+LxGTpTe6kvbmCTpAd2De2W8HshIUy9iLI3leX5RR
 /Ks/Uq7Wr9atXGHgEnZ61ub+7vsqf3DhYXdRebeW/o6nf1kYZLwV/5xIVsbh5E4o
 FGQg9BOk1PhzUe6W0cMc6PxQh1lIvE48uacpSWUrhu3pFba54JC85GN4ICzmTnPx
 mhEccnfzPGnEf6p8UhYFVZAR82c3dw5OeMSwYqOMEI2Tce2KHsXPiv2xlvXWonm3
 cP8UAFawoV+1zMlOw6pf+6cMZ9FMkqBq49s5PtI3YBKGo5mBgB55+gv90tSKHwLa
 vrOx7j5e/9rcdvJs1V2i
 =/t77
 -----END PGP SIGNATURE-----

Merge tag 'omap-devel-board-for-v3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/boards

From Tony Lindgren <tony@atomide.com>:
Board and platform data related changes for omaps

* tag 'omap-devel-board-for-v3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: OMAP3: Fix omap3evm randconfig error introduced by VBUS support
  ARM: OMAP: board-omap4panda: MUX configuration for sys_nirq2
  ARM: OMAP: board-4430sdp: MUX configuration for sys_nirq2
  ARM: OMAP3530evm: set pendown_state and debounce time for ads7846
  ARM: omap3evm: enable VBUS switch for EHCI tranceiver
  ARM: OMAP3EVM: Adding USB internal LDOs board file
  ARM: OMAP3EVM: Add NAND flash definition
  ARM: OMAP3: cm-t35: add tvp5150 decoder support
  ARM: OMAP3: cm-t35: add mt9t001 camera sensor support
  omap2+: add drm device

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2012-07-10 16:54:25 +02:00
Bjorn Helgaas
6ee53f4c38 Merge branch 'pci/bjorn-p2p-bridge-windows' into next
* pci/bjorn-p2p-bridge-windows:
  sparc/PCI: replace pci_cfg_fake_ranges() with pci_read_bridge_bases()
  PCI: support sizing P2P bridge I/O windows with 1K granularity
  PCI: reimplement P2P bridge 1K I/O windows (Intel P64H2)
  PCI: allow P2P bridge windows starting at PCI bus address zero

Conflicts:
	drivers/pci/probe.c
	include/linux/pci.h
2012-07-10 08:36:09 -06:00
Bjorn Helgaas
1c97593112 sparc/PCI: replace pci_cfg_fake_ranges() with pci_read_bridge_bases()
The generic code to read P2P bridge windows is functionally equivalent
to the sparc-specific pci_cfg_fake_ranges(), so use the generic code.

The "if (!res->start) res->start = ..." removed from the I/O window code
here was an artifact of the Intel 1K window support from 9d265124d0 and
is no longer necessary (it probably was just cloned from x86 and was never
useful on sparc).

Acked-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
2012-07-10 08:34:59 -06:00
Uwe Kleine-König
0564414706 spi/gpio: start with CS non-active
The chip select line was configured as output with the initial value
being active explicitly. It was later deasserted during
spi_bitbang_setup() without any clock activity in between. So it makes
no sense to activate the device at all and the chip select line can
better start non-active.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2012-07-10 15:28:56 +01:00
Laxman Dewangan
619ac8d3e5 spi: tegra: use dmaengine based dma driver
Use the dmaengine based Tegra APB DMA driver for
data transfer between SPI FIFO and memory in
place of legacy Tegra APB DMA.

The new driver is selected if legacy driver is not
selected and new DMA driver is enabled through config
file.

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Acked-by: Stephen Warren <swarren@wwwdotorg.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2012-07-10 15:28:56 +01:00
Arnd Bergmann
c26abeb7b5 DaVinci fixes for v3.6
Fix an interrupt handling issue with cp_intc which
 was causing occasional spurious interrupts with DA850 EVM
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.10 (GNU/Linux)
 
 iQIcBAABAgAGBQJP+rNtAAoJEGFBu2jqvgRNyHAP+QGQV+73+sBxmacM9jKdw+1v
 7jBWVH7zDsbWedl02XTfaZFQF5a3ikB3uPMyzXTSslrzVyNzlTM3eeSclarAdr8u
 TIkY8JJHSyB7Q8Qro8WMZQ/DgltfIZoIYoCwnQ1elUVuQR7Mha90am2oKhJZ/Z6E
 +9qJPaPm3l8wSD/1BiXRsHWD1Fgb52dUaWHP4fY8MgWmsC6pbGKuC5tRVAP2uJus
 uIA3bhERimmGZVcb3i4ZGvKr45CFXYLZZt1UtQtyMXk0fuL+OEczyHKF55lwrXZX
 t/snUXroZnnmQXRUsLXBosng+3QUeOcXifmbEEmBmT4eZTDjGjbh2DYZzYivfp2f
 AdKBtJqMj/Fi1XW2HX5B8EB/H4IwkHi9045gAmJ8uJicP6BbN9EsjjW5yzq+5c/F
 piR8uCxVAvnEgsiLyqGurEIyTpgtWXVaqj+fAPw40QRDx6L9yePb74ziLIYpchBs
 ozpcmGoDa2mPrPX8zrMAZi4ngOV4zrue9+JHTlxa8vYRx1V6/HjdcTamksp5r5G+
 H0PCnACJc5itLbr5uBO/NLIp8EkgCjzDdEhTnX+LsZtnNdTMOOkoObQ/QE8KUdsU
 XYzlFjl2kyttHuZW9S8I/IBC7/G2aoIvwDeC0YVW28hatrBjpehXb1Qr24z/t2SP
 GSFgjjX5vejjlfxx+EW1
 =3h/9
 -----END PGP SIGNATURE-----

Merge tag 'davinci-v3.6-fixes' of git://gitorious.org/linux-davinci/linux-davinci into next/fixes-non-critical

DaVinci fixes for v3.6

Fix an interrupt handling issue with cp_intc which
was causing occasional spurious interrupts with DA850 EVM

* tag 'davinci-v3.6-fixes' of git://gitorious.org/linux-davinci/linux-davinci:
  ARM: davinci: da8xx: fix interrupt handling
2012-07-10 16:22:11 +02:00
Arnd Bergmann
b52a2c472d DaVinci SoC updates for v3.6
Add IRQ domain support for cp_intc and
 runtime PM core support for DaVinci devices.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.10 (GNU/Linux)
 
 iQIcBAABAgAGBQJP+q0LAAoJEGFBu2jqvgRNnncP/0MBAapuUIArmlY2cP9qZYsM
 Hct5Qe5Ko0qO/hXlXabU/CWN0ezFoOcE+SMXRDkepyHhtJ86PMFTr0a/ASsGWV5D
 gPUY8IRhRfv5HBuZx9N8PoTpfR6yHHjXl+Qtwkr/UMMvgD9a5gh3B04J9914U7Nr
 lRJYBqU1byOHNEAwfe5j8ART1QHNDzg4tGAUaa/blyefhakftN4APk0f5sGybtcg
 6VkYMAj2e8NSr4YwUp6KDiAY/1eeiyqR/hGDJPJURC07UsH32lTYNk3KlXaONIAJ
 HappEfLXoQ9Dey5ie6cnK0YS9qcIw9cAWbOZXUis+BEuSzkT7dcYP+XmuXuD/aty
 L+o3/tEOpkRXfd8Etx8EnApLk2KzdpUBi8AkWmGaewJS5erqQG9JFeWO8UCNpdLs
 31otBYKrfTS3qmLRp3FHV3vXIq9mkt0vhjYMkFoAMJRTxbTy4NAIOYjvqgO7yENj
 6f2I0KqAsIp2M/+v90KWE1eo5jgtq2pv2lPABnPJGVrL/vmNBFH8+fhNOjFnToA7
 KnC39g0bi+55o3TVmzau7vUaliOJn1sfwFQu+Gc5+tZC2/MtrtAsKn54d1KkXjw7
 cVHI64khgdWZtLfEqVrNjZtXj1jHEc/pQGkzLyFZNRUSvWpZ0tKL1USh9cEiym1+
 xsRWe5N11iDoEkUV7+uX
 =8+Mw
 -----END PGP SIGNATURE-----

Merge tag 'davinci-v3.6-soc' of git://gitorious.org/linux-davinci/linux-davinci into next/soc

From Sekhar Nori <nsekhar@ti.com>:

DaVinci SoC updates for v3.6

Add IRQ domain support for cp_intc and
runtime PM core support for DaVinci devices.

* tag 'davinci-v3.6-soc' of git://gitorious.org/linux-davinci/linux-davinci:
  ARM: davinci: add runtime PM support for clock management
  ARM: davinci: cp_intc: Add irq domain support

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2012-07-10 16:19:23 +02:00
Arnd Bergmann
f923c8e887 DaVinci cleanups for v3.6
Remove some header files which were marked for removal. These files are
 not used anymore.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.10 (GNU/Linux)
 
 iQIcBAABAgAGBQJP+nkHAAoJEGFBu2jqvgRN+qIP/0dVPhEaQd0xSwwYeXtqkkfF
 P7IwNCYgekmV+JrsuJp3jzBWx6RP+04jOMFukjoAjG1wNZd/YZMz0Rm0Z8lfKZbO
 +NR2ajGptkLhC6lDmIGj9kQs1fBUPLAzqmtaDSOITVmvU/bnJECmAE1rDT949G5W
 ouoDTqZsSw6ETeplYqKUJ9yK57/rjOql6hxqMvkMy//UZCHb1Q21Z459P6y4tVhp
 L0WIX3KMOt1JhudzY0fFCJP520Ci4qpwx1CANNiS8WBJsVaG46U4UxEELYPN59Bj
 G5iDe12UT4lO1KQYlx4G0iWRLZZTG0hIpws+5DXZPq7rwrbOsDxZVi3wx0bqMZzM
 eafAPe14+PWehR65IOWlGZ/+ci/sn0DYwIr7sVr75bozt1boPYarStmQgDEWeYSN
 /4SSzirNc5L5s/JMCkJRygENB5Q3n9TWQEByJx/su3B8+zYLi8anO/FSzFbzEFDC
 xTmO+buNuWmvHSkZuMkgKADbpzWWK+6rm1umggNXnNtWHUNf8gL40VGbmUlG1Pmr
 SihDTBfRFD5yhxPW9rnlN3X1E7cuJgLEgPWE6RtyoSkvExUm/PL7Wp//OZguPmlt
 wvk9+IYRyn3g5XTZjkbx2BCtrKqoP/OoSB+JiRAHwtm6O6IhSXPzC9N3xma9YXqU
 XDcSUUWiEA0mVUkhaRgl
 =NR2J
 -----END PGP SIGNATURE-----

Merge tag 'davinci-v3.6-cleanup' of git://gitorious.org/linux-davinci/linux-davinci into next/cleanup

From: Sekhar Nori <nsekhar@ti.com>
DaVinci cleanups for v3.6

Remove some header files which were marked for removal. These files are
not used anymore.

* tag 'davinci-v3.6-cleanup' of git://gitorious.org/linux-davinci/linux-davinci:
  ARM: davinci: remove dummy header files

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2012-07-10 16:18:20 +02:00
Arnd Bergmann
9861e9551f Here is one PM regression fix and a defconfig change to disable
echi-omap because the driver currently causes issues with PM.
 This annoys Kevin as it makes it harder for him to validate that
 PM is working. The proper fixes for the echi-omap are being
 discussed, but looks like it will not be properly working with PM
 until in v3.7.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.12 (GNU/Linux)
 
 iQIcBAABAgAGBQJP/C8tAAoJEBvUPslcq6Vz/CQQAMcyzBitcocXb9bkOz1I0eiy
 Y9Cn4ZnSrNZbkNETgStcgTjK6krmz15yqNgQE+KffYCDQqQxhExI33XT8VCHySj7
 S++3XcDPUrt3UPidzRDFASazgo+RyyeYfuF32V18TTjYLJCU8tbVcWvzvGPS13eb
 5XjTLTholLFDItGy5MPGkdoZXlZqqS4r/cwMG/9io11SUIHfpRvqdV/r+LbXCGqH
 GnvAkXIcaVaRmv20v0vYLVWFbbVh1QFHeuX2lnGbNBQC1XaIwmRQg9cJ7pz7HRaZ
 YAMPc/N44/EqbfbgKoipy14aPAOfSa3kAFl90Gn2Cmz/Ee8mCO/SQz+FVwaF11Vi
 pFpk0miidoAxDLnDiswip9k5EPbTgcZEqIjenIRWtST127YOpLmdCUPnRPv8TaLj
 0uo68g7nXTOtUczmpxL+FxdwC+hzvuL0As0YoE+WqU5+Joo972Wxyj2iCle6jW5Z
 etmYjYRq/tIX40DPTBT7cu6Oh+CH+FHsOCmfwaWSULf2UWyHeRZsJM6KZrTj1VAm
 Baf21HAivJKJERQie8i7PEbtBccMVKRaqMqlitLtdZlYjNjj5IjuRBLyMUtwHNQn
 tddM9ySQH/NQYFPXIwbwvfAwNOdwBYD+ofqsxKsVB15jzbgES7JC02W3vHHa7o3H
 vv+6NdA5kibofq6R+WjT
 =+Kkw
 -----END PGP SIGNATURE-----

Merge tag 'omap-fixes-for-v3.5-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into fixes

From Tony Lindgren <tony@atomide.com>:
Here is one PM regression fix and a defconfig change to disable
echi-omap because the driver currently causes issues with PM.
This annoys Kevin as it makes it harder for him to validate that
PM is working. The proper fixes for the echi-omap are being
discussed, but looks like it will not be properly working with PM
until in v3.7.

* tag 'omap-fixes-for-v3.5-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: OMAP2+: omap2plus_defconfig: EHCI driver is not stable, disable it
  ARM: OMAP2+: hwmod code/clockdomain data: fix 32K sync timer

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2012-07-10 16:12:39 +02:00
Arnd Bergmann
81ab1f74ef Merge branch 'mvebu/newsoc' into next/newsoc
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>

You'll find in this patch set the nineth version of the initial
support for a new family of ARMv7-compatible Marvell SoCs.

As for the previous releases, both the Armada 370 and the Armada XP
SoCs are supported in this directory, and we are able to build a
single kernel image that boots on both SoCs. Both SoCs use the PJ4B
processor, a Marvell-developed ARM core that implements the ARMv7
instruction set. We are currently using Marvell evaluation boards for
both of those SoCs, and the support for those boards is added in this
patch set.

This patch set, and the support for those SoCs, started as a
collaborative effort from Marvell engineers (who have done the initial
development work) and Free Electrons engineers (who are reshaping the
code for mainline submission, adding device tree support, etc.). This
effort has also received contributions from Ben Dooks from Codethink.

* mvebu/newsoc:
  ARM: mvebu: MPIC: read number of interrupts from control register
  arm: mach-mvebu: add entry to MAINTAINERS
  arm: mach-mvebu: add compilation/configuration change
  arm: mach-mvebu: add defconfig
  arm: mach-mvebu: add documentation for new device tree bindings
  arm: mach-mvebu: add support for Armada 370 and Armada XP with DT
  arm: mach-mvebu: add source files
  arm: mach-mvebu: add header
  clocksource: time-armada-370-xp: Marvell Armada 370/XP SoC timer driver

Changes from Arnd
* Pulled from git://github.com/Marvell-Semi/EBU_mainline_public.git mvebu_for-next-V9
* rebased onto v3.5-rc5 because it was originally based on
  an old arm-soc/for-next branch

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2012-07-10 15:49:09 +02:00
Axel Lin
b669e0adb9 regulator: max8952: Use core GPIO enable support
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2012-07-10 14:48:42 +01:00