r8168: add LED configuration from OF
This adds the ability to configure the LED configuration register using
OF. This way, the correct value for board specific LED configuration can
be determined.
Signed-off-by: AmadeusGhost <amadeus@jmu.edu.cn>
(cherry picked from commit 66b00bed22)
This commit is contained in:
parent
7c8f07e4a3
commit
b6ba7d4c34
@ -0,0 +1,42 @@
|
||||
--- a/src/r8168_n.c
|
||||
+++ b/src/r8168_n.c
|
||||
@@ -46,6 +46,7 @@
|
||||
#include <linux/etherdevice.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/mii.h>
|
||||
+#include <linux/of.h>
|
||||
#include <linux/if_vlan.h>
|
||||
#include <linux/crc32.h>
|
||||
#include <linux/interrupt.h>
|
||||
@@ -23978,6 +23979,22 @@ rtl8168_set_bios_setting(struct net_device *dev)
|
||||
}
|
||||
}
|
||||
|
||||
+static int rtl8168_led_configuration(struct rtl8168_private *tp)
|
||||
+{
|
||||
+ u32 led_data;
|
||||
+ int ret;
|
||||
+
|
||||
+ ret = of_property_read_u32(tp->pci_dev->dev.of_node,
|
||||
+ "realtek,led-data", &led_data);
|
||||
+
|
||||
+ if (ret)
|
||||
+ return ret;
|
||||
+
|
||||
+ RTL_W16(tp, CustomLED, led_data);
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
static void
|
||||
rtl8168_init_software_variable(struct net_device *dev)
|
||||
{
|
||||
@@ -24441,6 +24458,8 @@ rtl8168_init_software_variable(struct net_device *dev)
|
||||
tp->NotWrMcuPatchCode = TRUE;
|
||||
}
|
||||
|
||||
+ rtl8168_led_configuration(tp);
|
||||
+
|
||||
tp->NicCustLedValue = RTL_R16(tp, CustomLED);
|
||||
|
||||
rtl8168_get_hw_wol(dev);
|
||||
Loading…
Reference in New Issue
Block a user