__WEAK void apq8064_keypad_init(void) { apq8064_keypad_gpio_init(); if (platform_pmic_type(PMIC_IS_PM8917)) ssbi_gpio_keypad_init(&apq8064_pm8917_qwerty_keypad); else ssbi_gpio_keypad_init(&apq8064_pm8921_qwerty_keypad); }
__WEAK void msm8930_keypad_init(void) { msm8930_keypad_gpio_init(); if (platform_pmic_type(PMIC_IS_PM8917)) { ssbi_gpio_keypad_init(&msm8930_pm8917_qwerty_keypad); } else { ssbi_gpio_keypad_init(&msm8930_pm8038_qwerty_keypad); } }
void apq8064_keypad_gpio_init() { int i = 0; int num = 0; struct pm8xxx_gpio_init *gpio_array; if (platform_pmic_type(PMIC_IS_PM8917)) { num = ARRAY_SIZE(pm8917_keypad_gpios_apq); gpio_array = pm8917_keypad_gpios_apq; } else { num = ARRAY_SIZE(pm8921_keypad_gpios_apq); gpio_array = pm8921_keypad_gpios_apq; } for(i = 0; i < num; i++) { pm8921_gpio_config(gpio_array[i].gpio, &(gpio_array[i].config)); } }