diff --git a/repos/base-hw/src/include/hw/spec/arm/gicv3.h b/repos/base-hw/src/include/hw/spec/arm/gicv3.h index 562868342..ff13a7f92 100644 --- a/repos/base-hw/src/include/hw/spec/arm/gicv3.h +++ b/repos/base-hw/src/include/hw/spec/arm/gicv3.h @@ -60,35 +60,35 @@ class Hw::Pic struct Typer : Register<0x004, 32> { struct It_lines_number : Bitfield<0,5> { }; }; - struct Igroup0r : Register_array<0x80, 32, 32*32, 1> { + struct Igroup0r : Register_array<0x80, 32, nr_of_irq, 1> { struct Group1 : Bitfield<0, 1> { }; }; /** * Interrupt Set-Enable register */ - struct Isenabler : Register_array<0x100, 32, 32*32, 1, true> { + struct Isenabler : Register_array<0x100, 32, nr_of_irq, 1, true> { struct Set_enable : Bitfield<0, 1> { }; }; /** * Interrupt clear enable registers */ - struct Icenabler : Register_array<0x180, 32, 32*32, 1, true> { + struct Icenabler : Register_array<0x180, 32, nr_of_irq, 1, true> { struct Clear_enable : Bitfield<0, 1> { }; }; /** * Interrupt clear pending registers */ - struct Icpendr : Register_array<0x280, 32, 32*32, 1, true> { + struct Icpendr : Register_array<0x280, 32, nr_of_irq, 1, true> { struct Clear_pending : Bitfield<0, 1> { }; }; /** * Interrupt priority level registers */ - struct Ipriorityr : Register_array<0x400, 32, 255*4, 8> { + struct Ipriorityr : Register_array<0x400, 32, nr_of_irq, 8> { struct Priority : Bitfield<0, 8> { }; }; - struct Icfgr : Register_array<0xc00, 32, 64*16, 2> { + struct Icfgr : Register_array<0xc00, 32, nr_of_irq, 2> { struct Edge_triggered : Bitfield<1, 1> { }; }; struct Irouter : Register_array<0x6000, 64, 1020, 64, true> { }; @@ -132,13 +132,13 @@ class Hw::Pic { struct Igroupr0 : Register<0x80, 32> { }; - struct Isenabler0 : Register_array<0x100, 32, 32, 1> + struct Isenabler0 : Register_array<0x100, 32, min_spi, 1, true> { }; - struct Icenabler0 : Register_array<0x180, 32, 32, 1> + struct Icenabler0 : Register_array<0x180, 32, min_spi, 1, true> { }; - struct Icactiver0 : Register<0x380, 32> { }; + struct Icactiver0 : Register<0x380, 32, true> { }; struct Ipriorityr : Register_array<0x400, 32, min_spi, 8> { struct Priority : Bitfield<0, 8> { }; };