]> Pileus Git - ~andy/linux/blobdiff - drivers/input/keyboard/omap4-keypad.c
Merge tag 'edac_fixes_for_3.10' of git://git.kernel.org/pub/scm/linux/kernel/git...
[~andy/linux] / drivers / input / keyboard / omap4-keypad.c
index e25b022692cd48d4d1f14f111f54a32adc01e2c8..1b289092f4e30915ce9005678f8ca84991435b3b 100644 (file)
@@ -215,18 +215,12 @@ static int omap4_keypad_parse_dt(struct device *dev,
                                 struct omap4_keypad *keypad_data)
 {
        struct device_node *np = dev->of_node;
+       int err;
 
-       if (!np) {
-               dev_err(dev, "missing DT data");
-               return -EINVAL;
-       }
-
-       of_property_read_u32(np, "keypad,num-rows", &keypad_data->rows);
-       of_property_read_u32(np, "keypad,num-columns", &keypad_data->cols);
-       if (!keypad_data->rows || !keypad_data->cols) {
-               dev_err(dev, "number of keypad rows/columns not specified\n");
-               return -EINVAL;
-       }
+       err = matrix_keypad_parse_of_params(dev, &keypad_data->rows,
+                                           &keypad_data->cols);
+       if (err)
+               return err;
 
        if (of_get_property(np, "linux,input-no-autorepeat", NULL))
                keypad_data->no_autorepeat = true;