Search Linux Wireless

Re: [PATCH v4 2/2] ath11k: Use reserved host DDR addresses from DT for PCI devices

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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@xxxxxxxxxxxxxx/#24605391
[2] https://patchwork.kernel.org/project/linux-wireless/patch/1637244892-27267-2-git-send-email-akolli@xxxxxxxxxxxxxx/#24605417





[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Wireless Regulations]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux