diff options
author | Arnd Bergmann <arnd@arndb.de> | 2012-03-16 19:51:30 +0000 |
---|---|---|
committer | Arnd Bergmann <arnd@arndb.de> | 2012-03-16 19:51:30 +0000 |
commit | d4ef467aea0fdcd5e75a4bbfaf97e579bbe532f3 (patch) | |
tree | 5b91923fb5031c6963a60ee33ee7671d178f26b2 /drivers/ssb/main.c | |
parent | 4acf18232f80c29906356f0f35b2d5f800b5953d (diff) | |
parent | 71de5c46e0600b72df58269e80da343e354ddbd7 (diff) | |
download | talos-op-linux-d4ef467aea0fdcd5e75a4bbfaf97e579bbe532f3.tar.gz talos-op-linux-d4ef467aea0fdcd5e75a4bbfaf97e579bbe532f3.zip |
Merge branch 'ux500/dt' into next/dt2
* ux500/dt:
ARM: ux500: Provide local timer support for Device Tree
ARM: ux500: Enable PL022 SSP Controller in Device Tree
ARM: ux500: Enable PL310 Level 2 Cache Controller in Device Tree
ARM: ux500: Enable PL011 AMBA UART Controller for Device Tree
ARM: ux500: Enable Cortex-A9 GIC (Generic Interrupt Controller) in Device Tree
ARM: ux500: db8500: list most devices in the snowball device tree
ARM: ux500: split dts file for snowball into generic part
ARM: ux500: combine the board init functions for DT boot
ARM: ux500: Initial Device Tree support for Snowball
ARM: ux500: CONFIG: Enable Device Tree support for future endeavours
ARM: ux500: fix compilation after local timer rework
(adds dependency on localtimer branch, irqdomain branch and ux500/soc
branch)
Conflicts:
arch/arm/mach-ux500/devices-common.c
This adds patches from Lee Jones, Niklas Hernaeus and myself to provide
initial device tree support on the ux500 platform. The pull request from
Lee contained some other changes, so I rebased the patches on top of
the branches that are actually dependencies for this.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'drivers/ssb/main.c')
-rw-r--r-- | drivers/ssb/main.c | 20 |
1 files changed, 2 insertions, 18 deletions
diff --git a/drivers/ssb/main.c b/drivers/ssb/main.c index bb6317fb925c..ff109ae94767 100644 --- a/drivers/ssb/main.c +++ b/drivers/ssb/main.c @@ -140,19 +140,6 @@ static void ssb_device_put(struct ssb_device *dev) put_device(dev->dev); } -static inline struct ssb_driver *ssb_driver_get(struct ssb_driver *drv) -{ - if (drv) - get_driver(&drv->drv); - return drv; -} - -static inline void ssb_driver_put(struct ssb_driver *drv) -{ - if (drv) - put_driver(&drv->drv); -} - static int ssb_device_resume(struct device *dev) { struct ssb_device *ssb_dev = dev_to_ssb_dev(dev); @@ -250,11 +237,9 @@ int ssb_devices_freeze(struct ssb_bus *bus, struct ssb_freeze_context *ctx) ssb_device_put(sdev); continue; } - sdrv = ssb_driver_get(drv_to_ssb_drv(sdev->dev->driver)); - if (!sdrv || SSB_WARN_ON(!sdrv->remove)) { - ssb_device_put(sdev); + sdrv = drv_to_ssb_drv(sdev->dev->driver); + if (SSB_WARN_ON(!sdrv->remove)) continue; - } sdrv->remove(sdev); ctx->device_frozen[i] = 1; } @@ -293,7 +278,6 @@ int ssb_devices_thaw(struct ssb_freeze_context *ctx) dev_name(sdev->dev)); result = err; } - ssb_driver_put(sdrv); ssb_device_put(sdev); } |