Re: [added to the 3.18 stable tree] can: c_can: Fix default pinmux glitch at init

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Jul 30, 2015 at 10:10:35PM -0400, Sasha Levin wrote:
> From: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
> 
> This patch has been added to the 3.18 stable tree. If you have any
> objections, please let us know.
> 
> ===============
> 
> [ Upstream commit 033365191136c97f88c81b7bd0011414db28bb4e ]
> 
> The previous change 3973c526ae9c (net: can: c_can: Disable pins when CAN
> interface is down) causes a slight glitch on the pinctrl settings when used.
> Since commit ab78029 (drivers/pinctrl: grab default handles from device core),
> the device core will automatically set the default pins. This causes the pins
> to be momentarily set to the default and then to the sleep state in
> register_c_can_dev(). By adding an optional "enable" state, boards can set the
> default pin state to be disabled and avoid the glitch when the switch from
> default to sleep first occurs. If the "enable" state is not available
> c_can_pinctrl_select_state() falls back to using the "default" pinctrl state.
> 
> [Roger Q] - Forward port to v4.2 and use pinctrl_get_select().
> 
> Signed-off-by: J.D. Schroeder <jay.schroeder@xxxxxxxxxx>
> Signed-off-by: Roger Quadros <rogerq@xxxxxx>
> Reviewed-by: Grygorii Strashko <grygorii.strashko@xxxxxx>
> Cc: linux-stable <stable@xxxxxxxxxxxxxxx>
> Signed-off-by: Marc Kleine-Budde <mkl@xxxxxxxxxxxxxx>
> Signed-off-by: Sasha Levin <sasha.levin@xxxxxxxxxx>
> ---
>  arch/s390/kernel/process.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/arch/s390/kernel/process.c b/arch/s390/kernel/process.c
> index ed84cc2..9b72e68 100644
> --- a/arch/s390/kernel/process.c
> +++ b/arch/s390/kernel/process.c
> @@ -171,7 +171,7 @@ asmlinkage void execve_tail(void)
>  {
>  	current->thread.fp_regs.fpc = 0;
>  	if (MACHINE_HAS_IEEE)
> -		asm volatile("sfpc %0,%0" : : "d" (0));
> +		asm volatile("sfpc %0" : : "d" (0));
>  }

Hi Sasha,

I think the commit message for this patch got screwed up.
The original upstream commit is:

commit e47994dd44bcb4a77b4152bd0eada585934703c0
Author: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
Date:   Mon Jul 6 15:02:37 2015 +0200

    s390/process: fix sfpc inline assembly
    
    The sfpc inline assembly within execve_tail() may incorrectly set bits
    28-31 of the sfpc instruction to a value which is not zero.
    These bits however are currently unused and therefore should be zero
    so we won't get surprised if these bits will be used in the future.
    
    Therefore remove the second operand from the inline assembly.
    
    Cc: <stable@xxxxxxxxxxxxxxx>
    Signed-off-by: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
    Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>

--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]