From 43217e40bbcc325c9189428e4774509b21d30fb0 Mon Sep 17 00:00:00 2001 From: Martin Mares Date: Sat, 1 Nov 2014 16:54:34 +0100 Subject: [PATCH] Darwin: Re-indent to match the rest of libpci and update file header I hope that I got the attribution right. --- lib/darwin-device.c | 185 +++++++++++++++++++++----------------------- 1 file changed, 88 insertions(+), 97 deletions(-) diff --git a/lib/darwin-device.c b/lib/darwin-device.c index 262e1e4..e34c423 100644 --- a/lib/darwin-device.c +++ b/lib/darwin-device.c @@ -1,8 +1,7 @@ /* - * The PCI Library -- FreeBSD /dev/pci access + * The PCI Library -- Darwin kIOACPI access * - * Copyright (c) 1999 Jari Kirma - * Updated in 2003 by Samy Al Bahra + * Copyright (c) 2013 Apple, Inc. * * Can be freely distributed and used under the terms of the GNU GPL. */ @@ -21,12 +20,11 @@ #include #include - enum { - kACPIMethodAddressSpaceRead = 0, - kACPIMethodAddressSpaceWrite = 1, - kACPIMethodDebuggerCommand = 2, - kACPIMethodCount + kACPIMethodAddressSpaceRead = 0, + kACPIMethodAddressSpaceWrite = 1, + kACPIMethodDebuggerCommand = 2, + kACPIMethodCount }; #pragma pack(1) @@ -47,12 +45,12 @@ enum { union IOACPIAddress { UInt64 addr64; struct { - unsigned int offset :16; - unsigned int function :3; - unsigned int device :5; - unsigned int bus :8; - unsigned int segment :16; - unsigned int reserved :16; + unsigned int offset :16; + unsigned int function :3; + unsigned int device :5; + unsigned int bus :8; + unsigned int segment :16; + unsigned int reserved :16; } pci; }; typedef union IOACPIAddress IOACPIAddress; @@ -60,16 +58,15 @@ typedef union IOACPIAddress IOACPIAddress; #pragma pack() struct AddressSpaceParam { - UInt64 value; - UInt32 spaceID; - IOACPIAddress address; - UInt32 bitWidth; - UInt32 bitOffset; - UInt32 options; + UInt64 value; + UInt32 spaceID; + IOACPIAddress address; + UInt32 bitWidth; + UInt32 bitOffset; + UInt32 options; }; typedef struct AddressSpaceParam AddressSpaceParam; - static void darwin_config(struct pci_access *a UNUSED) { @@ -78,23 +75,22 @@ darwin_config(struct pci_access *a UNUSED) static int darwin_detect(struct pci_access *a) { - io_registry_entry_t service; - io_connect_t connect; - kern_return_t status; - - service = IOServiceGetMatchingService(kIOMasterPortDefault, - IOServiceMatching("AppleACPIPlatformExpert")); - if (service) - { - status = IOServiceOpen(service, mach_task_self(), 0, &connect); - IOObjectRelease(service); - } + io_registry_entry_t service; + io_connect_t connect; + kern_return_t status; + + service = IOServiceGetMatchingService(kIOMasterPortDefault, IOServiceMatching("AppleACPIPlatformExpert")); + if (service) + { + status = IOServiceOpen(service, mach_task_self(), 0, &connect); + IOObjectRelease(service); + } if (!service || (kIOReturnSuccess != status)) - { - a->warning("Cannot open AppleACPIPlatformExpert (add boot arg debug=0x144 & run as root)"); - return 0; - } + { + a->warning("Cannot open AppleACPIPlatformExpert (add boot arg debug=0x144 & run as root)"); + return 0; + } a->debug("...using AppleACPIPlatformExpert"); a->fd = connect; return 1; @@ -116,34 +112,31 @@ darwin_read(struct pci_dev *d, int pos, byte *buf, int len) if (!(len == 1 || len == 2 || len == 4)) return pci_generic_block_read(d, pos, buf, len); - AddressSpaceParam param; - kern_return_t status; - - param.spaceID = kIOACPIAddressSpaceIDPCIConfiguration; - param.bitWidth = len * 8; - param.bitOffset = 0; - param.options = 0; - - param.address.pci.offset = pos; - param.address.pci.function = d->func; - param.address.pci.device = d->dev; - param.address.pci.bus = d->bus; - param.address.pci.segment = d->domain; - param.address.pci.reserved = 0; - param.value = -1ULL; - - size_t outSize = sizeof(param); - status = IOConnectCallStructMethod(d->access->fd, kACPIMethodAddressSpaceRead, - ¶m, sizeof(param), - ¶m, &outSize); + AddressSpaceParam param; + kern_return_t status; + + param.spaceID = kIOACPIAddressSpaceIDPCIConfiguration; + param.bitWidth = len * 8; + param.bitOffset = 0; + param.options = 0; + + param.address.pci.offset = pos; + param.address.pci.function = d->func; + param.address.pci.device = d->dev; + param.address.pci.bus = d->bus; + param.address.pci.segment = d->domain; + param.address.pci.reserved = 0; + param.value = -1ULL; + + size_t outSize = sizeof(param); + status = IOConnectCallStructMethod(d->access->fd, kACPIMethodAddressSpaceRead, + ¶m, sizeof(param), + ¶m, &outSize); if ((kIOReturnSuccess != status)) - { - d->access->error("darwin_read: kACPIMethodAddressSpaceRead failed: %s", - mach_error_string(status)); - } + d->access->error("darwin_read: kACPIMethodAddressSpaceRead failed: %s", mach_error_string(status)); switch (len) - { + { case 1: buf[0] = (u8) param.value; break; @@ -153,7 +146,7 @@ darwin_read(struct pci_dev *d, int pos, byte *buf, int len) case 4: ((u32 *) buf)[0] = cpu_to_le32((u32) param.value); break; - } + } return 1; } @@ -163,22 +156,23 @@ darwin_write(struct pci_dev *d, int pos, byte *buf, int len) if (!(len == 1 || len == 2 || len == 4)) return pci_generic_block_write(d, pos, buf, len); - AddressSpaceParam param; - kern_return_t status; + AddressSpaceParam param; + kern_return_t status; + + param.spaceID = kIOACPIAddressSpaceIDPCIConfiguration; + param.bitWidth = len * 8; + param.bitOffset = 0; + param.options = 0; - param.spaceID = kIOACPIAddressSpaceIDPCIConfiguration; - param.bitWidth = len * 8; - param.bitOffset = 0; - param.options = 0; + param.address.pci.offset = pos; + param.address.pci.function = d->func; + param.address.pci.device = d->dev; + param.address.pci.bus = d->bus; + param.address.pci.segment = d->domain; + param.address.pci.reserved = 0; - param.address.pci.offset = pos; - param.address.pci.function = d->func; - param.address.pci.device = d->dev; - param.address.pci.bus = d->bus; - param.address.pci.segment = d->domain; - param.address.pci.reserved = 0; switch (len) - { + { case 1: param.value = buf[0]; break; @@ -188,33 +182,30 @@ darwin_write(struct pci_dev *d, int pos, byte *buf, int len) case 4: param.value = le32_to_cpu(((u32 *) buf)[0]); break; - } + } - size_t outSize = 0; - status = IOConnectCallStructMethod(d->access->fd, kACPIMethodAddressSpaceWrite, - ¶m, sizeof(param), - NULL, &outSize); + size_t outSize = 0; + status = IOConnectCallStructMethod(d->access->fd, kACPIMethodAddressSpaceWrite, + ¶m, sizeof(param), + NULL, &outSize); if ((kIOReturnSuccess != status)) - { - d->access->error("darwin_read: kACPIMethodAddressSpaceWrite failed: %s", - mach_error_string(status)); - } + d->access->error("darwin_read: kACPIMethodAddressSpaceWrite failed: %s", mach_error_string(status)); return 1; } struct pci_methods pm_darwin_device = { - "darwin-device", - "Darwin device", - darwin_config, - darwin_detect, - darwin_init, - darwin_cleanup, - pci_generic_scan, - pci_generic_fill_info, - darwin_read, - darwin_write, - NULL, /* read_vpd */ - NULL, /* dev_init */ - NULL /* dev_cleanup */ + "darwin-device", + "Darwin device", + darwin_config, + darwin_detect, + darwin_init, + darwin_cleanup, + pci_generic_scan, + pci_generic_fill_info, + darwin_read, + darwin_write, + NULL, /* read_vpd */ + NULL, /* dev_init */ + NULL /* dev_cleanup */ }; -- 2.39.2