Message ID | 20250123100747.1841357-7-damon.ding@rock-chips.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | Add eDP support for RK3588 | expand |
On Thu, Jan 23, 2025 at 06:07:39PM +0800, Damon Ding wrote: > Add two new functions: one to find &analogix_dp_device.plat_data via > &drm_dp_aux, and the other to get &analogix_dp_device.aux. Both of them > serve for the function of getting panel from DP AUX bus, which is why > they are included in a single commit. > > Signed-off-by: Damon Ding <damon.ding@rock-chips.com> > Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> > --- > drivers/gpu/drm/bridge/analogix/analogix_dp_core.c | 14 ++++++++++++++ > include/drm/bridge/analogix_dp.h | 4 ++++ > 2 files changed, 18 insertions(+) > > diff --git a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c > index b05f5b9f5258..8251adfce2f9 100644 > --- a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c > +++ b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c > @@ -1794,6 +1794,20 @@ int analogix_dp_stop_crc(struct drm_connector *connector) > } > EXPORT_SYMBOL_GPL(analogix_dp_stop_crc); > > +struct analogix_dp_plat_data *analogix_dp_aux_to_plat_data(struct drm_dp_aux *aux) > +{ > + struct analogix_dp_device *dp = to_dp(aux); > + > + return dp->plat_data; > +} > +EXPORT_SYMBOL_GPL(analogix_dp_aux_to_plat_data); > + > +struct drm_dp_aux *analogix_dp_get_aux(struct analogix_dp_device *dp) > +{ > + return &dp->aux; > +} > +EXPORT_SYMBOL_GPL(analogix_dp_get_aux); > + > MODULE_AUTHOR("Jingoo Han <jg1.han@samsung.com>"); > MODULE_DESCRIPTION("Analogix DP Core Driver"); > MODULE_LICENSE("GPL v2"); > diff --git a/include/drm/bridge/analogix_dp.h b/include/drm/bridge/analogix_dp.h > index 6002c5666031..1b119b547988 100644 > --- a/include/drm/bridge/analogix_dp.h > +++ b/include/drm/bridge/analogix_dp.h > @@ -7,6 +7,7 @@ > #ifndef _ANALOGIX_DP_H_ > #define _ANALOGIX_DP_H_ > > +#include <drm/display/drm_dp_aux_bus.h> Nit: it should be enough to just forward-declare struct drm_dp_aux instead. > #include <drm/drm_crtc.h> > > struct analogix_dp_device; > @@ -48,4 +49,7 @@ void analogix_dp_unbind(struct analogix_dp_device *dp); > int analogix_dp_start_crc(struct drm_connector *connector); > int analogix_dp_stop_crc(struct drm_connector *connector); > > +struct analogix_dp_plat_data *analogix_dp_aux_to_plat_data(struct drm_dp_aux *aux); > +struct drm_dp_aux *analogix_dp_get_aux(struct analogix_dp_device *dp); > + > #endif /* _ANALOGIX_DP_H_ */ > -- > 2.34.1 >
Hi Dmitry, On 2025/1/23 19:19, Dmitry Baryshkov wrote: > On Thu, Jan 23, 2025 at 06:07:39PM +0800, Damon Ding wrote: >> Add two new functions: one to find &analogix_dp_device.plat_data via >> &drm_dp_aux, and the other to get &analogix_dp_device.aux. Both of them >> serve for the function of getting panel from DP AUX bus, which is why >> they are included in a single commit. >> >> Signed-off-by: Damon Ding <damon.ding@rock-chips.com> >> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> >> --- >> drivers/gpu/drm/bridge/analogix/analogix_dp_core.c | 14 ++++++++++++++ >> include/drm/bridge/analogix_dp.h | 4 ++++ >> 2 files changed, 18 insertions(+) >> >> diff --git a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c >> index b05f5b9f5258..8251adfce2f9 100644 >> --- a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c >> +++ b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c >> @@ -1794,6 +1794,20 @@ int analogix_dp_stop_crc(struct drm_connector *connector) >> } >> EXPORT_SYMBOL_GPL(analogix_dp_stop_crc); >> >> +struct analogix_dp_plat_data *analogix_dp_aux_to_plat_data(struct drm_dp_aux *aux) >> +{ >> + struct analogix_dp_device *dp = to_dp(aux); >> + >> + return dp->plat_data; >> +} >> +EXPORT_SYMBOL_GPL(analogix_dp_aux_to_plat_data); >> + >> +struct drm_dp_aux *analogix_dp_get_aux(struct analogix_dp_device *dp) >> +{ >> + return &dp->aux; >> +} >> +EXPORT_SYMBOL_GPL(analogix_dp_get_aux); >> + >> MODULE_AUTHOR("Jingoo Han <jg1.han@samsung.com>"); >> MODULE_DESCRIPTION("Analogix DP Core Driver"); >> MODULE_LICENSE("GPL v2"); >> diff --git a/include/drm/bridge/analogix_dp.h b/include/drm/bridge/analogix_dp.h >> index 6002c5666031..1b119b547988 100644 >> --- a/include/drm/bridge/analogix_dp.h >> +++ b/include/drm/bridge/analogix_dp.h >> @@ -7,6 +7,7 @@ >> #ifndef _ANALOGIX_DP_H_ >> #define _ANALOGIX_DP_H_ >> >> +#include <drm/display/drm_dp_aux_bus.h> > > Nit: it should be enough to just forward-declare struct drm_dp_aux > instead. > I will move the header file to the driver of Rockchip Analogix DP and just use the forward-declare here in the next version. >> #include <drm/drm_crtc.h> >> >> struct analogix_dp_device; >> @@ -48,4 +49,7 @@ void analogix_dp_unbind(struct analogix_dp_device *dp); >> int analogix_dp_start_crc(struct drm_connector *connector); >> int analogix_dp_stop_crc(struct drm_connector *connector); >> >> +struct analogix_dp_plat_data *analogix_dp_aux_to_plat_data(struct drm_dp_aux *aux); >> +struct drm_dp_aux *analogix_dp_get_aux(struct analogix_dp_device *dp); >> + >> #endif /* _ANALOGIX_DP_H_ */ >> -- >> 2.34.1 >> > Best regards, Damon
diff --git a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c index b05f5b9f5258..8251adfce2f9 100644 --- a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c +++ b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c @@ -1794,6 +1794,20 @@ int analogix_dp_stop_crc(struct drm_connector *connector) } EXPORT_SYMBOL_GPL(analogix_dp_stop_crc); +struct analogix_dp_plat_data *analogix_dp_aux_to_plat_data(struct drm_dp_aux *aux) +{ + struct analogix_dp_device *dp = to_dp(aux); + + return dp->plat_data; +} +EXPORT_SYMBOL_GPL(analogix_dp_aux_to_plat_data); + +struct drm_dp_aux *analogix_dp_get_aux(struct analogix_dp_device *dp) +{ + return &dp->aux; +} +EXPORT_SYMBOL_GPL(analogix_dp_get_aux); + MODULE_AUTHOR("Jingoo Han <jg1.han@samsung.com>"); MODULE_DESCRIPTION("Analogix DP Core Driver"); MODULE_LICENSE("GPL v2"); diff --git a/include/drm/bridge/analogix_dp.h b/include/drm/bridge/analogix_dp.h index 6002c5666031..1b119b547988 100644 --- a/include/drm/bridge/analogix_dp.h +++ b/include/drm/bridge/analogix_dp.h @@ -7,6 +7,7 @@ #ifndef _ANALOGIX_DP_H_ #define _ANALOGIX_DP_H_ +#include <drm/display/drm_dp_aux_bus.h> #include <drm/drm_crtc.h> struct analogix_dp_device; @@ -48,4 +49,7 @@ void analogix_dp_unbind(struct analogix_dp_device *dp); int analogix_dp_start_crc(struct drm_connector *connector); int analogix_dp_stop_crc(struct drm_connector *connector); +struct analogix_dp_plat_data *analogix_dp_aux_to_plat_data(struct drm_dp_aux *aux); +struct drm_dp_aux *analogix_dp_get_aux(struct analogix_dp_device *dp); + #endif /* _ANALOGIX_DP_H_ */