Commit Graph

26885 Commits

Author SHA1 Message Date
Linux Build Service Account
d862129674 Merge changes Ie69b7aeb,I7b80a00a,Ia7e1be18,I54c9fa02,I2303f623 into msm-3.0
* changes:
  usb: msm_otg: vote and unvote for CXO_CLK instead of D0
  wcnss: Enable CXO for PMU accesses
  msm: pil-riva: Enable CXO clock to access PMU
  msm: pil-q6v4: Proxy vote for L23
  msm: pil-riva: Proxy vote for L23
2012-01-26 16:02:11 -08:00
Stephen Boyd
98a82edeb4 wcnss: Enable CXO for PMU accesses
The PMU registers are clocked from CXO out of power on reset.
Turn on the CXO clock so that these registers are accessible.

Change-Id: I7b80a00a3bd592f24d6604f0f05b3ed1f5172139
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
2012-01-26 09:28:41 -08:00
Pankaj Kumar
7aacecb7e7 driver: libra: qcomwlan_pwrif: Add support to put regulator in LPM mode
In 8660 wifi is using 8901 regulators. Once wifi is enabled and disabled
back, these regulator does not go in LPM mode and causing the device to
draw more current in suspend state. Hence put these regulator in LPM mode.

CRs-Fixed: 328481
Change-Id: Iedb05498af9f89b57e96eebee9ca74460ddb4963
Signed-off-by: Pankaj Kumar <pakuma@codeaurora.org>
2012-01-23 18:55:25 +05:30
Jeff Hugo
4838f4164c msm: bam_dmux: handle timeouts due to modem crash
If bam_dmux times out waiting for a response from the modem, we assume it
has crashed.  Therefore, prepare for modem restart if enabled, otherwise
report the error with BUG as we are in an unrecoverable state

Change-Id: I5f2419eae721a735a2396693da9fa2d28b14f122
CRs-Fixed: 331808
Signed-off-by: Jeffrey Hugo <jhugo@codeaurora.org>
2012-01-20 17:18:17 -07:00
Hemant Kumar
964f1c9b9f net: usb: Set skb protocol based on RMNET Link Layer Protocol Mode
Embedded rmnet driver is setting skb protocol to ethernet link layer
protocol, which causes the IP stack to drop the packets if it is set
to raw IP link layer protocol mode. Hence set the SKB protocol based
on the RMNET link layer protocol mode.

Change-Id: Ife1243feec54a50c00ec833b6ed72f59bf883b94
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
2012-01-18 14:57:51 -08:00
Linux Build Service Account
fea4e6cca7 Merge "msm: rmnet_bam: correct error handling" into msm-3.0 2012-01-09 13:44:13 -08:00
Linux Build Service Account
d846875671 Merge "wcnss: Add Riva 'power on lock' APIs" into msm-3.0 2012-01-09 07:08:43 -08:00
Hemant Kumar
9d6016cb4f net: usb: Add support for PID 0x9034
Embedded rmnet driver currently supports PID 0x9048.
Add support to handle multiple PIDs (i.e. 0x9034).

Change-Id: I39e1e46953c4817181fe1d76241627e530e7cd84
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
2012-01-06 14:57:28 -08:00
Jeff Hugo
523de14358 msm: rmnet_bam: correct error handling
The error handling of msm_bam_dmux_write() should recognize -EAGAIN as a
valid error code and not mask it out.  -EAGAIN needs to be handled
differently than other error codes.

CRs-Fixed: 325621
Change-Id: I69b6b5094fcf93c933971a0eae60c6bca0a12299
Signed-off-by: Jeffrey Hugo <jhugo@codeaurora.org>
2012-01-06 13:38:51 -07:00
Hemant Kumar
7f23683828 usb: Update PID to 9048 for mdm_bridge, diag_bridge, embedded rmnet drivers
mdm9x15 default composition changed from 0x9001 to 0x9048 to include
new serial interfaces and additional rmnet interfaces. Hence update the
PID for mdm_bridge, diag_bridge, embedded rmnet drivers to support new
composition.

