mirror of
https://github.com/torvalds/linux.git
synced 2024-11-24 21:21:41 +00:00
drm/bridge-connector: switch to using drmm allocations
Turn drm_bridge_connector to using drmm_kzalloc() and drmm_connector_init() and drop the custom destroy function. The drm_connector_unregister() and fwnode_handle_put() are already handled by the drm_connector_cleanup() and so are safe to be dropped. Acked-by: Maxime Ripard <mripard@kernel.org> Link: https://patchwork.freedesktop.org/patch/msgid/20240607-bridge-hdmi-connector-v5-2-ab384e6021af@linaro.org Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
This commit is contained in:
parent
000d1940c9
commit
c12907be57
@ -15,6 +15,7 @@
|
||||
#include <drm/drm_connector.h>
|
||||
#include <drm/drm_device.h>
|
||||
#include <drm/drm_edid.h>
|
||||
#include <drm/drm_managed.h>
|
||||
#include <drm/drm_modeset_helper_vtables.h>
|
||||
#include <drm/drm_probe_helper.h>
|
||||
|
||||
@ -193,19 +194,6 @@ drm_bridge_connector_detect(struct drm_connector *connector, bool force)
|
||||
return status;
|
||||
}
|
||||
|
||||
static void drm_bridge_connector_destroy(struct drm_connector *connector)
|
||||
{
|
||||
struct drm_bridge_connector *bridge_connector =
|
||||
to_drm_bridge_connector(connector);
|
||||
|
||||
drm_connector_unregister(connector);
|
||||
drm_connector_cleanup(connector);
|
||||
|
||||
fwnode_handle_put(connector->fwnode);
|
||||
|
||||
kfree(bridge_connector);
|
||||
}
|
||||
|
||||
static void drm_bridge_connector_debugfs_init(struct drm_connector *connector,
|
||||
struct dentry *root)
|
||||
{
|
||||
@ -224,7 +212,6 @@ static const struct drm_connector_funcs drm_bridge_connector_funcs = {
|
||||
.reset = drm_atomic_helper_connector_reset,
|
||||
.detect = drm_bridge_connector_detect,
|
||||
.fill_modes = drm_helper_probe_single_connector_modes,
|
||||
.destroy = drm_bridge_connector_destroy,
|
||||
.atomic_duplicate_state = drm_atomic_helper_connector_duplicate_state,
|
||||
.atomic_destroy_state = drm_atomic_helper_connector_destroy_state,
|
||||
.debugfs_init = drm_bridge_connector_debugfs_init,
|
||||
@ -328,7 +315,7 @@ struct drm_connector *drm_bridge_connector_init(struct drm_device *drm,
|
||||
int connector_type;
|
||||
int ret;
|
||||
|
||||
bridge_connector = kzalloc(sizeof(*bridge_connector), GFP_KERNEL);
|
||||
bridge_connector = drmm_kzalloc(drm, sizeof(*bridge_connector), GFP_KERNEL);
|
||||
if (!bridge_connector)
|
||||
return ERR_PTR(-ENOMEM);
|
||||
|
||||
@ -383,9 +370,9 @@ struct drm_connector *drm_bridge_connector_init(struct drm_device *drm,
|
||||
return ERR_PTR(-EINVAL);
|
||||
}
|
||||
|
||||
ret = drm_connector_init_with_ddc(drm, connector,
|
||||
&drm_bridge_connector_funcs,
|
||||
connector_type, ddc);
|
||||
ret = drmm_connector_init(drm, connector,
|
||||
&drm_bridge_connector_funcs,
|
||||
connector_type, ddc);
|
||||
if (ret) {
|
||||
kfree(bridge_connector);
|
||||
return ERR_PTR(ret);
|
||||
|
Loading…
Reference in New Issue
Block a user