Merge branch 'pinmux/next/pfc' of git://linuxtv.org/pinchartl/fbdev into devel

This commit is contained in:
Linus Walleij 2013-11-04 13:02:37 +01:00
commit de91a3789d
6 changed files with 4285 additions and 0 deletions

View file

@ -45,6 +45,11 @@ config PINCTRL_PFC_R8A7790
depends on ARCH_R8A7790
select PINCTRL_SH_PFC
config PINCTRL_PFC_R8A7791
def_bool y
depends on ARCH_R8A7791
select PINCTRL_SH_PFC
config PINCTRL_PFC_SH7203
def_bool y
depends on CPU_SUBTYPE_SH7203

View file

@ -8,6 +8,7 @@ obj-$(CONFIG_PINCTRL_PFC_R8A7740) += pfc-r8a7740.o
obj-$(CONFIG_PINCTRL_PFC_R8A7778) += pfc-r8a7778.o
obj-$(CONFIG_PINCTRL_PFC_R8A7779) += pfc-r8a7779.o
obj-$(CONFIG_PINCTRL_PFC_R8A7790) += pfc-r8a7790.o
obj-$(CONFIG_PINCTRL_PFC_R8A7791) += pfc-r8a7791.o
obj-$(CONFIG_PINCTRL_PFC_SH7203) += pfc-sh7203.o
obj-$(CONFIG_PINCTRL_PFC_SH7264) += pfc-sh7264.o
obj-$(CONFIG_PINCTRL_PFC_SH7269) += pfc-sh7269.o

View file

