Loading drivers/mfd/arizona-core.c +17 −20 Original line number Diff line number Diff line Loading @@ -264,20 +264,20 @@ static void arizona_disable_reset(struct arizona *arizona) } } static int arizona_apply_hardware_patch(struct arizona* arizona) static int wm5102_apply_hardware_patch(struct arizona *arizona) { unsigned int fll, sysclk; int ret, err; /* Cache existing FLL and SYSCLK settings */ ret = regmap_read(arizona->regmap, ARIZONA_FLL1_CONTROL_1, &fll); if (ret != 0) { if (ret) { dev_err(arizona->dev, "Failed to cache FLL settings: %d\n", ret); return ret; } ret = regmap_read(arizona->regmap, ARIZONA_SYSTEM_CLOCK_1, &sysclk); if (ret != 0) { if (ret) { dev_err(arizona->dev, "Failed to cache SYSCLK settings: %d\n", ret); return ret; Loading @@ -286,7 +286,7 @@ static int arizona_apply_hardware_patch(struct arizona* arizona) /* Start up SYSCLK using the FLL in free running mode */ ret = regmap_write(arizona->regmap, ARIZONA_FLL1_CONTROL_1, ARIZONA_FLL1_ENA | ARIZONA_FLL1_FREERUN); if (ret != 0) { if (ret) { dev_err(arizona->dev, "Failed to start FLL in freerunning mode: %d\n", ret); Loading @@ -295,13 +295,13 @@ static int arizona_apply_hardware_patch(struct arizona* arizona) ret = arizona_poll_reg(arizona, 25, ARIZONA_INTERRUPT_RAW_STATUS_5, ARIZONA_FLL1_CLOCK_OK_STS, ARIZONA_FLL1_CLOCK_OK_STS); if (ret != 0) { if (ret) { ret = -ETIMEDOUT; goto err_fll; } ret = regmap_write(arizona->regmap, ARIZONA_SYSTEM_CLOCK_1, 0x0144); if (ret != 0) { if (ret) { dev_err(arizona->dev, "Failed to start SYSCLK: %d\n", ret); goto err_fll; } Loading @@ -309,14 +309,14 @@ static int arizona_apply_hardware_patch(struct arizona* arizona) /* Start the write sequencer and wait for it to finish */ ret = regmap_write(arizona->regmap, ARIZONA_WRITE_SEQUENCER_CTRL_0, ARIZONA_WSEQ_ENA | ARIZONA_WSEQ_START | 160); if (ret != 0) { if (ret) { dev_err(arizona->dev, "Failed to start write sequencer: %d\n", ret); goto err_sysclk; } ret = arizona_poll_reg(arizona, 5, ARIZONA_WRITE_SEQUENCER_CTRL_1, ARIZONA_WSEQ_BUSY, 0); if (ret != 0) { if (ret) { regmap_write(arizona->regmap, ARIZONA_WRITE_SEQUENCER_CTRL_0, ARIZONA_WSEQ_ABORT); ret = -ETIMEDOUT; Loading @@ -324,7 +324,7 @@ static int arizona_apply_hardware_patch(struct arizona* arizona) err_sysclk: err = regmap_write(arizona->regmap, ARIZONA_SYSTEM_CLOCK_1, sysclk); if (err != 0) { if (err) { dev_err(arizona->dev, "Failed to re-apply old SYSCLK settings: %d\n", err); Loading @@ -332,16 +332,13 @@ static int arizona_apply_hardware_patch(struct arizona* arizona) err_fll: err = regmap_write(arizona->regmap, ARIZONA_FLL1_CONTROL_1, fll); if (err != 0) { if (err) { dev_err(arizona->dev, "Failed to re-apply old FLL settings: %d\n", err); } if (ret != 0) return ret; else return err; return ret ?: err; } static int wm5102_clear_write_sequencer(struct arizona *arizona) Loading Loading @@ -407,8 +404,8 @@ static int arizona_runtime_resume(struct device *dev) goto err; } ret = arizona_apply_hardware_patch(arizona); if (ret != 0) { ret = wm5102_apply_hardware_patch(arizona); if (ret) { dev_err(arizona->dev, "Failed to apply hardware patch: %d\n", ret); Loading Loading @@ -924,8 +921,8 @@ int arizona_dev_init(struct arizona *arizona) switch (arizona->type) { case WM5102: ret = arizona_apply_hardware_patch(arizona); if (ret != 0) { ret = wm5102_apply_hardware_patch(arizona); if (ret) { dev_err(arizona->dev, "Failed to apply hardware patch: %d\n", ret); Loading Loading
drivers/mfd/arizona-core.c +17 −20 Original line number Diff line number Diff line Loading @@ -264,20 +264,20 @@ static void arizona_disable_reset(struct arizona *arizona) } } static int arizona_apply_hardware_patch(struct arizona* arizona) static int wm5102_apply_hardware_patch(struct arizona *arizona) { unsigned int fll, sysclk; int ret, err; /* Cache existing FLL and SYSCLK settings */ ret = regmap_read(arizona->regmap, ARIZONA_FLL1_CONTROL_1, &fll); if (ret != 0) { if (ret) { dev_err(arizona->dev, "Failed to cache FLL settings: %d\n", ret); return ret; } ret = regmap_read(arizona->regmap, ARIZONA_SYSTEM_CLOCK_1, &sysclk); if (ret != 0) { if (ret) { dev_err(arizona->dev, "Failed to cache SYSCLK settings: %d\n", ret); return ret; Loading @@ -286,7 +286,7 @@ static int arizona_apply_hardware_patch(struct arizona* arizona) /* Start up SYSCLK using the FLL in free running mode */ ret = regmap_write(arizona->regmap, ARIZONA_FLL1_CONTROL_1, ARIZONA_FLL1_ENA | ARIZONA_FLL1_FREERUN); if (ret != 0) { if (ret) { dev_err(arizona->dev, "Failed to start FLL in freerunning mode: %d\n", ret); Loading @@ -295,13 +295,13 @@ static int arizona_apply_hardware_patch(struct arizona* arizona) ret = arizona_poll_reg(arizona, 25, ARIZONA_INTERRUPT_RAW_STATUS_5, ARIZONA_FLL1_CLOCK_OK_STS, ARIZONA_FLL1_CLOCK_OK_STS); if (ret != 0) { if (ret) { ret = -ETIMEDOUT; goto err_fll; } ret = regmap_write(arizona->regmap, ARIZONA_SYSTEM_CLOCK_1, 0x0144); if (ret != 0) { if (ret) { dev_err(arizona->dev, "Failed to start SYSCLK: %d\n", ret); goto err_fll; } Loading @@ -309,14 +309,14 @@ static int arizona_apply_hardware_patch(struct arizona* arizona) /* Start the write sequencer and wait for it to finish */ ret = regmap_write(arizona->regmap, ARIZONA_WRITE_SEQUENCER_CTRL_0, ARIZONA_WSEQ_ENA | ARIZONA_WSEQ_START | 160); if (ret != 0) { if (ret) { dev_err(arizona->dev, "Failed to start write sequencer: %d\n", ret); goto err_sysclk; } ret = arizona_poll_reg(arizona, 5, ARIZONA_WRITE_SEQUENCER_CTRL_1, ARIZONA_WSEQ_BUSY, 0); if (ret != 0) { if (ret) { regmap_write(arizona->regmap, ARIZONA_WRITE_SEQUENCER_CTRL_0, ARIZONA_WSEQ_ABORT); ret = -ETIMEDOUT; Loading @@ -324,7 +324,7 @@ static int arizona_apply_hardware_patch(struct arizona* arizona) err_sysclk: err = regmap_write(arizona->regmap, ARIZONA_SYSTEM_CLOCK_1, sysclk); if (err != 0) { if (err) { dev_err(arizona->dev, "Failed to re-apply old SYSCLK settings: %d\n", err); Loading @@ -332,16 +332,13 @@ static int arizona_apply_hardware_patch(struct arizona* arizona) err_fll: err = regmap_write(arizona->regmap, ARIZONA_FLL1_CONTROL_1, fll); if (err != 0) { if (err) { dev_err(arizona->dev, "Failed to re-apply old FLL settings: %d\n", err); } if (ret != 0) return ret; else return err; return ret ?: err; } static int wm5102_clear_write_sequencer(struct arizona *arizona) Loading Loading @@ -407,8 +404,8 @@ static int arizona_runtime_resume(struct device *dev) goto err; } ret = arizona_apply_hardware_patch(arizona); if (ret != 0) { ret = wm5102_apply_hardware_patch(arizona); if (ret) { dev_err(arizona->dev, "Failed to apply hardware patch: %d\n", ret); Loading Loading @@ -924,8 +921,8 @@ int arizona_dev_init(struct arizona *arizona) switch (arizona->type) { case WM5102: ret = arizona_apply_hardware_patch(arizona); if (ret != 0) { ret = wm5102_apply_hardware_patch(arizona); if (ret) { dev_err(arizona->dev, "Failed to apply hardware patch: %d\n", ret); Loading