6f3b62781b
Everyone who implements connector_helper_funcs->atomic_check reaches into the connector state to get the atomic state. Instead of continuing this pattern, change the callback signature to just give atomic state and let the driver determine what it does and does not need from it. Eventually all atomic functions should do this, but that's just too much busy work for me. Changes in v3: - Added to the set Changes in v4: - None Changes in v5: - intel_digital_connector_atomic_check declaration moved to i915_atomic.h Link to v3: https://patchwork.freedesktop.org/patch/msgid/20190502194956.218441-5-sean@poorly.run Link to v4: https://patchwork.freedesktop.org/patch/msgid/20190508160920.144739-5-sean@poorly.run Cc: Daniel Vetter <daniel@ffwll.ch> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> Cc: Jani Nikula <jani.nikula@linux.intel.com> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> Cc: Rodrigo Vivi <rodrigo.vivi@intel.com> Cc: Ben Skeggs <bskeggs@redhat.com> Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Cc: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com> Cc: Eric Anholt <eric@anholt.net> Tested-by: Heiko Stuebner <heiko@sntech.de> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> [for rcar lvds] Acked-by: Daniel Vetter <daniel@ffwll.ch> Signed-off-by: Sean Paul <seanpaul@chromium.org> Link: https://patchwork.freedesktop.org/patch/msgid/20190611160844.257498-5-sean@poorly.run
50 lines
1.5 KiB
C
50 lines
1.5 KiB
C
/* SPDX-License-Identifier: MIT */
|
|
/*
|
|
* Copyright © 2019 Intel Corporation
|
|
*/
|
|
|
|
#ifndef __INTEL_ATOMIC_H__
|
|
#define __INTEL_ATOMIC_H__
|
|
|
|
#include <linux/types.h>
|
|
|
|
struct drm_atomic_state;
|
|
struct drm_connector;
|
|
struct drm_connector_state;
|
|
struct drm_crtc;
|
|
struct drm_crtc_state;
|
|
struct drm_device;
|
|
struct drm_i915_private;
|
|
struct drm_property;
|
|
struct intel_crtc;
|
|
struct intel_crtc_state;
|
|
|
|
int intel_digital_connector_atomic_get_property(struct drm_connector *connector,
|
|
const struct drm_connector_state *state,
|
|
struct drm_property *property,
|
|
u64 *val);
|
|
int intel_digital_connector_atomic_set_property(struct drm_connector *connector,
|
|
struct drm_connector_state *state,
|
|
struct drm_property *property,
|
|
u64 val);
|
|
int intel_digital_connector_atomic_check(struct drm_connector *conn,
|
|
struct drm_atomic_state *state);
|
|
struct drm_connector_state *
|
|
intel_digital_connector_duplicate_state(struct drm_connector *connector);
|
|
|
|
struct drm_crtc_state *intel_crtc_duplicate_state(struct drm_crtc *crtc);
|
|
void intel_crtc_destroy_state(struct drm_crtc *crtc,
|
|
struct drm_crtc_state *state);
|
|
struct drm_atomic_state *intel_atomic_state_alloc(struct drm_device *dev);
|
|
void intel_atomic_state_clear(struct drm_atomic_state *state);
|
|
|
|
struct intel_crtc_state *
|
|
intel_atomic_get_crtc_state(struct drm_atomic_state *state,
|
|
struct intel_crtc *crtc);
|
|
|
|
int intel_atomic_setup_scalers(struct drm_i915_private *dev_priv,
|
|
struct intel_crtc *intel_crtc,
|
|
struct intel_crtc_state *crtc_state);
|
|
|
|
#endif /* __INTEL_ATOMIC_H__ */
|