updated engine DMA acc init code, part 3 (in progress).

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14989 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Rudolf Cornelissen
2005-11-17 14:58:19 +00:00
parent 6226d5f7cd
commit 1f6a1fb824
@@ -116,7 +116,7 @@ status_t nv_acc_wait_idle_dma()
* Engine required init. */ * Engine required init. */
status_t nv_acc_init_dma() status_t nv_acc_init_dma()
{ {
uint32 cnt; uint32 cnt, tmp;
uint32 surf_depth, cmd_depth; uint32 surf_depth, cmd_depth;
/* reset the engine DMA stalls counter */ /* reset the engine DMA stalls counter */
err = 0; err = 0;
@@ -689,7 +689,12 @@ status_t nv_acc_init_dma()
/* set limit_viol_pix_adress(?): more likely something unknown.. */ /* set limit_viol_pix_adress(?): more likely something unknown.. */
ACCW(NV25_WHAT0, 0x00be3c5f); ACCW(NV25_WHAT0, 0x00be3c5f);
//new stuff needs to be inhere... /* setup some unknown serially accessed registers (?) */
tmp = (NV_REG32(NV32_NV4X_WHAT0) & 0x000000ff);
for (cnt = 0; (tmp && !(tmp & 0x00000001)); tmp >>= 1, cnt++);
{
ACCW(NV4X_WHAT2, cnt);
}
/* unknown.. */ /* unknown.. */
switch (si->ps.card_type) switch (si->ps.card_type)