Commit Graph

260536 Commits

Author SHA1 Message Date
Arnd Bergmann
4f874106b7 ARM: gic: use module.h instead of export.h
The module.h cleanup series is not merged at this point, so use the
older header file for now, to make it build either way.

Change-Id: I9c86d387c7acd99c197867425a00ca17875bc687
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Trilok Soni <tsoni@codeaurora.org>
2011-12-26 15:48:05 +05:30
Rob Herring
050113e2fe ARM: gic: fix irq_alloc_descs handling for sparse irq
Commit "ARM: gic: add irq_domain support" (b49b6ff) breaks SPARSE_IRQ
on platforms with GIC. When SPARSE_IRQ is enabled, all NR_IRQS or
mach_desc->nr_irqs will be allocated by arch_probe_nr_irqs(). This caused
irq_alloc_descs to allocate irq_descs after the pre-allocated space.

Make irq_alloc_descs search for an exact irq range and assume it has
been pre-allocated on failure. For DT probing dynamic allocation is used.
DT enabled platforms should set their nr_irqs to NR_IRQ_LEGACY and have all
irq_chips allocate their irq_descs with irq_alloc_descs if SPARSE_IRQ is
enabled.

gic_init irq_start param is changed to be signed with negative meaning do
dynamic Linux irq assigment.

Change-Id: I05b83bd8b72471233c0ea23bc9e8af2916e6b0fa
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
Signed-off-by: Trilok Soni <tsoni@codeaurora.org>
2011-12-26 15:48:04 +05:30
Rob Herring
0fc0d946d6 ARM: gic: add OF based initialization
This adds ARM gic interrupt controller initialization using device tree
data.

The initialization function is intended to be called by of_irq_init
function like this:

const static struct of_device_id irq_match[] = {
	{ .compatible = "arm,cortex-a9-gic", .data = gic_of_init, },
	{}
};

static void __init init_irqs(void)
{
	of_irq_init(irq_match);
}

Change-Id: I722c5f7acf2426dac7937f53d3a0bf5a1d1fbae6
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
Reviewed-by: Jamie Iles <jamie@jamieiles.com>
Tested-by: Thomas Abraham <thomas.abraham@linaro.org>
Acked-by: Grant Likely <grant.likely@secretlab.ca>
[tsoni@codeaurora.org: Fix merge conflicts]
Signed-off-by: Trilok Soni <tsoni@codeaurora.org>
2011-12-26 15:48:02 +05:30
Rob Herring
c383e04b54 ARM: gic: add irq_domain support
Convert the gic interrupt controller to use irq domains in preparation
for device-tree binding and MULTI_IRQ. This allows for translation between
GIC interrupt IDs and Linux irq numbers.

The meaning of irq_offset has changed. It now is just the number of skipped
GIC interrupt IDs for the controller. It will be 16 for primary GIC and 32
for secondary GICs.

Change-Id: Ie94f443aedea16036a6d2c30ff5ea4b3e4cfe9e1
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
Cc: Marc Zyngier <marc.zyngier@arm.com>
Reviewed-by: Jamie Iles <jamie@jamieiles.com>
Tested-by: Thomas Abraham <thomas.abraham@linaro.org>
Acked-by: Grant Likely <grant.likely@secretlab.ca>
[tsoni@codeaurora.org: Fix merge conflicts]
Signed-off-by: Trilok Soni <tsoni@codeaurora.org>
2011-12-26 15:48:01 +05:30
Paul Gortmaker
110bf6b58c module.h: split out the EXPORT_SYMBOL into export.h
A lot of files pull in module.h when all they are really
looking for is the basic EXPORT_SYMBOL functionality. The
recent data from Ingo[1] shows that this is one of several
instances that has a significant impact on compile times,
and it should be targeted for factoring out (as done here).

