What you said is only sort of true.
DS games do rely on the ARM7, which only executes official Nintendo library code (in commercial games anyway). And by and large the DS is close to GBA compatible, but there are some differences that prevent it from running GBA games outright. The clock speed of the ARM7 is sort of one of them, but also there are some nuances in the 2D core, and the DS audio doesn't have all of the same original Gameboy audio features that the GBA has (and most GBA games rely on). The DS ARM7 BIOS is also a little different.
There's no "virtualization" employed on DS, there's an actual "GBA mode" that the DS can enter which everything GBA equivalent on a hardware level. Technically it would have been possible for Nintendo to remove this GBA mode, but it would have only saved a small amount of die space compared to all the things they added to DSi. On GB Micro there's evidence that the hardware can still play GBC games despite having less hardware overlap, but this is probably because it wouldn't have made sense from a cost perspective to rev a new chip. On DSi Nintendo may have done a new chip to incorporate the new functionality, but it also may have all been added externally and to already available interfaces.
So it's not likely DSi removed the GBA mode, but as I said in the previous post the only way DSi can play GBA games natively is if its 16MB of RAM is accessible in the memory region where the slot 2 bus used to be.
Elwing said:
of course, but you can replace the ARM7 with some hle if commercial game only use the provided nintendo api... not sure they do through...
I doubt it's so simple. Just because ARM7 only runs Nintendo code (this is true for all games, Nintendo doesn't allow anything else) doesn't mean there's just one binary every game is using. And the IPC interface isn't really simple to patch with software.
It's moot though, there's no question that the DSi has the ARM7.