diff options
Diffstat (limited to 'arch/arm')
-rw-r--r-- | arch/arm/mach-ep93xx/edb93xx.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/arch/arm/mach-ep93xx/edb93xx.c b/arch/arm/mach-ep93xx/edb93xx.c index d74c5cddb98b..9005ea698f1e 100644 --- a/arch/arm/mach-ep93xx/edb93xx.c +++ b/arch/arm/mach-ep93xx/edb93xx.c | |||
@@ -233,6 +233,29 @@ static void __init edb93xx_register_fb(void) | |||
233 | } | 233 | } |
234 | 234 | ||
235 | 235 | ||
236 | /************************************************************************* | ||
237 | * EDB93xx IDE | ||
238 | *************************************************************************/ | ||
239 | static int __init edb93xx_has_ide(void) | ||
240 | { | ||
241 | /* | ||
242 | * Although EDB9312 and EDB9315 do have IDE capability, they have | ||
243 | * INTRQ line wired as pull-up, which makes using IDE interface | ||
244 | * problematic. | ||
245 | */ | ||
246 | return machine_is_edb9312() || machine_is_edb9315() || | ||
247 | machine_is_edb9315a(); | ||
248 | } | ||
249 | |||
250 | static void __init edb93xx_register_ide(void) | ||
251 | { | ||
252 | if (!edb93xx_has_ide()) | ||
253 | return; | ||
254 | |||
255 | ep93xx_register_ide(); | ||
256 | } | ||
257 | |||
258 | |||
236 | static void __init edb93xx_init_machine(void) | 259 | static void __init edb93xx_init_machine(void) |
237 | { | 260 | { |
238 | ep93xx_init_devices(); | 261 | ep93xx_init_devices(); |
@@ -243,6 +266,7 @@ static void __init edb93xx_init_machine(void) | |||
243 | edb93xx_register_i2s(); | 266 | edb93xx_register_i2s(); |
244 | edb93xx_register_pwm(); | 267 | edb93xx_register_pwm(); |
245 | edb93xx_register_fb(); | 268 | edb93xx_register_fb(); |
269 | edb93xx_register_ide(); | ||
246 | } | 270 | } |
247 | 271 | ||
248 | 272 | ||