FAILED: patch "[PATCH] pwm: tiehrpwm: Don't use emulation mode bits to control PWM" failed to apply to 3.18-stable tree
Subsystems (2)
[email protected]
maintainerThe patch below does not apply to the 3.18-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
Quoted 1 line
From
aa49d628f6e016bcec8c6f8e704b9b18ee697329Mon Sep 17 00:00:00 2001
From: Vignesh R <[email protected]>
Date: Mon, 11 Jun 2018 11:39:55 +0530
Subject: [PATCH] pwm: tiehrpwm: Don't use emulation mode bits to control PWM
output
As per AM335x TRM SPRUH73P "15.2.2.11 ePWM Behavior During Emulation", TBCTL[15:14] only have effect during emulation suspend events (IOW, to stop PWM when debugging using a debugger). These bits have no effect on PWM output during normal running of system. Hence, remove code accessing these bits as they have no role in enabling/disabling PWMs.
drivers/pwm/pwm-tiehrpwm.c +1 -11
@@ -33,10 +33,6 @@#define TBCTL 0x00#define TBPRD 0x0A -#define TBCTL_RUN_MASK (BIT(15) | BIT(14)) -#define TBCTL_STOP_NEXT 0 -#define TBCTL_STOP_ON_CYCLE BIT(14) -#define TBCTL_FREE_RUN (BIT(15) | BIT(14))#define TBCTL_PRDLD_MASK BIT(3)#define TBCTL_PRDLD_SHDW 0#define TBCTL_PRDLD_IMDT BIT(3)
@@ -360,7 +356,7 @@ static int ehrpwm_pwm_enable(struct pwm_chip *chip, struct pwm_device *pwm)/* Channels polarity can be configured from action qualifier module */ configure_polarity (pc, pwm->hwpwm); -/* Enable TBCLK before enabling PWM device */ +/* Enable TBCLK */ ret =clk_enable (pc->tbclk);if (ret) { dev_err(chip->dev, "Failed to enable TBCLK for %s: %d\n",
@@ -368,9 +364,6 @@ static int ehrpwm_pwm_enable(struct pwm_chip *chip, struct pwm_device *pwm)return ret; } -/* Enable time counter for free_run */ -ehrpwm_modify (pc->mmio_base,TBCTL ,TBCTL_RUN_MASK ,TBCTL_FREE_RUN ); -return 0 ; }
@@ -400,9 +393,6 @@ static void ehrpwm_pwm_disable(struct pwm_chip *chip, struct pwm_device *pwm)/* Disabling TBCLK on PWM disable */ clk_disable (pc->tbclk); -/* Stop Time base counter */ -ehrpwm_modify (pc->mmio_base,TBCTL ,TBCTL_RUN_MASK ,TBCTL_STOP_NEXT ); -/* Disable clock on PWM disable */ pm_runtime_put_sync (chip->dev); }