On 25/12/2024 11:04, Yijie Yang wrote:
static int qcom_ethqos_probe(struct platform_device *pdev)
{
- struct device_node *np = pdev->dev.of_node;
+ struct device_node *np = pdev->dev.of_node, *root;
const struct ethqos_emac_driver_data *data;
struct plat_stmmacenet_data *plat_dat;
struct stmmac_resources stmmac_res;
@@ -810,6 +805,15 @@ static int qcom_ethqos_probe(struct platform_device *pdev)
ret = of_get_phy_mode(np, ðqos->phy_mode);
if (ret)
return dev_err_probe(dev, ret, "Failed to get phy mode\n");
+
+ root = of_find_node_by_path("/");
+ if (root && of_device_is_compatible(root, "qcom,sa8540p-ride"))
Nope, your drivers are not supposed to poke root compatibles. Drop and
fix your driver to behave correctly for all existing devices.
+ ethqos->needs_rx_prog_swap = true;Best regards,
+ else
+ ethqos->needs_rx_prog_swap =
Krzysztof