diff options
Diffstat (limited to 'drivers/net/wireless/ray_cs.c')
-rw-r--r-- | drivers/net/wireless/ray_cs.c | 44 |
1 files changed, 21 insertions, 23 deletions
diff --git a/drivers/net/wireless/ray_cs.c b/drivers/net/wireless/ray_cs.c index 88560d0ae50..ab34cb8c56c 100644 --- a/drivers/net/wireless/ray_cs.c +++ b/drivers/net/wireless/ray_cs.c | |||
@@ -391,7 +391,6 @@ static int ray_config(struct pcmcia_device *link) | |||
391 | { | 391 | { |
392 | int ret = 0; | 392 | int ret = 0; |
393 | int i; | 393 | int i; |
394 | win_req_t req; | ||
395 | struct net_device *dev = (struct net_device *)link->priv; | 394 | struct net_device *dev = (struct net_device *)link->priv; |
396 | ray_dev_t *local = netdev_priv(dev); | 395 | ray_dev_t *local = netdev_priv(dev); |
397 | 396 | ||
@@ -420,46 +419,45 @@ static int ray_config(struct pcmcia_device *link) | |||
420 | goto failed; | 419 | goto failed; |
421 | 420 | ||
422 | /*** Set up 32k window for shared memory (transmit and control) ************/ | 421 | /*** Set up 32k window for shared memory (transmit and control) ************/ |
423 | req.Attributes = | 422 | link->resource[2]->flags |= WIN_DATA_WIDTH_8 | WIN_MEMORY_TYPE_CM | WIN_ENABLE | WIN_USE_WAIT; |
424 | WIN_DATA_WIDTH_8 | WIN_MEMORY_TYPE_CM | WIN_ENABLE | WIN_USE_WAIT; | 423 | link->resource[2]->start = 0; |
425 | req.Base = 0; | 424 | link->resource[2]->end = 0x8000; |
426 | req.Size = 0x8000; | 425 | ret = pcmcia_request_window(link, link->resource[2], ray_mem_speed); |
427 | req.AccessSpeed = ray_mem_speed; | ||
428 | ret = pcmcia_request_window(link, &req, &link->win); | ||
429 | if (ret) | 426 | if (ret) |
430 | goto failed; | 427 | goto failed; |
431 | ret = pcmcia_map_mem_page(link, link->win, 0); | 428 | ret = pcmcia_map_mem_page(link, link->resource[2], 0); |
432 | if (ret) | 429 | if (ret) |
433 | goto failed; | 430 | goto failed; |
434 | local->sram = ioremap(req.Base, req.Size); | 431 | local->sram = ioremap(link->resource[2]->start, |
432 | resource_size(link->resource[2])); | ||
435 | 433 | ||
436 | /*** Set up 16k window for shared memory (receive buffer) ***************/ | 434 | /*** Set up 16k window for shared memory (receive buffer) ***************/ |
437 | req.Attributes = | 435 | link->resource[3]->flags |= |
438 | WIN_DATA_WIDTH_8 | WIN_MEMORY_TYPE_CM | WIN_ENABLE | WIN_USE_WAIT; | 436 | WIN_DATA_WIDTH_8 | WIN_MEMORY_TYPE_CM | WIN_ENABLE | WIN_USE_WAIT; |
439 | req.Base = 0; | 437 | link->resource[3]->start = 0; |
440 | req.Size = 0x4000; | 438 | link->resource[3]->end = 0x4000; |
441 | req.AccessSpeed = ray_mem_speed; | 439 | ret = pcmcia_request_window(link, link->resource[3], ray_mem_speed); |
442 | ret = pcmcia_request_window(link, &req, &local->rmem_handle); | ||
443 | if (ret) | 440 | if (ret) |
444 | goto failed; | 441 | goto failed; |
445 | ret = pcmcia_map_mem_page(link, local->rmem_handle, 0x8000); | 442 | ret = pcmcia_map_mem_page(link, link->resource[3], 0x8000); |
446 | if (ret) | 443 | if (ret) |
447 | goto failed; | 444 | goto failed; |
448 | local->rmem = ioremap(req.Base, req.Size); | 445 | local->rmem = ioremap(link->resource[3]->start, |
446 | resource_size(link->resource[3])); | ||
449 | 447 | ||
450 | /*** Set up window for attribute memory ***********************************/ | 448 | /*** Set up window for attribute memory ***********************************/ |
451 | req.Attributes = | 449 | link->resource[4]->flags |= |
452 | WIN_DATA_WIDTH_8 | WIN_MEMORY_TYPE_AM | WIN_ENABLE | WIN_USE_WAIT; | 450 | WIN_DATA_WIDTH_8 | WIN_MEMORY_TYPE_AM | WIN_ENABLE | WIN_USE_WAIT; |
453 | req.Base = 0; | 451 | link->resource[4]->start = 0; |
454 | req.Size = 0x1000; | 452 | link->resource[4]->end = 0x1000; |
455 | req.AccessSpeed = ray_mem_speed; | 453 | ret = pcmcia_request_window(link, link->resource[4], ray_mem_speed); |
456 | ret = pcmcia_request_window(link, &req, &local->amem_handle); | ||
457 | if (ret) | 454 | if (ret) |
458 | goto failed; | 455 | goto failed; |
459 | ret = pcmcia_map_mem_page(link, local->amem_handle, 0); | 456 | ret = pcmcia_map_mem_page(link, link->resource[4], 0); |
460 | if (ret) | 457 | if (ret) |
461 | goto failed; | 458 | goto failed; |
462 | local->amem = ioremap(req.Base, req.Size); | 459 | local->amem = ioremap(link->resource[4]->start, |
460 | resource_size(link->resource[4])); | ||
463 | 461 | ||
464 | dev_dbg(&link->dev, "ray_config sram=%p\n", local->sram); | 462 | dev_dbg(&link->dev, "ray_config sram=%p\n", local->sram); |
465 | dev_dbg(&link->dev, "ray_config rmem=%p\n", local->rmem); | 463 | dev_dbg(&link->dev, "ray_config rmem=%p\n", local->rmem); |