[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <c2b85e83-08ac-42cc-9924-bc6ba115b24d@arm.com>
Date: Tue, 30 Jan 2024 12:34:47 +0000
From: Robin Murphy <robin.murphy@....com>
To: Damien Le Moal <dlemoal@...nel.org>,
Lennert Buytenhek <kernel@...tstofly.org>
Cc: Niklas Cassel <cassel@...nel.org>, linux-ide@...r.kernel.org,
linux-kernel@...r.kernel.org, John Garry <john.g.garry@...cle.com>,
Joerg Roedel <jroedel@...e.de>, Szuying Chen <chensiying21@...il.com>,
Jesse1_Chang@...edia.com.tw, Richard_Hsu@...edia.com.tw,
Chloe_Chen@...edia.com.tw
Subject: Re: [PATCH] ahci: Extend ASM1061 43-bit DMA address quirk to other
ASM106x parts
On 30/01/2024 12:26 pm, Damien Le Moal wrote:
> On 1/30/24 20:59, Lennert Buytenhek wrote:
>> On Tue, Jan 30, 2024 at 08:46:23PM +0900, Damien Le Moal wrote:
>>
>>>> ASMedia have confirmed that all ASM106x parts currently listed in
>>>> ahci_pci_tbl[] suffer from the 43-bit DMA address limitation that we ran
>>>> into on the ASM1061, and therefore, we need to apply the quirk added by
>>>> commit 20730e9b2778 to the other supported ASM106x parts as well.
>>>>
>>>> Signed-off-by: Lennert Buytenhek <kernel@...tstofly.org>
>>>
>>> I think this needs a cc: stable tag.
>>
>> The commit that is likely responsible for surfacing this issue is
>> 791c2b17fb40 which went into v6.6 -- so would this then be appropriate,
>> or do you think this should be backported to older versions as well?
>
> Hmmm... given this is a hardware "bug", it seems safer to backport to all stable
> & lts. From what I understand, the device may be doing bad DMA, regardless of
> what the iommu is doing. Niklas ? you followed this more carefully than I did :)
Yes, that would be the case; in practice though it's likely that people
just don't tend to use these particular controllers in big systems which
actually have RAM at >43-bit physical addresses.
Thanks,
Robin.
>
>>
>> Cc: stable@...r.kernel.org # 6.6.x
>>
>>
>>>> ---
>>>> drivers/ata/ahci.c | 10 +++++-----
>>>> 1 file changed, 5 insertions(+), 5 deletions(-)
>>>>
>>>> diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c
>>>> index d2460fa985b7..da2e74fce2d9 100644
>>>> --- a/drivers/ata/ahci.c
>>>> +++ b/drivers/ata/ahci.c
>>>> @@ -606,13 +606,13 @@ static const struct pci_device_id ahci_pci_tbl[] = {
>>>> { PCI_VDEVICE(PROMISE, 0x3781), board_ahci }, /* FastTrak TX8660 ahci-mode */
>>>>
>>>> /* ASMedia */
>>>> - { PCI_VDEVICE(ASMEDIA, 0x0601), board_ahci }, /* ASM1060 */
>>>> - { PCI_VDEVICE(ASMEDIA, 0x0602), board_ahci }, /* ASM1060 */
>>>> + { PCI_VDEVICE(ASMEDIA, 0x0601), board_ahci_43bit_dma }, /* ASM1060 */
>>>> + { PCI_VDEVICE(ASMEDIA, 0x0602), board_ahci_43bit_dma }, /* ASM1060 */
>>>> { PCI_VDEVICE(ASMEDIA, 0x0611), board_ahci_43bit_dma }, /* ASM1061 */
>>>> { PCI_VDEVICE(ASMEDIA, 0x0612), board_ahci_43bit_dma }, /* ASM1061/1062 */
>>>> - { PCI_VDEVICE(ASMEDIA, 0x0621), board_ahci }, /* ASM1061R */
>>>> - { PCI_VDEVICE(ASMEDIA, 0x0622), board_ahci }, /* ASM1062R */
>>>> - { PCI_VDEVICE(ASMEDIA, 0x0624), board_ahci }, /* ASM1062+JMB575 */
>>>> + { PCI_VDEVICE(ASMEDIA, 0x0621), board_ahci_43bit_dma }, /* ASM1061R */
>>>> + { PCI_VDEVICE(ASMEDIA, 0x0622), board_ahci_43bit_dma }, /* ASM1062R */
>>>> + { PCI_VDEVICE(ASMEDIA, 0x0624), board_ahci_43bit_dma }, /* ASM1062+JMB575 */
>>>> { PCI_VDEVICE(ASMEDIA, 0x1062), board_ahci }, /* ASM1062A */
>>>> { PCI_VDEVICE(ASMEDIA, 0x1064), board_ahci }, /* ASM1064 */
>>>> { PCI_VDEVICE(ASMEDIA, 0x1164), board_ahci }, /* ASM1164 */
>
Powered by blists - more mailing lists