vfb: Update platform code
PATCH 8/12 vfb: Update platform code
Update platform code to dynamically allocate the platform device
Signed-off-by Antonino Daplas <[email protected]>
---
drivers/video/vfb.c | 29 +++++++++++++---------------- 1 files changed, 13 insertions(+), 16 deletions(-)
drivers/video/vfb.c +13 -16
@@ -398,12 +398,6 @@ static int __init vfb_setup(char *option* Initialisation */ -static void vfb_platform_release (struct device *device) -{ -// This is called when the reference count goes to zero. -dev_err (device,"This driver is broken, please bug the authors so they will fix it.\n" ); -} -static int __init vfb_probe (struct platform_device *dev) {struct fb_info *info;
@@ -482,13 +476,7 @@ static struct platform_driver vfb_driver }, }; -static struct platform_device vfb_device = { - .name ="vfb" , - .id =0 , - .dev = { - .release = vfb_platform_release, - } -}; +static struct platform_device *vfb_device;static int __init vfb_init (void ) {
@@ -508,10 +496,19 @@ static int __init vfb_init(void) ret =platform_driver_register (&vfb_driver);if (!ret) { - ret =platform_device_register (&vfb_device); -if (ret) + vfb_device =platform_device_alloc ("vfb" ,0 ); + +if (vfb_device) + ret =platform_device_add (vfb_device); +else + ret = -ENOMEM ; + +if (ret) { +platform_device_put (vfb_device);platform_driver_unregister (&vfb_driver); + } } +return ret; }
@@ -520,7 +517,7 @@ module_init(vfb_init);#ifdef MODULE static void __exit vfb_exit(void) { -platform_device_unregister (&vfb_device); +platform_device_unregister (vfb_device);platform_driver_unregister (&vfb_driver); }
-------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642