Note that several commonly used header files in include/*
directly include <linux/module.h> themselves (some 34 of them!)
The most commonly used ones of these will have to be made
independent of module.h before the full benefit of this change
can be realized.

We also transition THIS_MODULE from module.h to export.h,
since there are lots of files with subsystem structs that
in turn will have a struct module *owner and only be doing:

	.owner = THIS_MODULE;

and absolutely nothing else modular. So, we also want to have
the THIS_MODULE definition present in the lightweight header.

[1] https://lkml.org/lkml/2011/5/23/76

Change-Id: I70a80b3ac3638f0eda1ac596ee3fba832880df07
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Signed-off-by: Trilok Soni <tsoni@codeaurora.org>
2011-12-26 15:48:00 +05:30
Rob Herring
60fe460c07 irq: support domains with non-zero hwirq base
Interrupt controllers can have non-zero starting value for h/w irq numbers.
Adding support in irq_domain allows the domain hwirq numbering to match
the interrupt controllers' numbering.

As this makes looping over irqs for a domain more complicated, add loop
iterators to iterate over all hwirqs and irqs for a domain.

Change-Id: I64774aea2f3efb883fe11e9f6161970f7e7dc0fc
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
Reviewed-by: Jamie Iles <jamie@jamieiles.com>
Tested-by: Thomas Abraham <thomas.abraham@linaro.org>
Acked-by: Grant Likely <grant.likely@secretlab.ca>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Trilok Soni <tsoni@codeaurora.org>
2011-12-26 15:47:59 +05:30
Rob Herring
36b2c36335 irq: Fix check for already initialized irq_domain in irq_domain_add
The sanity check in irq_domain_add() tests desc->irq_data != NULL or
irq_data->domain != NULL. This prevents adding an irq_domain to a irq
descriptor when irq_data exists, which true when the irq descriptor
exists.

This went unnoticed so far as the simple domain code did not enter
this code path because domain->nr_irqs is always 0 for the simple domains.

Split the check for irq_data == NULL out and have a separate warning
for it.

[ tglx: Made the check for irq_data == NULL separate ]

Change-Id: I4d22d3a638b4fcd908a491ec0cb3273db6935dc2
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
Cc: Grant Likely <grant.likely@secretlab.ca>
Cc: marc.zyngier@arm.com
Cc: thomas.abraham@linaro.org
Cc: jamie@jamieiles.com
Cc: b-cousson@ti.com
Cc: shawn.guo@linaro.org
Cc: linux-arm-kernel@lists.infradead.org
Cc: devicetree-discuss@lists.ozlabs.org
Link: http://lkml.kernel.org/r/1316017900-19918-3-git-send-email-robherring2@gmail.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Trilok Soni <tsoni@codeaurora.org>
2011-12-26 15:47:57 +05:30
Rob Herring
19d9d54b6b irq: Add declaration of irq_domain_simple_ops to irqdomain.h
irq_domain_simple_ops is exported, but is not declared in irqdomain.h,
so add it.

Change-Id: I04f6ba1621d349c29becea9c989ec87ef15a64bb
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
Cc: Grant Likely <grant.likely@secretlab.ca>
Cc: marc.zyngier@arm.com
Cc: thomas.abraham@linaro.org
Cc: jamie@jamieiles.com
Cc: b-cousson@ti.com
Cc: shawn.guo@linaro.org
Cc: linux-arm-kernel@lists.infradead.org
Cc: devicetree-discuss@lists.ozlabs.org
Link: http://lkml.kernel.org/r/1316017900-19918-2-git-send-email-robherring2@gmail.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Trilok Soni <tsoni@codeaurora.org>
2011-12-26 15:47:56 +05:30
Linux Build Service Account
303ecac2f9 Merge "msm: dsps: add proper delay for DSPS to be ready" into msm-3.0 2011-12-26 00:59:33 -08:00
Linux Build Service Account
5aa13e391c Merge "Input: atmel_mxt_ts - update object list" into msm-3.0 2011-12-26 00:59:33 -08:00
Linux Build Service Account
39ef0122d4 Merge "ARM: gic: Consolidate PPI handling with request_percpu_irq() API" into msm-3.0 2011-12-25 23:35:23 -08:00
Vidyakumar Athota
439ee1e26a msm: dsps: add proper delay for DSPS to be ready
Change-Id: I3fe2ce13c899c5e602c474c069f5beee1587394f
Signed-off-by: Vidyakumar Athota <vathot@codeaurora.org>
Signed-off-by: Praveena Pachipulusu <pveena@codeaurora.org>
2011-12-26 11:31:21 +05:30
Amir Samuelov
d762103d9b msm: board-8960-display: Increase fb buf size for LiQUID WUXGA panel.
The LiQUID WUXGA 1920x1200 panel requires a bigger frame-buffer buf size.

Change-Id: I2f379e4d2bdbbc0bfc60b7d5e86a80ed91eccb6a
Signed-off-by: Amir Samuelov <amirs@codeaurora.org>
2011-12-25 12:24:04 +02:00
Linux Build Service Account
4229da52d1 Merge "Revert "ASoC: msm: Fix capture overflow issue"" into msm-3.0 2011-12-24 19:24:56 -08:00
Linux Build Service Account
70331c4a14 Merge "msm: camera: Add plane's data offset in address calculation." into msm-3.0 2011-12-24 09:57:51 -08:00
Linux Build Service Account
b8c2ab8345 Merge "mmc: msm_sdcc: Fix deadlock in mmc_suspend_host and mmc_rescan" into msm-3.0 2011-12-24 08:26:11 -08:00
Sujit Reddy Thumma
19859ef3f6 mmc: msm_sdcc: Fix deadlock in mmc_suspend_host and mmc_rescan
SDCC runtime suspend can race with mmc_rescan causing deadlock.
The call flow would be this:
1) When runtime suspend is triggered:
	msmsdcc_runtime_suspend()
		-> mmc_suspend_host()
			-> mmc_flush_scheduled_work()
2) mmc_flush_schedule_work() waits for mmc_rescan() work
to be completed if it is already in runqueue.
3) When mmc_rescan() is scheduled to run:
	mmc_claim_host()
		-> msmsdcc_enable()
			->pm_runtime_get_sync()
4) pm_runtime_get_sync() waits for runtime_suspend to complete,
and hence cause two threads to wait upon each other.

Fix this deadlock by aborting runtime suspend when mmc_rescan
is scheduled.

CRs-Fixed: 326610
Change-Id: I4ca88651f80f5a1bfccb6e0c07e3ea83fadcdc57
Signed-off-by: Sujit Reddy Thumma <sthumma@codeaurora.org>
2011-12-24 07:58:18 -07:00
Linux Build Service Account
1e96b57f9f Merge "msm_fb: display: Add backlight with first pan display after resume" into msm-3.0 2011-12-24 06:53:05 -08:00
Linux Build Service Account
e293c2a5e2 Merge "msm: 8960: enable SDR104 mode (UHS-I) support for SDC3 slot" into msm-3.0 2011-12-24 06:53:05 -08:00
Linux Build Service Account
45b1f91f21 Merge "msm_fb: display: Change the timing values of MDDI toshiba panel." into msm-3.0 2011-12-24 06:53:05 -08:00
Subhash Jadavani
2f64f5a020 msm: 8960: enable SDR104 mode (UHS-I) support for SDC3 slot
SDC3 slot can support the SDR104 bus speed mode. This change
sets the SDR104 capability for SDC3 slot.

Change-Id: I160f2e95d652da07be36b50662d54a6a45f95489
Signed-off-by: Subhash Jadavani <subhashj@codeaurora.org>
2011-12-24 15:03:12 +05:30
Laura Abbott
d0a8181c7f defconfig: msm8960: Enable kmemleak support
Add support for enabling kmemleak from the command line. By default,
kmemleak is disabled but it can be enabling by booting with 'kmemleak=on'
on the command line.

Change-Id: Ie0d662fae701111a4d993040540eef5d0a6370c6
Signed-off-by: Laura Abbott <lauraa@codeaurora.org>
2011-12-24 01:39:53 -07:00
Linux Build Service Account
1a4cb1008d Merge "nl80211/cfg80211: Add crypto settings into NEW_BEACON" into msm-3.0 2011-12-24 00:31:49 -08:00
Linux Build Service Account
78a33dc366 Merge "msm: footswitch-8960: Remove MDP footswitch control" into msm-3.0 2011-12-24 00:31:49 -08:00
Linux Build Service Account
0d0f82738c Merge "mmc: core: Prevent too long response times for suspend" into msm-3.0 2011-12-24 00:31:49 -08:00
Linux Build Service Account
b455a9ddf5 Merge "msm: iommu: Create iommu api to return the page table address" into msm-3.0 2011-12-24 00:31:49 -08:00
Linux Build Service Account
20a764e3f6 Merge "msm_fb: Power saving for enabling HPD feature." into msm-3.0 2011-12-24 00:31:49 -08:00
Linux Build Service Account
e02045a050 Merge "mmc: msm_sdcc: fix issues related to DLL tuning" into msm-3.0 2011-12-24 00:31:49 -08:00
Alex Wong
94a6cd2d7a Revert "ASoC: msm: Fix capture overflow issue"
This reverts commit c11f91fc19.
The patch caused PCM recording failure.

Change-Id: I4cfba9ccf62e84b6cad1fe32d68e85165b4feb6c
Signed-off-by: Alex Wong <waiw@codeaurora.org>
2011-12-24 00:06:56 -08:00
Mahesh Sivasubramanian
d23add133e msm: pm-8x60: Move hotplug related code out of pm code.
Move hotplug related code into hotplug.c and compile hotplug.c only when
CONFIG_HOTPLUG_CPU is defined.

Signed-off-by: Mahesh Sivasubramanian <msivasub@codeaurora.org>
Change-Id: Ia9aa7a64e9831f52431c77c22f30fb64892efaea
2011-12-23 23:48:32 -07:00
Linux Build Service Account
b73f8da5ae Merge "defconfig: 8960: Enable pm8xxx_regulator driver" into msm-3.0 2011-12-23 22:40:34 -08:00
Linux Build Service Account
bd325ba4be Merge "USB: OTG: msm: Depend completely on PMIC for VBUS and ID notifications" into msm-3.0 2011-12-23 21:09:38 -08:00
Linux Build Service Account
8a49090219 Merge changes I629a5d5f,I8101bf18 into msm-3.0
* changes:
  ASoC: wcd9310: address over current condition due to headset removal
  ASoC: wcd9310: Sync headphone/headset PA state
2011-12-23 21:09:38 -08:00
David Collins
6eaead363e defconfig: 8960: Enable pm8xxx_regulator driver
Change-Id: I5737560dc1163e884375178e0e25fa63613f13e4
Signed-off-by: David Collins <collinsd@codeaurora.org>
2011-12-23 19:39:31 -08:00
Linux Build Service Account
eb3cec0eca Merge "msm: acpuclock-7201: Ignore vdd switch request for v1.0 7x27a/7x25a" into msm-3.0 2011-12-23 19:31:22 -08:00
Trilok Soni
eecb28c590 ARM: gic: Consolidate PPI handling with request_percpu_irq() API
The commit 292b293 creates the MSM boot failures, so squash
the commit 28af690 with it to avoid such failures. The commit ddd847
and 0c1991 are required to keep the watchdog and Copper targets working.

commit 292b293ceef2eda1f96f0c90b96e954d7bdabd1c
Author: Marc Zyngier <marc.zyngier@arm.com>
Date:   Wed Jul 20 16:24:14 2011 +0100

    ARM: gic: consolidate PPI handling

    PPI handling is a bit of an odd beast. It uses its own low level
    handling code and is hardwired to the local timers (hence lacking
    a registration interface).

    Instead, switch the low handling to the normal SPI handling code.
    PPIs are handled by the handle_percpu_devid_irq flow.

    This also allows the removal of some duplicated code.

    Cc: Kukjin Kim <kgene.kim@samsung.com>
    Cc: David Brown <davidb@codeaurora.org>
    Cc: Bryan Huntsman <bryanh@codeaurora.org>
    Cc: Tony Lindgren <tony@atomide.com>
    Cc: Paul Mundt <lethal@linux-sh.org>
    Cc: Magnus Damm <magnus.damm@gmail.com>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Acked-by: David Brown <davidb@codeaurora.org>
    Tested-by: David Brown <davidb@codeaurora.org>
    Tested-by: Shawn Guo <shawn.guo@linaro.org>
    Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>

commit 28af690a284dfcb627bd69d0963db1c0f412cb8c
Author: Marc Zyngier <marc.zyngier@arm.com>
Date:   Fri Jul 22 12:52:37 2011 +0100

    ARM: gic, local timers: use the request_percpu_irq() interface

    This patch remove the hardcoded link between local timers and PPIs,
    and convert the PPI users (TWD, MCT and MSM timers) to the new
    *_percpu_irq interface. Also some collateral cleanup
    (local_timer_ack() is gone, and the interrupt handler is strictly
    private to each driver).

    PPIs are now useable for more than just the local timers.

    Additional testing by David Brown (msm8250 and msm8660) and
    Shawn Guo (imx6q).

    Cc: David Brown <davidb@codeaurora.org>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Acked-by: David Brown <davidb@codeaurora.org>
    Tested-by: David Brown <davidb@codeaurora.org>
    Tested-by: Shawn Guo <shawn.guo@linaro.org>
    Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>

commit ddd8478d68f8cf75ee9771667c0cbe2a9d1caeb9
Author: Trilok Soni <tsoni@codeaurora.org>
Date:   Tue Dec 6 00:56:01 2011 +0530

    msm: watchdog: Use request_percpu_irq() interface

    Change-Id: I7c319344f6a7f7a7c70682ac87f5c385e56d130c
    Signed-off-by: Trilok Soni <tsoni@codeaurora.org>
    Signed-off-by: Rohit Vaswani <rvaswani@codeaurora.org>

commit 0c19915e092214a4c17a9920c4c1f3d78610217d
Author: Sathish Ambley <sambley@codeaurora.org>
Date:   Fri Dec 9 17:07:37 2011 +0530

    arm: arch_timer: Use request_percpu_irq() API

    Change-Id: Iee9b218d538f315cd884a47d95bcc0dcc49b0fe1
    Signed-off-by: Sathish Ambley <sambley@codeaurora.org>

Change-Id: I7bbba706b1f2e55814be5891ed76063725c2bfb1
Signed-off-by: Ravi Kumar <kumarrav@codeaurora.org>
[tsoni@codeaurora.org: MSM specific fixes]
Signed-off-by: Trilok Soni <tsoni@codeaurora.org>
2011-12-23 18:05:10 -07:00
Linux Build Service Account
b00b4a23f2 Merge "msm: modem-8660: Ignore unnecessary SMSM_RESET notifications" into msm-3.0 2011-12-23 15:24:37 -08:00
Mathew Karimpanal
15fa5c4985 msm: board-8960: Increase pmem for the display compositor.
Increase pmem allocation size to 40MB for use by the display
compositor. Stress-test runs and memory-profiling results indicate
that common graphical user-interface scenarios demand up to 40MB from
the display compositor when compositing application display layers
onto a WSVGA (1024x600) screen.

Change-Id: Ie0ffb254225d7c60e780a2f7bd5699768c558602
Signed-off-by: Mathew Karimpanal <mkarim@codeaurora.org>
2011-12-23 12:44:06 -07:00
Stephen Boyd
add39a48ef msm: footswitch-8960: Remove MDP footswitch control
Footswitch control for MDP is not working correctly. Remove
control for now until problems are resolved.

Change-Id: I1e31f6f246268c442d3918adea078f7ddaf2d2db
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
2011-12-23 10:10:31 -07:00
Linux Build Service Account
fe99c760d8 Merge changes I2717fd26,Ib30cca61 into msm-3.0
* changes:
  input: atmel_mxt_ts: modify regulator framework for mxt224E
  Input: atmel_mxt_ts - report pressure information from the driver
2011-12-23 07:37:58 -08:00
Linux Build Service Account
a296c0d1e9 Merge "msm: 8930: Avoid empty msm_i2c_config_gpio function" into msm-3.0 2011-12-23 07:37:58 -08:00
Linux Build Service Account
a397773b74 Merge "video: msm: Add support for Sii9244 MHL video modes." into msm-3.0 2011-12-23 07:37:58 -08:00
Linux Build Service Account
61a4548b47 Merge "usb: frmnet: fix the NULL pointer access crash by using global rmnet dev" into msm-3.0 2011-12-23 07:37:58 -08:00
Linux Build Service Account
881ddbc1f4 Merge changes I9df163da,Ib014404d,I3bbb0d65 into msm-3.0
* changes:
  hsic: Put data/strobe into reset when peripheral disconnects
  mdm2: Disconnect and connect hsic when mdm status goes high
  mdm2: Replace hsic platform_add/remove with connect/disconnect
2011-12-23 07:37:58 -08:00
Linux Build Service Account
04f861cfab Merge "Bluetooth: Graceful cleanup for uninitialised timer & unregistered device." into msm-3.0 2011-12-23 07:37:58 -08:00
Deepthi Gowri
6f79e1678d nl80211/cfg80211: Add crypto settings into NEW_BEACON
This removes need from drivers to parse the beacon tail/head data
to figure out what crypto settings are to be used in AP mode in case
the Beacon and Probe Response frames are fully constructed in the
driver/firmware.

nl80211/cfg80211: Allow SSID to be specified in new beacon command

This makes it easier for drivers that generate Beacon and Probe Response
frames internally (in firmware most likely) in AP mode.

nl80211/cfg80211: Add extra IE configuration to AP mode setup

The NL80211_CMD_NEW_BEACON command is, in practice, requesting AP mode
operations to be started. Add new attributes to provide extra IEs
(e.g., WPS IE, P2P IE) for drivers that build Beacon, Probe Response,
and (Re)Association Response frames internally (likely in firmware).

Change-Id: Ib91cd3fa2bad68e3724db98985e3f3bac72715f0
Signed-off-by: Deepthi Gowri <deepthi@codeaurora.org>
2011-12-23 20:27:04 +05:30
Pankaj Kumar
9406a3bc62 msm: acpuclock-7201: Ignore vdd switch request for v1.0 7x27a/7x25a
v1.0 of 7x27a/7x25a does not have working vdd switch support.

Change-Id: Idd1e2599f1029448203b425630475ece7e4c4a97
Signed-off-by: Pankaj Kumar <pakuma@codeaurora.org>
2011-12-23 18:07:15 +05:30
Linux Build Service Account
bcea3a592e Merge "msm: watchdog: store worst case watchdog slack time" into msm-3.0 2011-12-23 02:36:17 -08:00
Linux Build Service Account
c56b6c4f12 Merge "arm: mm: Compare phys address instead of virt" into msm-3.0 2011-12-23 02:36:17 -08:00
Linux Build Service Account
fbb897c144 Merge "Bluetooth: Update ERTM state before sending packets" into msm-3.0 2011-12-23 02:36:17 -08:00