Commit 05627486 authored by Paul Mundt's avatar Paul Mundt Committed by Paul Mundt

sh: Fix SH-4 CPU selects.

Now that select no longer works for selecting the "closest" CPU,
we have to explicitly reference the precise sub-type in the few
places where it actually matters (presently only setup code and
some legacy sh-sci cruft).
Signed-off-by: default avatarPaul Mundt <lethal@linux-sh.org>
parent fd8f20e8
...@@ -467,13 +467,13 @@ config SH_PCLK_FREQ ...@@ -467,13 +467,13 @@ config SH_PCLK_FREQ
int "Peripheral clock frequency (in Hz)" int "Peripheral clock frequency (in Hz)"
default "27000000" if CPU_SUBTYPE_SH73180 || CPU_SUBTYPE_SH7343 default "27000000" if CPU_SUBTYPE_SH73180 || CPU_SUBTYPE_SH7343
default "31250000" if CPU_SUBTYPE_SH7619 default "31250000" if CPU_SUBTYPE_SH7619
default "32000000" if CPU_SUBTYPE_SH7722
default "33333333" if CPU_SUBTYPE_SH7300 || CPU_SUBTYPE_SH7770 || \ default "33333333" if CPU_SUBTYPE_SH7300 || CPU_SUBTYPE_SH7770 || \
CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7705 || \ CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7705 || \
CPU_SUBTYPE_SH7206 CPU_SUBTYPE_SH7206
default "50000000" if CPU_SUBTYPE_SH7750 || CPU_SUBTYPE_SH7780 || \ default "60000000" if CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7751R
CPU_SUBTYPE_SH7785
default "60000000" if CPU_SUBTYPE_SH7751
default "66000000" if CPU_SUBTYPE_SH4_202 default "66000000" if CPU_SUBTYPE_SH4_202
default "50000000"
help help
This option is used to specify the peripheral clock frequency. This option is used to specify the peripheral clock frequency.
This is necessary for determining the reference clock value on This is necessary for determining the reference clock value on
......
...@@ -10,7 +10,11 @@ obj-$(CONFIG_SH_STORE_QUEUES) += sq.o ...@@ -10,7 +10,11 @@ obj-$(CONFIG_SH_STORE_QUEUES) += sq.o
# CPU subtype setup # CPU subtype setup
obj-$(CONFIG_CPU_SUBTYPE_SH7750) += setup-sh7750.o obj-$(CONFIG_CPU_SUBTYPE_SH7750) += setup-sh7750.o
obj-$(CONFIG_CPU_SUBTYPE_SH7750R) += setup-sh7750.o
obj-$(CONFIG_CPU_SUBTYPE_SH7750S) += setup-sh7750.o
obj-$(CONFIG_CPU_SUBTYPE_SH7091) += setup-sh7750.o
obj-$(CONFIG_CPU_SUBTYPE_SH7751) += setup-sh7750.o obj-$(CONFIG_CPU_SUBTYPE_SH7751) += setup-sh7750.o
obj-$(CONFIG_CPU_SUBTYPE_SH7751R) += setup-sh7750.o
obj-$(CONFIG_CPU_SUBTYPE_SH7760) += setup-sh7760.o obj-$(CONFIG_CPU_SUBTYPE_SH7760) += setup-sh7760.o
obj-$(CONFIG_CPU_SUBTYPE_SH4_202) += setup-sh4-202.o obj-$(CONFIG_CPU_SUBTYPE_SH4_202) += setup-sh4-202.o
......
...@@ -126,7 +126,6 @@ config CPU_SUBTYPE_SH7750 ...@@ -126,7 +126,6 @@ config CPU_SUBTYPE_SH7750
config CPU_SUBTYPE_SH7091 config CPU_SUBTYPE_SH7091
bool "Support SH7091 processor" bool "Support SH7091 processor"
select CPU_SH4 select CPU_SH4
select CPU_SUBTYPE_SH7750
help help
Select SH7091 if you have an SH-4 based Sega device (such as Select SH7091 if you have an SH-4 based Sega device (such as
the Dreamcast, Naomi, and Naomi 2). the Dreamcast, Naomi, and Naomi 2).
...@@ -134,13 +133,11 @@ config CPU_SUBTYPE_SH7091 ...@@ -134,13 +133,11 @@ config CPU_SUBTYPE_SH7091
config CPU_SUBTYPE_SH7750R config CPU_SUBTYPE_SH7750R
bool "Support SH7750R processor" bool "Support SH7750R processor"
select CPU_SH4 select CPU_SH4
select CPU_SUBTYPE_SH7750
select CPU_HAS_IPR_IRQ select CPU_HAS_IPR_IRQ
config CPU_SUBTYPE_SH7750S config CPU_SUBTYPE_SH7750S
bool "Support SH7750S processor" bool "Support SH7750S processor"
select CPU_SH4 select CPU_SH4
select CPU_SUBTYPE_SH7750
select CPU_HAS_IPR_IRQ select CPU_HAS_IPR_IRQ
config CPU_SUBTYPE_SH7751 config CPU_SUBTYPE_SH7751
...@@ -154,7 +151,6 @@ config CPU_SUBTYPE_SH7751 ...@@ -154,7 +151,6 @@ config CPU_SUBTYPE_SH7751
config CPU_SUBTYPE_SH7751R config CPU_SUBTYPE_SH7751R
bool "Support SH7751R processor" bool "Support SH7751R processor"
select CPU_SH4 select CPU_SH4
select CPU_SUBTYPE_SH7751
select CPU_HAS_IPR_IRQ select CPU_HAS_IPR_IRQ
config CPU_SUBTYPE_SH7760 config CPU_SUBTYPE_SH7760
......
...@@ -53,7 +53,12 @@ ...@@ -53,7 +53,12 @@
# define SCIF_ORER 0x0001 /* overrun error bit */ # define SCIF_ORER 0x0001 /* overrun error bit */
# define SCSCR_INIT(port) 0x3a /* TIE=0,RIE=0,TE=1,RE=1,REIE=1 */ # define SCSCR_INIT(port) 0x3a /* TIE=0,RIE=0,TE=1,RE=1,REIE=1 */
# define SCIF_ONLY # define SCIF_ONLY
#elif defined(CONFIG_CPU_SUBTYPE_SH7750) || defined(CONFIG_CPU_SUBTYPE_SH7751) #elif defined(CONFIG_CPU_SUBTYPE_SH7750) || \
defined(CONFIG_CPU_SUBTYPE_SH7750R) || \
defined(CONFIG_CPU_SUBTYPE_SH7750S) || \
defined(CONFIG_CPU_SUBTYPE_SH7091) || \
defined(CONFIG_CPU_SUBTYPE_SH7751) || \
defined(CONFIG_CPU_SUBTYPE_SH7751R)
# define SCSPTR1 0xffe0001c /* 8 bit SCI */ # define SCSPTR1 0xffe0001c /* 8 bit SCI */
# define SCSPTR2 0xFFE80020 /* 16 bit SCIF */ # define SCSPTR2 0xFFE80020 /* 16 bit SCIF */
# define SCIF_ORER 0x0001 /* overrun error bit */ # define SCIF_ORER 0x0001 /* overrun error bit */
...@@ -177,9 +182,13 @@ ...@@ -177,9 +182,13 @@
#define SCI_CTRL_FLAGS_RIE 0x40 /* all */ #define SCI_CTRL_FLAGS_RIE 0x40 /* all */
#define SCI_CTRL_FLAGS_TE 0x20 /* all */ #define SCI_CTRL_FLAGS_TE 0x20 /* all */
#define SCI_CTRL_FLAGS_RE 0x10 /* all */ #define SCI_CTRL_FLAGS_RE 0x10 /* all */
#if defined(CONFIG_CPU_SUBTYPE_SH7750) || \ #if defined(CONFIG_CPU_SUBTYPE_SH7750) || \
defined(CONFIG_CPU_SUBTYPE_SH7751) || \ defined(CONFIG_CPU_SUBTYPE_SH7091) || \
defined(CONFIG_CPU_SUBTYPE_SH7780) || \ defined(CONFIG_CPU_SUBTYPE_SH7750R) || \
defined(CONFIG_CPU_SUBTYPE_SH7750S) || \
defined(CONFIG_CPU_SUBTYPE_SH7751) || \
defined(CONFIG_CPU_SUBTYPE_SH7751R) || \
defined(CONFIG_CPU_SUBTYPE_SH7780) || \
defined(CONFIG_CPU_SUBTYPE_SH7785) defined(CONFIG_CPU_SUBTYPE_SH7785)
#define SCI_CTRL_FLAGS_REIE 0x08 /* 7750 SCIF */ #define SCI_CTRL_FLAGS_REIE 0x08 /* 7750 SCIF */
#else #else
...@@ -514,8 +523,12 @@ static inline void set_sh771x_scif_pfc(struct uart_port *port) ...@@ -514,8 +523,12 @@ static inline void set_sh771x_scif_pfc(struct uart_port *port)
} }
} }
#elif defined(CONFIG_CPU_SUBTYPE_SH7750) || \ #elif defined(CONFIG_CPU_SUBTYPE_SH7750) || \
defined(CONFIG_CPU_SUBTYPE_SH7751) || \ defined(CONFIG_CPU_SUBTYPE_SH7751) || \
defined(CONFIG_CPU_SUBTYPE_SH7751R) || \
defined(CONFIG_CPU_SUBTYPE_SH7750R) || \
defined(CONFIG_CPU_SUBTYPE_SH7750S) || \
defined(CONFIG_CPU_SUBTYPE_SH7091) || \
defined(CONFIG_CPU_SUBTYPE_SH4_202) defined(CONFIG_CPU_SUBTYPE_SH4_202)
static inline int sci_rxd_in(struct uart_port *port) static inline int sci_rxd_in(struct uart_port *port)
{ {
......
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