Re: [PATCH 07/60] drm/etnaviv: Add support for the nomodeset kernel parameter

From: Thomas Zimmermann
Date: Wed Dec 15 2021 - 04:39:08 EST


(cc'ing Maxime)

Hi

Am 15.12.21 um 10:18 schrieb Lucas Stach:
Hi Javier,

Am Mittwoch, dem 15.12.2021 um 01:59 +0100 schrieb Javier Martinez Canillas:
According to disable Documentation/admin-guide/kernel-parameters.txt, this
parameter can be used to disable kernel modesetting.

DRM drivers will not perform display-mode changes or accelerated rendering
and only the systewm system framebuffer will be available if it was set-up.

Etnaviv is a render-only driver, so will no perform any modesetting on
a display device, so I'm not sure if it's sensible to cover it under
the nomodeset parameter. I see that it is consistent with the other
drivers that deal with a combined render/display device, where the
render device also gets disabled with the nomodeset param, but it
doesn't really match the description of what the parameter is supposed
to do.

I'm not opposed to take this patch for consistency reasons, but I would
like to hear some more opinions from other DRM folks.

Our assumption is that we want to disable all DRM drivers; except those that operate on the firmware's original framebuffer. That's why the the test is called drm_firmware_drivers_only().

We know that nomodeset is a terrible name. We only kept it because it was already there, widely used, and already does what we need.

We had similar concerns with the v3d driver of vc4. Javier, maybe we should leave-out such special cases for now and discuss them separately?

Best regards
Thomas


Regards,
Lucas

But only a few DRM drivers currently check for nomodeset, make this driver
to also support the command line parameter.

Signed-off-by: Javier Martinez Canillas <javierm@xxxxxxxxxx>
---

drivers/gpu/drm/etnaviv/etnaviv_drv.c | 3 +++
1 file changed, 3 insertions(+)

diff --git a/drivers/gpu/drm/etnaviv/etnaviv_drv.c b/drivers/gpu/drm/etnaviv/etnaviv_drv.c
index 7dcc6392792d..58b092248f7b 100644
--- a/drivers/gpu/drm/etnaviv/etnaviv_drv.c
+++ b/drivers/gpu/drm/etnaviv/etnaviv_drv.c
@@ -635,6 +635,9 @@ static int __init etnaviv_init(void)
int ret;
struct device_node *np;
+ if (drm_firmware_drivers_only())
+ return -ENODEV;
+
etnaviv_validate_init();
ret = platform_driver_register(&etnaviv_gpu_driver);



--
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

Attachment: OpenPGP_signature
Description: OpenPGP digital signature