diff options
| author | Graf Yang <graf.yang@analog.com> | 2008-07-19 03:54:10 -0400 |
|---|---|---|
| committer | Bryan Wu <cooloney@kernel.org> | 2008-07-19 03:54:10 -0400 |
| commit | aa3348f461da1df5c583f9916ab80298ddd68eff (patch) | |
| tree | 6f07141f8bafceead08d413bceaabf4c8eb9112b /include/asm-blackfin | |
| parent | 262c3825a9f3eb0f4f30ebb4b1ee57397bcb3ffc (diff) | |
Blackfin arch: Add return value check in bfin_sir_probe(), remove SSYNC().
Signed-off-by: Graf Yang <graf.yang@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Diffstat (limited to 'include/asm-blackfin')
| -rw-r--r-- | include/asm-blackfin/mach-bf527/bfin_sir.h | 21 | ||||
| -rw-r--r-- | include/asm-blackfin/mach-bf533/bfin_sir.h | 13 | ||||
| -rw-r--r-- | include/asm-blackfin/mach-bf537/bfin_sir.h | 21 | ||||
| -rw-r--r-- | include/asm-blackfin/mach-bf548/bfin_sir.h | 37 | ||||
| -rw-r--r-- | include/asm-blackfin/mach-bf561/bfin_sir.h | 13 |
5 files changed, 75 insertions, 30 deletions
diff --git a/include/asm-blackfin/mach-bf527/bfin_sir.h b/include/asm-blackfin/mach-bf527/bfin_sir.h index 0612d0c9501c..cfd8ad4f1f2c 100644 --- a/include/asm-blackfin/mach-bf527/bfin_sir.h +++ b/include/asm-blackfin/mach-bf527/bfin_sir.h | |||
| @@ -118,16 +118,25 @@ static inline void SIR_UART_CLEAR_LSR(struct bfin_sir_port *port) | |||
| 118 | 118 | ||
| 119 | #define DRIVER_NAME "bfin_sir" | 119 | #define DRIVER_NAME "bfin_sir" |
| 120 | 120 | ||
| 121 | static void bfin_sir_hw_init(void) | 121 | static int bfin_sir_hw_init(void) |
| 122 | { | 122 | { |
| 123 | int ret = -ENODEV; | ||
| 123 | #ifdef CONFIG_BFIN_SIR0 | 124 | #ifdef CONFIG_BFIN_SIR0 |
| 124 | peripheral_request(P_UART0_TX, DRIVER_NAME); | 125 | ret = peripheral_request(P_UART0_TX, DRIVER_NAME); |
| 125 | peripheral_request(P_UART0_RX, DRIVER_NAME); | 126 | if (ret) |
| 127 | return ret; | ||
| 128 | ret = peripheral_request(P_UART0_RX, DRIVER_NAME); | ||
| 129 | if (ret) | ||
| 130 | return ret; | ||
| 126 | #endif | 131 | #endif |
| 127 | 132 | ||
| 128 | #ifdef CONFIG_BFIN_SIR1 | 133 | #ifdef CONFIG_BFIN_SIR1 |
| 129 | peripheral_request(P_UART1_TX, DRIVER_NAME); | 134 | ret = peripheral_request(P_UART1_TX, DRIVER_NAME); |
| 130 | peripheral_request(P_UART1_RX, DRIVER_NAME); | 135 | if (ret) |
| 136 | return ret; | ||
| 137 | ret = peripheral_request(P_UART1_RX, DRIVER_NAME); | ||
| 138 | if (ret) | ||
| 139 | return ret; | ||
| 131 | #endif | 140 | #endif |
| 132 | SSYNC(); | 141 | return ret; |
| 133 | } | 142 | } |
diff --git a/include/asm-blackfin/mach-bf533/bfin_sir.h b/include/asm-blackfin/mach-bf533/bfin_sir.h index cefcf8bb505b..9bb87e9e2e9b 100644 --- a/include/asm-blackfin/mach-bf533/bfin_sir.h +++ b/include/asm-blackfin/mach-bf533/bfin_sir.h | |||
| @@ -110,11 +110,16 @@ static inline void SIR_UART_CLEAR_LSR(struct bfin_sir_port *port) | |||
| 110 | 110 | ||
| 111 | #define DRIVER_NAME "bfin_sir" | 111 | #define DRIVER_NAME "bfin_sir" |
| 112 | 112 | ||
| 113 | static void bfin_sir_hw_init(void) | 113 | static int bfin_sir_hw_init(void) |
| 114 | { | 114 | { |
| 115 | int ret = -ENODEV; | ||
| 115 | #ifdef CONFIG_BFIN_SIR0 | 116 | #ifdef CONFIG_BFIN_SIR0 |
| 116 | peripheral_request(P_UART0_TX, DRIVER_NAME); | 117 | ret = peripheral_request(P_UART0_TX, DRIVER_NAME); |
| 117 | peripheral_request(P_UART0_RX, DRIVER_NAME); | 118 | if (ret) |
| 119 | return ret; | ||
| 120 | ret = peripheral_request(P_UART0_RX, DRIVER_NAME); | ||
| 121 | if (ret) | ||
| 122 | return ret; | ||
| 118 | #endif | 123 | #endif |
| 119 | SSYNC(); | 124 | return ret; |
| 120 | } | 125 | } |
diff --git a/include/asm-blackfin/mach-bf537/bfin_sir.h b/include/asm-blackfin/mach-bf537/bfin_sir.h index 0612d0c9501c..cfd8ad4f1f2c 100644 --- a/include/asm-blackfin/mach-bf537/bfin_sir.h +++ b/include/asm-blackfin/mach-bf537/bfin_sir.h | |||
| @@ -118,16 +118,25 @@ static inline void SIR_UART_CLEAR_LSR(struct bfin_sir_port *port) | |||
| 118 | 118 | ||
| 119 | #define DRIVER_NAME "bfin_sir" | 119 | #define DRIVER_NAME "bfin_sir" |
| 120 | 120 | ||
| 121 | static void bfin_sir_hw_init(void) | 121 | static int bfin_sir_hw_init(void) |
| 122 | { | 122 | { |
| 123 | int ret = -ENODEV; | ||
| 123 | #ifdef CONFIG_BFIN_SIR0 | 124 | #ifdef CONFIG_BFIN_SIR0 |
| 124 | peripheral_request(P_UART0_TX, DRIVER_NAME); | 125 | ret = peripheral_request(P_UART0_TX, DRIVER_NAME); |
| 125 | peripheral_request(P_UART0_RX, DRIVER_NAME); | 126 | if (ret) |
| 127 | return ret; | ||
| 128 | ret = peripheral_request(P_UART0_RX, DRIVER_NAME); | ||
| 129 | if (ret) | ||
| 130 | return ret; | ||
| 126 | #endif | 131 | #endif |
| 127 | 132 | ||
| 128 | #ifdef CONFIG_BFIN_SIR1 | 133 | #ifdef CONFIG_BFIN_SIR1 |
| 129 | peripheral_request(P_UART1_TX, DRIVER_NAME); | 134 | ret = peripheral_request(P_UART1_TX, DRIVER_NAME); |
| 130 | peripheral_request(P_UART1_RX, DRIVER_NAME); | 135 | if (ret) |
| 136 | return ret; | ||
| 137 | ret = peripheral_request(P_UART1_RX, DRIVER_NAME); | ||
| 138 | if (ret) | ||
| 139 | return ret; | ||
| 131 | #endif | 140 | #endif |
| 132 | SSYNC(); | 141 | return ret; |
| 133 | } | 142 | } |
diff --git a/include/asm-blackfin/mach-bf548/bfin_sir.h b/include/asm-blackfin/mach-bf548/bfin_sir.h index 5e94271c7e3b..c41f9cf00268 100644 --- a/include/asm-blackfin/mach-bf548/bfin_sir.h +++ b/include/asm-blackfin/mach-bf548/bfin_sir.h | |||
| @@ -124,26 +124,43 @@ struct bfin_sir_self { | |||
| 124 | 124 | ||
| 125 | #define DRIVER_NAME "bfin_sir" | 125 | #define DRIVER_NAME "bfin_sir" |
| 126 | 126 | ||
| 127 | static void bfin_sir_hw_init(void) | 127 | static int bfin_sir_hw_init(void) |
| 128 | { | 128 | { |
| 129 | int ret = -ENODEV; | ||
| 129 | #ifdef CONFIG_BFIN_SIR0 | 130 | #ifdef CONFIG_BFIN_SIR0 |
| 130 | peripheral_request(P_UART0_TX, DRIVER_NAME); | 131 | ret = peripheral_request(P_UART0_TX, DRIVER_NAME); |
| 131 | peripheral_request(P_UART0_RX, DRIVER_NAME); | 132 | if (ret) |
| 133 | return ret; | ||
| 134 | ret = peripheral_request(P_UART0_RX, DRIVER_NAME); | ||
| 135 | if (ret) | ||
| 136 | return ret; | ||
| 132 | #endif | 137 | #endif |
| 133 | 138 | ||
| 134 | #ifdef CONFIG_BFIN_SIR1 | 139 | #ifdef CONFIG_BFIN_SIR1 |
| 135 | peripheral_request(P_UART1_TX, DRIVER_NAME); | 140 | ret = peripheral_request(P_UART1_TX, DRIVER_NAME); |
| 136 | peripheral_request(P_UART1_RX, DRIVER_NAME); | 141 | if (ret) |
| 142 | return ret; | ||
| 143 | ret = peripheral_request(P_UART1_RX, DRIVER_NAME); | ||
| 144 | if (ret) | ||
| 145 | return ret; | ||
| 137 | #endif | 146 | #endif |
| 138 | 147 | ||
| 139 | #ifdef CONFIG_BFIN_SIR2 | 148 | #ifdef CONFIG_BFIN_SIR2 |
| 140 | peripheral_request(P_UART2_TX, DRIVER_NAME); | 149 | ret = peripheral_request(P_UART2_TX, DRIVER_NAME); |
| 141 | peripheral_request(P_UART2_RX, DRIVER_NAME); | 150 | if (ret) |
| 151 | return ret; | ||
| 152 | ret = peripheral_request(P_UART2_RX, DRIVER_NAME); | ||
| 153 | if (ret) | ||
| 154 | return ret; | ||
| 142 | #endif | 155 | #endif |
| 143 | 156 | ||
| 144 | #ifdef CONFIG_BFIN_SIR3 | 157 | #ifdef CONFIG_BFIN_SIR3 |
| 145 | peripheral_request(P_UART3_TX, DRIVER_NAME); | 158 | ret = peripheral_request(P_UART3_TX, DRIVER_NAME); |
| 146 | peripheral_request(P_UART3_RX, DRIVER_NAME); | 159 | if (ret) |
| 160 | return ret; | ||
| 161 | ret = peripheral_request(P_UART3_RX, DRIVER_NAME); | ||
| 162 | if (ret) | ||
| 163 | return ret; | ||
| 147 | #endif | 164 | #endif |
| 148 | SSYNC(); | 165 | return ret; |
| 149 | } | 166 | } |
diff --git a/include/asm-blackfin/mach-bf561/bfin_sir.h b/include/asm-blackfin/mach-bf561/bfin_sir.h index cefcf8bb505b..9bb87e9e2e9b 100644 --- a/include/asm-blackfin/mach-bf561/bfin_sir.h +++ b/include/asm-blackfin/mach-bf561/bfin_sir.h | |||
| @@ -110,11 +110,16 @@ static inline void SIR_UART_CLEAR_LSR(struct bfin_sir_port *port) | |||
| 110 | 110 | ||
| 111 | #define DRIVER_NAME "bfin_sir" | 111 | #define DRIVER_NAME "bfin_sir" |
| 112 | 112 | ||
| 113 | static void bfin_sir_hw_init(void) | 113 | static int bfin_sir_hw_init(void) |
| 114 | { | 114 | { |
| 115 | int ret = -ENODEV; | ||
| 115 | #ifdef CONFIG_BFIN_SIR0 | 116 | #ifdef CONFIG_BFIN_SIR0 |
| 116 | peripheral_request(P_UART0_TX, DRIVER_NAME); | 117 | ret = peripheral_request(P_UART0_TX, DRIVER_NAME); |
| 117 | peripheral_request(P_UART0_RX, DRIVER_NAME); | 118 | if (ret) |
| 119 | return ret; | ||
| 120 | ret = peripheral_request(P_UART0_RX, DRIVER_NAME); | ||
| 121 | if (ret) | ||
| 122 | return ret; | ||
| 118 | #endif | 123 | #endif |
| 119 | SSYNC(); | 124 | return ret; |
| 120 | } | 125 | } |
