Re: [PATCH 2/7] radeon: consolidate asic-specific function decls for r600 & later

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, Nov 28, 2010 at 1:06 PM, Daniel Vetter <daniel.vetter@xxxxxxxx> wrote:
> Now all the asic specific stuff ist mostly hid in radeon_asic.*
>
> Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

Reviewed-by: Alex Deucher <alexdeucher@xxxxxxxxx>

> ---
>  drivers/gpu/drm/radeon/r600_audio.c  |    1 +
>  drivers/gpu/drm/radeon/r600_hdmi.c   |    1 +
>  drivers/gpu/drm/radeon/radeon.h      |   61 ++--------------------------------
>  drivers/gpu/drm/radeon/radeon_asic.h |   58 +++++++++++++++++++++++++++++---
>  4 files changed, 58 insertions(+), 63 deletions(-)
>
> diff --git a/drivers/gpu/drm/radeon/r600_audio.c b/drivers/gpu/drm/radeon/r600_audio.c
> index b5443fe..846fae5 100644
> --- a/drivers/gpu/drm/radeon/r600_audio.c
> +++ b/drivers/gpu/drm/radeon/r600_audio.c
> @@ -26,6 +26,7 @@
>  #include "drmP.h"
>  #include "radeon.h"
>  #include "radeon_reg.h"
> +#include "radeon_asic.h"
>  #include "atom.h"
>
>  #define AUDIO_TIMER_INTERVALL 100 /* 1/10 sekund should be enough */
> diff --git a/drivers/gpu/drm/radeon/r600_hdmi.c b/drivers/gpu/drm/radeon/r600_hdmi.c
> index e6a58ed..50db6d6 100644
> --- a/drivers/gpu/drm/radeon/r600_hdmi.c
> +++ b/drivers/gpu/drm/radeon/r600_hdmi.c
> @@ -26,6 +26,7 @@
>  #include "drmP.h"
>  #include "radeon_drm.h"
>  #include "radeon.h"
> +#include "radeon_asic.h"
>  #include "atom.h"
>
>  /*
> diff --git a/drivers/gpu/drm/radeon/radeon.h b/drivers/gpu/drm/radeon/radeon.h
> index 75b9585..2257a01 100644
> --- a/drivers/gpu/drm/radeon/radeon.h
> +++ b/drivers/gpu/drm/radeon/radeon.h
> @@ -1433,59 +1433,12 @@ extern void radeon_gtt_location(struct radeon_device *rdev, struct radeon_mc *mc
>  extern int radeon_resume_kms(struct drm_device *dev);
>  extern int radeon_suspend_kms(struct drm_device *dev, pm_message_t state);
>
> -/* r600, rv610, rv630, rv620, rv635, rv670, rs780, rs880 */
> -extern bool r600_card_posted(struct radeon_device *rdev);
> -extern void r600_cp_stop(struct radeon_device *rdev);
> -extern int r600_cp_start(struct radeon_device *rdev);
> -extern void r600_ring_init(struct radeon_device *rdev, unsigned ring_size);
> -extern int r600_cp_resume(struct radeon_device *rdev);
> -extern void r600_cp_fini(struct radeon_device *rdev);
> -extern int r600_count_pipe_bits(uint32_t val);
> -extern int r600_mc_wait_for_idle(struct radeon_device *rdev);
> -extern int r600_pcie_gart_init(struct radeon_device *rdev);
> -extern void r600_pcie_gart_tlb_flush(struct radeon_device *rdev);
> -extern int r600_ib_test(struct radeon_device *rdev);
> -extern int r600_ring_test(struct radeon_device *rdev);
> -extern void r600_scratch_init(struct radeon_device *rdev);
> -extern int r600_blit_init(struct radeon_device *rdev);
> -extern void r600_blit_fini(struct radeon_device *rdev);
> -extern int r600_init_microcode(struct radeon_device *rdev);
> -extern int r600_asic_reset(struct radeon_device *rdev);
> -/* r600 irq */
> -extern int r600_irq_init(struct radeon_device *rdev);
> -extern void r600_irq_fini(struct radeon_device *rdev);
> -extern void r600_ih_ring_init(struct radeon_device *rdev, unsigned ring_size);
> -extern int r600_irq_set(struct radeon_device *rdev);
> -extern void r600_irq_suspend(struct radeon_device *rdev);
> -extern void r600_disable_interrupts(struct radeon_device *rdev);
> -extern void r600_rlc_stop(struct radeon_device *rdev);
> -/* r600 audio */
> -extern int r600_audio_init(struct radeon_device *rdev);
> -extern int r600_audio_tmds_index(struct drm_encoder *encoder);
> -extern void r600_audio_set_clock(struct drm_encoder *encoder, int clock);
> -extern int r600_audio_channels(struct radeon_device *rdev);
> -extern int r600_audio_bits_per_sample(struct radeon_device *rdev);
> -extern int r600_audio_rate(struct radeon_device *rdev);
> -extern uint8_t r600_audio_status_bits(struct radeon_device *rdev);
> -extern uint8_t r600_audio_category_code(struct radeon_device *rdev);
> -extern void r600_audio_schedule_polling(struct radeon_device *rdev);
> -extern void r600_audio_enable_polling(struct drm_encoder *encoder);
> -extern void r600_audio_disable_polling(struct drm_encoder *encoder);
> -extern void r600_audio_fini(struct radeon_device *rdev);
> -extern void r600_hdmi_init(struct drm_encoder *encoder);
> +/*
> + * r600 functions used by radeon_encoder.c
> + */
>  extern void r600_hdmi_enable(struct drm_encoder *encoder);
>  extern void r600_hdmi_disable(struct drm_encoder *encoder);
>  extern void r600_hdmi_setmode(struct drm_encoder *encoder, struct drm_display_mode *mode);
> -extern int r600_hdmi_buffer_status_changed(struct drm_encoder *encoder);
> -extern void r600_hdmi_update_audio_settings(struct drm_encoder *encoder);
> -
> -extern void r700_vram_gtt_location(struct radeon_device *rdev, struct radeon_mc *mc);
> -extern void r700_cp_stop(struct radeon_device *rdev);
> -extern void r700_cp_fini(struct radeon_device *rdev);
> -extern void evergreen_disable_interrupt_state(struct radeon_device *rdev);
> -extern int evergreen_irq_set(struct radeon_device *rdev);
> -extern int evergreen_blit_init(struct radeon_device *rdev);
> -extern void evergreen_blit_fini(struct radeon_device *rdev);
>
>  /* radeon_acpi.c */
>  #if defined(CONFIG_ACPI)
> @@ -1494,14 +1447,6 @@ extern int radeon_acpi_init(struct radeon_device *rdev);
>  static inline int radeon_acpi_init(struct radeon_device *rdev) { return 0; }
>  #endif
>
> -/* evergreen */
> -struct evergreen_mc_save {
> -       u32 vga_control[6];
> -       u32 vga_render_control;
> -       u32 vga_hdp_control;
> -       u32 crtc_control[6];
> -};
> -
>  #include "radeon_object.h"
>
>  #endif
> diff --git a/drivers/gpu/drm/radeon/radeon_asic.h b/drivers/gpu/drm/radeon/radeon_asic.h
> index a5fddcd..979a11e 100644
> --- a/drivers/gpu/drm/radeon/radeon_asic.h
> +++ b/drivers/gpu/drm/radeon/radeon_asic.h
> @@ -208,7 +208,6 @@ void rs400_gart_adjust_size(struct radeon_device *rdev);
>  void rs400_gart_disable(struct radeon_device *rdev);
>  void rs400_gart_fini(struct radeon_device *rdev);
>
> -
>  /*
>  * rs600.
>  */
> @@ -307,14 +306,13 @@ void r600_pciep_wreg(struct radeon_device *rdev, uint32_t reg, uint32_t v);
>  int r600_cs_parse(struct radeon_cs_parser *p);
>  void r600_fence_ring_emit(struct radeon_device *rdev,
>                          struct radeon_fence *fence);
> -int r600_irq_process(struct radeon_device *rdev);
> -int r600_irq_set(struct radeon_device *rdev);
>  bool r600_gpu_is_lockup(struct radeon_device *rdev);
>  int r600_asic_reset(struct radeon_device *rdev);
>  int r600_set_surface_reg(struct radeon_device *rdev, int reg,
>                         uint32_t tiling_flags, uint32_t pitch,
>                         uint32_t offset, uint32_t obj_size);
>  void r600_clear_surface_reg(struct radeon_device *rdev, int reg);
> +int r600_ib_test(struct radeon_device *rdev);
>  void r600_ring_ib_execute(struct radeon_device *rdev, struct radeon_ib *ib);
>  int r600_ring_test(struct radeon_device *rdev);
>  int r600_copy_blit(struct radeon_device *rdev,
> @@ -331,6 +329,44 @@ extern void r600_pm_misc(struct radeon_device *rdev);
>  extern void r600_pm_init_profile(struct radeon_device *rdev);
>  extern void rs780_pm_init_profile(struct radeon_device *rdev);
>  extern void r600_pm_get_dynpm_state(struct radeon_device *rdev);
> +bool r600_card_posted(struct radeon_device *rdev);
> +void r600_cp_stop(struct radeon_device *rdev);
> +int r600_cp_start(struct radeon_device *rdev);
> +void r600_ring_init(struct radeon_device *rdev, unsigned ring_size);
> +int r600_cp_resume(struct radeon_device *rdev);
> +void r600_cp_fini(struct radeon_device *rdev);
> +int r600_count_pipe_bits(uint32_t val);
> +int r600_mc_wait_for_idle(struct radeon_device *rdev);
> +int r600_pcie_gart_init(struct radeon_device *rdev);
> +void r600_scratch_init(struct radeon_device *rdev);
> +int r600_blit_init(struct radeon_device *rdev);
> +void r600_blit_fini(struct radeon_device *rdev);
> +int r600_init_microcode(struct radeon_device *rdev);
> +/* r600 irq */
> +int r600_irq_process(struct radeon_device *rdev);
> +int r600_irq_init(struct radeon_device *rdev);
> +void r600_irq_fini(struct radeon_device *rdev);
> +void r600_ih_ring_init(struct radeon_device *rdev, unsigned ring_size);
> +int r600_irq_set(struct radeon_device *rdev);
> +void r600_irq_suspend(struct radeon_device *rdev);
> +void r600_disable_interrupts(struct radeon_device *rdev);
> +void r600_rlc_stop(struct radeon_device *rdev);
> +/* r600 audio */
> +int r600_audio_init(struct radeon_device *rdev);
> +int r600_audio_tmds_index(struct drm_encoder *encoder);
> +void r600_audio_set_clock(struct drm_encoder *encoder, int clock);
> +int r600_audio_channels(struct radeon_device *rdev);
> +int r600_audio_bits_per_sample(struct radeon_device *rdev);
> +int r600_audio_rate(struct radeon_device *rdev);
> +uint8_t r600_audio_status_bits(struct radeon_device *rdev);
> +uint8_t r600_audio_category_code(struct radeon_device *rdev);
> +void r600_audio_schedule_polling(struct radeon_device *rdev);
> +void r600_audio_enable_polling(struct drm_encoder *encoder);
> +void r600_audio_disable_polling(struct drm_encoder *encoder);
> +void r600_audio_fini(struct radeon_device *rdev);
> +void r600_hdmi_init(struct drm_encoder *encoder);
> +int r600_hdmi_buffer_status_changed(struct drm_encoder *encoder);
> +void r600_hdmi_update_audio_settings(struct drm_encoder *encoder);
>
>  /*
>  * rv770,rv730,rv710,rv740
> @@ -339,12 +375,21 @@ int rv770_init(struct radeon_device *rdev);
>  void rv770_fini(struct radeon_device *rdev);
>  int rv770_suspend(struct radeon_device *rdev);
>  int rv770_resume(struct radeon_device *rdev);
> -extern void rv770_pm_misc(struct radeon_device *rdev);
> -extern u32 rv770_page_flip(struct radeon_device *rdev, int crtc, u64 crtc_base);
> +void rv770_pm_misc(struct radeon_device *rdev);
> +u32 rv770_page_flip(struct radeon_device *rdev, int crtc, u64 crtc_base);
> +void r700_vram_gtt_location(struct radeon_device *rdev, struct radeon_mc *mc);
> +void r700_cp_stop(struct radeon_device *rdev);
> +void r700_cp_fini(struct radeon_device *rdev);
>
>  /*
>  * evergreen
>  */
> +struct evergreen_mc_save {
> +       u32 vga_control[6];
> +       u32 vga_render_control;
> +       u32 vga_hdp_control;
> +       u32 crtc_control[6];
> +};
>  void evergreen_pcie_gart_tlb_flush(struct radeon_device *rdev);
>  int evergreen_init(struct radeon_device *rdev);
>  void evergreen_fini(struct radeon_device *rdev);
> @@ -371,5 +416,8 @@ extern void evergreen_pm_finish(struct radeon_device *rdev);
>  extern void evergreen_pre_page_flip(struct radeon_device *rdev, int crtc);
>  extern u32 evergreen_page_flip(struct radeon_device *rdev, int crtc, u64 crtc_base);
>  extern void evergreen_post_page_flip(struct radeon_device *rdev, int crtc);
> +void evergreen_disable_interrupt_state(struct radeon_device *rdev);
> +int evergreen_blit_init(struct radeon_device *rdev);
> +void evergreen_blit_fini(struct radeon_device *rdev);
>
>  #endif
> --
> 1.7.1
>
> _______________________________________________
> dri-devel mailing list
> dri-devel@xxxxxxxxxxxxxxxxxxxxx
> http://lists.freedesktop.org/mailman/listinfo/dri-devel
>
_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/dri-devel



[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux