• Martin Sperl's avatar
    serial: bcm2835: add driver for bcm2835-aux-uart · bdc5f300
    Martin Sperl authored
    The bcm2835 SOC contains an auxiliary uart, which is very close
    to the ns16550 with some differences.
    
    The big difference is that the uart HW is not using an internal divider
    of 16 but 8, which results in an effictive baud-rate being twice
    the requested baud-rate.
    
    This driver handles this device correctly and handles the difference in
    the HW divider by scaling up the clock by a factor of 2.
    
    The approach to write a separate (wrapper) driver instead of using a
    multiplying clock and "ns16550" as compatibility in the device-tree
    has been recommended by Stephen Warren.
    Signed-off-by: default avatarMartin Sperl <kernel@martin.sperl.org>
    Acked-by: default avatarEric Anholt <eric@anholt.net>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    bdc5f300
8250_bcm2835aux.c 3.58 KB