OSDev.org

The Place to Start for Operating System Developers
It is currently Mon Aug 02, 2021 6:30 am

All times are UTC - 6 hours




Post new topic Reply to topic  [ 2 posts ] 
Author Message
 Post subject: GICv3 memory mapped registers always 0
PostPosted: Sun May 02, 2021 1:00 pm 
Offline

Joined: Sun May 02, 2021 12:30 pm
Posts: 1
Hi,

I am trying to get interrupts working on my operating system for ARMv8 on QEMU. But when I read the GICv3 memory mapped registers after writing, they are always 0.

Code:
ldr x0, =0x8000380 GICD_ICACTIVER
ldr w1, =0x0xffffffff
str w1, [x0]
dsb sy
ldr w2, [x0]

>>> info register x2
x2             0x0                 0
>>> x/1w 0x8000380
0x8000380   0

Can someone give me please a hint what the problem could be?


Top
 Profile  
 
 Post subject: Re: GICv3 memory mapped registers always 0
PostPosted: Tue May 04, 2021 6:27 am 
Offline
Member
Member
User avatar

Joined: Sun Apr 30, 2017 12:16 pm
Posts: 45
Location: Poland
Are you sure the GIC base is 0x8000000? Did you map it in as device nGnR(nE/E) memory (qemu doesn't really care but real hardware does care a lot)? Do you see any values at all? Try reading from GICD_IIDR, which is at offset 0x08 from the base of the distributor, and seeing if that also returns all 0s.

_________________
Working on managarm.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 2 posts ] 

All times are UTC - 6 hours


Who is online

Users browsing this forum: Google [Bot] and 26 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group