Browse Source

lantiq: add support for xrx200 firmware depending on soc type

Signed-off-by: Álvaro Fernández Rojas <[email protected]>

SVN-Revision: 42182
John Crispin 11 years ago
parent
commit
c2668207de

+ 27 - 0
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;
+ 	}