diff options
author | Shinobu Uehara <shinobu.uehara.xc@renesas.com> | 2013-06-27 06:38:02 -0400 |
---|---|---|
committer | Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> | 2013-07-29 09:52:14 -0400 |
commit | e120cacfaac24d4de31b181371daaef6a5773ee3 (patch) | |
tree | 06c51fe97b009cc83b2654007d67e338aa06e656 /drivers/pinctrl/sh-pfc | |
parent | dac896e221d42316059fb87eb4b7bee226e7da5d (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.c | 106 |
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[] = { | |||
2893 | static const unsigned int usb2_mux[] = { | 2893 | static const unsigned int usb2_mux[] = { |
2894 | USB2_PWEN_MARK, USB2_OVC_MARK, | 2894 | USB2_PWEN_MARK, USB2_OVC_MARK, |
2895 | }; | 2895 | }; |
2896 | /* - VIN0 ------------------------------------------------------------------- */ | ||
2897 | static 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 | }; | ||
2902 | static 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 | }; | ||
2907 | static 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 | }; | ||
2912 | static 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 | }; | ||
2917 | static 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 | }; | ||
2922 | static 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 | }; | ||
2927 | static const unsigned int vin0_hsync_signal_pins[] = { | ||
2928 | RCAR_GP_PIN(0, 12), | ||
2929 | }; | ||
2930 | static const unsigned int vin0_hsync_signal_mux[] = { | ||
2931 | VI0_HSYNC_N_MARK, | ||
2932 | }; | ||
2933 | static const unsigned int vin0_vsync_signal_pins[] = { | ||
2934 | RCAR_GP_PIN(0, 13), | ||
2935 | }; | ||
2936 | static const unsigned int vin0_vsync_signal_mux[] = { | ||
2937 | VI0_VSYNC_N_MARK, | ||
2938 | }; | ||
2939 | static const unsigned int vin0_field_signal_pins[] = { | ||
2940 | RCAR_GP_PIN(0, 15), | ||
2941 | }; | ||
2942 | static const unsigned int vin0_field_signal_mux[] = { | ||
2943 | VI0_FIELD_MARK, | ||
2944 | }; | ||
2945 | static const unsigned int vin0_data_enable_pins[] = { | ||
2946 | RCAR_GP_PIN(0, 14), | ||
2947 | }; | ||
2948 | static const unsigned int vin0_data_enable_mux[] = { | ||
2949 | VI0_CLKENB_MARK, | ||
2950 | }; | ||
2951 | static const unsigned int vin0_clk_pins[] = { | ||
2952 | RCAR_GP_PIN(2, 0), | ||
2953 | }; | ||
2954 | static const unsigned int vin0_clk_mux[] = { | ||
2955 | VI0_CLK_MARK, | ||
2956 | }; | ||
2957 | /* - VIN1 ------------------------------------------------------------------- */ | ||
2958 | static 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 | }; | ||
2963 | static 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 | }; | ||
2968 | static const unsigned int vin1_clk_pins[] = { | ||
2969 | RCAR_GP_PIN(2, 9), | ||
2970 | }; | ||
2971 | static const unsigned int vin1_clk_mux[] = { | ||
2972 | VI1_CLK_MARK, | ||
2973 | }; | ||
2896 | 2974 | ||
2897 | static const struct sh_pfc_pin_group pinmux_groups[] = { | 2975 | static 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 | ||
3053 | static const char * const eth_groups[] = { | 3141 | static const char * const eth_groups[] = { |
@@ -3284,6 +3372,22 @@ static const char * const usb2_groups[] = { | |||
3284 | "usb2", | 3372 | "usb2", |
3285 | }; | 3373 | }; |
3286 | 3374 | ||
3375 | static 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 | |||
3386 | static const char * const vin1_groups[] = { | ||
3387 | "vin1_data", | ||
3388 | "vin1_clk", | ||
3389 | }; | ||
3390 | |||
3287 | static const struct sh_pfc_function pinmux_functions[] = { | 3391 | static 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 | ||
3317 | static struct pinmux_cfg_reg pinmux_config_regs[] = { | 3423 | static struct pinmux_cfg_reg pinmux_config_regs[] = { |