View | Details | Raw Unified
Collapse All | Expand All

(-) kfusd.c.orig (-18 / +18 lines)
 Lines 125-131    Link Here 
STATIC dev_t control_id;
STATIC dev_t control_id;
STATIC dev_t status_id;
STATIC dev_t status_id;
static struct class_simple *fusd_class;
static struct class *fusd_class;
static struct class_device *fusd_control_class_device;
static struct class_device *fusd_control_class_device;
static struct class_device *fusd_status_class_device;
static struct class_device *fusd_status_class_device;
 Lines 1965-1971    Link Here 
        }
        }
        else
        else
        {
        {
                fusd_dev->clazz = class_simple_create(THIS_MODULE, fusd_dev->class_name);
                fusd_dev->clazz = class_create(THIS_MODULE, fusd_dev->class_name);
                if(IS_ERR(fusd_dev->clazz))
                if(IS_ERR(fusd_dev->clazz))
                {
                {
                        error = PTR_ERR(fusd_dev->clazz);
                        error = PTR_ERR(fusd_dev->clazz);
 Lines 1974-1984    Link Here 
                fusd_dev->owns_class = 1;
                fusd_dev->owns_class = 1;
        }
        }
        
        
        fusd_dev->class_device = class_simple_device_add(fusd_dev->clazz, fusd_dev->dev_id, NULL, fusd_dev->dev_name);
        fusd_dev->class_device = class_device_create(fusd_dev->clazz, fusd_dev->dev_id, NULL, fusd_dev->dev_name);
        if(fusd_dev->class_device == NULL)
        if(fusd_dev->class_device == NULL)
        {
        {
                error = PTR_ERR(fusd_dev->class_device);
                error = PTR_ERR(fusd_dev->class_device);
                printk("class_simple_device_add failed status: %d\n", error);
                printk("class_device_create failed status: %d\n", error);
                goto register_failed5;
                goto register_failed5;
        }
        }
        
        
 Lines 2001-2007    Link Here 
  return 0;
  return 0;
register_failed5:
register_failed5:
        class_simple_destroy(fusd_dev->clazz);
        class_destroy(fusd_dev->clazz);
register_failed4:
register_failed4:
        cdev_del(fusd_dev->handle);
        cdev_del(fusd_dev->handle);
register_failed3:
register_failed3:
 Lines 2093-2102    Link Here 
        if(fusd_dev->handle)
        if(fusd_dev->handle)
        {
        {
                class_simple_device_remove(fusd_dev->dev_id);
                class_device_destroy(fusd_class, fusd_dev->dev_id);
                if(fusd_dev->owns_class)
                if(fusd_dev->owns_class)
                {
                {
                        class_simple_destroy(fusd_dev->clazz);
                        class_destroy(fusd_dev->clazz);
                }
                }
                cdev_del(fusd_dev->handle);
                cdev_del(fusd_dev->handle);
#ifdef CONFIG_DEVFS_FS
#ifdef CONFIG_DEVFS_FS
 Lines 2799-2809    Link Here 
        fusd_control_device = NULL;
        fusd_control_device = NULL;
        fusd_status_device = NULL;
        fusd_status_device = NULL;
        
        
        fusd_class = class_simple_create(THIS_MODULE, "fusd");
        fusd_class = class_create(THIS_MODULE, "fusd");
        if(IS_ERR(fusd_class))
        if(IS_ERR(fusd_class))
        {
        {
                retval = PTR_ERR(fusd_class);
                retval = PTR_ERR(fusd_class);
                printk("class_simple_create failed status: %d\n", retval);
                printk("class_create failed status: %d\n", retval);
                goto fail0;
                goto fail0;
        }
        }
        
        
 Lines 2841-2851    Link Here 
                goto fail4;
                goto fail4;
        }
        }
        
        
        fusd_control_class_device = class_simple_device_add(fusd_class, control_id, NULL, "control");
        fusd_control_class_device = class_device_create(fusd_class, control_id, NULL, "control");
        if(fusd_control_class_device == NULL)
        if(fusd_control_class_device == NULL)
        {
        {
                retval = PTR_ERR(fusd_control_class_device);
                retval = PTR_ERR(fusd_control_class_device);
                printk("class_simple_device_add failed status: %d\n", retval);
                printk("class_device_create failed status: %d\n", retval);
                goto fail5;
                goto fail5;
        }
        }
 Lines 2882-2891    Link Here 
                goto fail9;
                goto fail9;
        }
        }
        
        
        fusd_status_class_device = class_simple_device_add(fusd_class, status_id, NULL, "status");
        fusd_status_class_device = class_device_create(fusd_class, status_id, NULL, "status");
        if(fusd_status_class_device == NULL)
        if(fusd_status_class_device == NULL)
        {
        {
                printk("class_simple_device_add failed status: %d\n", retval);
                printk("class_device_create failed status: %d\n", retval);
                retval = PTR_ERR(fusd_status_class_device);
                retval = PTR_ERR(fusd_status_class_device);
                goto fail10;
                goto fail10;
        }
        }
 Lines 2904-2910    Link Here 
fail7:
fail7:
        unregister_chrdev_region(status_id, 1);
        unregister_chrdev_region(status_id, 1);
fail6:
fail6:
        class_simple_device_remove(control_id);
        class_device_destroy(fusd_class, control_id);
fail5:
fail5:
        cdev_del(fusd_control_device);
        cdev_del(fusd_control_device);
fail4:
fail4:
 Lines 2916-2922    Link Here 
fail2:
fail2:
        unregister_chrdev_region(control_id, 1);
        unregister_chrdev_region(control_id, 1);
fail1:
fail1:
        class_simple_destroy(fusd_class);
        class_destroy(fusd_class);
fail0:
fail0:
        return retval;
        return retval;
}
}
 Lines 2925-2932    Link Here 
{
{
  RDEBUG(1, "cleaning up");
  RDEBUG(1, "cleaning up");
        class_simple_device_remove(status_id);
        class_device_destroy(fusd_class, status_id);
        class_simple_device_remove(control_id);
        class_device_destroy(fusd_class, control_id);
        
        
        cdev_del(fusd_control_device);
        cdev_del(fusd_control_device);
        cdev_del(fusd_status_device);
        cdev_del(fusd_status_device);
 Lines 2935-2941    Link Here 
  devfs_remove(FUSD_STATUS_FILENAME);
  devfs_remove(FUSD_STATUS_FILENAME);
        class_simple_destroy(fusd_class);
        class_destroy(fusd_class);
        
        
#ifdef CONFIG_FUSD_MEMDEBUG
#ifdef CONFIG_FUSD_MEMDEBUG
  fusd_mem_cleanup();
  fusd_mem_cleanup();