@ -431,6 +431,12 @@ static const struct of_device_id sh_pfc_of_table[] = {
.data = &r8a7790_pinmux_info,
},
#endif
#ifdef CONFIG_PINCTRL_PFC_R8A7791
{
.compatible = "renesas,pfc-r8a7791",
.data = &r8a7791_pinmux_info,
},
#endif
#ifdef CONFIG_PINCTRL_PFC_SH7372
{
.compatible = "renesas,pfc-sh7372",
@ -558,6 +564,9 @@ static const struct platform_device_id sh_pfc_id_table[] = {
#ifdef CONFIG_PINCTRL_PFC_R8A7790
{ "pfc-r8a7790", (kernel_ulong_t)&r8a7790_pinmux_info },
#endif
#ifdef CONFIG_PINCTRL_PFC_R8A7791
{ "pfc-r8a7791", (kernel_ulong_t)&r8a7791_pinmux_info },
#endif
#ifdef CONFIG_PINCTRL_PFC_SH7203
{ "pfc-sh7203", (kernel_ulong_t)&sh7203_pinmux_info },
#endif

View file

@ -69,6 +69,7 @@ extern const struct sh_pfc_soc_info r8a7740_pinmux_info;
extern const struct sh_pfc_soc_info r8a7778_pinmux_info;
extern const struct sh_pfc_soc_info r8a7779_pinmux_info;
extern const struct sh_pfc_soc_info r8a7790_pinmux_info;
extern const struct sh_pfc_soc_info r8a7791_pinmux_info;
extern const struct sh_pfc_soc_info sh7203_pinmux_info;
extern const struct sh_pfc_soc_info sh7264_pinmux_info;
extern const struct sh_pfc_soc_info sh7269_pinmux_info;

View file

@ -1304,6 +1304,33 @@ AUDIO_PFC_DAT(audio_clkout_a, AUDIO_CLKOUT_A);
AUDIO_PFC_PIN(audio_clkout_b, RCAR_GP_PIN(1, 16));
AUDIO_PFC_DAT(audio_clkout_b, AUDIO_CLKOUT_B);
/* - CAN macro --------_----------------------------------------------------- */
#define CAN_PFC_PINS(name, args...) SH_PFC_PINS(name, args)
#define CAN_PFC_DATA(name, tx, rx) SH_PFC_MUX2(name, tx, rx)
#define CAN_PFC_CLK(name, clk) SH_PFC_MUX1(name, clk)
/* - CAN0 ------------------------------------------------------------------- */
CAN_PFC_PINS(can0_data_a, RCAR_GP_PIN(1, 30), RCAR_GP_PIN(1, 31));
CAN_PFC_DATA(can0_data_a, CAN0_TX_A, CAN0_RX_A);
CAN_PFC_PINS(can0_data_b, RCAR_GP_PIN(2, 26), RCAR_GP_PIN(2, 27));
CAN_PFC_DATA(can0_data_b, CAN0_TX_B, CAN0_RX_B);
/* - CAN1 ------------------------------------------------------------------- */
CAN_PFC_PINS(can1_data_a, RCAR_GP_PIN(4, 20), RCAR_GP_PIN(4, 19));
CAN_PFC_DATA(can1_data_a, CAN1_TX_A, CAN1_RX_A);
CAN_PFC_PINS(can1_data_b, RCAR_GP_PIN(2, 28), RCAR_GP_PIN(2, 29));
CAN_PFC_DATA(can1_data_b, CAN1_TX_B, CAN1_RX_B);
/* - CAN_CLK --------------------------------------------------------------- */
CAN_PFC_PINS(can_clk_a, RCAR_GP_PIN(3, 24));
CAN_PFC_CLK(can_clk_a, CAN_CLK_A);
CAN_PFC_PINS(can_clk_b, RCAR_GP_PIN(1, 16));
CAN_PFC_CLK(can_clk_b, CAN_CLK_B);
CAN_PFC_PINS(can_clk_c, RCAR_GP_PIN(4, 24));
CAN_PFC_CLK(can_clk_c, CAN_CLK_C);
CAN_PFC_PINS(can_clk_d, RCAR_GP_PIN(2, 25));
CAN_PFC_CLK(can_clk_d, CAN_CLK_D);
/* - Ether ------------------------------------------------------------------ */
SH_PFC_PINS(ether_rmii, RCAR_GP_PIN(4, 10), RCAR_GP_PIN(4, 11),
RCAR_GP_PIN(4, 13), RCAR_GP_PIN(4, 9),
@ -1698,6 +1725,14 @@ static const struct sh_pfc_pin_group pinmux_groups[] = {
SH_PFC_PIN_GROUP(audio_clk_c),
SH_PFC_PIN_GROUP(audio_clkout_a),
SH_PFC_PIN_GROUP(audio_clkout_b),
SH_PFC_PIN_GROUP(can0_data_a),
SH_PFC_PIN_GROUP(can0_data_b),
SH_PFC_PIN_GROUP(can1_data_a),
SH_PFC_PIN_GROUP(can1_data_b),
SH_PFC_PIN_GROUP(can_clk_a),
SH_PFC_PIN_GROUP(can_clk_b),
SH_PFC_PIN_GROUP(can_clk_c),
SH_PFC_PIN_GROUP(can_clk_d),
SH_PFC_PIN_GROUP(ether_rmii),
SH_PFC_PIN_GROUP(ether_link),
SH_PFC_PIN_GROUP(ether_magic),
@ -1826,6 +1861,24 @@ static const char * const audio_clk_groups[] = {
"audio_clkout_b",
};
static const char * const can0_groups[] = {
"can0_data_a",
"can0_data_b",
"can_clk_a",
"can_clk_b",
"can_clk_c",
"can_clk_d",
};
static const char * const can1_groups[] = {
"can1_data_a",
"can1_data_b",
"can_clk_a",
"can_clk_b",
"can_clk_c",
"can_clk_d",
};
static const char * const ether_groups[] = {
"ether_rmii",
"ether_link",
@ -2022,6 +2075,8 @@ static const char * const vin1_groups[] = {
static const struct sh_pfc_function pinmux_functions[] = {
SH_PFC_FUNCTION(audio_clk),
SH_PFC_FUNCTION(can0),
SH_PFC_FUNCTION(can1),
SH_PFC_FUNCTION(ether),
SH_PFC_FUNCTION(hscif0),
SH_PFC_FUNCTION(hscif1),

File diff suppressed because it is too large Load diff