Re: [PATCH 2/5] drm/amdgpu: Use drm_crtc_vblank_crtc()

2024-05-08 Thread Ville Syrjälä
On Wed, May 08, 2024 at 09:47:50AM -0400, Alex Deucher wrote:
> On Mon, Apr 8, 2024 at 3:06 PM Ville Syrjala
>  wrote:
> >
> > From: Ville Syrjälä 
> >
> > Replace the open coded drm_crtc_vblank_crtc() with the real
> > thing.
> >
> > Cc: Alex Deucher 
> > Cc: "Christian König" 
> > Cc: "Pan, Xinhui" 
> > Cc: amd-...@lists.freedesktop.org
> > Signed-off-by: Ville Syrjälä 
> 
> Reviewed-by: Alex Deucher 

Thanks. Pushed to drm-misc-next.

-- 
Ville Syrjälä
Intel


Re: [PATCH 2/5] drm/amdgpu: Use drm_crtc_vblank_crtc()

2024-05-08 Thread Alex Deucher
On Mon, Apr 8, 2024 at 3:06 PM Ville Syrjala
 wrote:
>
> From: Ville Syrjälä 
>
> Replace the open coded drm_crtc_vblank_crtc() with the real
> thing.
>
> Cc: Alex Deucher 
> Cc: "Christian König" 
> Cc: "Pan, Xinhui" 
> Cc: amd-...@lists.freedesktop.org
> Signed-off-by: Ville Syrjälä 

Reviewed-by: Alex Deucher 

