From: Josua Mayer <josua@solid-run.com>
To: Damien Le Moal <dlemoal@kernel.org>,
"linux-ide@vger.kernel.org" <linux-ide@vger.kernel.org>,
Niklas Cassel <cassel@kernel.org>
Cc: Klaus Kudielka <klaus.kudielka@gmail.com>
Subject: Re: [PATCH] ata: libahci_platform: Do not set mask_port_map when not needed
Date: Fri, 7 Feb 2025 11:35:30 +0000 [thread overview]
Message-ID: <b0636252-6d42-49bd-816e-6785e30fc1fc@solid-run.com> (raw)
In-Reply-To: <20250207074810.1433154-1-dlemoal@kernel.org>
Hi Damien,
Am 07.02.25 um 08:48 schrieb Damien Le Moal:
> Commit 8c87215dd3a2 ("ata: libahci_platform: support non-consecutive
> port numbers") modified ahci_platform_get_resources() to allow
> identifying the ports of a controller that are defined as child nodes of
> the controller node in order to support non-consecutive port numbers (as
> defined by the platform device tree).
>
> However, this commit also erroneously sets bits 0 of
> hpriv->mask_port_map when the platform devices tree does not define port
> child nodes, to match the fact that the temporary default number of
> ports used in that case is 1.
And to match the fact that only index 0 of hpriv->phys[0] was initialized
from calling into ahci_platform_get_phy.
> Doing so causes ahci_platform_init_host()
> to initialize and probe only the first port, even if the controller has
> multiple ports (that are not defined through the platform DT).
>
> Fix this by removing setting bit 0 of hpriv->mask_port_map when the
> platform devices tree does not define port child nodes.
>
> Reported-by: Klaus Kudielka <klaus.kudielka@gmail.com>
> Fixes: 8c87215dd3a2 ("ata: libahci_platform: support non-consecutive port numbers")
> Cc: stable@vger.kernel.org
> Tested-by: Klaus Kudielka <klaus.kudielka@gmail.com>
> Signed-off-by: Damien Le Moal <dlemoal@kernel.org>
> ---
> drivers/ata/libahci_platform.c | 2 --
> 1 file changed, 2 deletions(-)
>
> diff --git a/drivers/ata/libahci_platform.c b/drivers/ata/libahci_platform.c
> index 53b2c7719dc5..91d44302eac9 100644
> --- a/drivers/ata/libahci_platform.c
> +++ b/drivers/ata/libahci_platform.c
> @@ -651,8 +651,6 @@ struct ahci_host_priv *ahci_platform_get_resources(struct platform_device *pdev,
> * If no sub-node was found, keep this for device tree
> * compatibility
> */
> - hpriv->mask_port_map |= BIT(0);
> -
> rc = ahci_platform_get_phy(hpriv, 0, dev, dev->of_node);
This function initializes hpriv->phys[0], and only at index 0.
I am not aware whether or not this causes any issue,
therefore no strong objection to restoring original behaviour.
> if (rc)
> goto err_out;
sincerely
Josua Mayer
prev parent reply other threads:[~2025-02-07 11:35 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-07 7:48 [PATCH] ata: libahci_platform: Do not set mask_port_map when not needed Damien Le Moal
2025-02-07 8:54 ` Niklas Cassel
2025-02-07 11:35 ` Josua Mayer [this message]
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=b0636252-6d42-49bd-816e-6785e30fc1fc@solid-run.com \
--to=josua@solid-run.com \
--cc=cassel@kernel.org \
--cc=dlemoal@kernel.org \
--cc=klaus.kudielka@gmail.com \
--cc=linux-ide@vger.kernel.org \
/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.