|
@@ -301,7 +301,7 @@ struct rockchip_pin_bank {
|
|
struct rockchip_mux_recalced_data {
|
|
struct rockchip_mux_recalced_data {
|
|
u8 num;
|
|
u8 num;
|
|
u8 pin;
|
|
u8 pin;
|
|
- u8 reg;
|
|
|
|
|
|
+ u32 reg;
|
|
u8 bit;
|
|
u8 bit;
|
|
u8 mask;
|
|
u8 mask;
|
|
};
|
|
};
|
|
@@ -558,6 +558,70 @@ static const struct pinctrl_ops rockchip_pctrl_ops = {
|
|
* Hardware access
|
|
* Hardware access
|
|
*/
|
|
*/
|
|
|
|
|
|
|
|
+static struct rockchip_mux_recalced_data rv1108_mux_recalced_data[] = {
|
|
|
|
+ {
|
|
|
|
+ .num = 1,
|
|
|
|
+ .pin = 0,
|
|
|
|
+ .reg = 0x418,
|
|
|
|
+ .bit = 0,
|
|
|
|
+ .mask = 0x3
|
|
|
|
+ }, {
|
|
|
|
+ .num = 1,
|
|
|
|
+ .pin = 1,
|
|
|
|
+ .reg = 0x418,
|
|
|
|
+ .bit = 2,
|
|
|
|
+ .mask = 0x3
|
|
|
|
+ }, {
|
|
|
|
+ .num = 1,
|
|
|
|
+ .pin = 2,
|
|
|
|
+ .reg = 0x418,
|
|
|
|
+ .bit = 4,
|
|
|
|
+ .mask = 0x3
|
|
|
|
+ }, {
|
|
|
|
+ .num = 1,
|
|
|
|
+ .pin = 3,
|
|
|
|
+ .reg = 0x418,
|
|
|
|
+ .bit = 6,
|
|
|
|
+ .mask = 0x3
|
|
|
|
+ }, {
|
|
|
|
+ .num = 1,
|
|
|
|
+ .pin = 4,
|
|
|
|
+ .reg = 0x418,
|
|
|
|
+ .bit = 8,
|
|
|
|
+ .mask = 0x3
|
|
|
|
+ }, {
|
|
|
|
+ .num = 1,
|
|
|
|
+ .pin = 5,
|
|
|
|
+ .reg = 0x418,
|
|
|
|
+ .bit = 10,
|
|
|
|
+ .mask = 0x3
|
|
|
|
+ }, {
|
|
|
|
+ .num = 1,
|
|
|
|
+ .pin = 6,
|
|
|
|
+ .reg = 0x418,
|
|
|
|
+ .bit = 12,
|
|
|
|
+ .mask = 0x3
|
|
|
|
+ }, {
|
|
|
|
+ .num = 1,
|
|
|
|
+ .pin = 7,
|
|
|
|
+ .reg = 0x418,
|
|
|
|
+ .bit = 14,
|
|
|
|
+ .mask = 0x3
|
|
|
|
+ }, {
|
|
|
|
+ .num = 1,
|
|
|
|
+ .pin = 8,
|
|
|
|
+ .reg = 0x41c,
|
|
|
|
+ .bit = 0,
|
|
|
|
+ .mask = 0x3
|
|
|
|
+ }, {
|
|
|
|
+ .num = 1,
|
|
|
|
+ .pin = 9,
|
|
|
|
+ .reg = 0x41c,
|
|
|
|
+ .bit = 2,
|
|
|
|
+ .mask = 0x3
|
|
|
|
+ },
|
|
|
|
+};
|
|
|
|
+
|
|
static struct rockchip_mux_recalced_data rk3128_mux_recalced_data[] = {
|
|
static struct rockchip_mux_recalced_data rk3128_mux_recalced_data[] = {
|
|
{
|
|
{
|
|
.num = 2,
|
|
.num = 2,
|
|
@@ -3162,6 +3226,8 @@ static struct rockchip_pin_ctrl rv1108_pin_ctrl = {
|
|
.type = RV1108,
|
|
.type = RV1108,
|
|
.grf_mux_offset = 0x10,
|
|
.grf_mux_offset = 0x10,
|
|
.pmu_mux_offset = 0x0,
|
|
.pmu_mux_offset = 0x0,
|
|
|
|
+ .iomux_recalced = rv1108_mux_recalced_data,
|
|
|
|
+ .niomux_recalced = ARRAY_SIZE(rv1108_mux_recalced_data),
|
|
.pull_calc_reg = rv1108_calc_pull_reg_and_bit,
|
|
.pull_calc_reg = rv1108_calc_pull_reg_and_bit,
|
|
.drv_calc_reg = rv1108_calc_drv_reg_and_bit,
|
|
.drv_calc_reg = rv1108_calc_drv_reg_and_bit,
|
|
.schmitt_calc_reg = rv1108_calc_schmitt_reg_and_bit,
|
|
.schmitt_calc_reg = rv1108_calc_schmitt_reg_and_bit,
|