1. 10 3月, 2014 1 次提交
    • M
      acpi-build: append description for non-hotplug · 8dcf525a
      Michael S. Tsirkin 提交于
      As reported in
      http://article.gmane.org/gmane.comp.emulators.qemu/253987
      Mac OSX actually requires describing all occupied slots
      in ACPI - even if hotplug isn't enabled.
      
      I didn't expect this so I dropped description of all
      non hotpluggable slots from ACPI.
      As a result: before
      commit 99fd437d (enable
      hotplug for pci bridges), PCI cards show up in the "device tree" of OS X
      (System Information). E.g., on MountainLion users have:
      
      Hardware -> PCI Cards:
      
        Card          Type                 Driver Installed  Slot
       *ethernet      Ethernet Controller  Yes               PCI Slot 2
        pci8086,2934  USB UHC              Yes               PCI Slot 29
      
        ethernet:
          Type:                 Ethernet Controller
          Driver Installed:     Yes
          MSI:                  No
          Bus:                  PCI
          Slot                  PCI Slot 2
          Vendor ID:            0x8086
          Device ID:            0x100e
          Subsystem Vendor ID:  0x1af4
          Subsystem ID:         0x1100
          Revision ID:          0x0003
      
      Hardware -> Ethernet Cards
      
        ethernet:
          Type:                 Ethernet Controller
          Bus:                  PCI
          Slot                  PCI Slot 2
          Vendor ID:            0x8086
          Device ID:            0x100e
          Subsystem Vendor ID:  0x1af4
          Subsystem ID:         0x1100
          Revision ID:          0x0003
          BSD name:             en0
          Kext name:            AppleIntel8254XEthernet.kext
          Location:             /System/Library/Extensions/...
          Version:              3.1.1b1
      
      After commit 99fd437d, users get:
      
      Hardware -> PCI Cards:
      
        This computer doesn't contain any PCI cards. If you installed PCI
        cards, make sure they're properly installed.
      
      Hardware -> Ethernet Cards
      
        ethernet:
          Type:                 Ethernet Controller
          Bus:                  PCI
          Vendor ID:            0x8086
          Device ID:            0x100e
          Subsystem Vendor ID:  0x1af4
          Subsystem ID:         0x1100
          Revision ID:          0x0003
          BSD name:             en0
          Kext name:            AppleIntel8254XEthernet.kext
          Location:             /System/Library/Extensions/...
          Version:              3.1.1b1
      
      Ethernet still works, but it's not showing up on the PCI bus, and it
      no longer thinks it's plugged in to slot #2, as it used to before the
      change.
      
      To fix, append description for all occupied non hotpluggable PCI slots.
      
      One need to be careful when doing this: VGA devices
      are now described in SSDT, so we need to drop description from DSDT.
      And ISA devices are used in DSDT so drop them from SSDT.
      Reported-by: NGabriel L. Somlo <gsomlo@gmail.com>
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      
      Also update generated dsdt and pcihp hex dump files.
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      8dcf525a
  2. 26 1月, 2014 1 次提交
    • M
      acpi-build: enable hotplug for PCI bridges · 99fd437d
      Michael S. Tsirkin 提交于
      This enables support for device hotplug behind
      pci bridges. Bridge devices themselves need
      to be pre-configured on qemu command line.
      
      Design:
          - at machine init time, assign "bsel" property to bridges with
            hotplug support
          - dynamically (At ACPI table read) generate ACPI code to handle
            hotplug events for each bridge with "bsel" property
      
      Note: ACPI doesn't support adding or removing bridges by hotplug.
      We detect and prevent removal of bridges by hotplug,
      unless they were added by hotplug previously
      (and so, are not described by ACPI).
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      99fd437d
  3. 14 10月, 2013 1 次提交