mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-08-19 00:18:51 +09:00
![Simon Glass](/assets/img/avatar_default.png)
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>
28 lines
453 B
C
28 lines
453 B
C
/*
|
|
* Copyright (c) 2014 Google, Inc
|
|
* SPDX-License-Identifier: GPL-2.0+
|
|
*/
|
|
|
|
#ifndef __serial_pl01x_h
|
|
#define __serial_pl01x_h
|
|
|
|
enum pl01x_type {
|
|
TYPE_PL010,
|
|
TYPE_PL011,
|
|
};
|
|
|
|
/*
|
|
*Information about a serial port
|
|
*
|
|
* @base: Register base address
|
|
* @type: Port type
|
|
* @clock: Input clock rate, used for calculating the baud rate divisor
|
|
*/
|
|
struct pl01x_serial_platdata {
|
|
unsigned long base;
|
|
enum pl01x_type type;
|
|
unsigned int clock;
|
|
};
|
|
|
|
#endif
|