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

pinctrl: pfc: r8a7790: add mux data for IIC(B) cores

Signed-off-by: Wolfram Sang <wsa@sang-engineering.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>

authored by

Wolfram Sang and committed by
Linus Walleij
a16b81dc 35a493de

+116 -2
+116 -2
drivers/pinctrl/sh-pfc/pfc-r8a7790.c
··· 782 782 USB1_PWEN_MARK, AUDIO_CLKOUT_D_MARK, USB1_OVC_MARK, 783 783 TCLK1_B_MARK, 784 784 785 - I2C0_SCL_MARK, I2C0_SDA_MARK, 786 - I2C3_SCL_MARK, I2C3_SDA_MARK, 785 + IIC0_SCL_MARK, IIC0_SDA_MARK, I2C0_SCL_MARK, I2C0_SDA_MARK, 786 + IIC3_SCL_MARK, IIC3_SDA_MARK, I2C3_SCL_MARK, I2C3_SDA_MARK, 787 787 PINMUX_MARK_END, 788 788 }; 789 789 ··· 1723 1723 PINMUX_IPSR_DATA(IP16_7, USB1_OVC), 1724 1724 PINMUX_IPSR_MODSEL_DATA(IP16_7, TCLK1_B, SEL_TMU1_1), 1725 1725 1726 + PINMUX_DATA(IIC0_SCL_MARK, FN_SEL_IIC0_0), 1727 + PINMUX_DATA(IIC0_SDA_MARK, FN_SEL_IIC0_0), 1726 1728 PINMUX_DATA(I2C0_SCL_MARK, FN_SEL_IIC0_1), 1727 1729 PINMUX_DATA(I2C0_SDA_MARK, FN_SEL_IIC0_1), 1728 1730 1731 + PINMUX_DATA(IIC3_SCL_MARK, FN_SEL_IICDVFS_0), 1732 + PINMUX_DATA(IIC3_SDA_MARK, FN_SEL_IICDVFS_0), 1729 1733 PINMUX_DATA(I2C3_SCL_MARK, FN_SEL_IICDVFS_1), 1730 1734 PINMUX_DATA(I2C3_SDA_MARK, FN_SEL_IICDVFS_1), 1731 1735 }; ··· 2137 2133 }; 2138 2134 static const unsigned int i2c3_mux[] = { 2139 2135 I2C3_SCL_MARK, I2C3_SDA_MARK, 2136 + }; 2137 + /* - IIC0 (I2C4) ------------------------------------------------------------ */ 2138 + static const unsigned int iic0_pins[] = { 2139 + /* SCL, SDA */ 2140 + PIN_A_NUMBER('G', 15), PIN_A_NUMBER('F', 15), 2141 + }; 2142 + static const unsigned int iic0_mux[] = { 2143 + IIC0_SCL_MARK, IIC0_SDA_MARK, 2144 + }; 2145 + /* - IIC1 (I2C5) ------------------------------------------------------------ */ 2146 + static const unsigned int iic1_pins[] = { 2147 + /* SCL, SDA */ 2148 + RCAR_GP_PIN(1, 16), RCAR_GP_PIN(1, 17), 2149 + }; 2150 + static const unsigned int iic1_mux[] = { 2151 + IIC1_SCL_MARK, IIC1_SDA_MARK, 2152 + }; 2153 + static const unsigned int iic1_b_pins[] = { 2154 + /* SCL, SDA */ 2155 + RCAR_GP_PIN(3, 6), RCAR_GP_PIN(3, 7), 2156 + }; 2157 + static const unsigned int iic1_b_mux[] = { 2158 + IIC1_SCL_B_MARK, IIC1_SDA_B_MARK, 2159 + }; 2160 + static const unsigned int iic1_c_pins[] = { 2161 + /* SCL, SDA */ 2162 + RCAR_GP_PIN(4, 30), RCAR_GP_PIN(4, 27), 2163 + }; 2164 + static const unsigned int iic1_c_mux[] = { 2165 + IIC1_SCL_C_MARK, IIC1_SDA_C_MARK, 2166 + }; 2167 + /* - IIC2 (I2C6) ------------------------------------------------------------ */ 2168 + static const unsigned int iic2_pins[] = { 2169 + /* SCL, SDA */ 2170 + RCAR_GP_PIN(5, 5), RCAR_GP_PIN(5, 6), 2171 + }; 2172 + static const unsigned int iic2_mux[] = { 2173 + IIC2_SCL_MARK, IIC2_SDA_MARK, 2174 + }; 2175 + static const unsigned int iic2_b_pins[] = { 2176 + /* SCL, SDA */ 2177 + RCAR_GP_PIN(4, 0), RCAR_GP_PIN(4, 1), 2178 + }; 2179 + static const unsigned int iic2_b_mux[] = { 2180 + IIC2_SCL_B_MARK, IIC2_SDA_B_MARK, 2181 + }; 2182 + static const unsigned int iic2_c_pins[] = { 2183 + /* SCL, SDA */ 2184 + RCAR_GP_PIN(0, 6), RCAR_GP_PIN(0, 7), 2185 + }; 2186 + static const unsigned int iic2_c_mux[] = { 2187 + IIC2_SCL_C_MARK, IIC2_SDA_C_MARK, 2188 + }; 2189 + static const unsigned int iic2_d_pins[] = { 2190 + /* SCL, SDA */ 2191 + RCAR_GP_PIN(3, 14), RCAR_GP_PIN(3, 15), 2192 + }; 2193 + static const unsigned int iic2_d_mux[] = { 2194 + IIC2_SCL_D_MARK, IIC2_SDA_D_MARK, 2195 + }; 2196 + static const unsigned int iic2_e_pins[] = { 2197 + /* SCL, SDA */ 2198 + RCAR_GP_PIN(2, 18), RCAR_GP_PIN(2, 19), 2199 + }; 2200 + static const unsigned int iic2_e_mux[] = { 2201 + IIC2_SCL_E_MARK, IIC2_SDA_E_MARK, 2202 + }; 2203 + /* - IIC3 (I2C7) ------------------------------------------------------------ */ 2204 + static const unsigned int iic3_pins[] = { 2205 + /* SCL, SDA */ 2206 + PIN_A_NUMBER('J', 15), PIN_A_NUMBER('H', 15), 2207 + }; 2208 + static const unsigned int iic3_mux[] = { 2209 + IIC3_SCL_MARK, IIC3_SDA_MARK, 2140 2210 }; 2141 2211 /* - INTC ------------------------------------------------------------------- */ 2142 2212 static const unsigned int intc_irq0_pins[] = { ··· 3859 3781 SH_PFC_PIN_GROUP(i2c2_d), 3860 3782 SH_PFC_PIN_GROUP(i2c2_e), 3861 3783 SH_PFC_PIN_GROUP(i2c3), 3784 + SH_PFC_PIN_GROUP(iic0), 3785 + SH_PFC_PIN_GROUP(iic1), 3786 + SH_PFC_PIN_GROUP(iic1_b), 3787 + SH_PFC_PIN_GROUP(iic1_c), 3788 + SH_PFC_PIN_GROUP(iic2), 3789 + SH_PFC_PIN_GROUP(iic2_b), 3790 + SH_PFC_PIN_GROUP(iic2_c), 3791 + SH_PFC_PIN_GROUP(iic2_d), 3792 + SH_PFC_PIN_GROUP(iic2_e), 3793 + SH_PFC_PIN_GROUP(iic3), 3862 3794 SH_PFC_PIN_GROUP(intc_irq0), 3863 3795 SH_PFC_PIN_GROUP(intc_irq1), 3864 3796 SH_PFC_PIN_GROUP(intc_irq2), ··· 4167 4079 4168 4080 static const char * const i2c3_groups[] = { 4169 4081 "i2c3", 4082 + }; 4083 + 4084 + static const char * const iic0_groups[] = { 4085 + "iic0", 4086 + }; 4087 + 4088 + static const char * const iic1_groups[] = { 4089 + "iic1", 4090 + "iic1_b", 4091 + "iic1_c", 4092 + }; 4093 + 4094 + static const char * const iic2_groups[] = { 4095 + "iic2", 4096 + "iic2_b", 4097 + "iic2_c", 4098 + "iic2_d", 4099 + "iic2_e", 4100 + }; 4101 + 4102 + static const char * const iic3_groups[] = { 4103 + "iic3", 4170 4104 }; 4171 4105 4172 4106 static const char * const intc_groups[] = { ··· 4506 4396 SH_PFC_FUNCTION(i2c1), 4507 4397 SH_PFC_FUNCTION(i2c2), 4508 4398 SH_PFC_FUNCTION(i2c3), 4399 + SH_PFC_FUNCTION(iic0), 4400 + SH_PFC_FUNCTION(iic1), 4401 + SH_PFC_FUNCTION(iic2), 4402 + SH_PFC_FUNCTION(iic3), 4509 4403 SH_PFC_FUNCTION(intc), 4510 4404 SH_PFC_FUNCTION(mmc0), 4511 4405 SH_PFC_FUNCTION(mmc1),