row-gpios”);
pdata->num_col_gpios = ncol = of_gpio_named_count(np, “col-gpios”);
of_get_property(np, “linux...,no-autorepeat”, NULL)
of_get_property(np, “linux,wakeup”, NULL)
of_get_property(np, “gpio-activelow”...= input_allocate_device();
..
keypad->input_dev = input_dev;
keypad->pdata = pdata;
keypad->row_shift...);
…
}
__clear_bit(KEY_RESERVED, input_dev->keybit);
return 0;
}
//就是解析设备树节点里的 linux,keymap 属性
static...}
static bool matrix_keypad_map_key(struct input_dev *input_dev,
unsigned int rows, unsigned int cols