we are implementing a VDK based application. It uses drivers,
like the lan9218 driver, which use calls to adi_int_EnterCriticalRegion
and adi_int_ExitCriticalRegion. On the other hand, there are VDK
drivers, which use VDK::PushCriticalRegion and VDK::PopCriticalRegion.
Looking at the assembly code, we found out, that these two means
of entering and exiting critical regions are implented with different counters
and different storages for the IMASK register.
It is quite obvious, that this won't work as intended.
Are we doing something completely wrong here? We thought, that when
building a VDK application, the SSL stuff is made to work with the VDK
stuff, but that doesn't seem to be the case.
Can anyone think of what is wrong here?