lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <45255d15-6149-adbc-6b26-22e9d03634f3@suse.de>
Date:   Tue, 18 Apr 2023 09:24:40 +0200
From:   Thomas Zimmermann <tzimmermann@...e.de>
To:     Jammy Huang <jammy_huang@...eedtech.com>, airlied@...hat.com,
        airlied@...il.com, daniel@...ll.ch
Cc:     giantl@...dia.com, linux-kernel@...r.kernel.org,
        dri-devel@...ts.freedesktop.org
Subject: Re: [PATCH] drm/ast: Fix ARM compatibility

Hi

Am 18.04.23 um 03:23 schrieb Jammy Huang:
> Hi Thomas,
> 
> The Intel(x86) CPUs have a separate address space for "IO", but the ARM 
> architecture only has "memory", so all IO devices are accessed as if 
> they were memory. Which means ARM does not support isolated IO. Here is 
> a related discussion on ARM's forum.
> 
> https://community.arm.com/support-forums/f/architectures-and-processors-forum/52046/how-to-read-write-an-i-o-port-in-aarch64
> 
> Thus, we want to adapt MMIO only after this patch.

What I mean is that there's a comment that says "assume the chip has 
MMIO enabled by default (rev 0x20 and higher)". We also support revs 
before 0x20. What happens to them?

Best regards
Thomas

> 
> On 2023/4/17 下午 07:51, Thomas Zimmermann wrote:
>> Hi
>>
>> Am 07.04.23 um 04:09 schrieb Jammy Huang:
>>> Hi Thomas,
>>>
>>> Could you help review this patch??
>>>
>>> We met some problem on nvidia's ARM platfrom and need this patch to 
>>> fix it.
>>>
>>> On 2023/3/2 上午 10:19, Jammy Huang wrote:
>>>> ARM architecture only has 'memory', so all devices are accessed by 
>>>> MMIO.
>>>>
>>>> Signed-off-by: Jammy Huang <jammy_huang@...eedtech.com>
>>>> ---
>>>>   drivers/gpu/drm/ast/ast_main.c | 17 +----------------
>>>>   1 file changed, 1 insertion(+), 16 deletions(-)
>>>>
>>>> diff --git a/drivers/gpu/drm/ast/ast_main.c 
>>>> b/drivers/gpu/drm/ast/ast_main.c
>>>> index 794ffd4a29c5..f86d01e9f024 100644
>>>> --- a/drivers/gpu/drm/ast/ast_main.c
>>>> +++ b/drivers/gpu/drm/ast/ast_main.c
>>>> @@ -424,22 +424,7 @@ struct ast_device *ast_device_create(const 
>>>> struct drm_driver *drv,
>>>>       if (!ast->regs)
>>>>           return ERR_PTR(-EIO);
>>>> -    /*
>>>> -     * If we don't have IO space at all, use MMIO now and
>>>> -     * assume the chip has MMIO enabled by default (rev 0x20
>>>> -     * and higher).
>>>> -     */
>>>> -    if (!(pci_resource_flags(pdev, 2) & IORESOURCE_IO)) {
>>>> -        drm_info(dev, "platform has no IO space, trying MMIO\n");
>>>> -        ast->ioregs = ast->regs + AST_IO_MM_OFFSET;
>>>> -    }
>>>> -
>>>> -    /* "map" IO regs if the above hasn't done so already */
>>>> -    if (!ast->ioregs) {
>>>> -        ast->ioregs = pcim_iomap(pdev, 2, 0);
>>
>> What happens on systems that use this branch?
>>
>> Best regards
>> Thomas
>>
>>>> -        if (!ast->ioregs)
>>>> -            return ERR_PTR(-EIO);
>>>> -    }
>>>> +    ast->ioregs = ast->regs + AST_IO_MM_OFFSET;
>>>>       ast_detect_chip(dev, &need_post);
>>>>
>>>> base-commit: 254986e324add8a30d0019c6da59f81adc8b565f
>>>
>>
> -- 
> Best Regards
> Jammy
> 

-- 
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Maxfeldstr. 5, 90409 Nürnberg, Germany
(HRB 36809, AG Nürnberg)
Geschäftsführer: Ivo Totev

Download attachment "OpenPGP_signature" of type "application/pgp-signature" (841 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