Change-Id: I5c3778ef6b8fddd07d1a0789213e4b289ccc7567
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
2012-01-04 18:45:15 -08:00
Sameer Thalappil
aebc0d8c24 wcnss: Add Riva 'power on lock' APIs
During SSR Riva should not be 'powered on' until all the host
drivers finish their shutdown routines. Add APIs to support
this synchronization mechanism.

Change-Id: Id211cf2deb7accd0e4bdfe8cd328e6807eac875e
Signed-off-by: Sameer Thalappil <sameert@codeaurora.org>
2012-01-01 13:45:23 -08:00
Hemant Kumar
37c35e4ee5 net: usb: Add support for embedded rmnet usb host driver
Embedded rmnet usb host driver will be used to communicate with modem
devices having rmnet interface. This driver works as pass through layer
for control and data path communication. Driver currently supports device
with product id: 0x9034 and vendor id : 0x05c6.

Change-Id: Ie037af915f2650828420a351bd3fe503a505eaee
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
2011-12-19 18:04:17 -08:00
Linux Build Service Account
34821ef589 Merge "libra: Add security functions to module" into msm-3.0 2011-12-16 21:09:57 -08:00
Yunsen Wang
5676f8d18e libra: Add security functions to module
Link to the security functions from wcnss

Change-Id: Iddd7960ff231e0a8201cecf30207edbc26140f8a
Signed-off-by: Yunsen Wang <yunsenw@codeaurora.org>
2011-12-16 15:17:13 -08:00
Rohit Vaswani
73299b46c7 drivers:net: Add RGMII support to the qfec driver
Added support for RGMII (1G) phys, sysfs/mdio and minor enhancements.

Change-Id: Icffb3965855369430c2d831a7aa1bd1fb73f9951
Acked-by: Kaushik Sikdar <ksikdar@qualcomm.com>
Signed-off-by: Rohit Vaswani <rvaswani@codeaurora.org>
2011-12-16 13:38:02 -08:00
Sameer Thalappil
409ed358cf wcnss: Proxy vote for Iris regulators on behalf of Riva
This patch includes the following changes,
a. Proxy vote for Iris regulators on behalf of Riva.
b. During SSR power-on, vote for Iris regulators just like in
   cold boot.
c. Remove wcnss_riva.h, it was meant to be local to platform driver.
d. Make WCNSS platform driver part of kernel

Change-Id: Ied1f91297305469a0e4d9e524a03b49e1f600852
Signed-off-by: Sameer Thalappil <sameert@codeaurora.org>
2011-12-12 15:01:08 -08:00
Jeff Hugo
1dbacd7aab msm: rmnet_bam: handle transport errors
If the rmnet transport returns an error, return a busy code to the IP
Framework and unlock the netif queue so that the IP Framework will
try again later.

Change-Id: I17638e301ba7240bfc44096647147b598686d2c8
Signed-off-by: Jeffrey Hugo <jhugo@codeaurora.org>
2011-12-08 10:30:53 -07:00
Linux Build Service Account
1a5f69ac10 Merge "wcnss: Permit the module to be statically linked into the kernel" into msm-3.0 2011-12-02 21:29:05 -08:00
Karthikeyan Ramasubramanian
7bf5ca80ec msm: bam_dmux: Introduce watermarking in client transmit queue
BAM_DMUX does not put any restriction on the number of packets in
flight over the underlying BAM transport. This causes the bandwidth
to be not shared fairly among the clients. So introduce the concept
of watermarking in each client's transmit queue so that the clients
share the transport fairly and efficiently under high throughput
uplink scenarios

