[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <69da05c4-7471-47aa-a72d-b08d9b97e8dc@collabora.com>
Date: Mon, 24 Mar 2025 15:44:03 -0300
From: Ariel D'Alessandro <ariel.dalessandro@...labora.com>
To: Adrian Larumbe <adrian.larumbe@...labora.com>
Cc: dri-devel@...ts.freedesktop.org, linux-kernel@...r.kernel.org,
boris.brezillon@...labora.com, robh@...nel.org, steven.price@....com,
maarten.lankhorst@...ux.intel.com, mripard@...nel.org, tzimmermann@...e.de,
airlied@...il.com, simona@...ll.ch, kernel@...labora.com,
linux-mediatek@...ts.infradead.org, linux-arm-kernel@...ts.infradead.org,
sjoerd@...labora.com, angelogioacchino.delregno@...labora.com
Subject: Re: [PATCH v4 4/6] drm/panfrost: Add support for AARCH64_4K page
table format
Adrian,
On 3/22/25 3:48 PM, Adrian Larumbe wrote:
> On 17.03.2025 11:52, Ariel D'Alessandro wrote:
>> Currently, Panfrost only supports MMU configuration in "LEGACY" (as
>> Bifrost calls it) mode, a (modified) version of LPAE "Large Physical
>> Address Extension", which in Linux we've called "mali_lpae".
>>
>> This commit adds support for conditionally enabling AARCH64_4K page
>> table format. To achieve that, a "GPU optional quirks" field was added
>> to `struct panfrost_features` with the related flag.
>>
>> Note that, in order to enable AARCH64_4K mode, the GPU variant must have
>> the HW_FEATURE_AARCH64_MMU feature flag present.
>>
>> Signed-off-by: Ariel D'Alessandro <ariel.dalessandro@...labora.com>
>> Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@...labora.com>
>> Reviewed-by: Boris Brezillon <boris.brezillon@...labora.com>
>> ---
>> drivers/gpu/drm/panfrost/panfrost_device.h | 16 +++
>> drivers/gpu/drm/panfrost/panfrost_mmu.c | 140 +++++++++++++++++++--
>> drivers/gpu/drm/panfrost/panfrost_regs.h | 34 +++++
>> 3 files changed, 183 insertions(+), 7 deletions(-)
[snip]
>> diff --git a/drivers/gpu/drm/panfrost/panfrost_mmu.c b/drivers/gpu/drm/panfrost/panfrost_mmu.c
>> index 294f86b3c25e7..506f42ccfd5fc 100644
>> --- a/drivers/gpu/drm/panfrost/panfrost_mmu.c
>> +++ b/drivers/gpu/drm/panfrost/panfrost_mmu.c
[snip]
>> +static int panfrost_mmu_cfg_init(struct panfrost_mmu *mmu,
>> + enum io_pgtable_fmt fmt)
>> +{
>> + struct panfrost_device *pfdev = mmu->pfdev;
>> +
>> + switch (fmt) {
>> + case ARM_64_LPAE_S1:
>> + return mmu_cfg_init_aarch64_4k(mmu);
>> + case ARM_MALI_LPAE:
>> + return mmu_cfg_init_mali_lpae(mmu);
>> + default:
>> + /* This should never happen */
>> + drm_WARN(pfdev->ddev, "Invalid pgtable format");
>
> I think there's a '1' missing here before the string literal.
> Other than that,
>
> Reviewed-by: Adrián Larumbe <adrian.larumbe@...labora.com>
Fixed, thanks!
Will send v5 right away.
--
Ariel D'Alessandro
Software Engineer
Collabora Ltd.
Platinum Building, St John's Innovation Park, Cambridge CB4 0DS, UK
Registered in England & Wales, no. 5513718
Powered by blists - more mailing lists