aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2012-05-26 12:34:24 -0400
committerDave Airlie <airlied@redhat.com>2012-05-29 06:01:45 -0400
commitc4c7f3149ba0b510047cb95d10f26ae1f6b89bc7 (patch)
tree56eff3cf28fbb6d46fcf72102120a664231c0059
parenta01ee165a132fadb57659d26246e340d6ac53265 (diff)
radeon: make radeon_cs_update_pages static.
Just move its only caller into the same file as it and make it static. Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
-rw-r--r--drivers/gpu/drm/radeon/radeon.h1
-rw-r--r--drivers/gpu/drm/radeon/radeon_cs.c27
-rw-r--r--drivers/gpu/drm/radeon/radeon_ring.c25
3 files changed, 26 insertions, 27 deletions
diff --git a/drivers/gpu/drm/radeon/radeon.h b/drivers/gpu/drm/radeon/radeon.h
index 1dc3a4aba020..492654f8ee74 100644
--- a/drivers/gpu/drm/radeon/radeon.h
+++ b/drivers/gpu/drm/radeon/radeon.h
@@ -848,7 +848,6 @@ struct radeon_cs_parser {
848 s32 priority; 848 s32 priority;
849}; 849};
850 850
851extern int radeon_cs_update_pages(struct radeon_cs_parser *p, int pg_idx);
852extern int radeon_cs_finish_pages(struct radeon_cs_parser *p); 851extern int radeon_cs_finish_pages(struct radeon_cs_parser *p);
853extern u32 radeon_get_ib_value(struct radeon_cs_parser *p, int idx); 852extern u32 radeon_get_ib_value(struct radeon_cs_parser *p, int idx);
854 853
diff --git a/drivers/gpu/drm/radeon/radeon_cs.c b/drivers/gpu/drm/radeon/radeon_cs.c
index c7d64a739033..0137689ed461 100644
--- a/drivers/gpu/drm/radeon/radeon_cs.c
+++ b/drivers/gpu/drm/radeon/radeon_cs.c
@@ -580,7 +580,7 @@ int radeon_cs_finish_pages(struct radeon_cs_parser *p)
580 return 0; 580 return 0;
581} 581}
582 582
583int radeon_cs_update_pages(struct radeon_cs_parser *p, int pg_idx) 583static int radeon_cs_update_pages(struct radeon_cs_parser *p, int pg_idx)
584{ 584{
585 int new_page; 585 int new_page;
586 struct radeon_cs_chunk *ibc = &p->chunks[p->chunk_ib_idx]; 586 struct radeon_cs_chunk *ibc = &p->chunks[p->chunk_ib_idx];
@@ -623,3 +623,28 @@ int radeon_cs_update_pages(struct radeon_cs_parser *p, int pg_idx)
623 623
624 return new_page; 624 return new_page;
625} 625}
626
627u32 radeon_get_ib_value(struct radeon_cs_parser *p, int idx)
628{
629 struct radeon_cs_chunk *ibc = &p->chunks[p->chunk_ib_idx];
630 u32 pg_idx, pg_offset;
631 u32 idx_value = 0;
632 int new_page;
633
634 pg_idx = (idx * 4) / PAGE_SIZE;
635 pg_offset = (idx * 4) % PAGE_SIZE;
636
637 if (ibc->kpage_idx[0] == pg_idx)
638 return ibc->kpage[0][pg_offset/4];
639 if (ibc->kpage_idx[1] == pg_idx)
640 return ibc->kpage[1][pg_offset/4];
641
642 new_page = radeon_cs_update_pages(p, pg_idx);
643 if (new_page < 0) {
644 p->parser_error = new_page;
645 return 0;
646 }
647
648 idx_value = ibc->kpage[new_page][pg_offset/4];
649 return idx_value;
650}
diff --git a/drivers/gpu/drm/radeon/radeon_ring.c b/drivers/gpu/drm/radeon/radeon_ring.c
index 493a7be75306..983658c91358 100644
--- a/drivers/gpu/drm/radeon/radeon_ring.c
+++ b/drivers/gpu/drm/radeon/radeon_ring.c
@@ -39,31 +39,6 @@
39 */ 39 */
40int radeon_debugfs_sa_init(struct radeon_device *rdev); 40int radeon_debugfs_sa_init(struct radeon_device *rdev);
41 41
42u32 radeon_get_ib_value(struct radeon_cs_parser *p, int idx)
43{
44 struct radeon_cs_chunk *ibc = &p->chunks[p->chunk_ib_idx];
45 u32 pg_idx, pg_offset;
46 u32 idx_value = 0;
47 int new_page;
48
49 pg_idx = (idx * 4) / PAGE_SIZE;
50 pg_offset = (idx * 4) % PAGE_SIZE;
51
52 if (ibc->kpage_idx[0] == pg_idx)
53 return ibc->kpage[0][pg_offset/4];
54 if (ibc->kpage_idx[1] == pg_idx)
55 return ibc->kpage[1][pg_offset/4];
56
57 new_page = radeon_cs_update_pages(p, pg_idx);
58 if (new_page < 0) {
59 p->parser_error = new_page;
60 return 0;
61 }
62
63 idx_value = ibc->kpage[new_page][pg_offset/4];
64 return idx_value;
65}
66
67int radeon_ib_get(struct radeon_device *rdev, int ring, 42int radeon_ib_get(struct radeon_device *rdev, int ring,
68 struct radeon_ib *ib, unsigned size) 43 struct radeon_ib *ib, unsigned size)
69{ 44{