2008-12-30 07:03:21

by Eric Miao

[permalink] [raw]
Subject: [PATCH 1/2] platform: make better use of to_platform_{device,driver}() macros

This helps the code look more consistent and cleaner.

Signed-off-by: Eric Miao <[email protected]>
---
drivers/base/platform.c | 21 +++++++++------------
drivers/block/floppy.c | 3 +--
drivers/isdn/gigaset/ser-gigaset.c | 3 +--
3 files changed, 11 insertions(+), 16 deletions(-)

diff --git a/drivers/base/platform.c b/drivers/base/platform.c
index dfcbfe5..d0591f0 100644
--- a/drivers/base/platform.c
+++ b/drivers/base/platform.c
@@ -606,9 +606,8 @@ static int platform_uevent(struct device *dev,
struct kobj_uevent_env *env)
*/
static int platform_match(struct device *dev, struct device_driver *drv)
{
- struct platform_device *pdev;
+ struct platform_device *pdev = to_platform_device(dev);

- pdev = container_of(dev, struct platform_device, dev);
return (strncmp(pdev->name, drv->name, BUS_ID_SIZE) == 0);
}

@@ -626,26 +625,24 @@ static int platform_legacy_suspend(struct device
*dev, pm_message_t mesg)

static int platform_legacy_suspend_late(struct device *dev, pm_message_t mesg)
{
- struct platform_driver *drv = to_platform_driver(dev->driver);
- struct platform_device *pdev;
+ struct platform_driver *pdrv = to_platform_driver(dev->driver);
+ struct platform_device *pdev = to_platform_device(dev);
int ret = 0;

- pdev = container_of(dev, struct platform_device, dev);
- if (dev->driver && drv->suspend_late)
- ret = drv->suspend_late(pdev, mesg);
+ if (dev->driver && pdrv->suspend_late)
+ ret = pdrv->suspend_late(pdev, mesg);

return ret;
}

static int platform_legacy_resume_early(struct device *dev)
{
- struct platform_driver *drv = to_platform_driver(dev->driver);
- struct platform_device *pdev;
+ struct platform_driver *pdrv = to_platform_driver(dev->driver);
+ struct platform_device *pdev = to_platform_device(dev);
int ret = 0;

- pdev = container_of(dev, struct platform_device, dev);
- if (dev->driver && drv->resume_early)
- ret = drv->resume_early(pdev);
+ if (dev->driver && pdrv->resume_early)
+ ret = pdrv->resume_early(pdev);

return ret;
}
diff --git a/drivers/block/floppy.c b/drivers/block/floppy.c
index cf29cc4..9c3c5c7 100644
--- a/drivers/block/floppy.c
+++ b/drivers/block/floppy.c
@@ -4133,10 +4133,9 @@ static int have_no_fdc = -ENODEV;
static ssize_t floppy_cmos_show(struct device *dev,
struct device_attribute *attr, char *buf)
{
- struct platform_device *p;
+ struct platform_device *p = to_platform_device(dev);
int drive;

- p = container_of(dev, struct platform_device,dev);
drive = p->id;
return sprintf(buf, "%X\n", UDP->cmos);
}
diff --git a/drivers/isdn/gigaset/ser-gigaset.c
b/drivers/isdn/gigaset/ser-gigaset.c
index ac245e7..3071a52 100644
--- a/drivers/isdn/gigaset/ser-gigaset.c
+++ b/drivers/isdn/gigaset/ser-gigaset.c
@@ -389,8 +389,7 @@ static void gigaset_freecshw(struct cardstate *cs)

