diff options
author | Ingo Molnar <mingo@elte.hu> | 2009-04-10 06:46:28 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-04-10 06:46:51 -0400 |
commit | 1cad1252ed279ea59f3f8d3d3a5817eeb2f7a4d3 (patch) | |
tree | ec5af7a70f58ad27ad21fc27815ca164ccf92c36 /arch/blackfin/mach-bf527 | |
parent | dcef788eb9659b61a2110284fcce3ca6e63480d2 (diff) | |
parent | 93cfb3c9fd83d877a8f1ffad9ff862b617b32828 (diff) |
Merge branch 'tracing/urgent' into tracing/core
Merge reason: pick up both v2.6.30-rc1 [which includes tracing/urgent fixes]
and pick up the current lineup of tracing/urgent fixes as well
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/blackfin/mach-bf527')
-rw-r--r-- | arch/blackfin/mach-bf527/include/mach/bfin_serial_5xx.h | 36 |
1 files changed, 7 insertions, 29 deletions
diff --git a/arch/blackfin/mach-bf527/include/mach/bfin_serial_5xx.h b/arch/blackfin/mach-bf527/include/mach/bfin_serial_5xx.h index e8c41fd842b5..a625659dd67f 100644 --- a/arch/blackfin/mach-bf527/include/mach/bfin_serial_5xx.h +++ b/arch/blackfin/mach-bf527/include/mach/bfin_serial_5xx.h | |||
@@ -53,9 +53,9 @@ | |||
53 | #define UART_SET_DLAB(uart) do { UART_PUT_LCR(uart, UART_GET_LCR(uart) | DLAB); SSYNC(); } while (0) | 53 | #define UART_SET_DLAB(uart) do { UART_PUT_LCR(uart, UART_GET_LCR(uart) | DLAB); SSYNC(); } while (0) |
54 | #define UART_CLEAR_DLAB(uart) do { UART_PUT_LCR(uart, UART_GET_LCR(uart) & ~DLAB); SSYNC(); } while (0) | 54 | #define UART_CLEAR_DLAB(uart) do { UART_PUT_LCR(uart, UART_GET_LCR(uart) & ~DLAB); SSYNC(); } while (0) |
55 | 55 | ||
56 | #define UART_GET_CTS(x) gpio_get_value(x->cts_pin) | 56 | #define UART_GET_CTS(x) (!gpio_get_value(x->cts_pin)) |
57 | #define UART_SET_RTS(x) gpio_set_value(x->rts_pin, 1) | 57 | #define UART_DISABLE_RTS(x) gpio_set_value(x->rts_pin, 1) |
58 | #define UART_CLEAR_RTS(x) gpio_set_value(x->rts_pin, 0) | 58 | #define UART_ENABLE_RTS(x) gpio_set_value(x->rts_pin, 0) |
59 | #define UART_ENABLE_INTS(x, v) UART_PUT_IER(x, v) | 59 | #define UART_ENABLE_INTS(x, v) UART_PUT_IER(x, v) |
60 | #define UART_DISABLE_INTS(x) UART_PUT_IER(x, 0) | 60 | #define UART_DISABLE_INTS(x) UART_PUT_IER(x, 0) |
61 | 61 | ||
@@ -87,6 +87,7 @@ | |||
87 | struct bfin_serial_port { | 87 | struct bfin_serial_port { |
88 | struct uart_port port; | 88 | struct uart_port port; |
89 | unsigned int old_status; | 89 | unsigned int old_status; |
90 | int status_irq; | ||
90 | unsigned int lsr; | 91 | unsigned int lsr; |
91 | #ifdef CONFIG_SERIAL_BFIN_DMA | 92 | #ifdef CONFIG_SERIAL_BFIN_DMA |
92 | int tx_done; | 93 | int tx_done; |
@@ -125,6 +126,7 @@ static inline void UART_CLEAR_LSR(struct bfin_serial_port *uart) | |||
125 | struct bfin_serial_res { | 126 | struct bfin_serial_res { |
126 | unsigned long uart_base_addr; | 127 | unsigned long uart_base_addr; |
127 | int uart_irq; | 128 | int uart_irq; |
129 | int uart_status_irq; | ||
128 | #ifdef CONFIG_SERIAL_BFIN_DMA | 130 | #ifdef CONFIG_SERIAL_BFIN_DMA |
129 | unsigned int uart_tx_dma_channel; | 131 | unsigned int uart_tx_dma_channel; |
130 | unsigned int uart_rx_dma_channel; | 132 | unsigned int uart_rx_dma_channel; |
@@ -140,6 +142,7 @@ struct bfin_serial_res bfin_serial_resource[] = { | |||
140 | { | 142 | { |
141 | 0xFFC00400, | 143 | 0xFFC00400, |
142 | IRQ_UART0_RX, | 144 | IRQ_UART0_RX, |
145 | IRQ_UART0_ERROR, | ||
143 | #ifdef CONFIG_SERIAL_BFIN_DMA | 146 | #ifdef CONFIG_SERIAL_BFIN_DMA |
144 | CH_UART0_TX, | 147 | CH_UART0_TX, |
145 | CH_UART0_RX, | 148 | CH_UART0_RX, |
@@ -154,6 +157,7 @@ struct bfin_serial_res bfin_serial_resource[] = { | |||
154 | { | 157 | { |
155 | 0xFFC02000, | 158 | 0xFFC02000, |
156 | IRQ_UART1_RX, | 159 | IRQ_UART1_RX, |
160 | IRQ_UART1_ERROR, | ||
157 | #ifdef CONFIG_SERIAL_BFIN_DMA | 161 | #ifdef CONFIG_SERIAL_BFIN_DMA |
158 | CH_UART1_TX, | 162 | CH_UART1_TX, |
159 | CH_UART1_RX, | 163 | CH_UART1_RX, |
@@ -167,29 +171,3 @@ struct bfin_serial_res bfin_serial_resource[] = { | |||
167 | }; | 171 | }; |
168 | 172 | ||
169 | #define DRIVER_NAME "bfin-uart" | 173 | #define DRIVER_NAME "bfin-uart" |
170 | |||
171 | static void bfin_serial_hw_init(struct bfin_serial_port *uart) | ||
172 | { | ||
173 | |||
174 | #ifdef CONFIG_SERIAL_BFIN_UART0 | ||
175 | peripheral_request(P_UART0_TX, DRIVER_NAME); | ||
176 | peripheral_request(P_UART0_RX, DRIVER_NAME); | ||
177 | #endif | ||
178 | |||
179 | #ifdef CONFIG_SERIAL_BFIN_UART1 | ||
180 | peripheral_request(P_UART1_TX, DRIVER_NAME); | ||
181 | peripheral_request(P_UART1_RX, DRIVER_NAME); | ||
182 | #endif | ||
183 | |||
184 | #ifdef CONFIG_SERIAL_BFIN_CTSRTS | ||
185 | if (uart->cts_pin >= 0) { | ||
186 | gpio_request(uart->cts_pin, DRIVER_NAME); | ||
187 | gpio_direction_input(uart->cts_pin); | ||
188 | } | ||
189 | |||
190 | if (uart->rts_pin >= 0) { | ||
191 | gpio_request(uart->rts_pin, DRIVER_NAME); | ||
192 | gpio_direction_output(uart->rts_pin, 0); | ||
193 | } | ||
194 | #endif | ||
195 | } | ||