If pdata is NULL smc911x_probe will crash. Checking the zero initialized
priv->shift results in default configuration if pdata is not set.

Signed-off-by: Jan Weitzel <j.weit...@phytec.de>
---
 drivers/net/smc911x.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/smc911x.c b/drivers/net/smc911x.c
index bc1e001..f697608 100644
--- a/drivers/net/smc911x.c
+++ b/drivers/net/smc911x.c
@@ -435,7 +435,7 @@ static int smc911x_probe(struct device_d *dev)
                priv->shift = pdata->shift;
 
        if (is_32bit) {
-               if (pdata->shift) {
+               if (priv->shift) {
                        priv->reg_read = __smc911x_reg_readl_shift;
                        priv->reg_write = __smc911x_reg_writel_shift;
                } else {
@@ -443,7 +443,7 @@ static int smc911x_probe(struct device_d *dev)
                        priv->reg_write = __smc911x_reg_writel;
                }
        } else {
-               if (pdata->shift) {
+               if (priv->shift) {
                        priv->reg_read = __smc911x_reg_readw_shift;
                        priv->reg_write = __smc911x_reg_writew_shift;
                } else {
-- 
1.7.0.4


_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

Reply via email to