Subversion Repositories Kolibri OS

Rev

Rev 1128 | Rev 1246 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1128 Rev 1179
Line 73... Line 73...
73
	rdev->gart.table_addr = 0;
73
	rdev->gart.table_addr = 0;
74
}
74
}
Line 75... Line 75...
75
 
75
 
76
int radeon_gart_table_vram_alloc(struct radeon_device *rdev)
76
int radeon_gart_table_vram_alloc(struct radeon_device *rdev)
77
{
-
 
78
    uint32_t gpu_addr;
77
{
Line 79... Line 78...
79
    int r;
78
    int r;
Line 80... Line 79...
80
 
79
 
81
    dbgprintf("%s\n",__FUNCTION__);
80
    ENTER();
82
 
81
 
83
    if (rdev->gart.table.vram.robj == NULL) {
82
    if (rdev->gart.table.vram.robj == NULL) {
Line 88... Line 87...
88
                     false, &rdev->gart.table.vram.robj);
87
                     false, &rdev->gart.table.vram.robj);
89
        if (r) {
88
        if (r) {
90
            return r;
89
            return r;
91
        }
90
        }
92
    }
91
    }
-
 
92
	return 0;
-
 
93
}
-
 
94
 
-
 
95
int radeon_gart_table_vram_pin(struct radeon_device *rdev)
-
 
96
{
-
 
97
	uint64_t gpu_addr;
-
 
98
	int r;
-
 
99
 
93
    r = radeon_object_pin(rdev->gart.table.vram.robj,
100
    r = radeon_object_pin(rdev->gart.table.vram.robj,
94
                  RADEON_GEM_DOMAIN_VRAM, &gpu_addr);
101
                  RADEON_GEM_DOMAIN_VRAM, &gpu_addr);
95
    if (r) {
102
    if (r) {
96
//        radeon_object_unref(&rdev->gart.table.vram.robj);
103
//        radeon_object_unref(&rdev->gart.table.vram.robj);
97
        return r;
104
        return r;
Line 173... Line 180...
173
    unsigned t;
180
    unsigned t;
174
    unsigned p;
181
    unsigned p;
175
    uint64_t page_base;
182
    uint64_t page_base;
176
    int i, j;
183
    int i, j;
Line 177... Line 184...
177
 
184
 
-
 
185
    ENTER();
178
    dbgprintf("%s  ",__FUNCTION__);
186
 
179
    dbgprintf("offset %x pages %x list %x\n",
187
    dbgprintf("offset %x pages %x list %x\n",
Line 180... Line 188...
180
               offset, pages, pagelist);
188
               offset, pages, pagelist);
181
 
189
 
Line 205... Line 213...
205
        }
213
        }
206
    }
214
    }
207
    mb();
215
    mb();
208
    radeon_gart_tlb_flush(rdev);
216
    radeon_gart_tlb_flush(rdev);
Line 209... Line 217...
209
 
217
 
Line 210... Line 218...
210
    dbgprintf("done %s\n",__FUNCTION__);
218
    LEAVE();
211
 
219
 
Line 212... Line 220...
212
    return 0;
220
    return 0;
213
}
221
}
Line 214... Line 222...
214
 
222
 
Line 215... Line 223...
215
int radeon_gart_init(struct radeon_device *rdev)
223
int radeon_gart_init(struct radeon_device *rdev)
216
{
224
{
217
 
225
 
218
    dbgprintf("%s\n",__FUNCTION__);
226
    ENTER();