Linux Kernel input设备之分配input设备

    xiaoxiao2021-03-25  68

    /**  * input_allocate_device - allocate memory for new input device  *  * Returns prepared struct input_dev or %NULL.  *  * NOTE: Use input_free_device() to free devices that have not been  * registered; input_unregister_device() should be used for already  * registered devices.  */ struct input_dev *input_allocate_device(void) { static atomic_t input_no = ATOMIC_INIT(-1); struct input_dev *dev; dev = kzalloc(sizeof(struct input_dev), GFP_KERNEL); if (dev) { dev->dev.type = &input_dev_type; dev->dev.class = &input_class; device_initialize(&dev->dev); mutex_init(&dev->mutex); spin_lock_init(&dev->event_lock); init_timer(&dev->timer); INIT_LIST_HEAD(&dev->h_list); INIT_LIST_HEAD(&dev->node); dev_set_name(&dev->dev, "input%lu",     (unsigned long)atomic_inc_return(&input_no)); __module_get(THIS_MODULE); } return dev; }
    转载请注明原文地址: https://ju.6miu.com/read-37219.html

    最新回复(0)