Change-Id: Ibf7e12b4cf13e826e7f83a41821f435cb7aa2cb0
Signed-off-by: Karthikeyan Ramasubramanian <kramasub@codeaurora.org>
2011-12-01 17:51:29 -07:00
Jeff Johnson
b3377e32af wcnss: Permit the module to be statically linked into the kernel
Add logic to the wcnss module so that it can either be statically
built into the kernel or built as a dynamically loaded module.  Up to
this point the wcnss driver only supported dynamic loading, however an
upcoming wcnss subsystem restart change requires that it be statically
linked into the kernel.  The major difference between these two modes
is that when the module is dynamically loaded it can assume upon
module init that userspace is available to service the peripheral
image loader (PIL), whereas when the module is statically linked it
cannot assume that userspace is available.  Therefore when the module
is statically linked, during module init it instantiates a sysfs file
node, and only after userspace has indicated it is available by
touching that sysfs node can the module perform its "normal"
initialization including triggering the PIL.

Change-Id: I2b88b358d45bc8f9c4e603173d7c2b72ea7bac0c
Signed-off-by: Jeff Johnson <jjohnson@codeaurora.org>
2011-12-01 06:40:09 -08:00
Linux Build Service Account
ac9de0f8ca Merge "msm: rmnet_bam: fix xmit statistics" into msm-3.0 2011-11-21 13:27:49 -08:00
Bryan Huntsman
d074fa2796 Merge remote-tracking branch 'common/android-3.0' into msm-3.0
* common/android-3.0: (570 commits)
  misc: remove kernel debugger core
  ARM: common: fiq_debugger: dump sysrq directly to console if enabled
  ARM: common: fiq_debugger: add irq context debug functions
  net: wireless: bcmdhd: Call init_ioctl() only if was started properly for WEXT
  net: wireless: bcmdhd: Call init_ioctl() only if was started properly
  net: wireless: bcmdhd: Fix possible memory leak in escan/iscan
  cpufreq: interactive governor: default 20ms timer
  cpufreq: interactive governor: go to intermediate hi speed before max
  cpufreq: interactive governor: scale to max only if at min speed
  cpufreq: interactive governor: apply intermediate load on current speed
  ARM: idle: update idle ticks before call idle end notifier
  input: gpio_input: don't print debounce message unless flag is set
  net: wireless: bcm4329: Skip dhd_bus_stop() if bus is already down
  net: wireless: bcmdhd: Skip dhd_bus_stop() if bus is already down
  net: wireless: bcmdhd: Improve suspend/resume processing
  net: wireless: bcmdhd: Check if FW is Ok for internal FW call
  tcp: Don't nuke connections for the wrong protocol
  ARM: common: fiq_debugger: make uart irq be no_suspend
  net: wireless: Skip connect warning for CONFIG_CFG80211_ALLOW_RECONNECT
  mm: avoid livelock on !__GFP_FS allocations
  ...

Conflicts:
	arch/arm/mm/cache-l2x0.c
	arch/arm/vfp/vfpmodule.c
	drivers/mmc/core/host.c
	kernel/power/wakelock.c
	net/bluetooth/hci_event.c

Signed-off-by: Bryan Huntsman <bryanh@codeaurora.org>
2011-11-16 13:52:50 -08:00
Jeff Hugo
347fbbb117 msm: rmnet_bam: fix xmit statistics
The skb being transmitted can be freed at any point after handing it
off to the transport.  Thus the statistics must be determined in the
callback to prevent accessing data that is already freed.  Also,
statistics should always be calculated when in IP mode.

