From 2cb5974dcaaaaa5027defa854e2c4616eb6cb03a Mon Sep 17 00:00:00 2001 From: Thomas Zimmermann Date: Wed, 4 Mar 2020 15:53:12 +0100 Subject: [PATCH] drm/simple-kms: Fix documentation for drm_simple_encoder_init() Brings the documentation of drm_simple_encoder_init() in sync with the function's signature. Also add a paragraph clarifying the management of the encoder's memory. v2: * document memory management Signed-off-by: Thomas Zimmermann Reviewed-by: Daniel Vetter Fixes: 63170ac6f2e8 ("drm/simple-kms: Add drm_simple_encoder_{init,create}()") Cc: Sam Ravnborg Cc: Maarten Lankhorst Cc: Maxime Ripard Cc: David Airlie Cc: Daniel Vetter Cc: dri-devel@lists.freedesktop.org Link: https://patchwork.freedesktop.org/patch/msgid/20200304145312.26458-1-tzimmermann@suse.de --- drivers/gpu/drm/drm_simple_kms_helper.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/drm_simple_kms_helper.c b/drivers/gpu/drm/drm_simple_kms_helper.c index 5a2abe2dea3e..74946690aba4 100644 --- a/drivers/gpu/drm/drm_simple_kms_helper.c +++ b/drivers/gpu/drm/drm_simple_kms_helper.c @@ -38,9 +38,10 @@ static const struct drm_encoder_funcs drm_simple_encoder_funcs_cleanup = { }; /** - * drm_simple_encoder_init - Initialize a preallocated encoder + * drm_simple_encoder_init - Initialize a preallocated encoder with + * basic functionality. * @dev: drm device - * @funcs: callbacks for this encoder + * @encoder: the encoder to initialize * @encoder_type: user visible type of the encoder * * Initialises a preallocated encoder that has no further functionality. @@ -48,6 +49,15 @@ static const struct drm_encoder_funcs drm_simple_encoder_funcs_cleanup = { * The encoder will be cleaned up automatically as part of the mode-setting * cleanup. * + * The caller of drm_simple_encoder_init() is responsible for freeing + * the encoder's memory after the encoder has been cleaned up. At the + * moment this only works reliably if the encoder data structure is + * stored in the device structure. Free the encoder's memory as part of + * the device release function. + * + * FIXME: Later improvements to DRM's resource management may allow for + * an automated kfree() of the encoder's memory. + * * Returns: * Zero on success, error code on failure. */