dm: serial: Tidy up the pl01x driver
authorSimon Glass <sjg@chromium.org>
Mon, 22 Sep 2014 23:30:57 +0000 (17:30 -0600)
committerSimon Glass <sjg@chromium.org>
Wed, 22 Oct 2014 16:36:57 +0000 (10:36 -0600)
commitaed2fbef5e9a0ab5a7cd01e742039a962f0b24ef
treeb35834c158bf3999a0987b815c2e87fc77b8a9e6
parent41e98e011da9a3a4461e8cb1479ce343898264fe
dm: serial: Tidy up the pl01x driver

Adjust the driver so that leaf functions take a pointer to the serial port
register base. Put all the global configuration in the init function, and
use the same settings from then on.

This makes it much easier to move to driver model without duplicating the
code, since with driver model we use platform data rather than global
settings.

The driver is compiled with either the CONFIG_PL010_SERIAL or
CONFIG_PL011_SERIAL option and this determines the uart type. With driver
model this needs to come in from platform data, so create a new
CONFIG_PL01X_SERIAL config which brings in the driver, and adjust the
driver to support both peripheral variants.

Signed-off-by: Simon Glass <sjg@chromium.org>
Tested-by: Stephen Warren <swarren@wwwdotorg.org>
drivers/serial/Makefile
drivers/serial/serial_pl01x.c
drivers/serial/serial_pl01x.h [deleted file]
drivers/serial/serial_pl01x_internal.h [new file with mode: 0644]
include/serial_pl01x.h [new file with mode: 0644]