diff options
Diffstat (limited to 'drivers/ide/arm/palm_bk3710.c')
-rw-r--r-- | drivers/ide/arm/palm_bk3710.c | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/drivers/ide/arm/palm_bk3710.c b/drivers/ide/arm/palm_bk3710.c index 545563bc7e23..24389a571c37 100644 --- a/drivers/ide/arm/palm_bk3710.c +++ b/drivers/ide/arm/palm_bk3710.c | |||
@@ -347,11 +347,10 @@ static int __devinit palm_bk3710_probe(struct platform_device *pdev) | |||
347 | { | 347 | { |
348 | struct clk *clk; | 348 | struct clk *clk; |
349 | struct resource *mem, *irq; | 349 | struct resource *mem, *irq; |
350 | ide_hwif_t *hwif; | 350 | struct ide_host *host; |
351 | unsigned long base, rate; | 351 | unsigned long base, rate; |
352 | int i; | 352 | int i; |
353 | hw_regs_t hw, *hws[] = { &hw, NULL, NULL, NULL }; | 353 | hw_regs_t hw, *hws[] = { &hw, NULL, NULL, NULL }; |
354 | u8 idx[4] = { 0xff, 0xff, 0xff, 0xff }; | ||
355 | 354 | ||
356 | clk = clk_get(NULL, "IDECLK"); | 355 | clk = clk_get(NULL, "IDECLK"); |
357 | if (IS_ERR(clk)) | 356 | if (IS_ERR(clk)) |
@@ -393,15 +392,11 @@ static int __devinit palm_bk3710_probe(struct platform_device *pdev) | |||
393 | hw.irq = irq->start; | 392 | hw.irq = irq->start; |
394 | hw.chipset = ide_palm3710; | 393 | hw.chipset = ide_palm3710; |
395 | 394 | ||
396 | hwif = ide_find_port(); | 395 | host = ide_host_alloc(&palm_bk3710_port_info, hws); |
397 | if (hwif == NULL) | 396 | if (host == NULL) |
398 | goto out; | 397 | goto out; |
399 | 398 | ||
400 | i = hwif->index; | 399 | ide_host_register(host, &palm_bk3710_port_info, hws); |
401 | |||
402 | idx[0] = i; | ||
403 | |||
404 | ide_device_add(idx, &palm_bk3710_port_info, hws); | ||
405 | 400 | ||
406 | return 0; | 401 | return 0; |
407 | out: | 402 | out: |