aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Mundt <lethal@linux-sh.org>2009-06-24 06:44:32 -0400
committerPaul Mundt <lethal@linux-sh.org>2009-06-24 06:44:32 -0400
commit8e6986149129acc6528a7231350c31ce3e3dadc5 (patch)
treebded358299db2d9569c8a30bf9f26136b71a30c3
parent706622c920232bc79ca20eaca252d3eb9103ae96 (diff)
serial: sh-sci: Convert from old SCSR control flags to common defines.
Many of these flags were duplicated, and as we now need this visibility to set them from the platform code, we can just use the linux/serial_sci.h variants instead. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
-rw-r--r--drivers/serial/sh-sci.c22
-rw-r--r--drivers/serial/sh-sci.h26
2 files changed, 11 insertions, 37 deletions
diff --git a/drivers/serial/sh-sci.c b/drivers/serial/sh-sci.c
index 386fb878680c..403b01b382e2 100644
--- a/drivers/serial/sh-sci.c
+++ b/drivers/serial/sh-sci.c
@@ -376,9 +376,9 @@ static void sci_transmit_chars(struct uart_port *port)
376 if (!(status & SCxSR_TDxE(port))) { 376 if (!(status & SCxSR_TDxE(port))) {
377 ctrl = sci_in(port, SCSCR); 377 ctrl = sci_in(port, SCSCR);
378 if (uart_circ_empty(xmit)) 378 if (uart_circ_empty(xmit))
379 ctrl &= ~SCI_CTRL_FLAGS_TIE; 379 ctrl &= ~SCSCR_TIE;
380 else 380 else
381 ctrl |= SCI_CTRL_FLAGS_TIE; 381 ctrl |= SCSCR_TIE;
382 sci_out(port, SCSCR, ctrl); 382 sci_out(port, SCSCR, ctrl);
383 return; 383 return;
384 } 384 }
@@ -420,7 +420,7 @@ static void sci_transmit_chars(struct uart_port *port)
420 sci_out(port, SCxSR, SCxSR_TDxE_CLEAR(port)); 420 sci_out(port, SCxSR, SCxSR_TDxE_CLEAR(port));
421 } 421 }
422 422
423 ctrl |= SCI_CTRL_FLAGS_TIE; 423 ctrl |= SCSCR_TIE;
424 sci_out(port, SCSCR, ctrl); 424 sci_out(port, SCSCR, ctrl);
425 } 425 }
426} 426}
@@ -721,16 +721,16 @@ static irqreturn_t sci_mpxed_interrupt(int irq, void *ptr)
721 scr_status = sci_in(port, SCSCR); 721 scr_status = sci_in(port, SCSCR);
722 722
723 /* Tx Interrupt */ 723 /* Tx Interrupt */
724 if ((ssr_status & 0x0020) && (scr_status & SCI_CTRL_FLAGS_TIE)) 724 if ((ssr_status & 0x0020) && (scr_status & SCSCR_TIE))
725 ret = sci_tx_interrupt(irq, ptr); 725 ret = sci_tx_interrupt(irq, ptr);
726 /* Rx Interrupt */ 726 /* Rx Interrupt */
727 if ((ssr_status & 0x0002) && (scr_status & SCI_CTRL_FLAGS_RIE)) 727 if ((ssr_status & 0x0002) && (scr_status & SCSCR_RIE))
728 ret = sci_rx_interrupt(irq, ptr); 728 ret = sci_rx_interrupt(irq, ptr);
729 /* Error Interrupt */ 729 /* Error Interrupt */
730 if ((ssr_status & 0x0080) && (scr_status & SCI_CTRL_FLAGS_REIE)) 730 if ((ssr_status & 0x0080) && (scr_status & SCSCR_REIE))
731 ret = sci_er_interrupt(irq, ptr); 731 ret = sci_er_interrupt(irq, ptr);
732 /* Break Interrupt */ 732 /* Break Interrupt */
733 if ((ssr_status & 0x0010) && (scr_status & SCI_CTRL_FLAGS_REIE)) 733 if ((ssr_status & 0x0010) && (scr_status & SCSCR_REIE))
734 ret = sci_br_interrupt(irq, ptr); 734 ret = sci_br_interrupt(irq, ptr);
735 735
736 return ret; 736 return ret;
@@ -861,7 +861,7 @@ static void sci_start_tx(struct uart_port *port)
861 861
862 /* Set TIE (Transmit Interrupt Enable) bit in SCSCR */ 862 /* Set TIE (Transmit Interrupt Enable) bit in SCSCR */
863 ctrl = sci_in(port, SCSCR); 863 ctrl = sci_in(port, SCSCR);
864 ctrl |= SCI_CTRL_FLAGS_TIE; 864 ctrl |= SCSCR_TIE;
865 sci_out(port, SCSCR, ctrl); 865 sci_out(port, SCSCR, ctrl);
866} 866}
867 867
@@ -871,7 +871,7 @@ static void sci_stop_tx(struct uart_port *port)
871 871
872 /* Clear TIE (Transmit Interrupt Enable) bit in SCSCR */ 872 /* Clear TIE (Transmit Interrupt Enable) bit in SCSCR */
873 ctrl = sci_in(port, SCSCR); 873 ctrl = sci_in(port, SCSCR);
874 ctrl &= ~SCI_CTRL_FLAGS_TIE; 874 ctrl &= ~SCSCR_TIE;
875 sci_out(port, SCSCR, ctrl); 875 sci_out(port, SCSCR, ctrl);
876} 876}
877 877
@@ -881,7 +881,7 @@ static void sci_start_rx(struct uart_port *port, unsigned int tty_start)
881 881
882 /* Set RIE (Receive Interrupt Enable) bit in SCSCR */ 882 /* Set RIE (Receive Interrupt Enable) bit in SCSCR */
883 ctrl = sci_in(port, SCSCR); 883 ctrl = sci_in(port, SCSCR);
884 ctrl |= SCI_CTRL_FLAGS_RIE | SCI_CTRL_FLAGS_REIE; 884 ctrl |= SCSCR_RIE | SCSCR_REIE;
885 sci_out(port, SCSCR, ctrl); 885 sci_out(port, SCSCR, ctrl);
886} 886}
887 887
@@ -891,7 +891,7 @@ static void sci_stop_rx(struct uart_port *port)
891 891
892 /* Clear RIE (Receive Interrupt Enable) bit in SCSCR */ 892 /* Clear RIE (Receive Interrupt Enable) bit in SCSCR */
893 ctrl = sci_in(port, SCSCR); 893 ctrl = sci_in(port, SCSCR);
894 ctrl &= ~(SCI_CTRL_FLAGS_RIE | SCI_CTRL_FLAGS_REIE); 894 ctrl &= ~(SCSCR_RIE | SCSCR_REIE);
895 sci_out(port, SCSCR, ctrl); 895 sci_out(port, SCSCR, ctrl);
896} 896}
897 897
diff --git a/drivers/serial/sh-sci.h b/drivers/serial/sh-sci.h
index 5366e780aaeb..def626307c33 100644
--- a/drivers/serial/sh-sci.h
+++ b/drivers/serial/sh-sci.h
@@ -138,32 +138,6 @@
138# error CPU subtype not defined 138# error CPU subtype not defined
139#endif 139#endif
140 140
141/* SCSCR */
142#define SCI_CTRL_FLAGS_TIE 0x80 /* all */
143#define SCI_CTRL_FLAGS_RIE 0x40 /* all */
144#define SCI_CTRL_FLAGS_TE 0x20 /* all */
145#define SCI_CTRL_FLAGS_RE 0x10 /* all */
146#if defined(CONFIG_CPU_SUBTYPE_SH7750) || \
147 defined(CONFIG_CPU_SUBTYPE_SH7091) || \
148 defined(CONFIG_CPU_SUBTYPE_SH7750R) || \
149 defined(CONFIG_CPU_SUBTYPE_SH7722) || \
150 defined(CONFIG_CPU_SUBTYPE_SH7750S) || \
151 defined(CONFIG_CPU_SUBTYPE_SH7751) || \
152 defined(CONFIG_CPU_SUBTYPE_SH7751R) || \
153 defined(CONFIG_CPU_SUBTYPE_SH7763) || \
154 defined(CONFIG_CPU_SUBTYPE_SH7780) || \
155 defined(CONFIG_CPU_SUBTYPE_SH7785) || \
156 defined(CONFIG_CPU_SUBTYPE_SH7786) || \
157 defined(CONFIG_CPU_SUBTYPE_SHX3)
158#define SCI_CTRL_FLAGS_REIE 0x08 /* 7750 SCIF */
159#else
160#define SCI_CTRL_FLAGS_REIE 0
161#endif
162/* SCI_CTRL_FLAGS_MPIE 0x08 * 7707 SCI, 7708 SCI, 7709 SCI, 7750 SCI */
163/* SCI_CTRL_FLAGS_TEIE 0x04 * 7707 SCI, 7708 SCI, 7709 SCI, 7750 SCI */
164/* SCI_CTRL_FLAGS_CKE1 0x02 * all */
165/* SCI_CTRL_FLAGS_CKE0 0x01 * 7707 SCI/SCIF, 7708 SCI, 7709 SCI/SCIF, 7750 SCI */
166
167/* SCxSR SCI */ 141/* SCxSR SCI */
168#define SCI_TDRE 0x80 /* 7707 SCI, 7708 SCI, 7709 SCI, 7750 SCI */ 142#define SCI_TDRE 0x80 /* 7707 SCI, 7708 SCI, 7709 SCI, 7750 SCI */
169#define SCI_RDRF 0x40 /* 7707 SCI, 7708 SCI, 7709 SCI, 7750 SCI */ 143#define SCI_RDRF 0x40 /* 7707 SCI, 7708 SCI, 7709 SCI, 7750 SCI */