static void gigaset_device_release(struct device *dev)
{
- struct platform_device *pdev =
- container_of(dev, struct platform_device, dev);
+ struct platform_device *pdev = to_platform_device(dev);

/* adapted from platform_device_release() in drivers/base/platform.c */
//FIXME is this actually necessary?
--
1.6.0.4


Attachments:
(No filename) (3.09 kB)
0001-platform-make-better-use-of-to_platform_-device-dri.patch (3.32 kB)
Download all attachments

2009-01-09 14:47:16

by Eric Miao

[permalink] [raw]
Subject: Fwd: [PATCH 1/2] platform: make better use of to_platform_{device,driver}() macros

This helps the code look more consistent and cleaner.

Signed-off-by: Eric Miao <[email protected]>
---
drivers/base/platform.c | 21 +++++++++------------
drivers/block/floppy.c | 3 +--
drivers/isdn/gigaset/ser-gigaset.c | 3 +--
3 files changed, 11 insertions(+), 16 deletions(-)

diff --git a/drivers/base/platform.c b/drivers/base/platform.c
index dfcbfe5..d0591f0 100644
--- a/drivers/base/platform.c
+++ b/drivers/base/platform.c
@@ -606,9 +606,8 @@ static int platform_uevent(struct device *dev,
struct kobj_uevent_env *env)
*/
static int platform_match(struct device *dev, struct device_driver *drv)
{
- struct platform_device *pdev;
+ struct platform_device *pdev = to_platform_device(dev);

- pdev = container_of(dev, struct platform_device, dev);
return (strncmp(pdev->name, drv->name, BUS_ID_SIZE) == 0);
}

@@ -626,26 +625,24 @@ static int platform_legacy_suspend(struct device
*dev, pm_message_t mesg)

static int platform_legacy_suspend_late(struct device *dev, pm_message_t mesg)
{
- struct platform_driver *drv = to_platform_driver(dev->driver);
- struct platform_device *pdev;
+ struct platform_driver *pdrv = to_platform_driver(dev->driver);
+ struct platform_device *pdev = to_platform_device(dev);
int ret = 0;

- pdev = container_of(dev, struct platform_device, dev);
- if (dev->driver && drv->suspend_late)
- ret = drv->suspend_late(pdev, mesg);
+ if (dev->driver && pdrv->suspend_late)
+ ret = pdrv->suspend_late(pdev, mesg);

return ret;
}

static int platform_legacy_resume_early(struct device *dev)
{
- struct platform_driver *drv = to_platform_driver(dev->driver);
- struct platform_device *pdev;
+ struct platform_driver *pdrv = to_platform_driver(dev->driver);
+ struct platform_device *pdev = to_platform_device(dev);
int ret = 0;

- pdev = container_of(dev, struct platform_device, dev);
- if (dev->driver && drv->resume_early)
- ret = drv->resume_early(pdev);
+ if (dev->driver && pdrv->resume_early)
+ ret = pdrv->resume_early(pdev);

return ret;
}
diff --git a/drivers/block/floppy.c b/drivers/block/floppy.c
index cf29cc4..9c3c5c7 100644
--- a/drivers/block/floppy.c
+++ b/drivers/block/floppy.c
@@ -4133,10 +4133,9 @@ static int have_no_fdc = -ENODEV;
static ssize_t floppy_cmos_show(struct device *dev,
struct device_attribute *attr, char *buf)
{
- struct platform_device *p;
+ struct platform_device *p = to_platform_device(dev);
int drive;

- p = container_of(dev, struct platform_device,dev);
drive = p->id;
return sprintf(buf, "%X\n", UDP->cmos);
}
diff --git a/drivers/isdn/gigaset/ser-gigaset.c
b/drivers/isdn/gigaset/ser-gigaset.c
index ac245e7..3071a52 100644
--- a/drivers/isdn/gigaset/ser-gigaset.c
+++ b/drivers/isdn/gigaset/ser-gigaset.c
@@ -389,8 +389,7 @@ static void gigaset_freecshw(struct cardstate *cs)

static void gigaset_device_release(struct device *dev)
{
- struct platform_device *pdev =
- container_of(dev, struct platform_device, dev);
+ struct platform_device *pdev = to_platform_device(dev);

/* adapted from platform_device_release() in drivers/base/platform.c */
//FIXME is this actually necessary?
--
1.6.0.4



--
Cheers
- eric


Attachments:
(No filename) (3.37 kB)
0001-platform-make-better-use-of-to_platform_-device-dri.patch (3.32 kB)
Download all attachments

2009-01-25 22:48:37

by Greg KH

[permalink] [raw]
Subject: Re: Fwd: [PATCH 1/2] platform: make better use of to_platform_{device,driver}() macros

On Fri, Jan 09, 2009 at 10:46:57PM +0800, Eric Miao wrote:
> This helps the code look more consistent and cleaner.

Except the patch is malformed and can't be applied :(

Care to resend it?

thanks,

greg k-h