summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdam Jackson <ajax@redhat.com>2008-10-03 12:39:49 -0400
committerAdam Jackson <ajax@redhat.com>2008-10-03 17:51:17 -0400
commit51fcb58f45824c7cde88b8b4ccbd6bdcf760280e (patch)
tree7cf284a9aa9e1da851bbbe8718e334ff9e0a3da6
parent9c5fc7762e9ca09847965e67e247d95dfc197266 (diff)
RAC: AccessEnable() and AccessDisable() are mandatory.
-rw-r--r--hw/xfree86/common/xf86Bus.c99
1 files changed, 46 insertions, 53 deletions
diff --git a/hw/xfree86/common/xf86Bus.c b/hw/xfree86/common/xf86Bus.c
index 7e6b93a10..246e52914 100644
--- a/hw/xfree86/common/xf86Bus.c
+++ b/hw/xfree86/common/xf86Bus.c
@@ -60,7 +60,10 @@ int xf86NumEntities = 0;
static int xf86EntityPrivateCount = 0;
BusAccPtr xf86BusAccInfo = NULL;
-xf86AccessRec AccessNULL = {NULL,NULL,NULL};
+static void
+noopEnableDisable(void *arg) { }
+
+xf86AccessRec AccessNULL = { noopEnableDisable, noopEnableDisable, NULL };
xf86CurrentAccessRec xf86CurrentAccess = {NULL,NULL};
@@ -170,11 +173,9 @@ xf86EntityInit(void)
((BusAccPtr)xf86Entities[i]->access->busAcc)->set_f
(xf86Entities[i]->access->busAcc);
pacc = xf86Entities[i]->access->fallback;
- if (pacc->AccessEnable)
- pacc->AccessEnable(pacc->arg);
+ pacc->AccessEnable(pacc->arg);
xf86Entities[i]->entityInit(i,xf86Entities[i]->private);
- if (pacc->AccessDisable)
- pacc->AccessDisable(pacc->arg);
+ pacc->AccessDisable(pacc->arg);
/* remove init resources after init is processed */
pprev_next = &Acc;
res = Acc;
@@ -213,11 +214,9 @@ EntityEnter(void)
((BusAccPtr)xf86Entities[i]->access->busAcc)->set_f
(xf86Entities[i]->access->busAcc);
pacc = xf86Entities[i]->access->fallback;
- if (pacc->AccessEnable)
- pacc->AccessEnable(pacc->arg);
+ pacc->AccessEnable(pacc->arg);
xf86Entities[i]->entityEnter(i,xf86Entities[i]->private);
- if (pacc->AccessDisable)
- pacc->AccessDisable(pacc->arg);
+ pacc->AccessDisable(pacc->arg);
}
}
@@ -233,11 +232,9 @@ EntityLeave(void)
((BusAccPtr)xf86Entities[i]->access->busAcc)->set_f
(xf86Entities[i]->access->busAcc);
pacc = xf86Entities[i]->access->fallback;
- if (pacc->AccessEnable)
- pacc->AccessEnable(pacc->arg);
+ pacc->AccessEnable(pacc->arg);
xf86Entities[i]->entityLeave(i,xf86Entities[i]->private);
- if (pacc->AccessDisable)
- pacc->AccessDisable(pacc->arg);
+ pacc->AccessDisable(pacc->arg);
}
}
@@ -358,10 +355,10 @@ xf86RemoveEntityFromScreen(ScrnInfoPtr pScrn, int entityIndex)
peacc = xf86Entities[pScrn->entityList[i]]->access;
(*ptr) = peacc->next;
/* disable entity: call disable func */
- if (peacc->pAccess && peacc->pAccess->AccessDisable)
+ if (peacc->pAccess)
peacc->pAccess->AccessDisable(peacc->pAccess->arg);
/* also disable fallback - just in case */
- if (peacc->fallback && peacc->fallback->AccessDisable)
+ if (peacc->fallback)
peacc->fallback->AccessDisable(peacc->fallback->arg);
for (i++; i < pScrn->numEntities; i++)
pScrn->entityList[i-1] = pScrn->entityList[i];
@@ -391,10 +388,10 @@ xf86ClearEntityListForScreen(int scrnIndex)
xf86Entities[entityIndex]->inUse = FALSE;
/* disable resource: call the disable function */
peacc = xf86Entities[entityIndex]->access;
- if (peacc->pAccess && peacc->pAccess->AccessDisable)
+ if (peacc->pAccess)
peacc->pAccess->AccessDisable(peacc->pAccess->arg);
/* and the fallback function */
- if (peacc->fallback && peacc->fallback->AccessDisable)
+ if (peacc->fallback)
peacc->fallback->AccessDisable(peacc->fallback->arg);
/* shared resources are only needed when entity is active: remove */
xf86DeallocateResourcesForEntity(entityIndex, ResShared);
@@ -525,14 +522,14 @@ disableAccess(void)
for (i = 0; i < xf86NumScreens; i++) {
peacc = xf86Screens[i]->CurrentAccess->pIoAccess;
while (peacc) {
- if (peacc->pAccess && peacc->pAccess->AccessDisable)
+ if (peacc->pAccess)
peacc->pAccess->AccessDisable(peacc->pAccess->arg);
peacc = peacc->next;
}
xf86Screens[i]->CurrentAccess->pIoAccess = NULL;
peacc = xf86Screens[i]->CurrentAccess->pMemAccess;
while (peacc) {
- if (peacc->pAccess && peacc->pAccess->AccessDisable)
+ if (peacc->pAccess)
peacc->pAccess->AccessDisable(peacc->pAccess->arg);
peacc = peacc->next;
}
@@ -541,8 +538,7 @@ disableAccess(void)
/* then call the generic entity disable funcs */
for (i = 0; i < xf86NumEntities; i++) {
pacc = xf86Entities[i]->access->fallback;
- if (pacc->AccessDisable)
- pacc->AccessDisable(pacc->arg);
+ pacc->AccessDisable(pacc->arg);
}
}
@@ -692,16 +688,16 @@ xf86EnableAccess(ScrnInfoPtr pScrn)
pScrn->CurrentAccess->pMemAccess = NULL;
while (pceAcc) {
pAcc = pceAcc->pAccess;
- if ( pAcc && pAcc->AccessDisable)
- (*pAcc->AccessDisable)(pAcc->arg);
+ if (pAcc)
+ pAcc->AccessDisable(pAcc->arg);
pceAcc = pceAcc->next;
}
if (pScrn->busAccess)
((BusAccPtr)pScrn->busAccess)->set_f(pScrn->busAccess);
while (peAcc) {
pAcc = peAcc->pAccess;
- if (pAcc && pAcc->AccessEnable)
- (*pAcc->AccessEnable)(pAcc->arg);
+ if (pAcc)
+ pAcc->AccessEnable(pAcc->arg);
peAcc = peAcc->next;
}
pScrn->CurrentAccess->pIoAccess = (EntityAccessPtr) pScrn->access;
@@ -713,8 +709,8 @@ xf86EnableAccess(ScrnInfoPtr pScrn)
tmp = pceAcc;
while (pceAcc) {
pAcc = pceAcc->pAccess;
- if (pAcc && pAcc->AccessDisable)
- (*pAcc->AccessDisable)(pAcc->arg);
+ if (pAcc)
+ pAcc->AccessDisable(pAcc->arg);
pceAcc = pceAcc->next;
}
pceAcc = pScrn->CurrentAccess->pMemAccess;
@@ -722,8 +718,8 @@ xf86EnableAccess(ScrnInfoPtr pScrn)
&& tmp !=pceAcc) {
while (pceAcc) {
pAcc = pceAcc->pAccess;
- if (pAcc && pAcc->AccessDisable)
- (*pAcc->AccessDisable)(pAcc->arg);
+ if (pAcc)
+ pAcc->AccessDisable(pAcc->arg);
pceAcc = pceAcc->next;
}
}
@@ -734,8 +730,8 @@ xf86EnableAccess(ScrnInfoPtr pScrn)
}
while (pceAcc) { /* current Mem != pAccess */
pAcc = pceAcc->pAccess;
- if (pAcc && pAcc->AccessDisable)
- (*pAcc->AccessDisable)(pAcc->arg);
+ if (pAcc)
+ pAcc->AccessDisable(pAcc->arg);
pceAcc = pceAcc->next;
}
}
@@ -743,8 +739,8 @@ xf86EnableAccess(ScrnInfoPtr pScrn)
((BusAccPtr)pScrn->busAccess)->set_f(pScrn->busAccess);
while (peAcc) {
pAcc = peAcc->pAccess;
- if (pAcc && pAcc->AccessEnable)
- (*pAcc->AccessEnable)(pAcc->arg);
+ if (pAcc)
+ pAcc->AccessEnable(pAcc->arg);
peAcc = peAcc->next;
}
pScrn->CurrentAccess->pMemAccess =
@@ -760,16 +756,16 @@ xf86EnableAccess(ScrnInfoPtr pScrn)
pScrn->CurrentAccess->pIoAccess = NULL;
while (pceAcc) {
pAcc = pceAcc->pAccess;
- if ( pAcc && pAcc->AccessDisable)
- (*pAcc->AccessDisable)(pAcc->arg);
+ if (pAcc)
+ pAcc->AccessDisable(pAcc->arg);
pceAcc = pceAcc->next;
}
if (pScrn->busAccess)
((BusAccPtr)pScrn->busAccess)->set_f(pScrn->busAccess);
while (peAcc) {
pAcc = peAcc->pAccess;
- if (pAcc && pAcc->AccessEnable)
- (*pAcc->AccessEnable)(pAcc->arg);
+ if (pAcc)
+ pAcc->AccessEnable(pAcc->arg);
peAcc = peAcc->next;
}
pScrn->CurrentAccess->pMemAccess = (EntityAccessPtr) pScrn->access;
@@ -808,13 +804,11 @@ xf86SetCurrentAccess(Bool Enable, ScrnInfoPtr pScrn)
while (pceAcc) {
pAcc = pceAcc->pAccess;
- if ( pAcc) {
- if (!Enable) {
- if (pAcc->AccessDisable)
- (*pAcc->AccessDisable)(pAcc->arg);
+ if (pAcc) {
+ if (Enable) {
+ pAcc->AccessEnable(pAcc->arg);
} else {
- if (pAcc->AccessEnable)
- (*pAcc->AccessEnable)(pAcc->arg);
+ pAcc->AccessDisable(pAcc->arg);
}
}
pceAcc = pceAcc->next;
@@ -1733,7 +1727,7 @@ setAccess(EntityPtr pEnt, xf86State state)
if (pEnt->rac->old) {
/* give it to the driver, leave state disabled */
pEnt->rac->old->io = org_io;
- } else if (org_io->AccessEnable) {
+ } else {
/* driver doesn't want it - enable generic access */
org_io->AccessEnable(org_io->arg);
}
@@ -1744,7 +1738,7 @@ setAccess(EntityPtr pEnt, xf86State state)
if (pEnt->rac->old) {
/* give it to the driver, leave state disabled */
pEnt->rac->old->io_mem = org_mem_io;
- } else if (org_mem_io->AccessEnable) {
+ } else {
/* driver doesn't want it - enable generic access */
org_mem_io->AccessEnable(org_mem_io->arg);
}
@@ -1755,7 +1749,7 @@ setAccess(EntityPtr pEnt, xf86State state)
if (pEnt->rac->old) {
/* give it to the driver, leave state disabled */
pEnt->rac->old->mem = org_mem;
- } else if (org_mem->AccessEnable) {
+ } else {
/* driver doesn't want it - enable generic access */
org_mem->AccessEnable(org_mem->arg);
}
@@ -1763,27 +1757,26 @@ setAccess(EntityPtr pEnt, xf86State state)
if (!(prop & NEED_MEM_SHARED)){
if (prop & NEED_MEM) {
- if (acc_mem && acc_mem->AccessEnable)
+ if (acc_mem)
acc_mem->AccessEnable(acc_mem->arg);
} else {
- if (acc_mem && acc_mem->AccessDisable)
+ if (acc_mem)
acc_mem->AccessDisable(acc_mem->arg);
}
}
if (!(prop & NEED_IO_SHARED)) {
if (prop & NEED_IO) {
- if (acc_io && acc_io->AccessEnable)
- acc_io->AccessEnable(acc_io->arg);
+ if (acc_io)
+ acc_io->AccessEnable(acc_io->arg);
} else {
- if (acc_io && acc_io->AccessDisable)
+ if (acc_io)
acc_io->AccessDisable(acc_io->arg);
}
}
/* disable shared resources */
- if (pEnt->access->pAccess
- && pEnt->access->pAccess->AccessDisable)
+ if (pEnt->access->pAccess)
pEnt->access->pAccess->AccessDisable(pEnt->access->pAccess->arg);
/*