From: Bjorn Helgaas <helgaas@kernel.org>
To: honghui.zhang@mediatek.com
Cc: lorenzo.pieralisi@arm.com, linux-arm-kernel@lists.infradead.org,
linux-mediatek@lists.infradead.org, linux-pci@vger.kernel.org,
linux-kernel@vger.kernel.org, ryder.lee@mediatek.com,
youlin.pei@mediatek.com, jianjun.wang@mediatek.com
Subject: Re: [PATCH] PCI: Mediatek: Use resource_size function on resource object
Date: Wed, 30 Jan 2019 10:03:29 -0600 [thread overview]
Message-ID: <20190130160329.GF229773@google.com> (raw)
In-Reply-To: <1546409033-20412-1-git-send-email-honghui.zhang@mediatek.com>
On Wed, Jan 02, 2019 at 02:03:53PM +0800, honghui.zhang@mediatek.com wrote:
> From: Honghui Zhang <honghui.zhang@mediatek.com>
>
> drivers/pci/pcie-mediatek.c:720:13-16: WARNING: Suspicious code. resource_size is maybe missing with mem
>
> Generated by: scripts/coccinelle/api/resource_size.cocci
>
> Signed-off-by: Honghui Zhang <honghui.zhang@mediatek.com>
> ---
> drivers/pci/controller/pcie-mediatek.c | 4 +---
> 1 file changed, 1 insertion(+), 3 deletions(-)
>
> diff --git a/drivers/pci/controller/pcie-mediatek.c b/drivers/pci/controller/pcie-mediatek.c
> index e307166..0168376 100644
> --- a/drivers/pci/controller/pcie-mediatek.c
> +++ b/drivers/pci/controller/pcie-mediatek.c
> @@ -654,7 +654,6 @@ static int mtk_pcie_startup_port_v2(struct mtk_pcie_port *port)
> struct resource *mem = &pcie->mem;
> const struct mtk_pcie_soc *soc = port->pcie->soc;
> u32 val;
> - size_t size;
> int err;
>
> /* MT7622 platforms need to enable LTSSM and ASPM from PCIe subsys */
> @@ -706,8 +705,7 @@ static int mtk_pcie_startup_port_v2(struct mtk_pcie_port *port)
> mtk_pcie_enable_msi(port);
>
> /* Set AHB to PCIe translation windows */
> - size = mem->end - mem->start;
> - val = lower_32_bits(mem->start) | AHB2PCIE_SIZE(fls(size));
> + val = lower_32_bits(mem->start) | AHB2PCIE_SIZE(fls(resource_size(mem)));
> writel(val, port->base + PCIE_AHB_TRANS_BASE0_L);
>
> val = upper_32_bits(mem->start);
Unrelated to this patch, but just below this:
/* Set PCIe to AXI translation memory space.*/
val = fls(0xffffffff) | WIN_ENABLE;
writel(val, port->base + PCIE_AXI_WINDOW0);
Can you double-check the use of "fls(0xffffffff)"? That expression is
a constant and I think evaluates to 31 (0x1f), i.e.,
val = 0x1f | WIN_ENABLE;
I don't know the hardware, so this might be correct, but
"fls(0xffffffff)" looks funny because I think it's the same as
"fls(0x80000000)".
Bjorn
WARNING: multiple messages have this Message-ID (diff)
From: Bjorn Helgaas <helgaas@kernel.org>
To: honghui.zhang@mediatek.com
Cc: youlin.pei@mediatek.com, lorenzo.pieralisi@arm.com,
linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org,
jianjun.wang@mediatek.com, ryder.lee@mediatek.com,
linux-mediatek@lists.infradead.org,
linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH] PCI: Mediatek: Use resource_size function on resource object
Date: Wed, 30 Jan 2019 10:03:29 -0600 [thread overview]
Message-ID: <20190130160329.GF229773@google.com> (raw)
In-Reply-To: <1546409033-20412-1-git-send-email-honghui.zhang@mediatek.com>
On Wed, Jan 02, 2019 at 02:03:53PM +0800, honghui.zhang@mediatek.com wrote:
> From: Honghui Zhang <honghui.zhang@mediatek.com>
>
> drivers/pci/pcie-mediatek.c:720:13-16: WARNING: Suspicious code. resource_size is maybe missing with mem
>
> Generated by: scripts/coccinelle/api/resource_size.cocci
>
> Signed-off-by: Honghui Zhang <honghui.zhang@mediatek.com>
> ---
> drivers/pci/controller/pcie-mediatek.c | 4 +---
> 1 file changed, 1 insertion(+), 3 deletions(-)
>
> diff --git a/drivers/pci/controller/pcie-mediatek.c b/drivers/pci/controller/pcie-mediatek.c
> index e307166..0168376 100644
> --- a/drivers/pci/controller/pcie-mediatek.c
> +++ b/drivers/pci/controller/pcie-mediatek.c
> @@ -654,7 +654,6 @@ static int mtk_pcie_startup_port_v2(struct mtk_pcie_port *port)
> struct resource *mem = &pcie->mem;
> const struct mtk_pcie_soc *soc = port->pcie->soc;
> u32 val;
> - size_t size;
> int err;
>
> /* MT7622 platforms need to enable LTSSM and ASPM from PCIe subsys */
> @@ -706,8 +705,7 @@ static int mtk_pcie_startup_port_v2(struct mtk_pcie_port *port)
> mtk_pcie_enable_msi(port);
>
> /* Set AHB to PCIe translation windows */
> - size = mem->end - mem->start;
> - val = lower_32_bits(mem->start) | AHB2PCIE_SIZE(fls(size));
> + val = lower_32_bits(mem->start) | AHB2PCIE_SIZE(fls(resource_size(mem)));
> writel(val, port->base + PCIE_AHB_TRANS_BASE0_L);
>
> val = upper_32_bits(mem->start);
Unrelated to this patch, but just below this:
/* Set PCIe to AXI translation memory space.*/
val = fls(0xffffffff) | WIN_ENABLE;
writel(val, port->base + PCIE_AXI_WINDOW0);
Can you double-check the use of "fls(0xffffffff)"? That expression is
a constant and I think evaluates to 31 (0x1f), i.e.,
val = 0x1f | WIN_ENABLE;
I don't know the hardware, so this might be correct, but
"fls(0xffffffff)" looks funny because I think it's the same as
"fls(0x80000000)".
Bjorn
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2019-01-30 16:03 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-01-02 6:03 [PATCH] PCI: Mediatek: Use resource_size function on resource object honghui.zhang
2019-01-02 6:03 ` honghui.zhang
2019-01-30 12:33 ` Lorenzo Pieralisi
2019-01-30 12:33 ` Lorenzo Pieralisi
2019-01-30 15:58 ` Bjorn Helgaas
2019-01-30 15:58 ` Bjorn Helgaas
2019-01-30 16:31 ` Lorenzo Pieralisi
2019-01-30 16:31 ` Lorenzo Pieralisi
2019-01-30 16:31 ` Lorenzo Pieralisi
2019-01-31 1:21 ` Honghui Zhang
2019-01-31 1:21 ` Honghui Zhang
2019-01-31 1:21 ` Honghui Zhang
2019-01-30 15:41 ` Bjorn Helgaas
2019-01-30 15:41 ` Bjorn Helgaas
2019-01-30 15:49 ` Bjorn Helgaas
2019-01-30 15:49 ` Bjorn Helgaas
2019-01-31 3:03 ` Honghui Zhang
2019-01-31 3:03 ` Honghui Zhang
2019-01-31 3:03 ` Honghui Zhang
2019-01-31 7:52 ` Honghui Zhang
2019-01-31 7:52 ` Honghui Zhang
2019-01-31 7:52 ` Honghui Zhang
2019-01-30 16:03 ` Bjorn Helgaas [this message]
2019-01-30 16:03 ` Bjorn Helgaas
2019-01-31 2:26 ` [SPAM]Re: " Honghui Zhang
2019-01-31 2:26 ` Honghui Zhang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190130160329.GF229773@google.com \
--to=helgaas@kernel.org \
--cc=honghui.zhang@mediatek.com \
--cc=jianjun.wang@mediatek.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mediatek@lists.infradead.org \
--cc=linux-pci@vger.kernel.org \
--cc=lorenzo.pieralisi@arm.com \
--cc=ryder.lee@mediatek.com \
--cc=youlin.pei@mediatek.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.