* [U-Boot] [PATCH 2/2] serial_sh: Add standrad SCI (w/o FIFO) support
2015-05-21 6:31 [U-Boot] [PATCH 1/2] serial_sh: Add OF support Yoshinori Sato
@ 2015-05-21 6:31 ` Yoshinori Sato
2015-06-01 0:08 ` [U-Boot] [PATCH 1/2] serial_sh: Add OF support Nobuhiro Iwamatsu
2015-06-01 4:32 ` [U-Boot] [PATCH v2 " Yoshinori Sato
2 siblings, 0 replies; 6+ messages in thread
From: Yoshinori Sato @ 2015-05-21 6:31 UTC (permalink / raw)
To: u-boot
Add support for standard type SCI (without FIFO) port.
Signed-off-by: Yoshinori Sato <ysato@users.sourceforge.jp>
---
doc/device-tree-bindings/serial/sh.txt | 2 +-
drivers/serial/serial_sh.c | 8 ++++++++
2 files changed, 9 insertions(+), 1 deletion(-)
diff --git a/doc/device-tree-bindings/serial/sh.txt b/doc/device-tree-bindings/serial/sh.txt
index b23b135..99634a5 100644
--- a/doc/device-tree-bindings/serial/sh.txt
+++ b/doc/device-tree-bindings/serial/sh.txt
@@ -1,6 +1,6 @@
* Renesas SCI serial interface
Required properties:
-- compatible: must be "renesas,scif" or "renesas,scifa"
+- compatible: must be "renesas,scif", "renesas,scifa" or "renesas,sci"
- reg: exactly one register range with length
- clock: input clock frequency for the SCI unit
diff --git a/drivers/serial/serial_sh.c b/drivers/serial/serial_sh.c
index 32b2bf0..d2a23a6 100644
--- a/drivers/serial/serial_sh.c
+++ b/drivers/serial/serial_sh.c
@@ -47,6 +47,11 @@ static int scif_rxfill(struct uart_port *port)
else
return sci_in(port, SCRFDR);
}
+#elif defined(CONFIG_SCI)
+static int scif_rxfill(struct uart_port *port)
+{
+ return (sci_in(port, SCxSR) & SCxSR_RDxF(port)) ? 1 : 0;
+}
#else
static int scif_rxfill(struct uart_port *port)
{
@@ -205,6 +210,7 @@ static const struct dm_serial_ops sh_serial_ops = {
#ifdef CONFIG_OF_CONTROL
static const struct udevice_id sh_serial_id[] ={
+ {.compatible = "renesas,sci", .data = PORT_SCI},
{.compatible = "renesas,scif", .data = PORT_SCIF},
{.compatible = "renesas,scifa", .data = PORT_SCIFA},
{}
@@ -262,6 +268,8 @@ U_BOOT_DRIVER(serial_sh) = {
#if defined(CONFIG_SCIF_A)
#define SCIF_BASE_PORT PORT_SCIFA
+#elif defined(CONFIG_SCI)
+ #define SCIF_BASE_PORT PORT_SCI
#else
#define SCIF_BASE_PORT PORT_SCIF
#endif
--
2.1.4
^ permalink raw reply related [flat|nested] 6+ messages in thread* [U-Boot] [PATCH 1/2] serial_sh: Add OF support
2015-05-21 6:31 [U-Boot] [PATCH 1/2] serial_sh: Add OF support Yoshinori Sato
2015-05-21 6:31 ` [U-Boot] [PATCH 2/2] serial_sh: Add standrad SCI (w/o FIFO) support Yoshinori Sato
@ 2015-06-01 0:08 ` Nobuhiro Iwamatsu
2015-06-01 4:31 ` Yoshinori Sato
2015-06-01 4:32 ` [U-Boot] [PATCH v2 " Yoshinori Sato
2 siblings, 1 reply; 6+ messages in thread
From: Nobuhiro Iwamatsu @ 2015-06-01 0:08 UTC (permalink / raw)
To: u-boot
Hi!
015-05-21 15:31 GMT+09:00 Yoshinori Sato <ysato@users.sourceforge.jp>:
> Add device tree support.
>
> Signed-off-by: Yoshinori Sato <ysato@users.sourceforge.jp>
> ---
> doc/device-tree-bindings/serial/sh.txt | 6 ++++++
> drivers/serial/serial_sh.c | 28 ++++++++++++++++++++++++++++
> 2 files changed, 34 insertions(+)
> create mode 100644 doc/device-tree-bindings/serial/sh.txt
2015-05-21 15:31 GMT+09:00 Yoshinori Sato <ysato@users.sourceforge.jp>:
> Add support for standard type SCI (without FIFO) port.
>
> Signed-off-by: Yoshinori Sato <ysato@users.sourceforge.jp>
> ---
> doc/device-tree-bindings/serial/sh.txt | 2 +-
> drivers/serial/serial_sh.c | 8 ++++++++
> 2 files changed, 9 insertions(+), 1 deletion(-)
>
Thanks for your patch.
Sorry, your patch can not apply u-boot/master HEAD.
Could you rebase and resend this patch?
Best regards,
Nobuhiro
2015-05-21 15:31 GMT+09:00 Yoshinori Sato <ysato@users.sourceforge.jp>:
> Add device tree support.
>
> Signed-off-by: Yoshinori Sato <ysato@users.sourceforge.jp>
> ---
> doc/device-tree-bindings/serial/sh.txt | 6 ++++++
> drivers/serial/serial_sh.c | 28 ++++++++++++++++++++++++++++
> 2 files changed, 34 insertions(+)
> create mode 100644 doc/device-tree-bindings/serial/sh.txt
>
> diff --git a/doc/device-tree-bindings/serial/sh.txt b/doc/device-tree-bindings/serial/sh.txt
> new file mode 100644
> index 0000000..b23b135
> --- /dev/null
> +++ b/doc/device-tree-bindings/serial/sh.txt
> @@ -0,0 +1,6 @@
> +* Renesas SCI serial interface
> +
> +Required properties:
> +- compatible: must be "renesas,scif" or "renesas,scifa"
> +- reg: exactly one register range with length
> +- clock: input clock frequency for the SCI unit
> diff --git a/drivers/serial/serial_sh.c b/drivers/serial/serial_sh.c
> index 8693c1e..32b2bf0 100644
> --- a/drivers/serial/serial_sh.c
> +++ b/drivers/serial/serial_sh.c
> @@ -17,6 +17,8 @@
> #include <dm/platform_data/serial_sh.h>
> #include "serial_sh.h"
>
> +DECLARE_GLOBAL_DATA_PTR;
> +
> #if defined(CONFIG_CPU_SH7760) || \
> defined(CONFIG_CPU_SH7780) || \
> defined(CONFIG_CPU_SH7785) || \
> @@ -201,10 +203,35 @@ static const struct dm_serial_ops sh_serial_ops = {
> .setbrg = sh_serial_setbrg,
> };
>
> +#ifdef CONFIG_OF_CONTROL
> +static const struct udevice_id sh_serial_id[] = {
> + {.compatible = "renesas,scif", .data = PORT_SCIF},
> + {.compatible = "renesas,scifa", .data = PORT_SCIFA},
> + {}
> +};
> +
> +static int sh_serial_ofdata_to_platdata(struct udevice *dev)
> +{
> + struct sh_serial_platdata *plat = dev_get_platdata(dev);
> + fdt_addr_t addr;
> +
> + addr = fdtdec_get_addr(gd->fdt_blob, dev->of_offset, "reg");
> + if (addr == FDT_ADDR_T_NONE)
> + return -EINVAL;
> +
> + plat->base = addr;
> + plat->clk = fdtdec_get_int(gd->fdt_blob, dev->of_offset, "clock", 1);
> + plat->type = dev_get_driver_data(dev);
> + return 0;
> +}
> +#endif
> +
> U_BOOT_DRIVER(serial_sh) = {
> .name = "serial_sh",
> .id = UCLASS_SERIAL,
> + .of_match = of_match_ptr(sh_serial_id),
> + .ofdata_to_platdata = of_match_ptr(sh_serial_ofdata_to_platdata),
> + .platdata_auto_alloc_size = sizeof(struct sh_serial_platdata),
> .probe = sh_serial_probe,
> .ops = &sh_serial_ops,
> .flags = DM_FLAG_PRE_RELOC,
> --
> 2.1.4
>
--
Nobuhiro Iwamatsu
iwamatsu at {nigauri.org / debian.org}
GPG ID: 40AD1FA6
^ permalink raw reply [flat|nested] 6+ messages in thread* [U-Boot] [PATCH 1/2] serial_sh: Add OF support
2015-06-01 0:08 ` [U-Boot] [PATCH 1/2] serial_sh: Add OF support Nobuhiro Iwamatsu
@ 2015-06-01 4:31 ` Yoshinori Sato
0 siblings, 0 replies; 6+ messages in thread
From: Yoshinori Sato @ 2015-06-01 4:31 UTC (permalink / raw)
To: u-boot
On Mon, 01 Jun 2015 09:08:55 +0900,
Nobuhiro Iwamatsu wrote:
>
> Hi!
>
> 015-05-21 15:31 GMT+09:00 Yoshinori Sato <ysato@users.sourceforge.jp>:
> > Add device tree support.
> >
> > Signed-off-by: Yoshinori Sato <ysato@users.sourceforge.jp>
> > ---
> > doc/device-tree-bindings/serial/sh.txt | 6 ++++++
> > drivers/serial/serial_sh.c | 28 ++++++++++++++++++++++++++++
> > 2 files changed, 34 insertions(+)
> > create mode 100644 doc/device-tree-bindings/serial/sh.txt
>
> 2015-05-21 15:31 GMT+09:00 Yoshinori Sato <ysato@users.sourceforge.jp>:
> > Add support for standard type SCI (without FIFO) port.
> >
> > Signed-off-by: Yoshinori Sato <ysato@users.sourceforge.jp>
> > ---
> > doc/device-tree-bindings/serial/sh.txt | 2 +-
> > drivers/serial/serial_sh.c | 8 ++++++++
> > 2 files changed, 9 insertions(+), 1 deletion(-)
> >
>
> Thanks for your patch.
> Sorry, your patch can not apply u-boot/master HEAD.
> Could you rebase and resend this patch?
>
Oh. I'm Sorry.
I will rebase and resend.
Thanks.
> Best regards,
> Nobuhiro
>
> 2015-05-21 15:31 GMT+09:00 Yoshinori Sato <ysato@users.sourceforge.jp>:
> > Add device tree support.
> >
> > Signed-off-by: Yoshinori Sato <ysato@users.sourceforge.jp>
> > ---
> > doc/device-tree-bindings/serial/sh.txt | 6 ++++++
> > drivers/serial/serial_sh.c | 28 ++++++++++++++++++++++++++++
> > 2 files changed, 34 insertions(+)
> > create mode 100644 doc/device-tree-bindings/serial/sh.txt
> >
> > diff --git a/doc/device-tree-bindings/serial/sh.txt b/doc/device-tree-bindings/serial/sh.txt
> > new file mode 100644
> > index 0000000..b23b135
> > --- /dev/null
> > +++ b/doc/device-tree-bindings/serial/sh.txt
> > @@ -0,0 +1,6 @@
> > +* Renesas SCI serial interface
> > +
> > +Required properties:
> > +- compatible: must be "renesas,scif" or "renesas,scifa"
> > +- reg: exactly one register range with length
> > +- clock: input clock frequency for the SCI unit
> > diff --git a/drivers/serial/serial_sh.c b/drivers/serial/serial_sh.c
> > index 8693c1e..32b2bf0 100644
> > --- a/drivers/serial/serial_sh.c
> > +++ b/drivers/serial/serial_sh.c
> > @@ -17,6 +17,8 @@
> > #include <dm/platform_data/serial_sh.h>
> > #include "serial_sh.h"
> >
> > +DECLARE_GLOBAL_DATA_PTR;
> > +
> > #if defined(CONFIG_CPU_SH7760) || \
> > defined(CONFIG_CPU_SH7780) || \
> > defined(CONFIG_CPU_SH7785) || \
> > @@ -201,10 +203,35 @@ static const struct dm_serial_ops sh_serial_ops = {
> > .setbrg = sh_serial_setbrg,
> > };
> >
> > +#ifdef CONFIG_OF_CONTROL
> > +static const struct udevice_id sh_serial_id[] = {
> > + {.compatible = "renesas,scif", .data = PORT_SCIF},
> > + {.compatible = "renesas,scifa", .data = PORT_SCIFA},
> > + {}
> > +};
> > +
> > +static int sh_serial_ofdata_to_platdata(struct udevice *dev)
> > +{
> > + struct sh_serial_platdata *plat = dev_get_platdata(dev);
> > + fdt_addr_t addr;
> > +
> > + addr = fdtdec_get_addr(gd->fdt_blob, dev->of_offset, "reg");
> > + if (addr == FDT_ADDR_T_NONE)
> > + return -EINVAL;
> > +
> > + plat->base = addr;
> > + plat->clk = fdtdec_get_int(gd->fdt_blob, dev->of_offset, "clock", 1);
> > + plat->type = dev_get_driver_data(dev);
> > + return 0;
> > +}
> > +#endif
> > +
> > U_BOOT_DRIVER(serial_sh) = {
> > .name = "serial_sh",
> > .id = UCLASS_SERIAL,
> > + .of_match = of_match_ptr(sh_serial_id),
> > + .ofdata_to_platdata = of_match_ptr(sh_serial_ofdata_to_platdata),
> > + .platdata_auto_alloc_size = sizeof(struct sh_serial_platdata),
> > .probe = sh_serial_probe,
> > .ops = &sh_serial_ops,
> > .flags = DM_FLAG_PRE_RELOC,
> > --
> > 2.1.4
> >
>
>
>
> --
> Nobuhiro Iwamatsu
> iwamatsu at {nigauri.org / debian.org}
> GPG ID: 40AD1FA6
--
Yoshinori Sato
<ysato@users.sourceforge.jp>
^ permalink raw reply [flat|nested] 6+ messages in thread
* [U-Boot] [PATCH v2 1/2] serial_sh: Add OF support
2015-05-21 6:31 [U-Boot] [PATCH 1/2] serial_sh: Add OF support Yoshinori Sato
2015-05-21 6:31 ` [U-Boot] [PATCH 2/2] serial_sh: Add standrad SCI (w/o FIFO) support Yoshinori Sato
2015-06-01 0:08 ` [U-Boot] [PATCH 1/2] serial_sh: Add OF support Nobuhiro Iwamatsu
@ 2015-06-01 4:32 ` Yoshinori Sato
2015-06-01 4:32 ` [U-Boot] [PATCH v2 2/2] serial_sh: Add standrad SCI (w/o FIFO) support Yoshinori Sato
2 siblings, 1 reply; 6+ messages in thread
From: Yoshinori Sato @ 2015-06-01 4:32 UTC (permalink / raw)
To: u-boot
Add device tree support.
Changes v2:
rebased v2015.07-rc1
Signed-off-by: Yoshinori Sato <ysato@users.sourceforge.jp>
---
doc/device-tree-bindings/serial/sh.txt | 6 ++++++
drivers/serial/serial_sh.c | 28 ++++++++++++++++++++++++++++
2 files changed, 34 insertions(+)
create mode 100644 doc/device-tree-bindings/serial/sh.txt
diff --git a/doc/device-tree-bindings/serial/sh.txt b/doc/device-tree-bindings/serial/sh.txt
new file mode 100644
index 0000000..b23b135
--- /dev/null
+++ b/doc/device-tree-bindings/serial/sh.txt
@@ -0,0 +1,6 @@
+* Renesas SCI serial interface
+
+Required properties:
+- compatible: must be "renesas,scif" or "renesas,scifa"
+- reg: exactly one register range with length
+- clock: input clock frequency for the SCI unit
diff --git a/drivers/serial/serial_sh.c b/drivers/serial/serial_sh.c
index 8693c1e..32b2bf0 100644
--- a/drivers/serial/serial_sh.c
+++ b/drivers/serial/serial_sh.c
@@ -17,6 +17,8 @@
#include <dm/platform_data/serial_sh.h>
#include "serial_sh.h"
+DECLARE_GLOBAL_DATA_PTR;
+
#if defined(CONFIG_CPU_SH7760) || \
defined(CONFIG_CPU_SH7780) || \
defined(CONFIG_CPU_SH7785) || \
@@ -201,9 +203,35 @@ static const struct dm_serial_ops sh_serial_ops = {
.setbrg = sh_serial_setbrg,
};
+#ifdef CONFIG_OF_CONTROL
+static const struct udevice_id sh_serial_id[] ={
+ {.compatible = "renesas,scif", .data = PORT_SCIF},
+ {.compatible = "renesas,scifa", .data = PORT_SCIFA},
+ {}
+};
+
+static int sh_serial_ofdata_to_platdata(struct udevice *dev)
+{
+ struct sh_serial_platdata *plat = dev_get_platdata(dev);
+ fdt_addr_t addr;
+
+ addr = fdtdec_get_addr(gd->fdt_blob, dev->of_offset, "reg");
+ if (addr == FDT_ADDR_T_NONE)
+ return -EINVAL;
+
+ plat->base = addr;
+ plat->clk = fdtdec_get_int(gd->fdt_blob, dev->of_offset, "clock", 1);
+ plat->type = dev_get_driver_data(dev);
+ return 0;
+}
+#endif
+
U_BOOT_DRIVER(serial_sh) = {
.name = "serial_sh",
.id = UCLASS_SERIAL,
+ .of_match = of_match_ptr(sh_serial_id),
+ .ofdata_to_platdata = of_match_ptr(sh_serial_ofdata_to_platdata),
+ .platdata_auto_alloc_size = sizeof(struct sh_serial_platdata),
.probe = sh_serial_probe,
.ops = &sh_serial_ops,
.flags = DM_FLAG_PRE_RELOC,
--
2.1.4
^ permalink raw reply related [flat|nested] 6+ messages in thread* [U-Boot] [PATCH v2 2/2] serial_sh: Add standrad SCI (w/o FIFO) support
2015-06-01 4:32 ` [U-Boot] [PATCH v2 " Yoshinori Sato
@ 2015-06-01 4:32 ` Yoshinori Sato
0 siblings, 0 replies; 6+ messages in thread
From: Yoshinori Sato @ 2015-06-01 4:32 UTC (permalink / raw)
To: u-boot
Add support for standard type SCI (without FIFO) port.
Changes v2:
rebased for v2015.07-rc1
Signed-off-by: Yoshinori Sato <ysato@users.sourceforge.jp>
---
doc/device-tree-bindings/serial/sh.txt | 2 +-
drivers/serial/serial_sh.c | 3 +++
2 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/doc/device-tree-bindings/serial/sh.txt b/doc/device-tree-bindings/serial/sh.txt
index b23b135..99634a5 100644
--- a/doc/device-tree-bindings/serial/sh.txt
+++ b/doc/device-tree-bindings/serial/sh.txt
@@ -1,6 +1,6 @@
* Renesas SCI serial interface
Required properties:
-- compatible: must be "renesas,scif" or "renesas,scifa"
+- compatible: must be "renesas,scif", "renesas,scifa" or "renesas,sci"
- reg: exactly one register range with length
- clock: input clock frequency for the SCI unit
diff --git a/drivers/serial/serial_sh.c b/drivers/serial/serial_sh.c
index 32b2bf0..ef7cf0f 100644
--- a/drivers/serial/serial_sh.c
+++ b/drivers/serial/serial_sh.c
@@ -205,6 +205,7 @@ static const struct dm_serial_ops sh_serial_ops = {
#ifdef CONFIG_OF_CONTROL
static const struct udevice_id sh_serial_id[] ={
+ {.compatible = "renesas,sci", .data = PORT_SCI},
{.compatible = "renesas,scif", .data = PORT_SCIF},
{.compatible = "renesas,scifa", .data = PORT_SCIFA},
{}
@@ -262,6 +263,8 @@ U_BOOT_DRIVER(serial_sh) = {
#if defined(CONFIG_SCIF_A)
#define SCIF_BASE_PORT PORT_SCIFA
+#elif defined(CONFIG_SCI)
+ #define SCIF_BASE_PORT PORT_SCI
#else
#define SCIF_BASE_PORT PORT_SCIF
#endif
--
2.1.4
^ permalink raw reply related [flat|nested] 6+ messages in thread