Commit 9a4d22f7 authored by Sam Protsenko's avatar Sam Protsenko Committed by Greg Kroah-Hartman

tty: serial: samsung: Add Exynos850 SoC data

Add serial driver data for Exynos850 SoC. This driver data is basically
reusing EXYNOS_COMMON_SERIAL_DRV_DATA, which is common for all Exynos
chips, but also enables USI init, which was added in previous commit:
"tty: serial: samsung: Init USI to keep clocks running".
Reviewed-by: default avatarKrzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Signed-off-by: default avatarSam Protsenko <semen.protsenko@linaro.org>
Link: https://lore.kernel.org/r/20210811114827.27322-7-semen.protsenko@linaro.orgSigned-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent f63299b3
...@@ -2817,11 +2817,19 @@ static struct s3c24xx_serial_drv_data exynos5433_serial_drv_data = { ...@@ -2817,11 +2817,19 @@ static struct s3c24xx_serial_drv_data exynos5433_serial_drv_data = {
.fifosize = { 64, 256, 16, 256 }, .fifosize = { 64, 256, 16, 256 },
}; };
static struct s3c24xx_serial_drv_data exynos850_serial_drv_data = {
EXYNOS_COMMON_SERIAL_DRV_DATA_USI(1),
.fifosize = { 256, 64, 64, 64 },
};
#define EXYNOS4210_SERIAL_DRV_DATA ((kernel_ulong_t)&exynos4210_serial_drv_data) #define EXYNOS4210_SERIAL_DRV_DATA ((kernel_ulong_t)&exynos4210_serial_drv_data)
#define EXYNOS5433_SERIAL_DRV_DATA ((kernel_ulong_t)&exynos5433_serial_drv_data) #define EXYNOS5433_SERIAL_DRV_DATA ((kernel_ulong_t)&exynos5433_serial_drv_data)
#define EXYNOS850_SERIAL_DRV_DATA ((kernel_ulong_t)&exynos850_serial_drv_data)
#else #else
#define EXYNOS4210_SERIAL_DRV_DATA ((kernel_ulong_t)NULL) #define EXYNOS4210_SERIAL_DRV_DATA ((kernel_ulong_t)NULL)
#define EXYNOS5433_SERIAL_DRV_DATA ((kernel_ulong_t)NULL) #define EXYNOS5433_SERIAL_DRV_DATA ((kernel_ulong_t)NULL)
#define EXYNOS850_SERIAL_DRV_DATA ((kernel_ulong_t)NULL)
#endif #endif
#ifdef CONFIG_ARCH_APPLE #ifdef CONFIG_ARCH_APPLE
...@@ -2877,6 +2885,9 @@ static const struct platform_device_id s3c24xx_serial_driver_ids[] = { ...@@ -2877,6 +2885,9 @@ static const struct platform_device_id s3c24xx_serial_driver_ids[] = {
}, { }, {
.name = "s5l-uart", .name = "s5l-uart",
.driver_data = S5L_SERIAL_DRV_DATA, .driver_data = S5L_SERIAL_DRV_DATA,
}, {
.name = "exynos850-uart",
.driver_data = EXYNOS850_SERIAL_DRV_DATA,
}, },
{ }, { },
}; };
...@@ -2900,6 +2911,8 @@ static const struct of_device_id s3c24xx_uart_dt_match[] = { ...@@ -2900,6 +2911,8 @@ static const struct of_device_id s3c24xx_uart_dt_match[] = {
.data = (void *)EXYNOS5433_SERIAL_DRV_DATA }, .data = (void *)EXYNOS5433_SERIAL_DRV_DATA },
{ .compatible = "apple,s5l-uart", { .compatible = "apple,s5l-uart",
.data = (void *)S5L_SERIAL_DRV_DATA }, .data = (void *)S5L_SERIAL_DRV_DATA },
{ .compatible = "samsung,exynos850-uart",
.data = (void *)EXYNOS850_SERIAL_DRV_DATA },
{}, {},
}; };
MODULE_DEVICE_TABLE(of, s3c24xx_uart_dt_match); MODULE_DEVICE_TABLE(of, s3c24xx_uart_dt_match);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment