[PATCH v4 2/2] ath11k: Use reserved host DDR addresses from DT for PCI devices
Sven Eckelmann
sven at narfation.org
Sun Nov 21 06:45:29 PST 2021
On Sunday, 21 November 2021 15:22:01 CET Anilkumar Kolli wrote:
[...]
> +static int ath11k_mhi_read_addr_from_dt(struct mhi_controller *mhi_ctrl)
> +{
> + struct device_node *np;
> + dma_addr_t start;
> + u32 reg[4];
> + int ret;
> +
> + np = of_find_node_by_type(NULL, "memory");
> + if (!np)
> + return -ENOENT;
> +
> + ret = of_property_read_u32_array(np, "reg", reg, 4);
> + if (ret)
> + return ret;
> +
> + start = reg[0] + reg[1];
> + mhi_ctrl->iova_start = start + 0x1000000;
> + mhi_ctrl->iova_stop = start + reg[2] + reg[3];
> +
> + return 0;
> +}
> +
[...]
> + ret = of_property_read_u32(dev->of_node, "memory-region",
> + &hremote_phandle);
> + if (ret) {
> + ath11k_dbg(ab, ATH11K_DBG_QMI,
> + "qmi fail to get hremote phandle\n");
> + return ret;
> + }
> +
> + hremote_node = of_find_node_by_phandle(hremote_phandle);
> + if (!hremote_node) {
> + ath11k_dbg(ab, ATH11K_DBG_QMI,
> + "qmi fail to get hremote_node\n");
> + return ret;
> + }
> +
> + ret = of_property_read_u32_array(hremote_node, "reg", reg, 4);
> + if (ret) {
> + ath11k_dbg(ab, ATH11K_DBG_QMI,
> + "qmi fail to get reg from hremote\n");
> + return ret;
> + }
> +
> + start = reg[0] + reg[1];
> + size = reg[2] + reg[3];
See my messages for v2 [1] and v3 [2]
Kind regards,
Sven
[1] https://patchwork.kernel.org/project/linux-wireless/patch/1637082058-6398-2-git-send-email-akolli@codeaurora.org/#24605391
[2] https://patchwork.kernel.org/project/linux-wireless/patch/1637244892-27267-2-git-send-email-akolli@codeaurora.org/#24605417
More information about the ath11k
mailing list