[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v3 49/52] pc: export applesmc IO port/len
From: |
Igor Mammedov |
Subject: |
[Qemu-devel] [PATCH v3 49/52] pc: export applesmc IO port/len |
Date: |
Mon, 9 Feb 2015 10:54:11 +0000 |
IO port and length will be used in following patch
to correctly generate SMC ACPI device in SSDT.
Signed-off-by: Igor Mammedov <address@hidden>
---
hw/i386/acpi-build.c | 2 +-
hw/misc/applesmc.c | 5 ++---
include/hw/isa/isa.h | 11 +++++++++--
3 files changed, 12 insertions(+), 6 deletions(-)
diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c
index 14c1c7d..26076dd 100644
--- a/hw/i386/acpi-build.c
+++ b/hw/i386/acpi-build.c
@@ -144,7 +144,7 @@ static void acpi_get_dsdt(AcpiMiscInfo *info)
/* Patch in appropriate value for AppleSMC _STA */
*(uint8_t *)(info->dsdt_code + *applesmc_sta) =
- applesmc_find() ? 0x0b : 0x00;
+ applesmc_port() ? 0x0b : 0x00;
}
static
diff --git a/hw/misc/applesmc.c b/hw/misc/applesmc.c
index 6a56b07..6bd61e7 100644
--- a/hw/misc/applesmc.c
+++ b/hw/misc/applesmc.c
@@ -43,7 +43,6 @@
/* command/status port used by Apple SMC */
#define APPLESMC_CMD_PORT 0x4
#define APPLESMC_NR_PORTS 32
-#define APPLESMC_MAX_DATA_LENGTH 32
#define APPLESMC_READ_CMD 0x10
#define APPLESMC_WRITE_CMD 0x11
@@ -249,8 +248,8 @@ static void applesmc_isa_realize(DeviceState *dev, Error
**errp)
}
static Property applesmc_isa_properties[] = {
- DEFINE_PROP_UINT32("iobase", AppleSMCState, iobase,
- APPLESMC_DEFAULT_IOBASE),
+ DEFINE_PROP_UINT32(APPLESMC_PROP_IO_BASE, AppleSMCState, iobase,
+ APPLESMC_DEFAULT_IOBASE),
DEFINE_PROP_STRING("osk", AppleSMCState, osk),
DEFINE_PROP_END_OF_LIST(),
};
diff --git a/include/hw/isa/isa.h b/include/hw/isa/isa.h
index e0c749f..1ee9fa0 100644
--- a/include/hw/isa/isa.h
+++ b/include/hw/isa/isa.h
@@ -21,10 +21,17 @@
#define ISA_BUS(obj) OBJECT_CHECK(ISABus, (obj), TYPE_ISA_BUS)
#define TYPE_APPLE_SMC "isa-applesmc"
+#define APPLESMC_MAX_DATA_LENGTH 32
+#define APPLESMC_PROP_IO_BASE "iobase"
-static inline bool applesmc_find(void)
+static inline uint16_t applesmc_port(void)
{
- return object_resolve_path_type("", TYPE_APPLE_SMC, NULL);
+ Object *obj = object_resolve_path_type("", TYPE_APPLE_SMC, NULL);
+
+ if (obj) {
+ return object_property_get_int(obj, APPLESMC_PROP_IO_BASE, NULL);
+ }
+ return 0;
}
typedef struct ISADeviceClass {
--
1.8.3.1
- Re: [Qemu-devel] [PATCH v3 47/52] pc: acpi-build: drop remaining ssdt_misc template and use acpi_def_block(), (continued)
- [Qemu-devel] [PATCH v3 42/52] pc: acpi-build: create memory hotplug IO region dynamically, Igor Mammedov, 2015/02/09
- [Qemu-devel] [PATCH v3 52/52] acpi: make build_*() routines static to aml-build.c, Igor Mammedov, 2015/02/09
- [Qemu-devel] [PATCH v3 46/52] pc: acpi-build: create PCI0._CRS dynamically, Igor Mammedov, 2015/02/09
- [Qemu-devel] [PATCH v3 33/52] pc: acpi-build: generate pvpanic device description dynamically, Igor Mammedov, 2015/02/09
- [Qemu-devel] [PATCH v3 45/52] pc: acpi-build: reserve PCIHP MMIO resources, Igor Mammedov, 2015/02/09
- [Qemu-devel] [PATCH v3 51/52] pc: acpi-build: update [q35-]acpi-dsdt.hex.generated due to moved SMC, Igor Mammedov, 2015/02/09
- [Qemu-devel] [PATCH v3 39/52] pc: acpi-build: create CPU hotplug IO region dynamically, Igor Mammedov, 2015/02/09
- [Qemu-devel] [PATCH v3 48/52] acpi: add acpi_irq_no_flags() term, Igor Mammedov, 2015/02/09
- [Qemu-devel] [PATCH v3 49/52] pc: export applesmc IO port/len,
Igor Mammedov <=
- [Qemu-devel] [PATCH v3 50/52] pc: acpi-build: drop template patching and create Device(SMC) dynamically, Igor Mammedov, 2015/02/09
- Re: [Qemu-devel] [PATCH v3 00/52] ACPI refactoring: replace template patching with C AML API, Michael S. Tsirkin, 2015/02/17