|
@@ -31,7 +31,9 @@
|
|
|
# define SCSCR_INIT(port) (port->mapbase == SCIF2) ? 0xF3 : 0xF0
|
|
|
#elif defined(CONFIG_CPU_SUBTYPE_SH7720) || \
|
|
|
defined(CONFIG_CPU_SUBTYPE_SH7721) || \
|
|
|
- defined(CONFIG_ARCH_SHMOBILE)
|
|
|
+ defined(CONFIG_ARCH_SH7367) || \
|
|
|
+ defined(CONFIG_ARCH_SH7377) || \
|
|
|
+ defined(CONFIG_ARCH_SH7372)
|
|
|
# define SCSCR_INIT(port) 0x0030 /* TIE=0,RIE=0,TE=1,RE=1 */
|
|
|
# define PORT_PTCR 0xA405011EUL
|
|
|
# define PORT_PVCR 0xA4050122UL
|
|
@@ -94,7 +96,9 @@
|
|
|
# define SCSCR_INIT(port) 0x0038 /* TIE=0,RIE=0,TE=1,RE=1,REIE=1 */
|
|
|
#elif defined(CONFIG_CPU_SUBTYPE_SH7724)
|
|
|
# define SCIF_ORER 0x0001 /* overrun error bit */
|
|
|
-# define SCSCR_INIT(port) 0x0038 /* TIE=0,RIE=0,TE=1,RE=1,REIE=1 */
|
|
|
+# define SCSCR_INIT(port) ((port)->type == PORT_SCIFA ? \
|
|
|
+ 0x30 /* TIE=0,RIE=0,TE=1,RE=1 */ : \
|
|
|
+ 0x38 /* TIE=0,RIE=0,TE=1,RE=1,REIE=1 */ )
|
|
|
#elif defined(CONFIG_CPU_SUBTYPE_SH4_202)
|
|
|
# define SCSPTR2 0xffe80020 /* 16 bit SCIF */
|
|
|
# define SCIF_ORER 0x0001 /* overrun error bit */
|
|
@@ -197,6 +201,8 @@
|
|
|
defined(CONFIG_CPU_SUBTYPE_SH7786) || \
|
|
|
defined(CONFIG_CPU_SUBTYPE_SHX3)
|
|
|
#define SCI_CTRL_FLAGS_REIE 0x08 /* 7750 SCIF */
|
|
|
+#elif defined(CONFIG_CPU_SUBTYPE_SH7724)
|
|
|
+#define SCI_CTRL_FLAGS_REIE ((port)->type == PORT_SCIFA ? 0 : 8)
|
|
|
#else
|
|
|
#define SCI_CTRL_FLAGS_REIE 0
|
|
|
#endif
|
|
@@ -230,7 +236,9 @@
|
|
|
#if defined(CONFIG_CPU_SUBTYPE_SH7705) || \
|
|
|
defined(CONFIG_CPU_SUBTYPE_SH7720) || \
|
|
|
defined(CONFIG_CPU_SUBTYPE_SH7721) || \
|
|
|
- defined(CONFIG_ARCH_SHMOBILE)
|
|
|
+ defined(CONFIG_ARCH_SH7367) || \
|
|
|
+ defined(CONFIG_ARCH_SH7377) || \
|
|
|
+ defined(CONFIG_ARCH_SH7372)
|
|
|
# define SCIF_ORER 0x0200
|
|
|
# define SCIF_ERRORS ( SCIF_PER | SCIF_FER | SCIF_ER | SCIF_BRK | SCIF_ORER)
|
|
|
# define SCIF_RFDC_MASK 0x007f
|
|
@@ -264,7 +272,9 @@
|
|
|
#if defined(CONFIG_CPU_SUBTYPE_SH7705) || \
|
|
|
defined(CONFIG_CPU_SUBTYPE_SH7720) || \
|
|
|
defined(CONFIG_CPU_SUBTYPE_SH7721) || \
|
|
|
- defined(CONFIG_ARCH_SHMOBILE)
|
|
|
+ defined(CONFIG_ARCH_SH7367) || \
|
|
|
+ defined(CONFIG_ARCH_SH7377) || \
|
|
|
+ defined(CONFIG_ARCH_SH7372)
|
|
|
# define SCxSR_RDxF_CLEAR(port) (sci_in(port, SCxSR) & 0xfffc)
|
|
|
# define SCxSR_ERROR_CLEAR(port) (sci_in(port, SCxSR) & 0xfd73)
|
|
|
# define SCxSR_TDxE_CLEAR(port) (sci_in(port, SCxSR) & 0xffdf)
|
|
@@ -359,7 +369,10 @@
|
|
|
SCI_OUT(sci_size, sci_offset, value); \
|
|
|
}
|
|
|
|
|
|
-#if defined(CONFIG_CPU_SH3) || defined(CONFIG_ARCH_SHMOBILE)
|
|
|
+#if defined(CONFIG_CPU_SH3) || \
|
|
|
+ defined(CONFIG_ARCH_SH7367) || \
|
|
|
+ defined(CONFIG_ARCH_SH7377) || \
|
|
|
+ defined(CONFIG_ARCH_SH7372)
|
|
|
#if defined(CONFIG_CPU_SUBTYPE_SH7710) || defined(CONFIG_CPU_SUBTYPE_SH7712)
|
|
|
#define SCIx_FNS(name, sh3_sci_offset, sh3_sci_size, sh4_sci_offset, sh4_sci_size, \
|
|
|
sh3_scif_offset, sh3_scif_size, sh4_scif_offset, sh4_scif_size, \
|
|
@@ -370,7 +383,9 @@
|
|
|
#elif defined(CONFIG_CPU_SUBTYPE_SH7705) || \
|
|
|
defined(CONFIG_CPU_SUBTYPE_SH7720) || \
|
|
|
defined(CONFIG_CPU_SUBTYPE_SH7721) || \
|
|
|
- defined(CONFIG_ARCH_SHMOBILE)
|
|
|
+ defined(CONFIG_ARCH_SH7367) || \
|
|
|
+ defined(CONFIG_ARCH_SH7377) || \
|
|
|
+ defined(CONFIG_ARCH_SH7372)
|
|
|
#define SCIF_FNS(name, scif_offset, scif_size) \
|
|
|
CPU_SCIF_FNS(name, scif_offset, scif_size)
|
|
|
#else
|
|
@@ -406,7 +421,9 @@
|
|
|
#if defined(CONFIG_CPU_SUBTYPE_SH7705) || \
|
|
|
defined(CONFIG_CPU_SUBTYPE_SH7720) || \
|
|
|
defined(CONFIG_CPU_SUBTYPE_SH7721) || \
|
|
|
- defined(CONFIG_ARCH_SHMOBILE)
|
|
|
+ defined(CONFIG_ARCH_SH7367) || \
|
|
|
+ defined(CONFIG_ARCH_SH7377) || \
|
|
|
+ defined(CONFIG_ARCH_SH7372)
|
|
|
|
|
|
SCIF_FNS(SCSMR, 0x00, 16)
|
|
|
SCIF_FNS(SCBRR, 0x04, 8)
|
|
@@ -589,7 +606,9 @@ static inline int sci_rxd_in(struct uart_port *port)
|
|
|
#elif defined(CONFIG_CPU_SUBTYPE_SH7705) || \
|
|
|
defined(CONFIG_CPU_SUBTYPE_SH7720) || \
|
|
|
defined(CONFIG_CPU_SUBTYPE_SH7721) || \
|
|
|
- defined(CONFIG_ARCH_SHMOBILE)
|
|
|
+ defined(CONFIG_ARCH_SH7367) || \
|
|
|
+ defined(CONFIG_ARCH_SH7377) || \
|
|
|
+ defined(CONFIG_ARCH_SH7372)
|
|
|
#define SCBRR_VALUE(bps, clk) (((clk*2)+16*bps)/(32*bps)-1)
|
|
|
#elif defined(CONFIG_CPU_SUBTYPE_SH7723) ||\
|
|
|
defined(CONFIG_CPU_SUBTYPE_SH7724)
|