aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/lantiq
diff options
context:
space:
mode:
authorJohn Crispin <blogic@openwrt.org>2014-08-18 13:09:08 +0000
committerJohn Crispin <blogic@openwrt.org>2014-08-18 13:09:08 +0000
commitbe4a26d8b1899c9e79d6a864bd7c77b55479db18 (patch)
tree8853957879b41e1f5009066e9e81577c4f45cabb /target/linux/lantiq
parent5757af7c9763cb2b555ae09a7fe288e3516cf2e9 (diff)
downloadmaster-187ad058-be4a26d8b1899c9e79d6a864bd7c77b55479db18.tar.gz
master-187ad058-be4a26d8b1899c9e79d6a864bd7c77b55479db18.tar.bz2
master-187ad058-be4a26d8b1899c9e79d6a864bd7c77b55479db18.zip
lantiq: add support for xrx200 firmware depending on soc type
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@42182 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/lantiq')
-rw-r--r--target/linux/lantiq/patches-3.10/0210-lantiq-xrx200-firmware-multi-version.patch27
1 files changed, 27 insertions, 0 deletions
diff --git a/target/linux/lantiq/patches-3.10/0210-lantiq-xrx200-firmware-multi-version.patch b/target/linux/lantiq/patches-3.10/0210-lantiq-xrx200-firmware-multi-version.patch
new file mode 100644
index 0000000000..cf5e5cfba9
--- /dev/null
+++ b/target/linux/lantiq/patches-3.10/0210-lantiq-xrx200-firmware-multi-version.patch
@@ -0,0 +1,27 @@
+--- a/arch/mips/lantiq/xway/xrx200_phy_fw.c
++++ b/arch/mips/lantiq/xway/xrx200_phy_fw.c
+@@ -24,7 +24,23 @@ static dma_addr_t xway_gphy_load(struct
+ void *fw_addr;
+ size_t size;
+
+- if (of_property_read_string(pdev->dev.of_node, "firmware", &fw_name)) {
++ if (of_get_property(pdev->dev.of_node, "firmware1", NULL) || of_get_property(pdev->dev.of_node, "firmware2", NULL)) {
++ switch(ltq_soc_type()) {
++ case SOC_TYPE_VR9:
++ if (of_property_read_string(pdev->dev.of_node, "firmware1", &fw_name)) {
++ dev_err(&pdev->dev, "failed to load firmware filename\n");
++ return 0;
++ }
++ break;
++ case SOC_TYPE_VR9_2:
++ if (of_property_read_string(pdev->dev.of_node, "firmware2", &fw_name)) {
++ dev_err(&pdev->dev, "failed to load firmware filename\n");
++ return 0;
++ }
++ break;
++ }
++ }
++ else if (of_property_read_string(pdev->dev.of_node, "firmware", &fw_name)) {
+ dev_err(&pdev->dev, "failed to load firmware filename\n");
+ return 0;
+ }