* [PATCH v1 0/2] tty: serial: samsung: Add Exynos8895 compatible
@ 2024-10-20 18:01 Ivaylo Ivanov
2024-10-20 18:02 ` [PATCH v1 1/2] dt-bindings: serial: samsung: Add samsung,exynos8895-uart compatible Ivaylo Ivanov
2024-10-20 18:02 ` [PATCH v1 2/2] tty: serial: samsung: Add Exynos8895 compatible Ivaylo Ivanov
0 siblings, 2 replies; 6+ messages in thread
From: Ivaylo Ivanov @ 2024-10-20 18:01 UTC (permalink / raw)
To: Krzysztof Kozlowski, Greg Kroah-Hartman, Jiri Slaby, Alim Akhtar,
Rob Herring, Conor Dooley
Cc: linux-samsung-soc, linux-serial, devicetree, linux-arm-kernel,
linux-kernel
Hey folks,
This patchset adds serial driver support for Exynos8895 SoC. The main
difference from other exynos platforms is that fifosize is only
specified via the samsung,uart-fifosize DT property.
Newer Exynos platforms also specify fifosize via DT, so in such case
this compatible could be used with oneOf.
Ivaylo Ivanov (2):
dt-bindings: serial: samsung: Add samsung,exynos8895-uart compatible
tty: serial: samsung: Add Exynos8895 compatible
.../bindings/serial/samsung_uart.yaml | 17 +++++++++++++++++
drivers/tty/serial/samsung_tty.c | 13 +++++++++++++
2 files changed, 30 insertions(+)
--
2.43.0
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH v1 1/2] dt-bindings: serial: samsung: Add samsung,exynos8895-uart compatible
2024-10-20 18:01 [PATCH v1 0/2] tty: serial: samsung: Add Exynos8895 compatible Ivaylo Ivanov
@ 2024-10-20 18:02 ` Ivaylo Ivanov
2024-10-21 9:29 ` Krzysztof Kozlowski
2024-10-20 18:02 ` [PATCH v1 2/2] tty: serial: samsung: Add Exynos8895 compatible Ivaylo Ivanov
1 sibling, 1 reply; 6+ messages in thread
From: Ivaylo Ivanov @ 2024-10-20 18:02 UTC (permalink / raw)
To: Krzysztof Kozlowski, Greg Kroah-Hartman, Jiri Slaby, Alim Akhtar,
Rob Herring, Conor Dooley
Cc: linux-samsung-soc, linux-serial, devicetree, linux-arm-kernel,
linux-kernel
Add dedicated samsung,exynos8895-uart compatible to the dt-schema for
representing uart of the Exynos8895 SoC.
Like GS101, it has a required DT property samsung,uart-fifosize, but
it does not exhibit the 32 bit register access limit.
Signed-off-by: Ivaylo Ivanov <ivo.ivanov.ivanov1@gmail.com>
---
.../bindings/serial/samsung_uart.yaml | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
diff --git a/Documentation/devicetree/bindings/serial/samsung_uart.yaml b/Documentation/devicetree/bindings/serial/samsung_uart.yaml
index 788c80e47..2491b6048 100644
--- a/Documentation/devicetree/bindings/serial/samsung_uart.yaml
+++ b/Documentation/devicetree/bindings/serial/samsung_uart.yaml
@@ -27,6 +27,7 @@ properties:
- samsung,exynos4210-uart
- samsung,exynos5433-uart
- samsung,exynos850-uart
+ - samsung,exynos8895-uart
- items:
- enum:
- samsung,exynos7-uart
@@ -172,6 +173,22 @@ allOf:
clock-names:
maxItems: 2
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - samsung,exynos8895-uart
+ then:
+ required:
+ - samsung,uart-fifosize
+ properties:
+ clocks:
+ maxItems: 2
+
+ clock-names:
+ maxItems: 2
+
unevaluatedProperties: false
examples:
--
2.43.0
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH v1 2/2] tty: serial: samsung: Add Exynos8895 compatible
2024-10-20 18:01 [PATCH v1 0/2] tty: serial: samsung: Add Exynos8895 compatible Ivaylo Ivanov
2024-10-20 18:02 ` [PATCH v1 1/2] dt-bindings: serial: samsung: Add samsung,exynos8895-uart compatible Ivaylo Ivanov
@ 2024-10-20 18:02 ` Ivaylo Ivanov
2024-10-21 9:31 ` Krzysztof Kozlowski
1 sibling, 1 reply; 6+ messages in thread
From: Ivaylo Ivanov @ 2024-10-20 18:02 UTC (permalink / raw)
To: Krzysztof Kozlowski, Greg Kroah-Hartman, Jiri Slaby, Alim Akhtar,
Rob Herring, Conor Dooley
Cc: linux-samsung-soc, linux-serial, devicetree, linux-arm-kernel,
linux-kernel
Add serial driver data for Exynos8895 SoC. The main difference from
other platforms is that fifosize is only specified via the
samsung,uart-fifosize DT property.
Signed-off-by: Ivaylo Ivanov <ivo.ivanov.ivanov1@gmail.com>
---
drivers/tty/serial/samsung_tty.c | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/drivers/tty/serial/samsung_tty.c b/drivers/tty/serial/samsung_tty.c
index 0d184ee2f..ce3c3ec34 100644
--- a/drivers/tty/serial/samsung_tty.c
+++ b/drivers/tty/serial/samsung_tty.c
@@ -2498,6 +2498,12 @@ static const struct s3c24xx_serial_drv_data exynos850_serial_drv_data = {
.fifosize = { 256, 64, 64, 64 },
};
+static const struct s3c24xx_serial_drv_data exynos8895_serial_drv_data = {
+ EXYNOS_COMMON_SERIAL_DRV_DATA,
+ /* samsung,uart-fifosize must be specified in the device tree. */
+ .fifosize = { 0 },
+};
+
static const struct s3c24xx_serial_drv_data gs101_serial_drv_data = {
.info = {
.name = "Google GS101 UART",
@@ -2528,12 +2534,14 @@ static const struct s3c24xx_serial_drv_data gs101_serial_drv_data = {
#define EXYNOS4210_SERIAL_DRV_DATA (&exynos4210_serial_drv_data)
#define EXYNOS5433_SERIAL_DRV_DATA (&exynos5433_serial_drv_data)
#define EXYNOS850_SERIAL_DRV_DATA (&exynos850_serial_drv_data)
+#define EXYNOS8895_SERIAL_DRV_DATA (&exynos8895_serial_drv_data)
#define GS101_SERIAL_DRV_DATA (&gs101_serial_drv_data)
#else
#define EXYNOS4210_SERIAL_DRV_DATA NULL
#define EXYNOS5433_SERIAL_DRV_DATA NULL
#define EXYNOS850_SERIAL_DRV_DATA NULL
+#define EXYNOS8895_SERIAL_DRV_DATA NULL
#define GS101_SERIAL_DRV_DATA NULL
#endif
@@ -2623,6 +2631,9 @@ static const struct platform_device_id s3c24xx_serial_driver_ids[] = {
}, {
.name = "gs101-uart",
.driver_data = (kernel_ulong_t)GS101_SERIAL_DRV_DATA,
+ }, {
+ .name = "exynos8895-uart",
+ .driver_data = (kernel_ulong_t)EXYNOS8895_SERIAL_DRV_DATA,
},
{ },
};
@@ -2646,6 +2657,8 @@ static const struct of_device_id s3c24xx_uart_dt_match[] = {
.data = ARTPEC8_SERIAL_DRV_DATA },
{ .compatible = "google,gs101-uart",
.data = GS101_SERIAL_DRV_DATA },
+ { .compatible = "samsung,exynos8895-uart",
+ .data = EXYNOS8895_SERIAL_DRV_DATA },
{},
};
MODULE_DEVICE_TABLE(of, s3c24xx_uart_dt_match);
--
2.43.0
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v1 1/2] dt-bindings: serial: samsung: Add samsung,exynos8895-uart compatible
2024-10-20 18:02 ` [PATCH v1 1/2] dt-bindings: serial: samsung: Add samsung,exynos8895-uart compatible Ivaylo Ivanov
@ 2024-10-21 9:29 ` Krzysztof Kozlowski
2024-10-21 12:51 ` Ivaylo Ivanov
0 siblings, 1 reply; 6+ messages in thread
From: Krzysztof Kozlowski @ 2024-10-21 9:29 UTC (permalink / raw)
To: Ivaylo Ivanov, Greg Kroah-Hartman, Jiri Slaby, Alim Akhtar,
Rob Herring, Conor Dooley
Cc: linux-samsung-soc, linux-serial, devicetree, linux-arm-kernel,
linux-kernel
On 20/10/2024 20:02, Ivaylo Ivanov wrote:
> Add dedicated samsung,exynos8895-uart compatible to the dt-schema for
> representing uart of the Exynos8895 SoC.
>
> Like GS101, it has a required DT property samsung,uart-fifosize, but
> it does not exhibit the 32 bit register access limit.
>
> Signed-off-by: Ivaylo Ivanov <ivo.ivanov.ivanov1@gmail.com>
> ---
> .../bindings/serial/samsung_uart.yaml | 17 +++++++++++++++++
> 1 file changed, 17 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/serial/samsung_uart.yaml b/Documentation/devicetree/bindings/serial/samsung_uart.yaml
> index 788c80e47..2491b6048 100644
> --- a/Documentation/devicetree/bindings/serial/samsung_uart.yaml
> +++ b/Documentation/devicetree/bindings/serial/samsung_uart.yaml
> @@ -27,6 +27,7 @@ properties:
> - samsung,exynos4210-uart
> - samsung,exynos5433-uart
> - samsung,exynos850-uart
> + - samsung,exynos8895-uart
> - items:
> - enum:
> - samsung,exynos7-uart
> @@ -172,6 +173,22 @@ allOf:
> clock-names:
> maxItems: 2
>
> + - if:
> + properties:
> + compatible:
> + contains:
> + enum:
> + - samsung,exynos8895-uart
This looks exactly like gs101, so please grow the enum there.
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v1 2/2] tty: serial: samsung: Add Exynos8895 compatible
2024-10-20 18:02 ` [PATCH v1 2/2] tty: serial: samsung: Add Exynos8895 compatible Ivaylo Ivanov
@ 2024-10-21 9:31 ` Krzysztof Kozlowski
0 siblings, 0 replies; 6+ messages in thread
From: Krzysztof Kozlowski @ 2024-10-21 9:31 UTC (permalink / raw)
To: Ivaylo Ivanov, Greg Kroah-Hartman, Jiri Slaby, Alim Akhtar,
Rob Herring, Conor Dooley
Cc: linux-samsung-soc, linux-serial, devicetree, linux-arm-kernel,
linux-kernel
On 20/10/2024 20:02, Ivaylo Ivanov wrote:
> Add serial driver data for Exynos8895 SoC. The main difference from
> other platforms is that fifosize is only specified via the
> samsung,uart-fifosize DT property.
>
> Signed-off-by: Ivaylo Ivanov <ivo.ivanov.ivanov1@gmail.com>
> ---
> drivers/tty/serial/samsung_tty.c | 13 +++++++++++++
> 1 file changed, 13 insertions(+)
>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v1 1/2] dt-bindings: serial: samsung: Add samsung,exynos8895-uart compatible
2024-10-21 9:29 ` Krzysztof Kozlowski
@ 2024-10-21 12:51 ` Ivaylo Ivanov
0 siblings, 0 replies; 6+ messages in thread
From: Ivaylo Ivanov @ 2024-10-21 12:51 UTC (permalink / raw)
To: Krzysztof Kozlowski, Greg Kroah-Hartman, Jiri Slaby, Alim Akhtar,
Rob Herring, Conor Dooley
Cc: linux-samsung-soc, linux-serial, devicetree, linux-arm-kernel,
linux-kernel
On 10/21/24 12:29, Krzysztof Kozlowski wrote:
> On 20/10/2024 20:02, Ivaylo Ivanov wrote:
>> Add dedicated samsung,exynos8895-uart compatible to the dt-schema for
>> representing uart of the Exynos8895 SoC.
>>
>> Like GS101, it has a required DT property samsung,uart-fifosize, but
>> it does not exhibit the 32 bit register access limit.
>>
>> Signed-off-by: Ivaylo Ivanov <ivo.ivanov.ivanov1@gmail.com>
>> ---
>> .../bindings/serial/samsung_uart.yaml | 17 +++++++++++++++++
>> 1 file changed, 17 insertions(+)
>>
>> diff --git a/Documentation/devicetree/bindings/serial/samsung_uart.yaml b/Documentation/devicetree/bindings/serial/samsung_uart.yaml
>> index 788c80e47..2491b6048 100644
>> --- a/Documentation/devicetree/bindings/serial/samsung_uart.yaml
>> +++ b/Documentation/devicetree/bindings/serial/samsung_uart.yaml
>> @@ -27,6 +27,7 @@ properties:
>> - samsung,exynos4210-uart
>> - samsung,exynos5433-uart
>> - samsung,exynos850-uart
>> + - samsung,exynos8895-uart
>> - items:
>> - enum:
>> - samsung,exynos7-uart
>> @@ -172,6 +173,22 @@ allOf:
>> clock-names:
>> maxItems: 2
>>
>> + - if:
>> + properties:
>> + compatible:
>> + contains:
>> + enum:
>> + - samsung,exynos8895-uart
> This looks exactly like gs101, so please grow the enum there.
It's missing the reg-io-width property. My initial idea was to add a
completely new entry, so new exynos platforms that don't exhibit
the same issue could grow the enum there.
Although now that I think about it, I could grow the gs101 enum and set
the reg-io-width property for gs101 after that list.
Best regards, Ivo.
> Best regards,
> Krzysztof
>
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2024-10-21 12:51 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-10-20 18:01 [PATCH v1 0/2] tty: serial: samsung: Add Exynos8895 compatible Ivaylo Ivanov
2024-10-20 18:02 ` [PATCH v1 1/2] dt-bindings: serial: samsung: Add samsung,exynos8895-uart compatible Ivaylo Ivanov
2024-10-21 9:29 ` Krzysztof Kozlowski
2024-10-21 12:51 ` Ivaylo Ivanov
2024-10-20 18:02 ` [PATCH v1 2/2] tty: serial: samsung: Add Exynos8895 compatible Ivaylo Ivanov
2024-10-21 9:31 ` Krzysztof Kozlowski
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®