mirror of
https://github.com/followmsi/android_kernel_google_msm.git
synced 2024-11-06 23:17:41 +00:00
ssb: fast powerup delay calculation for PMU capable devices
Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Acked-by: Gábor Stefanik <netrolller.3d@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
c35deb4e70
commit
fd515941cf
1 changed files with 24 additions and 0 deletions
|
@ -209,6 +209,24 @@ static void chipco_powercontrol_init(struct ssb_chipcommon *cc)
|
|||
}
|
||||
}
|
||||
|
||||
/* http://bcm-v4.sipsolutions.net/802.11/PmuFastPwrupDelay */
|
||||
static u16 pmu_fast_powerup_delay(struct ssb_chipcommon *cc)
|
||||
{
|
||||
struct ssb_bus *bus = cc->dev->bus;
|
||||
|
||||
switch (bus->chip_id) {
|
||||
case 0x4312:
|
||||
case 0x4322:
|
||||
case 0x4328:
|
||||
return 7000;
|
||||
case 0x4325:
|
||||
/* TODO: */
|
||||
default:
|
||||
return 15000;
|
||||
}
|
||||
}
|
||||
|
||||
/* http://bcm-v4.sipsolutions.net/802.11/ClkctlFastPwrupDelay */
|
||||
static void calc_fast_powerup_delay(struct ssb_chipcommon *cc)
|
||||
{
|
||||
struct ssb_bus *bus = cc->dev->bus;
|
||||
|
@ -218,6 +236,12 @@ static void calc_fast_powerup_delay(struct ssb_chipcommon *cc)
|
|||
|
||||
if (bus->bustype != SSB_BUSTYPE_PCI)
|
||||
return;
|
||||
|
||||
if (cc->capabilities & SSB_CHIPCO_CAP_PMU) {
|
||||
cc->fast_pwrup_delay = pmu_fast_powerup_delay(cc);
|
||||
return;
|
||||
}
|
||||
|
||||
if (!(cc->capabilities & SSB_CHIPCO_CAP_PCTL))
|
||||
return;
|
||||
|
||||
|
|
Loading…
Reference in a new issue