> ---
>  drivers/gpu/drm/amd/amdgpu/amdgpu_vkms.c  | 8 ++--
>  drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 2 +-
>  2 files changed, 3 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vkms.c 
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_vkms.c
> index 8baa2e0935cc..258703145161 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vkms.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vkms.c
> @@ -65,9 +65,7 @@ static enum hrtimer_restart 
> amdgpu_vkms_vblank_simulate(struct hrtimer *timer)
>
>  static int amdgpu_vkms_enable_vblank(struct drm_crtc *crtc)
>  {
> -   struct drm_device *dev = crtc->dev;
> -   unsigned int pipe = drm_crtc_index(crtc);
> -   struct drm_vblank_crtc *vblank = >vblank[pipe];
> +   struct drm_vblank_crtc *vblank = drm_crtc_vblank_crtc(crtc);
> struct amdgpu_vkms_output *out = drm_crtc_to_amdgpu_vkms_output(crtc);
> struct amdgpu_crtc *amdgpu_crtc = to_amdgpu_crtc(crtc);
>
> @@ -91,10 +89,8 @@ static bool amdgpu_vkms_get_vblank_timestamp(struct 
> drm_crtc *crtc,
>  ktime_t *vblank_time,
>  bool in_vblank_irq)
>  {
> -   struct drm_device *dev = crtc->dev;
> -   unsigned int pipe = crtc->index;
> struct amdgpu_vkms_output *output = 
> drm_crtc_to_amdgpu_vkms_output(crtc);
> -   struct drm_vblank_crtc *vblank = >vblank[pipe];
> +   struct drm_vblank_crtc *vblank = drm_crtc_vblank_crtc(crtc);
> struct amdgpu_crtc *amdgpu_crtc = to_amdgpu_crtc(crtc);
>
> if (!READ_ONCE(vblank->enabled)) {
> diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c 
> b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> index 71d2d44681b2..662d2d83473b 100644
> --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> @@ -528,7 +528,7 @@ static void dm_vupdate_high_irq(void *interrupt_params)
> if (acrtc) {
> vrr_active = amdgpu_dm_crtc_vrr_active_irq(acrtc);
> drm_dev = acrtc->base.dev;
> -   vblank = _dev->vblank[acrtc->base.index];
> +   vblank = drm_crtc_vblank_crtc(>base);
> previous_timestamp = 
> atomic64_read(_params->previous_timestamp);
> frame_duration_ns = vblank->time - previous_timestamp;
>
> --
> 2.43.2
>


Re: [PATCH 2/5] drm/amdgpu: Use drm_crtc_vblank_crtc()

2024-05-08 Thread Jani Nikula
On Mon, 08 Apr 2024, Ville Syrjala  wrote:
> From: Ville Syrjälä 
>
> Replace the open coded drm_crtc_vblank_crtc() with the real
> thing.
>
> Cc: Alex Deucher 
> Cc: "Christian König" 
> Cc: "Pan, Xinhui" 
> Cc: amd-...@lists.freedesktop.org
> Signed-off-by: Ville Syrjälä 

FWIW,

Reviewed-by: Jani Nikula 

> ---
>  drivers/gpu/drm/amd/amdgpu/amdgpu_vkms.c  | 8 ++--
>  drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 2 +-
>  2 files changed, 3 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vkms.c 
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_vkms.c
> index 8baa2e0935cc..258703145161 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vkms.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vkms.c
> @@ -65,9 +65,7 @@ static enum hrtimer_restart 
> amdgpu_vkms_vblank_simulate(struct hrtimer *timer)
>  
>  static int amdgpu_vkms_enable_vblank(struct drm_crtc *crtc)
>  {
> - struct drm_device *dev = crtc->dev;
> - unsigned int pipe = drm_crtc_index(crtc);
> - struct drm_vblank_crtc *vblank = >vblank[pipe];
> + struct drm_vblank_crtc *vblank = drm_crtc_vblank_crtc(crtc);
>   struct amdgpu_vkms_output *out = drm_crtc_to_amdgpu_vkms_output(crtc);
>   struct amdgpu_crtc *amdgpu_crtc = to_amdgpu_crtc(crtc);
>  
> @@ -91,10 +89,8 @@ static bool amdgpu_vkms_get_vblank_timestamp(struct 
> drm_crtc *crtc,
>ktime_t *vblank_time,
>bool in_vblank_irq)
>  {
> - struct drm_device *dev = crtc->dev;
> - unsigned int pipe = crtc->index;
>   struct amdgpu_vkms_output *output = 
> drm_crtc_to_amdgpu_vkms_output(crtc);
> - struct drm_vblank_crtc *vblank = >vblank[pipe];
> + struct drm_vblank_crtc *vblank = drm_crtc_vblank_crtc(crtc);
>   struct amdgpu_crtc *amdgpu_crtc = to_amdgpu_crtc(crtc);
>  
>   if (!READ_ONCE(vblank->enabled)) {
> diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c 
> b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> index 71d2d44681b2..662d2d83473b 100644
> --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> @@ -528,7 +528,7 @@ static void dm_vupdate_high_irq(void *interrupt_params)
>   if (acrtc) {
>   vrr_active = amdgpu_dm_crtc_vrr_active_irq(acrtc);
>   drm_dev = acrtc->base.dev;
> - vblank = _dev->vblank[acrtc->base.index];
> + vblank = drm_crtc_vblank_crtc(>base);
>   previous_timestamp = 
> atomic64_read(_params->previous_timestamp);
>   frame_duration_ns = vblank->time - previous_timestamp;

-- 
Jani Nikula, Intel


[PATCH 2/5] drm/amdgpu: Use drm_crtc_vblank_crtc()

2024-04-08 Thread Ville Syrjala
From: Ville Syrjälä 

Replace the open coded drm_crtc_vblank_crtc() with the real
thing.

Cc: Alex Deucher 
Cc: "Christian König" 
Cc: "Pan, Xinhui" 
Cc: amd-...@lists.freedesktop.org
Signed-off-by: Ville Syrjälä 
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_vkms.c  | 8 ++--
 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 2 +-
 2 files changed, 3 insertions(+), 7 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vkms.c 
b/drivers/gpu/drm/amd/amdgpu/amdgpu_vkms.c
index 8baa2e0935cc..258703145161 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vkms.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vkms.c
@@ -65,9 +65,7 @@ static enum hrtimer_restart 
amdgpu_vkms_vblank_simulate(struct hrtimer *timer)
 
 static int amdgpu_vkms_enable_vblank(struct drm_crtc *crtc)
 {
-   struct drm_device *dev = crtc->dev;
-   unsigned int pipe = drm_crtc_index(crtc);
-   struct drm_vblank_crtc *vblank = >vblank[pipe];
+   struct drm_vblank_crtc *vblank = drm_crtc_vblank_crtc(crtc);
struct amdgpu_vkms_output *out = drm_crtc_to_amdgpu_vkms_output(crtc);
struct amdgpu_crtc *amdgpu_crtc = to_amdgpu_crtc(crtc);
 
@@ -91,10 +89,8 @@ static bool amdgpu_vkms_get_vblank_timestamp(struct drm_crtc 
*crtc,
 ktime_t *vblank_time,
 bool in_vblank_irq)
 {
-   struct drm_device *dev = crtc->dev;
-   unsigned int pipe = crtc->index;
struct amdgpu_vkms_output *output = 
drm_crtc_to_amdgpu_vkms_output(crtc);
-   struct drm_vblank_crtc *vblank = >vblank[pipe];
+   struct drm_vblank_crtc *vblank = drm_crtc_vblank_crtc(crtc);
struct amdgpu_crtc *amdgpu_crtc = to_amdgpu_crtc(crtc);
 
if (!READ_ONCE(vblank->enabled)) {
diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c 
b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
index 71d2d44681b2..662d2d83473b 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
@@ -528,7 +528,7 @@ static void dm_vupdate_high_irq(void *interrupt_params)
if (acrtc) {
vrr_active = amdgpu_dm_crtc_vrr_active_irq(acrtc);
drm_dev = acrtc->base.dev;
-   vblank = _dev->vblank[acrtc->base.index];
+   vblank = drm_crtc_vblank_crtc(>base);
previous_timestamp = 
atomic64_read(_params->previous_timestamp);
frame_duration_ns = vblank->time - previous_timestamp;
 
-- 
2.43.2