CRs-Fixed: 318747
Change-Id: I3a2a081291fc657ca64aff47a3370017c5b6f7ca
Signed-off-by: Jeffrey Hugo <jhugo@codeaurora.org>
2011-11-15 16:51:08 -07:00
Linux Build Service Account
acfeadedeb Merge "msm: rmnet_bam: Add error logging" into msm-3.0 2011-11-13 13:30:25 -08:00
Dmitry Shmidt
0d8f32b7e8 net: wireless: bcmdhd: Call init_ioctl() only if was started properly for WEXT
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2011-11-11 16:14:33 -08:00
Dmitry Shmidt
1720a91d03 net: wireless: bcmdhd: Call init_ioctl() only if was started properly
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2011-11-11 16:14:22 -08:00
Dmitry Shmidt
766aaa604c net: wireless: bcmdhd: Fix possible memory leak in escan/iscan
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2011-11-11 16:14:07 -08:00
Linux Build Service Account
db1e48f835 Merge "smsc911x: request_any_context_irq can return postive value upon success" into msm-3.0 2011-11-10 13:29:41 -08:00
Linux Build Service Account
80923d42a8 Merge "msm: bam_dmux: fix registration of platform devices" into msm-3.0 2011-11-10 01:11:51 -08:00
Eric Holmberg
70385480d7 msm: rmnet_bam: Add error logging
Add error logging in failure scenarios since all errors are
converted to ENODEV in upper layers making debugging
difficult.

Change-Id: I411c88ccf1eefd85946a3bc2593524894754e2d1
Signed-off-by: Eric Holmberg <eholmber@codeaurora.org>
2011-11-09 16:07:35 -07:00
Eric Holmberg
bd4c384bd4 msm: bam_dmux: fix registration of platform devices
Fix incorrect checking of return code for platform
device registration.

CRs-fixed: 316420
Change-Id: Ic2ef5dae096ab94244994b1514d73d04bb68af46
Signed-off-by: Eric Holmberg <eholmber@codeaurora.org>
2011-11-08 13:51:11 -07:00
Jeff Johnson
0f03fd7aab wcnss: remove obsolete define WCNSS_NV_NAME
Remove obsolete define WCNSS_NV_NAME which was originally used to
specify the file from which to obtain the has_48mhz_ xo option.  That
logic was replaced with a board file option with module param
override, but this define was inadvertently not removed at that time.

Change-Id: I810c07115a76e938fded8e6ab92d3ff72d56e6aa
Signed-off-by: Jeff Johnson <jjohnson@codeaurora.org>
2011-11-07 11:55:58 -08:00
Terence Hampson
ac6b23da4b smsc911x: request_any_context_irq can return postive value upon success
When support for nested interrupts was merged in commit
3a076852dc80aa3cfc02c880c41dcd947cdeab70 in kernel 2.6.38 it appears as
though this previous commit was not merged properly.

Change-Id: I2aca73fdb1ae663ca058aadd27fe658de6d851e3
Signed-off-by: Terence Hampson <thampson@codeaurora.org>
2011-11-07 14:06:54 -05:00
Dmitry Shmidt
3f4f629fc8 net: wireless: bcm4329: Skip dhd_bus_stop() if bus is already down
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2011-11-04 11:13:49 -07:00
Dmitry Shmidt
5d94d7a3b7 net: wireless: bcmdhd: Skip dhd_bus_stop() if bus is already down
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2011-11-04 11:13:35 -07:00
Dmitry Shmidt
19179ebdb3 net: wireless: bcmdhd: Improve suspend/resume processing
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2011-11-04 09:56:20 -07:00
Dmitry Shmidt
40dd812298 net: wireless: bcmdhd: Check if FW is Ok for internal FW call
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2011-11-04 09:56:02 -07:00
Pankaj Kumar
6ac59af489 msm: board-msm7x27a: Fix for Wifi Error issue.
Wifi and BT have shared voltage regulator. So if both
needs to be enabled, there is a voltage level conflict
between them. In case of older vreg implementation
there is no such sanity check regarding the voltage
levels, hence no conflict.

But in case of regulator API's, it has a sanity check for
previously voted voltage for a particular regulator. Hence
in this case we need to pass the minimum & maximum voltage
range for both BT & WIFI, so that regulator framework will
internally set the common voltage level for both devices.

Change-Id: I48cc70ffe78407dc1013ac09da4cddfcda0ab2cf
Signed-off-by: Pankaj Kumar <pakuma@codeaurora.org>
2011-10-31 09:09:25 +05:30
Linux Build Service Account
5029b5b99c Merge changes Ie56f057d,I7eeb4900 into msm-3.0
* changes:
  msm: rmnet_bam: add subsystem restart support to rmnet over bam
  msm: bam_dmux: add subsystem restart support
