--- zzzz-none-000/linux-4.4.60/arch/mips/ath79/dev-common.c 2017-04-08 07:53:53.000000000 +0000 +++ wasp-540e-714/linux-4.4.60/arch/mips/ath79/dev-common.c 2019-07-03 09:21:34.000000000 +0000 @@ -85,7 +85,11 @@ soc_is_ar724x() || soc_is_ar913x() || soc_is_ar934x() || - soc_is_qca955x()) { + soc_is_qca953x() || + soc_is_qca955x() || + soc_is_qca956x() || + soc_is_qcn550x() || + soc_is_tp9343()) { ath79_uart_data[0].uartclk = uart_clk_rate; platform_device_register(&ath79_uart_device); } else if (soc_is_ar933x()) { @@ -148,12 +152,23 @@ } else if (soc_is_ar934x()) { ath79_gpio_pdata.ngpios = AR934X_GPIO_COUNT; ath79_gpio_pdata.oe_inverted = 1; + } else if (soc_is_qca953x()) { + ath79_gpio_pdata.ngpios = QCA953X_GPIO_COUNT; + ath79_gpio_pdata.oe_inverted = 1; } else if (soc_is_qca955x()) { ath79_gpio_pdata.ngpios = QCA955X_GPIO_COUNT; ath79_gpio_pdata.oe_inverted = 1; + } else if (soc_is_qca956x() || soc_is_tp9343()) { + ath79_gpio_pdata.ngpios = QCA956X_GPIO_COUNT; + ath79_gpio_pdata.oe_inverted = 1; + } else if (soc_is_qcn550x()) { + ath79_gpio_pdata.ngpios = QCN550X_GPIO_COUNT; + ath79_gpio_pdata.oe_inverted = 1; } else { BUG(); } platform_device_register(&ath79_gpio_device); + ath79_gpio_base = ioremap(AR71XX_GPIO_BASE, AR71XX_GPIO_SIZE); } +