Skip to content
  • BALATON Zoltan's avatar
    3ab1eea6
    vt82c686: Fix up power management io base and config · 3ab1eea6
    BALATON Zoltan authored
    
    
    Similar to the SMBus io registers there is a power management io range
    that is set via similar base address reg and enable bit. Some handling
    of this was already there but with several problems: using the wrong
    registers and bits, wrong size range, not acually updating mapping and
    handling reset correctly, nor emulating any of the actual io
    registers. Some of these errors are fixed up here.
    
    After this patch we use the correct base address register, enable bit
    and region size and allow guests to map/unmap this region, but we
    still don't emulate any of the registers in this range.
    
    PMD notes regarding the Configuration Space Power Management Registers:
    
      - 0x40 General Configuration 0
    
      - 0x41 General Configuration 1
    
        . Bit 7: I/O Enable for ACPI I/O Base
    
      - 0x48 Power Mgmt I/O Base
    
        . Bit 0: Always set
        . Bits 7-15: Power Management I/O Register Base Address
          (this explains the change 0xffc0 -> 0xff80)
    
    Signed-off-by: default avatarBALATON Zoltan <balaton@eik.bme.hu>
    Message-Id: <cff9b2442d3e2e1cfbdcbc2dfbb559031b4b1cc1.1610223397.git.balaton@eik.bme.hu>
    [PMD: Split original patch, this is part 4/4, added notes]
    Signed-off-by: default avatarPhilippe Mathieu-Daudé <f4bug@amsat.org>
    3ab1eea6
    vt82c686: Fix up power management io base and config
    BALATON Zoltan authored
    
    
    Similar to the SMBus io registers there is a power management io range
    that is set via similar base address reg and enable bit. Some handling
    of this was already there but with several problems: using the wrong
    registers and bits, wrong size range, not acually updating mapping and
    handling reset correctly, nor emulating any of the actual io
    registers. Some of these errors are fixed up here.
    
    After this patch we use the correct base address register, enable bit
    and region size and allow guests to map/unmap this region, but we
    still don't emulate any of the registers in this range.
    
    PMD notes regarding the Configuration Space Power Management Registers:
    
      - 0x40 General Configuration 0
    
      - 0x41 General Configuration 1
    
        . Bit 7: I/O Enable for ACPI I/O Base
    
      - 0x48 Power Mgmt I/O Base
    
        . Bit 0: Always set
        . Bits 7-15: Power Management I/O Register Base Address
          (this explains the change 0xffc0 -> 0xff80)
    
    Signed-off-by: default avatarBALATON Zoltan <balaton@eik.bme.hu>
    Message-Id: <cff9b2442d3e2e1cfbdcbc2dfbb559031b4b1cc1.1610223397.git.balaton@eik.bme.hu>
    [PMD: Split original patch, this is part 4/4, added notes]
    Signed-off-by: default avatarPhilippe Mathieu-Daudé <f4bug@amsat.org>
Loading