From de72f0b09e53cd32f2e21dd3cceec439d2b187d3 Mon Sep 17 00:00:00 2001 From: blogic Date: Mon, 1 Sep 2014 13:21:23 +0000 Subject: [PATCH] lantiq: add support for xrx200 firmware depending on soc type MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Álvaro Fernández Rojas Backport of r42182 git-svn-id: svn://svn.openwrt.org/openwrt/branches/barrier_breaker@42361 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- ...lantiq-xrx200-firmware-multi-version.patch | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 target/linux/lantiq/patches-3.10/0210-lantiq-xrx200-firmware-multi-version.patch 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 0000000..cf5e5cf --- /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; + }