• Linus Walleij's avatar
    serial/amba-pl011: move custom pin control to driver · 78d80c5a
    Linus Walleij authored
    We had a boot regression in Ux500 in the merge window because
    two orthogonal pin control schemes for the PL011 were merged
    at the same time:
    
    - One using the .init() and .exit() hooks into the platform
      for Ux500 putting the pins into default vs sleep state
      respectively as the port was started/stopped.
      commit a0980660
      "ARM: ux500: switch to using pinctrl for uart0"
    
    - One hogging the default setting at PL011 probe()
      commit 258e0551
      "serial: amba-pl011: adopt pinctrl support"
    
    To get a solution that works for both let's scrap the stuff
    in the platform callbacks, instead have the driver itself
    select default and sleep states when the port is
    started/stopped. Hopefully this works for all clients.
    Platform callbacks are bad for device tree migration anyway,
    so this rids us of another problem in Ux500.
    
    Cc: Shawn Guo <shawn.guo@linaro.org>
    Cc: Russell King <rmk+kernel@arm.linux.org.uk>
    Reported-by: default avatarLee Jones <lee.jones@linaro.org>
    Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
    Tested-by: default avatarShawn Guo <shawn.guo@linaro.org>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    78d80c5a
board-mop500.c 24.1 KB