From 2cb8f0a4cf0f3d6606cad6b0cff687b71a78c3dd Mon Sep 17 00:00:00 2001
From: "Andrey Jr. Melnikov" <temnota.am@gmail.com>
Date: Sun, 8 Oct 2017 00:00:28 +0300
Subject: [PATCH] ar71xx: Fix NULL pointer dereferece in
 at803x_link_change_notify()

Check pdata pointer before use to avoid OOPS if dev_get_platdata() return
NULL.

Signed-off-by: Andrey Jr. Melnikov <temnota.am@gmail.com>
---
 .../ar71xx/patches-4.4/902-at803x-add-reset-gpio-pdata.patch  | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/target/linux/ar71xx/patches-4.4/902-at803x-add-reset-gpio-pdata.patch b/target/linux/ar71xx/patches-4.4/902-at803x-add-reset-gpio-pdata.patch
index 2244f882e7..efc8502bcd 100644
--- a/target/linux/ar71xx/patches-4.4/902-at803x-add-reset-gpio-pdata.patch
+++ b/target/linux/ar71xx/patches-4.4/902-at803x-add-reset-gpio-pdata.patch
@@ -42,7 +42,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  	 */
  	if (phydev->state == PHY_NOLINK) {
 -		if (priv->gpiod_reset && !priv->phy_reset) {
-+		if ((priv->gpiod_reset || pdata->has_reset_gpio) &&
++		if ((priv->gpiod_reset || (pdata && pdata->has_reset_gpio)) &&
 +		    !priv->phy_reset) {
  			struct at803x_context context;
  
@@ -52,7 +52,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
 -			msleep(1);
 -			gpiod_set_value(priv->gpiod_reset, 0);
 -			msleep(1);
-+			if (pdata->has_reset_gpio) {
++			if (pdata && pdata->has_reset_gpio) {
 +				gpio_set_value_cansleep(pdata->reset_gpio, 0);
 +				msleep(1);
 +				gpio_set_value_cansleep(pdata->reset_gpio, 1);
-- 
2.25.1