aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/pinctrl/sh-pfc
diff options
context:
space:
mode:
authorShinobu Uehara <shinobu.uehara.xc@renesas.com>2013-06-27 06:38:02 -0400
committerLaurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>2013-07-29 09:52:14 -0400
commite120cacfaac24d4de31b181371daaef6a5773ee3 (patch)
tree06c51fe97b009cc83b2654007d67e338aa06e656 /drivers/pinctrl/sh-pfc
parentdac896e221d42316059fb87eb4b7bee226e7da5d (diff)
sh-pfc: r8a7790: Add VIN pin groups and functions
Signed-off-by: Shinobu Uehara <shinobu.uehara.xc@renesas.com> Signed-off-by: Ryo Kataoka <ryo.kataoka.wt@renesas.com> Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Diffstat (limited to 'drivers/pinctrl/sh-pfc')
-rw-r--r--drivers/pinctrl/sh-pfc/pfc-r8a7790.c106
1 files changed, 106 insertions, 0 deletions
diff --git a/drivers/pinctrl/sh-pfc/pfc-r8a7790.c b/drivers/pinctrl/sh-pfc/pfc-r8a7790.c
index fa501ef9e7f0..846ffccfa9e5 100644
--- a/drivers/pinctrl/sh-pfc/pfc-r8a7790.c
+++ b/drivers/pinctrl/sh-pfc/pfc-r8a7790.c
@@ -2893,6 +2893,84 @@ static const unsigned int usb2_pins[] = {
2893static const unsigned int usb2_mux[] = { 2893static const unsigned int usb2_mux[] = {
2894 USB2_PWEN_MARK, USB2_OVC_MARK, 2894 USB2_PWEN_MARK, USB2_OVC_MARK,
2895}; 2895};
2896/* - VIN0 ------------------------------------------------------------------- */
2897static const unsigned int vin0_data_g_pins[] = {
2898 RCAR_GP_PIN(0, 8), RCAR_GP_PIN(0, 9), RCAR_GP_PIN(0, 10),
2899 RCAR_GP_PIN(0, 11), RCAR_GP_PIN(0, 0), RCAR_GP_PIN(0, 1),
2900 RCAR_GP_PIN(0, 2), RCAR_GP_PIN(0, 3),
2901};
2902static const unsigned int vin0_data_g_mux[] = {
2903 VI0_G0_MARK, VI0_G1_MARK, VI0_G2_MARK,
2904 VI0_G3_MARK, VI0_G4_MARK, VI0_G5_MARK,
2905 VI0_G6_MARK, VI0_G7_MARK,
2906};
2907static const unsigned int vin0_data_r_pins[] = {
2908 RCAR_GP_PIN(0, 4), RCAR_GP_PIN(0, 5), RCAR_GP_PIN(0, 6),
2909 RCAR_GP_PIN(0, 7), RCAR_GP_PIN(0, 24), RCAR_GP_PIN(0, 25),
2910 RCAR_GP_PIN(0, 26), RCAR_GP_PIN(1, 11),
2911};
2912static const unsigned int vin0_data_r_mux[] = {
2913 VI0_R0_MARK, VI0_R1_MARK, VI0_R2_MARK,
2914 VI0_R3_MARK, VI0_R4_MARK, VI0_R5_MARK,
2915 VI0_R6_MARK, VI0_R7_MARK,
2916};
2917static const unsigned int vin0_data_b_pins[] = {
2918 RCAR_GP_PIN(2, 1), RCAR_GP_PIN(2, 2), RCAR_GP_PIN(2, 3),
2919 RCAR_GP_PIN(2, 4), RCAR_GP_PIN(2, 5), RCAR_GP_PIN(2, 6),
2920 RCAR_GP_PIN(2, 7), RCAR_GP_PIN(2, 8),
2921};
2922static const unsigned int vin0_data_b_mux[] = {
2923 VI0_DATA0_VI0_B0_MARK, VI0_DATA1_VI0_B1_MARK, VI0_DATA2_VI0_B2_MARK,
2924 VI0_DATA3_VI0_B3_MARK, VI0_DATA4_VI0_B4_MARK, VI0_DATA5_VI0_B5_MARK,
2925 VI0_DATA6_VI0_B6_MARK, VI0_DATA7_VI0_B7_MARK,
2926};
2927static const unsigned int vin0_hsync_signal_pins[] = {
2928 RCAR_GP_PIN(0, 12),
2929};
2930static const unsigned int vin0_hsync_signal_mux[] = {
2931 VI0_HSYNC_N_MARK,
2932};
2933static const unsigned int vin0_vsync_signal_pins[] = {
2934 RCAR_GP_PIN(0, 13),
2935};
2936static const unsigned int vin0_vsync_signal_mux[] = {
2937 VI0_VSYNC_N_MARK,
2938};
2939static const unsigned int vin0_field_signal_pins[] = {
2940 RCAR_GP_PIN(0, 15),
2941};
2942static const unsigned int vin0_field_signal_mux[] = {
2943 VI0_FIELD_MARK,
2944};
2945static const unsigned int vin0_data_enable_pins[] = {
2946 RCAR_GP_PIN(0, 14),
2947};
2948static const unsigned int vin0_data_enable_mux[] = {
2949 VI0_CLKENB_MARK,
2950};
2951static const unsigned int vin0_clk_pins[] = {
2952 RCAR_GP_PIN(2, 0),
2953};
2954static const unsigned int vin0_clk_mux[] = {
2955 VI0_CLK_MARK,
2956};
2957/* - VIN1 ------------------------------------------------------------------- */
2958static const unsigned int vin1_data_pins[] = {
2959 RCAR_GP_PIN(2, 10), RCAR_GP_PIN(2, 11), RCAR_GP_PIN(2, 12),
2960 RCAR_GP_PIN(2, 13), RCAR_GP_PIN(2, 14), RCAR_GP_PIN(2, 15),
2961 RCAR_GP_PIN(2, 16), RCAR_GP_PIN(2, 17),
2962};
2963static const unsigned int vin1_data_mux[] = {
2964 VI1_DATA0_VI1_B0_MARK, VI1_DATA1_VI1_B1_MARK, VI1_DATA2_VI1_B2_MARK,
2965 VI1_DATA3_VI1_B3_MARK, VI1_DATA4_VI1_B4_MARK, VI1_DATA5_VI1_B5_MARK,
2966 VI1_DATA6_VI1_B6_MARK, VI1_DATA7_VI1_B7_MARK,
2967};
2968static const unsigned int vin1_clk_pins[] = {
2969 RCAR_GP_PIN(2, 9),
2970};
2971static const unsigned int vin1_clk_mux[] = {
2972 VI1_CLK_MARK,
2973};
2896 2974
2897static const struct sh_pfc_pin_group pinmux_groups[] = { 2975static const struct sh_pfc_pin_group pinmux_groups[] = {
2898 SH_PFC_PIN_GROUP(eth_link), 2976 SH_PFC_PIN_GROUP(eth_link),
@@ -3048,6 +3126,16 @@ static const struct sh_pfc_pin_group pinmux_groups[] = {
3048 SH_PFC_PIN_GROUP(usb0), 3126 SH_PFC_PIN_GROUP(usb0),
3049 SH_PFC_PIN_GROUP(usb1), 3127 SH_PFC_PIN_GROUP(usb1),
3050 SH_PFC_PIN_GROUP(usb2), 3128 SH_PFC_PIN_GROUP(usb2),
3129 SH_PFC_PIN_GROUP(vin0_data_g),
3130 SH_PFC_PIN_GROUP(vin0_data_r),
3131 SH_PFC_PIN_GROUP(vin0_data_b),
3132 SH_PFC_PIN_GROUP(vin0_hsync_signal),
3133 SH_PFC_PIN_GROUP(vin0_vsync_signal),
3134 SH_PFC_PIN_GROUP(vin0_field_signal),
3135 SH_PFC_PIN_GROUP(vin0_data_enable),
3136 SH_PFC_PIN_GROUP(vin0_clk),
3137 SH_PFC_PIN_GROUP(vin1_data),
3138 SH_PFC_PIN_GROUP(vin1_clk),
3051}; 3139};
3052 3140
3053static const char * const eth_groups[] = { 3141static const char * const eth_groups[] = {
@@ -3284,6 +3372,22 @@ static const char * const usb2_groups[] = {
3284 "usb2", 3372 "usb2",
3285}; 3373};
3286 3374
3375static const char * const vin0_groups[] = {
3376 "vin0_data_g",
3377 "vin0_data_r",
3378 "vin0_data_b",
3379 "vin0_hsync_signal",
3380 "vin0_vsync_signal",
3381 "vin0_field_signal",
3382 "vin0_data_enable",
3383 "vin0_clk",
3384};
3385
3386static const char * const vin1_groups[] = {
3387 "vin1_data",
3388 "vin1_clk",
3389};
3390
3287static const struct sh_pfc_function pinmux_functions[] = { 3391static const struct sh_pfc_function pinmux_functions[] = {
3288 SH_PFC_FUNCTION(eth), 3392 SH_PFC_FUNCTION(eth),
3289 SH_PFC_FUNCTION(hscif0), 3393 SH_PFC_FUNCTION(hscif0),
@@ -3312,6 +3416,8 @@ static const struct sh_pfc_function pinmux_functions[] = {
3312 SH_PFC_FUNCTION(usb0), 3416 SH_PFC_FUNCTION(usb0),
3313 SH_PFC_FUNCTION(usb1), 3417 SH_PFC_FUNCTION(usb1),
3314 SH_PFC_FUNCTION(usb2), 3418 SH_PFC_FUNCTION(usb2),
3419 SH_PFC_FUNCTION(vin0),
3420 SH_PFC_FUNCTION(vin1),
3315}; 3421};
3316 3422
3317static struct pinmux_cfg_reg pinmux_config_regs[] = { 3423static struct pinmux_cfg_reg pinmux_config_regs[] = {