|
@@ -505,12 +505,6 @@ dm9000_poll_work(struct work_struct *w)
|
|
static void
|
|
static void
|
|
dm9000_release_board(struct platform_device *pdev, struct board_info *db)
|
|
dm9000_release_board(struct platform_device *pdev, struct board_info *db)
|
|
{
|
|
{
|
|
- if (db->data_res == NULL) {
|
|
|
|
- if (db->addr_res != NULL)
|
|
|
|
- release_mem_region((unsigned long)db->io_addr, 4);
|
|
|
|
- return;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
/* unmap our resources */
|
|
/* unmap our resources */
|
|
|
|
|
|
iounmap(db->io_addr);
|
|
iounmap(db->io_addr);
|
|
@@ -518,15 +512,11 @@ dm9000_release_board(struct platform_device *pdev, struct board_info *db)
|
|
|
|
|
|
/* release the resources */
|
|
/* release the resources */
|
|
|
|
|
|
- if (db->data_req != NULL) {
|
|
|
|
- release_resource(db->data_req);
|
|
|
|
- kfree(db->data_req);
|
|
|
|
- }
|
|
|
|
|
|
+ release_resource(db->data_req);
|
|
|
|
+ kfree(db->data_req);
|
|
|
|
|
|
- if (db->addr_req != NULL) {
|
|
|
|
- release_resource(db->addr_req);
|
|
|
|
- kfree(db->addr_req);
|
|
|
|
- }
|
|
|
|
|
|
+ release_resource(db->addr_req);
|
|
|
|
+ kfree(db->addr_req);
|
|
}
|
|
}
|
|
|
|
|
|
static unsigned char dm9000_type_to_char(enum dm9000_type type)
|
|
static unsigned char dm9000_type_to_char(enum dm9000_type type)
|
|
@@ -580,12 +570,6 @@ dm9000_probe(struct platform_device *pdev)
|
|
|
|
|
|
INIT_DELAYED_WORK(&db->phy_poll, dm9000_poll_work);
|
|
INIT_DELAYED_WORK(&db->phy_poll, dm9000_poll_work);
|
|
|
|
|
|
-
|
|
|
|
- if (pdev->num_resources < 3) {
|
|
|
|
- ret = -ENODEV;
|
|
|
|
- goto out;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
db->addr_res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
|
|
db->addr_res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
|
|
db->data_res = platform_get_resource(pdev, IORESOURCE_MEM, 1);
|
|
db->data_res = platform_get_resource(pdev, IORESOURCE_MEM, 1);
|
|
db->irq_res = platform_get_resource(pdev, IORESOURCE_IRQ, 0);
|
|
db->irq_res = platform_get_resource(pdev, IORESOURCE_IRQ, 0);
|