提交 264be2f5 编写于 作者: S Sergei Shtylyov 提交者: David S. Miller

sh_eth: exit probe with unknown register layout

Exit the driver's probe() method when the register layout is unknown as the
driver would cause kernel oops in this case anyway.

While at it, move the corresponding error message printout and convert it from
pr_err() to dev_err().
Suggested-by: NJoe Perches <joe@perches.com>
Signed-off-by: NSergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Signed-off-by: NDavid S. Miller <davem@davemloft.net>
上级 7c169445
......@@ -2703,7 +2703,6 @@ static const u16 *sh_eth_get_register_offset(int register_type)
reg_offset = sh_eth_offset_fast_sh3_sh2;
break;
default:
pr_err("Unknown register type (%d)\n", register_type);
break;
}
......@@ -2859,6 +2858,12 @@ static int sh_eth_drv_probe(struct platform_device *pdev)
mdp->cd = (struct sh_eth_cpu_data *)match->data;
}
mdp->reg_offset = sh_eth_get_register_offset(mdp->cd->register_type);
if (!mdp->reg_offset) {
dev_err(&pdev->dev, "Unknown register type (%d)\n",
mdp->cd->register_type);
ret = -EINVAL;
goto out_release;
}
sh_eth_set_default_cpu_data(mdp->cd);
/* set function */
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册