2011-10-28 11:59:46 -07:00
Colin Cross
2bb3e31015 Merge commit 'v3.0.8' into android-3.0 2011-10-27 15:01:19 -07:00
Linux Build Service Account
d39da5a41f Merge "8060: wlan: Use proper gpio value for dragonboard" into msm-3.0 2011-10-27 09:48:08 -07:00
Dmitry Shmidt
d5b9284a58 net: wireless: bcm4329: Prohibit FW access in case of FW crash
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2011-10-26 14:01:32 -07:00
Dmitry Shmidt
019c9a9d40 net: wireless: bcmdhd: Adjust scan parameters for wl_cfg80211_connect()
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2011-10-26 12:26:51 -07:00
Dmitry Shmidt
c670bf779b net: wireless: bcmdhd: Update to version 5.90.125.94
- Fix WFD interface removal
- Fix profile update
- Keep same mode for softap or WFD during early suspend
- Add dhd_console_ms parameter access

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2011-10-26 12:26:38 -07:00
Jeff Hugo
24dfa0ca08 msm: rmnet_bam: add subsystem restart support to rmnet over bam
Change-Id: Ie56f057de7400d91c6b3e1a7563a7df0c14e3942
Signed-off-by: Jeffrey Hugo <jhugo@codeaurora.org>
2011-10-26 11:22:34 -06:00
Jeff Hugo
bac7ea2619 msm: rmnet_bam: kickoff UL wakeup when necessary
Kickoff uplink wakeup on the transport when necessary so that necessary
scheduling does not occur in atomic context.

Change-Id: Iae702d0b318c8edc8ee0b45e372cc2db85370a97
Signed-off-by: Jeffrey Hugo <jhugo@codeaurora.org>
2011-10-24 11:52:33 -06:00
Ben Dooks
1741a39bf5 KSZ8851-SNL: Add ethtool support for EEPROM via eeprom_93cx6
Add ethtool EEPROM read/write support using the eeprom_93cx6
library instead of open-coding the functions.

Depends on eeprom_93cx6 driver getting EEPROM write support.

Change-Id: I06f3ab2b936244f658faae3ae8199a21de7b4d51
Signed-off-by: Ben Dooks <ben@simtec.co.uk>
Signed-off-by: Simtec Linux Team <linux@simtec.co.uk>
[sboyd@codeaurora.org: Removed previous eeprom implementation]
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
2011-10-21 15:33:28 -07:00
Tristram Ha
9bf885e3e7 KSZ8851-SNL: Fix MAC address change problem
When device is off it is under power saving mode. Changing the MAC address
in that situation will result in the device not communicating as the first
write to the MAC address register is not executed.

Change-Id: I7747b0eab438e180fc8c279ba03a37c1543a24da
Signed-off-by: Tristram Ha <Tristram.Ha@micrel.com>
[ben@simtec.co.uk: cleaned up header]
Signed-off-by: Ben Dooks <ben@simtec.co.uk>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
2011-10-21 15:33:28 -07:00
Ben Dooks
ff47cb0299 KSZ8851-SNL: Add support for EEPROM MAC address
Add support for reading the MAC address from the system registers if there
is an EEPROM present. This involves caching the KS_CCR register for later
use (will also be useful for ETHTOOL support) and adding a print to say
that there is an EEPROM present.

Change-Id: Id23e88fbbb970daeb28ec0dceba4752eddd2d827
Signed-off-by: Ben Dooks <ben@simtec.co.uk>
[sboyd@codeaurora.org: Remove our implementation]
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
2011-10-21 16:15:26 -06:00
Terence Hampson
f849a2196c 8060: wlan: Use proper gpio value for dragonboard
Change-Id: Ia6fbddb207d00db920f6bca93f54fc42453881fb
Signed-off-by: Terence Hampson <thampson@codeaurora.org>
2011-10-20 18:11:55 -04:00