Thread (3 messages) 3 messages, 2 authors, 2017-07-26

[PATCH] memory: mtk-smi: Use of_device_get_match_data helper

From: Honghui Zhang <hidden>
Date: 2017-07-26 12:35:33
Also in: linux-iommu, linux-mediatek, lkml

On Wed, 2017-07-26 at 11:36 +0100, Robin Murphy wrote:
On 26/07/17 10:59, honghui.zhang at mediatek.com wrote:
quoted
From: Honghui Zhang <redacted>
quoted
 	 * for mtk smi gen 1, we need to get the ao(always on) base to config
 	 * m4u port, and we need to enable the aync clock for transform the smi
 	 * clock into emi clock domain, but for mtk smi gen2, there's no smi ao
 	 * base.
 	 */
-	smi_gen = (enum mtk_smi_gen)of_id->data;
-	if (smi_gen == MTK_SMI_GEN1) {
+	smi_gen = of_device_get_match_data(dev);
The data you're retrieving is the exact same thing as of_id->data was,
i.e. an enum mtk_smi_gen cast to void*, so dereferencing it is not a
good idea. The first patch was almost right; you just need to keep the
cast in the assignment to smi_gen.

Robin.
Hi, Robin, thanks very much.
I will send a new version.
quoted
+	if (*smi_gen == MTK_SMI_GEN1) {
 		res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
 		common->smi_ao_base = devm_ioremap_resource(dev, res);
 		if (IS_ERR(common->smi_ao_base))
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help