X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=drivers%2Fmacintosh%2Fsmu.c;h=db2ae71d07ef08511f480c5f6b7978b68772daaa;hb=987b0145d94eecf292d8b301228356f44611ab7c;hp=f4516ca7aa3a20ee13f100e7d06fa9e18eded116;hpb=f7ed79d23a47594e7834d66a8f14449796d4f3e6;p=linux-2.6.git diff --git a/drivers/macintosh/smu.c b/drivers/macintosh/smu.c index f4516ca7a..db2ae71d0 100644 --- a/drivers/macintosh/smu.c +++ b/drivers/macintosh/smu.c @@ -35,7 +35,6 @@ #include #include #include -#include #include #include @@ -93,7 +92,7 @@ struct smu_device { * for now, just hard code that */ static struct smu_device *smu; -static DEFINE_MUTEX(smu_part_access); +static DECLARE_MUTEX(smu_part_access); static void smu_i2c_retry(unsigned long data); @@ -630,6 +629,8 @@ static struct of_platform_driver smu_of_platform_driver = static int __init smu_init_sysfs(void) { + int rc; + /* * Due to sysfs bogosity, a sysdev is not a real device, so * we should in fact create both if we want sysdev semantics @@ -638,7 +639,7 @@ static int __init smu_init_sysfs(void) * I'm a bit too far from figuring out how that works with those * new chipsets, but that will come back and bite us */ - of_register_driver(&smu_of_platform_driver); + rc = of_register_driver(&smu_of_platform_driver); return 0; } @@ -977,11 +978,11 @@ struct smu_sdbp_header *__smu_get_sdb_partition(int id, unsigned int *size, if (interruptible) { int rc; - rc = mutex_lock_interruptible(&smu_part_access); + rc = down_interruptible(&smu_part_access); if (rc) return ERR_PTR(rc); } else - mutex_lock(&smu_part_access); + down(&smu_part_access); part = (struct smu_sdbp_header *)get_property(smu->of_node, pname, size); @@ -991,7 +992,7 @@ struct smu_sdbp_header *__smu_get_sdb_partition(int id, unsigned int *size, if (part != NULL && size) *size = part->len << 2; } - mutex_unlock(&smu_part_access); + up(&smu_part_access); return part; }