Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

pinctrl: nomadik: stn8815 CLCD alternate functions

The STn8815 has 22 dedicated pins for CLCD with up to 16 bits
in parallel, but pins 32 thru 39 can be used for an additional
CLCD signal lines 16 thru 23.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>

+7
+7
drivers/pinctrl/nomadik/pinctrl-nomadik-stn8815.c
··· 287 287 /* Altfunction B */ 288 288 static const unsigned u1_b_1_pins[] = { STN8815_PIN_B16, STN8815_PIN_A16 }; 289 289 static const unsigned i2cusb_b_1_pins[] = { STN8815_PIN_C21, STN8815_PIN_C20 }; 290 + static const unsigned clcd_16_23_b_1_pins[] = { STN8815_PIN_AB6, 291 + STN8815_PIN_AA6, STN8815_PIN_Y6, STN8815_PIN_Y5, STN8815_PIN_AA5, 292 + STN8815_PIN_AB5, STN8815_PIN_AB4, STN8815_PIN_Y4 }; 293 + 290 294 291 295 #define STN8815_PIN_GROUP(a, b) { .name = #a, .pins = a##_pins, \ 292 296 .npins = ARRAY_SIZE(a##_pins), .altsetting = b } ··· 306 302 STN8815_PIN_GROUP(i2c0_a_1, NMK_GPIO_ALT_A), 307 303 STN8815_PIN_GROUP(u1_b_1, NMK_GPIO_ALT_B), 308 304 STN8815_PIN_GROUP(i2cusb_b_1, NMK_GPIO_ALT_B), 305 + STN8815_PIN_GROUP(clcd_16_23_b_1, NMK_GPIO_ALT_B), 309 306 }; 310 307 311 308 /* We use this macro to define the groups applicable to a function */ ··· 319 314 STN8815_FUNC_GROUPS(i2c1, "i2c1_a_1"); 320 315 STN8815_FUNC_GROUPS(i2c0, "i2c0_a_1"); 321 316 STN8815_FUNC_GROUPS(i2cusb, "i2cusb_b_1"); 317 + STN8815_FUNC_GROUPS(clcd, "clcd_16_23_b_1"); 322 318 323 319 #define FUNCTION(fname) \ 324 320 { \ ··· 335 329 FUNCTION(i2c1), 336 330 FUNCTION(i2c0), 337 331 FUNCTION(i2cusb), 332 + FUNCTION(clcd), 338 333 }; 339 334 340 335 static const struct nmk_pinctrl_soc_data nmk_stn8815_soc = {