PCI: Fix all whitespace issues

Fix all whitespace issues (missing or needed whitespace) in all files in
drivers/pci.  Code is compiled with allyesconfig before and after code
changes and objects are recorded and checked with objdiff and they are not
changed after this commit.

Signed-off-by: Bogicevic Sasa <brutallesale@gmail.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
This commit is contained in:
Bogicevic Sasa
2015-12-27 13:21:11 -08:00
committed by Bjorn Helgaas
parent 1d1e8cdc82
commit ff3ce480e8
39 changed files with 1430 additions and 1430 deletions

View File

@ -25,7 +25,7 @@ DEFINE_RAW_SPINLOCK(pci_lock);
#define PCI_word_BAD (pos & 1) #define PCI_word_BAD (pos & 1)
#define PCI_dword_BAD (pos & 3) #define PCI_dword_BAD (pos & 3)
#define PCI_OP_READ(size,type,len) \ #define PCI_OP_READ(size, type, len) \
int pci_bus_read_config_##size \ int pci_bus_read_config_##size \
(struct pci_bus *bus, unsigned int devfn, int pos, type *value) \ (struct pci_bus *bus, unsigned int devfn, int pos, type *value) \
{ \ { \
@ -40,7 +40,7 @@ int pci_bus_read_config_##size \
return res; \ return res; \
} }
#define PCI_OP_WRITE(size,type,len) \ #define PCI_OP_WRITE(size, type, len) \
int pci_bus_write_config_##size \ int pci_bus_write_config_##size \
(struct pci_bus *bus, unsigned int devfn, int pos, type value) \ (struct pci_bus *bus, unsigned int devfn, int pos, type value) \
{ \ { \
@ -231,7 +231,7 @@ static noinline void pci_wait_cfg(struct pci_dev *dev)
} }
/* Returns 0 on success, negative values indicate error. */ /* Returns 0 on success, negative values indicate error. */
#define PCI_USER_READ_CONFIG(size,type) \ #define PCI_USER_READ_CONFIG(size, type) \
int pci_user_read_config_##size \ int pci_user_read_config_##size \
(struct pci_dev *dev, int pos, type *val) \ (struct pci_dev *dev, int pos, type *val) \
{ \ { \
@ -251,7 +251,7 @@ int pci_user_read_config_##size \
EXPORT_SYMBOL_GPL(pci_user_read_config_##size); EXPORT_SYMBOL_GPL(pci_user_read_config_##size);
/* Returns 0 on success, negative values indicate error. */ /* Returns 0 on success, negative values indicate error. */
#define PCI_USER_WRITE_CONFIG(size,type) \ #define PCI_USER_WRITE_CONFIG(size, type) \
int pci_user_write_config_##size \ int pci_user_write_config_##size \
(struct pci_dev *dev, int pos, type val) \ (struct pci_dev *dev, int pos, type val) \
{ \ { \

View File

@ -122,7 +122,7 @@ static int pcie_phy_wait_ack(void __iomem *dbi_base, int addr)
} }
/* Read from the 16-bit PCIe PHY control registers (not memory-mapped) */ /* Read from the 16-bit PCIe PHY control registers (not memory-mapped) */
static int pcie_phy_read(void __iomem *dbi_base, int addr , int *data) static int pcie_phy_read(void __iomem *dbi_base, int addr, int *data)
{ {
u32 val, phy_ctl; u32 val, phy_ctl;
int ret; int ret;

View File

@ -36,10 +36,10 @@
#define MY_NAME "acpi_pcihp" #define MY_NAME "acpi_pcihp"
#define dbg(fmt, arg...) do { if (debug_acpi) printk(KERN_DEBUG "%s: %s: " fmt , MY_NAME , __func__ , ## arg); } while (0) #define dbg(fmt, arg...) do { if (debug_acpi) printk(KERN_DEBUG "%s: %s: " fmt, MY_NAME, __func__, ## arg); } while (0)
#define err(format, arg...) printk(KERN_ERR "%s: " format , MY_NAME , ## arg) #define err(format, arg...) printk(KERN_ERR "%s: " format, MY_NAME, ## arg)
#define info(format, arg...) printk(KERN_INFO "%s: " format , MY_NAME , ## arg) #define info(format, arg...) printk(KERN_INFO "%s: " format, MY_NAME, ## arg)
#define warn(format, arg...) printk(KERN_WARNING "%s: " format , MY_NAME , ## arg) #define warn(format, arg...) printk(KERN_WARNING "%s: " format, MY_NAME, ## arg)
#define METHOD_NAME__SUN "_SUN" #define METHOD_NAME__SUN "_SUN"
#define METHOD_NAME_OSHP "OSHP" #define METHOD_NAME_OSHP "OSHP"
@ -132,7 +132,7 @@ int acpi_get_hp_hw_control_from_firmware(struct pci_dev *pdev, u32 flags)
while (handle) { while (handle) {
acpi_get_name(handle, ACPI_FULL_PATHNAME, &string); acpi_get_name(handle, ACPI_FULL_PATHNAME, &string);
dbg("Trying to get hotplug control for %s \n", dbg("Trying to get hotplug control for %s\n",
(char *)string.pointer); (char *)string.pointer);
status = acpi_run_oshp(handle); status = acpi_run_oshp(handle);
if (ACPI_SUCCESS(status)) if (ACPI_SUCCESS(status))

View File

@ -181,7 +181,7 @@ struct acpiphp_attention_info
/* function prototypes */ /* function prototypes */
/* acpiphp_core.c */ /* acpiphp_core.c */
int acpiphp_register_attention(struct acpiphp_attention_info*info); int acpiphp_register_attention(struct acpiphp_attention_info *info);
int acpiphp_unregister_attention(struct acpiphp_attention_info *info); int acpiphp_unregister_attention(struct acpiphp_attention_info *info);
int acpiphp_register_hotplug_slot(struct acpiphp_slot *slot, unsigned int sun); int acpiphp_register_hotplug_slot(struct acpiphp_slot *slot, unsigned int sun);
void acpiphp_unregister_hotplug_slot(struct acpiphp_slot *slot); void acpiphp_unregister_hotplug_slot(struct acpiphp_slot *slot);

View File

@ -63,13 +63,13 @@ MODULE_LICENSE("GPL");
MODULE_PARM_DESC(disable, "disable acpiphp driver"); MODULE_PARM_DESC(disable, "disable acpiphp driver");
module_param_named(disable, acpiphp_disabled, bool, 0444); module_param_named(disable, acpiphp_disabled, bool, 0444);
static int enable_slot (struct hotplug_slot *slot); static int enable_slot(struct hotplug_slot *slot);
static int disable_slot (struct hotplug_slot *slot); static int disable_slot(struct hotplug_slot *slot);
static int set_attention_status (struct hotplug_slot *slot, u8 value); static int set_attention_status(struct hotplug_slot *slot, u8 value);
static int get_power_status (struct hotplug_slot *slot, u8 *value); static int get_power_status(struct hotplug_slot *slot, u8 *value);
static int get_attention_status (struct hotplug_slot *slot, u8 *value); static int get_attention_status(struct hotplug_slot *slot, u8 *value);
static int get_latch_status (struct hotplug_slot *slot, u8 *value); static int get_latch_status(struct hotplug_slot *slot, u8 *value);
static int get_adapter_status (struct hotplug_slot *slot, u8 *value); static int get_adapter_status(struct hotplug_slot *slot, u8 *value);
static struct hotplug_slot_ops acpi_hotplug_slot_ops = { static struct hotplug_slot_ops acpi_hotplug_slot_ops = {
.enable_slot = enable_slot, .enable_slot = enable_slot,

View File

@ -707,7 +707,7 @@ static void acpiphp_sanitize_bus(struct pci_bus *bus)
unsigned long type_mask = IORESOURCE_IO | IORESOURCE_MEM; unsigned long type_mask = IORESOURCE_IO | IORESOURCE_MEM;
list_for_each_entry_safe_reverse(dev, tmp, &bus->devices, bus_list) { list_for_each_entry_safe_reverse(dev, tmp, &bus->devices, bus_list) {
for (i=0; i<PCI_BRIDGE_RESOURCES; i++) { for (i = 0; i < PCI_BRIDGE_RESOURCES; i++) {
struct resource *res = &dev->resource[i]; struct resource *res = &dev->resource[i];
if ((res->flags & type_mask) && !res->start && if ((res->flags & type_mask) && !res->start &&
res->end) { res->end) {

View File

@ -325,7 +325,7 @@ static int ibm_get_table_from_acpi(char **bufp)
} }
size = 0; size = 0;
for (i=0; i<package->package.count; i++) { for (i = 0; i < package->package.count; i++) {
memcpy(&lbuf[size], memcpy(&lbuf[size],
package->package.elements[i].buffer.pointer, package->package.elements[i].buffer.pointer,
package->package.elements[i].buffer.length); package->package.elements[i].buffer.length);

View File

@ -52,13 +52,13 @@ struct slot {
}; };
struct cpci_hp_controller_ops { struct cpci_hp_controller_ops {
int (*query_enum) (void); int (*query_enum)(void);
int (*enable_irq) (void); int (*enable_irq)(void);
int (*disable_irq) (void); int (*disable_irq)(void);
int (*check_irq) (void *dev_id); int (*check_irq)(void *dev_id);
int (*hardware_test) (struct slot *slot, u32 value); int (*hardware_test)(struct slot *slot, u32 value);
u8 (*get_power) (struct slot *slot); u8 (*get_power)(struct slot *slot);
int (*set_power) (struct slot *slot, int value); int (*set_power)(struct slot *slot, int value);
}; };
struct cpci_hp_controller { struct cpci_hp_controller {

View File

@ -45,12 +45,12 @@
#define dbg(format, arg...) \ #define dbg(format, arg...) \
do { \ do { \
if (cpci_debug) \ if (cpci_debug) \
printk (KERN_DEBUG "%s: " format "\n", \ printk(KERN_DEBUG "%s: " format "\n", \
MY_NAME , ## arg); \ MY_NAME, ## arg); \
} while (0) } while (0)
#define err(format, arg...) printk(KERN_ERR "%s: " format "\n", MY_NAME , ## arg) #define err(format, arg...) printk(KERN_ERR "%s: " format "\n", MY_NAME, ## arg)
#define info(format, arg...) printk(KERN_INFO "%s: " format "\n", MY_NAME , ## arg) #define info(format, arg...) printk(KERN_INFO "%s: " format "\n", MY_NAME, ## arg)
#define warn(format, arg...) printk(KERN_WARNING "%s: " format "\n", MY_NAME , ## arg) #define warn(format, arg...) printk(KERN_WARNING "%s: " format "\n", MY_NAME, ## arg)
/* local variables */ /* local variables */
static DECLARE_RWSEM(list_rwsem); static DECLARE_RWSEM(list_rwsem);
@ -238,21 +238,21 @@ cpci_hp_register_bus(struct pci_bus *bus, u8 first, u8 last)
* with the pci_hotplug subsystem. * with the pci_hotplug subsystem.
*/ */
for (i = first; i <= last; ++i) { for (i = first; i <= last; ++i) {
slot = kzalloc(sizeof (struct slot), GFP_KERNEL); slot = kzalloc(sizeof(struct slot), GFP_KERNEL);
if (!slot) { if (!slot) {
status = -ENOMEM; status = -ENOMEM;
goto error; goto error;
} }
hotplug_slot = hotplug_slot =
kzalloc(sizeof (struct hotplug_slot), GFP_KERNEL); kzalloc(sizeof(struct hotplug_slot), GFP_KERNEL);
if (!hotplug_slot) { if (!hotplug_slot) {
status = -ENOMEM; status = -ENOMEM;
goto error_slot; goto error_slot;
} }
slot->hotplug_slot = hotplug_slot; slot->hotplug_slot = hotplug_slot;
info = kzalloc(sizeof (struct hotplug_slot_info), GFP_KERNEL); info = kzalloc(sizeof(struct hotplug_slot_info), GFP_KERNEL);
if (!info) { if (!info) {
status = -ENOMEM; status = -ENOMEM;
goto error_hpslot; goto error_hpslot;

View File

@ -38,12 +38,12 @@ extern int cpci_debug;
#define dbg(format, arg...) \ #define dbg(format, arg...) \
do { \ do { \
if (cpci_debug) \ if (cpci_debug) \
printk (KERN_DEBUG "%s: " format "\n", \ printk(KERN_DEBUG "%s: " format "\n", \
MY_NAME , ## arg); \ MY_NAME, ## arg); \
} while (0) } while (0)
#define err(format, arg...) printk(KERN_ERR "%s: " format "\n", MY_NAME , ## arg) #define err(format, arg...) printk(KERN_ERR "%s: " format "\n", MY_NAME, ## arg)
#define info(format, arg...) printk(KERN_INFO "%s: " format "\n", MY_NAME , ## arg) #define info(format, arg...) printk(KERN_INFO "%s: " format "\n", MY_NAME, ## arg)
#define warn(format, arg...) printk(KERN_WARNING "%s: " format "\n", MY_NAME , ## arg) #define warn(format, arg...) printk(KERN_WARNING "%s: " format "\n", MY_NAME, ## arg)
u8 cpci_get_attention_status(struct slot *slot) u8 cpci_get_attention_status(struct slot *slot)

View File

@ -54,12 +54,12 @@
#define dbg(format, arg...) \ #define dbg(format, arg...) \
do { \ do { \
if (debug) \ if (debug) \
printk (KERN_DEBUG "%s: " format "\n", \ printk(KERN_DEBUG "%s: " format "\n", \
MY_NAME , ## arg); \ MY_NAME, ## arg); \
} while (0) } while (0)
#define err(format, arg...) printk(KERN_ERR "%s: " format "\n", MY_NAME , ## arg) #define err(format, arg...) printk(KERN_ERR "%s: " format "\n", MY_NAME, ## arg)
#define info(format, arg...) printk(KERN_INFO "%s: " format "\n", MY_NAME , ## arg) #define info(format, arg...) printk(KERN_INFO "%s: " format "\n", MY_NAME, ## arg)
#define warn(format, arg...) printk(KERN_WARNING "%s: " format "\n", MY_NAME , ## arg) #define warn(format, arg...) printk(KERN_WARNING "%s: " format "\n", MY_NAME, ## arg)
/* local variables */ /* local variables */
static bool debug; static bool debug;
@ -164,7 +164,7 @@ static int __init cpcihp_generic_init(void)
bus = dev->subordinate; bus = dev->subordinate;
pci_dev_put(dev); pci_dev_put(dev);
memset(&generic_hpc, 0, sizeof (struct cpci_hp_controller)); memset(&generic_hpc, 0, sizeof(struct cpci_hp_controller));
generic_hpc_ops.query_enum = query_enum; generic_hpc_ops.query_enum = query_enum;
generic_hpc.ops = &generic_hpc_ops; generic_hpc.ops = &generic_hpc_ops;

View File

@ -49,12 +49,12 @@
#define dbg(format, arg...) \ #define dbg(format, arg...) \
do { \ do { \
if (debug) \ if (debug) \
printk (KERN_DEBUG "%s: " format "\n", \ printk(KERN_DEBUG "%s: " format "\n", \
MY_NAME , ## arg); \ MY_NAME, ## arg); \
} while (0) } while (0)
#define err(format, arg...) printk(KERN_ERR "%s: " format "\n", MY_NAME , ## arg) #define err(format, arg...) printk(KERN_ERR "%s: " format "\n", MY_NAME, ## arg)
#define info(format, arg...) printk(KERN_INFO "%s: " format "\n", MY_NAME , ## arg) #define info(format, arg...) printk(KERN_INFO "%s: " format "\n", MY_NAME, ## arg)
#define warn(format, arg...) printk(KERN_WARNING "%s: " format "\n", MY_NAME , ## arg) #define warn(format, arg...) printk(KERN_WARNING "%s: " format "\n", MY_NAME, ## arg)
/* local variables */ /* local variables */
static bool debug; static bool debug;
@ -204,7 +204,7 @@ static int zt5550_hc_disable_irq(void)
return 0; return 0;
} }
static int zt5550_hc_init_one (struct pci_dev *pdev, const struct pci_device_id *ent) static int zt5550_hc_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
{ {
int status; int status;
@ -214,7 +214,7 @@ static int zt5550_hc_init_one (struct pci_dev *pdev, const struct pci_device_id
dbg("returned from zt5550_hc_config"); dbg("returned from zt5550_hc_config");
memset(&zt5550_hpc, 0, sizeof (struct cpci_hp_controller)); memset(&zt5550_hpc, 0, sizeof(struct cpci_hp_controller));
zt5550_hpc_ops.query_enum = zt5550_hc_query_enum; zt5550_hpc_ops.query_enum = zt5550_hc_query_enum;
zt5550_hpc.ops = &zt5550_hpc_ops; zt5550_hpc.ops = &zt5550_hpc_ops;
if (!poll) { if (!poll) {

View File

@ -36,10 +36,10 @@
#define MY_NAME "cpqphp" #define MY_NAME "cpqphp"
#define dbg(fmt, arg...) do { if (cpqhp_debug) printk(KERN_DEBUG "%s: " fmt , MY_NAME , ## arg); } while (0) #define dbg(fmt, arg...) do { if (cpqhp_debug) printk(KERN_DEBUG "%s: " fmt, MY_NAME, ## arg); } while (0)
#define err(format, arg...) printk(KERN_ERR "%s: " format , MY_NAME , ## arg) #define err(format, arg...) printk(KERN_ERR "%s: " format, MY_NAME, ## arg)
#define info(format, arg...) printk(KERN_INFO "%s: " format , MY_NAME , ## arg) #define info(format, arg...) printk(KERN_INFO "%s: " format, MY_NAME, ## arg)
#define warn(format, arg...) printk(KERN_WARNING "%s: " format , MY_NAME , ## arg) #define warn(format, arg...) printk(KERN_WARNING "%s: " format, MY_NAME, ## arg)
@ -424,7 +424,7 @@ int cpqhp_process_SS(struct controller *ctrl, struct pci_func *func);
int cpqhp_hardware_test(struct controller *ctrl, int test_num); int cpqhp_hardware_test(struct controller *ctrl, int test_num);
/* resource functions */ /* resource functions */
int cpqhp_resource_sort_and_combine (struct pci_resource **head); int cpqhp_resource_sort_and_combine(struct pci_resource **head);
/* pci functions */ /* pci functions */
int cpqhp_set_irq(u8 bus_num, u8 dev_num, u8 int_pin, u8 irq_num); int cpqhp_set_irq(u8 bus_num, u8 dev_num, u8 int_pin, u8 irq_num);
@ -685,7 +685,7 @@ static inline int cpq_get_latch_status(struct controller *ctrl,
u8 hp_slot; u8 hp_slot;
hp_slot = slot->device - ctrl->slot_device_offset; hp_slot = slot->device - ctrl->slot_device_offset;
dbg("%s: slot->device = %d, ctrl->slot_device_offset = %d \n", dbg("%s: slot->device = %d, ctrl->slot_device_offset = %d\n",
__func__, slot->device, ctrl->slot_device_offset); __func__, slot->device, ctrl->slot_device_offset);
status = (readl(ctrl->hpc_reg + INT_INPUT_CLEAR) & (0x01L << hp_slot)); status = (readl(ctrl->hpc_reg + INT_INPUT_CLEAR) & (0x01L << hp_slot));
@ -712,7 +712,7 @@ static inline int get_presence_status(struct controller *ctrl,
static inline int wait_for_ctrl_irq(struct controller *ctrl) static inline int wait_for_ctrl_irq(struct controller *ctrl)
{ {
DECLARE_WAITQUEUE(wait, current); DECLARE_WAITQUEUE(wait, current);
int retval = 0; int retval = 0;
dbg("%s - start\n", __func__); dbg("%s - start\n", __func__);

View File

@ -291,7 +291,7 @@ static void release_slot(struct hotplug_slot *hotplug_slot)
kfree(slot); kfree(slot);
} }
static int ctrl_slot_cleanup (struct controller *ctrl) static int ctrl_slot_cleanup(struct controller *ctrl)
{ {
struct slot *old_slot, *next_slot; struct slot *old_slot, *next_slot;
@ -301,7 +301,7 @@ static int ctrl_slot_cleanup (struct controller *ctrl)
while (old_slot) { while (old_slot) {
/* memory will be freed by the release_slot callback */ /* memory will be freed by the release_slot callback */
next_slot = old_slot->next; next_slot = old_slot->next;
pci_hp_deregister (old_slot->hotplug_slot); pci_hp_deregister(old_slot->hotplug_slot);
old_slot = next_slot; old_slot = next_slot;
} }
@ -413,9 +413,9 @@ cpqhp_set_attention_status(struct controller *ctrl, struct pci_func *func,
mutex_lock(&ctrl->crit_sect); mutex_lock(&ctrl->crit_sect);
if (status == 1) if (status == 1)
amber_LED_on (ctrl, hp_slot); amber_LED_on(ctrl, hp_slot);
else if (status == 0) else if (status == 0)
amber_LED_off (ctrl, hp_slot); amber_LED_off(ctrl, hp_slot);
else { else {
/* Done with exclusive hardware access */ /* Done with exclusive hardware access */
mutex_unlock(&ctrl->crit_sect); mutex_unlock(&ctrl->crit_sect);
@ -425,7 +425,7 @@ cpqhp_set_attention_status(struct controller *ctrl, struct pci_func *func,
set_SOGO(ctrl); set_SOGO(ctrl);
/* Wait for SOBS to be unset */ /* Wait for SOBS to be unset */
wait_for_ctrl_irq (ctrl); wait_for_ctrl_irq(ctrl);
/* Done with exclusive hardware access */ /* Done with exclusive hardware access */
mutex_unlock(&ctrl->crit_sect); mutex_unlock(&ctrl->crit_sect);
@ -439,7 +439,7 @@ cpqhp_set_attention_status(struct controller *ctrl, struct pci_func *func,
* @hotplug_slot: slot to change LED on * @hotplug_slot: slot to change LED on
* @status: LED control flag * @status: LED control flag
*/ */
static int set_attention_status (struct hotplug_slot *hotplug_slot, u8 status) static int set_attention_status(struct hotplug_slot *hotplug_slot, u8 status)
{ {
struct pci_func *slot_func; struct pci_func *slot_func;
struct slot *slot = hotplug_slot->private; struct slot *slot = hotplug_slot->private;
@ -610,7 +610,7 @@ static int ctrl_slot_setup(struct controller *ctrl,
u8 ctrl_slot; u8 ctrl_slot;
u32 tempdword; u32 tempdword;
char name[SLOT_NAME_SIZE]; char name[SLOT_NAME_SIZE];
void __iomem *slot_entry= NULL; void __iomem *slot_entry = NULL;
int result; int result;
dbg("%s\n", __func__); dbg("%s\n", __func__);
@ -755,7 +755,7 @@ static int one_time_init(void)
if (cpqhp_debug) if (cpqhp_debug)
pci_print_IRQ_route(); pci_print_IRQ_route();
dbg("Initialize + Start the notification mechanism \n"); dbg("Initialize + Start the notification mechanism\n");
retval = cpqhp_event_start_thread(); retval = cpqhp_event_start_thread();
if (retval) if (retval)
@ -772,7 +772,7 @@ static int one_time_init(void)
/* Map rom address */ /* Map rom address */
cpqhp_rom_start = ioremap(ROM_PHY_ADDR, ROM_PHY_LEN); cpqhp_rom_start = ioremap(ROM_PHY_ADDR, ROM_PHY_LEN);
if (!cpqhp_rom_start) { if (!cpqhp_rom_start) {
err ("Could not ioremap memory region for ROM\n"); err("Could not ioremap memory region for ROM\n");
retval = -EIO; retval = -EIO;
goto error; goto error;
} }
@ -786,7 +786,7 @@ static int one_time_init(void)
smbios_table = detect_SMBIOS_pointer(cpqhp_rom_start, smbios_table = detect_SMBIOS_pointer(cpqhp_rom_start,
cpqhp_rom_start + ROM_PHY_LEN); cpqhp_rom_start + ROM_PHY_LEN);
if (!smbios_table) { if (!smbios_table) {
err ("Could not find the SMBIOS pointer in memory\n"); err("Could not find the SMBIOS pointer in memory\n");
retval = -EIO; retval = -EIO;
goto error_rom_start; goto error_rom_start;
} }
@ -794,7 +794,7 @@ static int one_time_init(void)
smbios_start = ioremap(readl(smbios_table + ST_ADDRESS), smbios_start = ioremap(readl(smbios_table + ST_ADDRESS),
readw(smbios_table + ST_LENGTH)); readw(smbios_table + ST_LENGTH));
if (!smbios_start) { if (!smbios_start) {
err ("Could not ioremap memory region taken from SMBIOS values\n"); err("Could not ioremap memory region taken from SMBIOS values\n");
retval = -EIO; retval = -EIO;
goto error_smbios_start; goto error_smbios_start;
} }
@ -1181,7 +1181,7 @@ static int cpqhpc_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
* Finish setting up the hot plug ctrl device * Finish setting up the hot plug ctrl device
*/ */
ctrl->slot_device_offset = readb(ctrl->hpc_reg + SLOT_MASK) >> 4; ctrl->slot_device_offset = readb(ctrl->hpc_reg + SLOT_MASK) >> 4;
dbg("NumSlots %d \n", ctrl->slot_device_offset); dbg("NumSlots %d\n", ctrl->slot_device_offset);
ctrl->next_event = 0; ctrl->next_event = 0;
@ -1198,7 +1198,7 @@ static int cpqhpc_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
writel(0xFFFFFFFFL, ctrl->hpc_reg + INT_MASK); writel(0xFFFFFFFFL, ctrl->hpc_reg + INT_MASK);
/* set up the interrupt */ /* set up the interrupt */
dbg("HPC interrupt = %d \n", ctrl->interrupt); dbg("HPC interrupt = %d\n", ctrl->interrupt);
if (request_irq(ctrl->interrupt, cpqhp_ctrl_intr, if (request_irq(ctrl->interrupt, cpqhp_ctrl_intr,
IRQF_SHARED, MY_NAME, ctrl)) { IRQF_SHARED, MY_NAME, ctrl)) {
err("Can't get irq %d for the hotplug pci controller\n", err("Can't get irq %d for the hotplug pci controller\n",
@ -1321,7 +1321,7 @@ static void __exit unload_cpqphpd(void)
while (ctrl) { while (ctrl) {
if (ctrl->hpc_reg) { if (ctrl->hpc_reg) {
u16 misc; u16 misc;
rc = read_slot_enable (ctrl); rc = read_slot_enable(ctrl);
writeb(0, ctrl->hpc_reg + SLOT_SERR); writeb(0, ctrl->hpc_reg + SLOT_SERR);
writel(0xFFFFFFC0L | ~rc, ctrl->hpc_reg + INT_MASK); writel(0xFFFFFFC0L | ~rc, ctrl->hpc_reg + INT_MASK);
@ -1361,7 +1361,7 @@ static void __exit unload_cpqphpd(void)
kfree(tres); kfree(tres);
} }
kfree (ctrl->pci_bus); kfree(ctrl->pci_bus);
tctrl = ctrl; tctrl = ctrl;
ctrl = ctrl->next; ctrl = ctrl->next;
@ -1446,7 +1446,7 @@ static int __init cpqhpc_init(void)
cpqhp_debug = debug; cpqhp_debug = debug;
info (DRIVER_DESC " version: " DRIVER_VERSION "\n"); info(DRIVER_DESC " version: " DRIVER_VERSION "\n");
cpqhp_initialize_debugfs(); cpqhp_initialize_debugfs();
result = pci_register_driver(&cpqhpc_driver); result = pci_register_driver(&cpqhpc_driver);
dbg("pci_register_driver = %d\n", result); dbg("pci_register_driver = %d\n", result);

View File

@ -155,7 +155,7 @@ static u8 handle_presence_change(u16 change, struct controller *ctrl)
* Presence Change * Presence Change
*/ */
dbg("cpqsbd: Presence/Notify input change.\n"); dbg("cpqsbd: Presence/Notify input change.\n");
dbg(" Changed bits are 0x%4.4x\n", change ); dbg(" Changed bits are 0x%4.4x\n", change);
for (hp_slot = 0; hp_slot < 6; hp_slot++) { for (hp_slot = 0; hp_slot < 6; hp_slot++) {
if (change & (0x0101 << hp_slot)) { if (change & (0x0101 << hp_slot)) {
@ -276,9 +276,9 @@ static u8 handle_power_fault(u8 change, struct controller *ctrl)
taskInfo->event_type = INT_POWER_FAULT; taskInfo->event_type = INT_POWER_FAULT;
if (ctrl->rev < 4) { if (ctrl->rev < 4) {
amber_LED_on (ctrl, hp_slot); amber_LED_on(ctrl, hp_slot);
green_LED_off (ctrl, hp_slot); green_LED_off(ctrl, hp_slot);
set_SOGO (ctrl); set_SOGO(ctrl);
/* this is a fatal condition, we want /* this is a fatal condition, we want
* to crash the machine to protect from * to crash the machine to protect from
@ -438,7 +438,7 @@ static struct pci_resource *do_pre_bridge_resource_split(struct pci_resource **h
node = *head; node = *head;
if (node->length & (alignment -1)) { if (node->length & (alignment - 1)) {
/* this one isn't an aligned length, so we'll make a new entry /* this one isn't an aligned length, so we'll make a new entry
* and split it up. * and split it up.
*/ */
@ -835,13 +835,13 @@ int cpqhp_resource_sort_and_combine(struct pci_resource **head)
if (!(*head)) if (!(*head))
return 1; return 1;
dbg("*head->next = %p\n",(*head)->next); dbg("*head->next = %p\n", (*head)->next);
if (!(*head)->next) if (!(*head)->next)
return 0; /* only one item on the list, already sorted! */ return 0; /* only one item on the list, already sorted! */
dbg("*head->base = 0x%x\n",(*head)->base); dbg("*head->base = 0x%x\n", (*head)->base);
dbg("*head->next->base = 0x%x\n",(*head)->next->base); dbg("*head->next->base = 0x%x\n", (*head)->next->base);
while (out_of_order) { while (out_of_order) {
out_of_order = 0; out_of_order = 0;
@ -917,7 +917,7 @@ irqreturn_t cpqhp_ctrl_intr(int IRQ, void *data)
/* Read to clear posted writes */ /* Read to clear posted writes */
misc = readw(ctrl->hpc_reg + MISC); misc = readw(ctrl->hpc_reg + MISC);
dbg ("%s - waking up\n", __func__); dbg("%s - waking up\n", __func__);
wake_up_interruptible(&ctrl->queue); wake_up_interruptible(&ctrl->queue);
} }
@ -1285,18 +1285,18 @@ static u32 board_replaced(struct pci_func *func, struct controller *ctrl)
/* /*
* The board is already on * The board is already on
*/ */
else if (is_slot_enabled (ctrl, hp_slot)) else if (is_slot_enabled(ctrl, hp_slot))
rc = CARD_FUNCTIONING; rc = CARD_FUNCTIONING;
else { else {
mutex_lock(&ctrl->crit_sect); mutex_lock(&ctrl->crit_sect);
/* turn on board without attaching to the bus */ /* turn on board without attaching to the bus */
enable_slot_power (ctrl, hp_slot); enable_slot_power(ctrl, hp_slot);
set_SOGO(ctrl); set_SOGO(ctrl);
/* Wait for SOBS to be unset */ /* Wait for SOBS to be unset */
wait_for_ctrl_irq (ctrl); wait_for_ctrl_irq(ctrl);
/* Change bits in slot power register to force another shift out /* Change bits in slot power register to force another shift out
* NOTE: this is to work around the timer bug */ * NOTE: this is to work around the timer bug */
@ -1307,7 +1307,7 @@ static u32 board_replaced(struct pci_func *func, struct controller *ctrl)
set_SOGO(ctrl); set_SOGO(ctrl);
/* Wait for SOBS to be unset */ /* Wait for SOBS to be unset */
wait_for_ctrl_irq (ctrl); wait_for_ctrl_irq(ctrl);
adapter_speed = get_adapter_speed(ctrl, hp_slot); adapter_speed = get_adapter_speed(ctrl, hp_slot);
if (bus->cur_bus_speed != adapter_speed) if (bus->cur_bus_speed != adapter_speed)
@ -1315,12 +1315,12 @@ static u32 board_replaced(struct pci_func *func, struct controller *ctrl)
rc = WRONG_BUS_FREQUENCY; rc = WRONG_BUS_FREQUENCY;
/* turn off board without attaching to the bus */ /* turn off board without attaching to the bus */
disable_slot_power (ctrl, hp_slot); disable_slot_power(ctrl, hp_slot);
set_SOGO(ctrl); set_SOGO(ctrl);
/* Wait for SOBS to be unset */ /* Wait for SOBS to be unset */
wait_for_ctrl_irq (ctrl); wait_for_ctrl_irq(ctrl);
mutex_unlock(&ctrl->crit_sect); mutex_unlock(&ctrl->crit_sect);
@ -1329,15 +1329,15 @@ static u32 board_replaced(struct pci_func *func, struct controller *ctrl)
mutex_lock(&ctrl->crit_sect); mutex_lock(&ctrl->crit_sect);
slot_enable (ctrl, hp_slot); slot_enable(ctrl, hp_slot);
green_LED_blink (ctrl, hp_slot); green_LED_blink(ctrl, hp_slot);
amber_LED_off (ctrl, hp_slot); amber_LED_off(ctrl, hp_slot);
set_SOGO(ctrl); set_SOGO(ctrl);
/* Wait for SOBS to be unset */ /* Wait for SOBS to be unset */
wait_for_ctrl_irq (ctrl); wait_for_ctrl_irq(ctrl);
mutex_unlock(&ctrl->crit_sect); mutex_unlock(&ctrl->crit_sect);
@ -1366,14 +1366,14 @@ static u32 board_replaced(struct pci_func *func, struct controller *ctrl)
mutex_lock(&ctrl->crit_sect); mutex_lock(&ctrl->crit_sect);
amber_LED_on (ctrl, hp_slot); amber_LED_on(ctrl, hp_slot);
green_LED_off (ctrl, hp_slot); green_LED_off(ctrl, hp_slot);
slot_disable (ctrl, hp_slot); slot_disable(ctrl, hp_slot);
set_SOGO(ctrl); set_SOGO(ctrl);
/* Wait for SOBS to be unset */ /* Wait for SOBS to be unset */
wait_for_ctrl_irq (ctrl); wait_for_ctrl_irq(ctrl);
mutex_unlock(&ctrl->crit_sect); mutex_unlock(&ctrl->crit_sect);
@ -1392,14 +1392,14 @@ static u32 board_replaced(struct pci_func *func, struct controller *ctrl)
mutex_lock(&ctrl->crit_sect); mutex_lock(&ctrl->crit_sect);
amber_LED_on (ctrl, hp_slot); amber_LED_on(ctrl, hp_slot);
green_LED_off (ctrl, hp_slot); green_LED_off(ctrl, hp_slot);
slot_disable (ctrl, hp_slot); slot_disable(ctrl, hp_slot);
set_SOGO(ctrl); set_SOGO(ctrl);
/* Wait for SOBS to be unset */ /* Wait for SOBS to be unset */
wait_for_ctrl_irq (ctrl); wait_for_ctrl_irq(ctrl);
mutex_unlock(&ctrl->crit_sect); mutex_unlock(&ctrl->crit_sect);
} }
@ -1443,7 +1443,7 @@ static u32 board_added(struct pci_func *func, struct controller *ctrl)
set_SOGO(ctrl); set_SOGO(ctrl);
/* Wait for SOBS to be unset */ /* Wait for SOBS to be unset */
wait_for_ctrl_irq (ctrl); wait_for_ctrl_irq(ctrl);
/* Change bits in slot power register to force another shift out /* Change bits in slot power register to force another shift out
* NOTE: this is to work around the timer bug * NOTE: this is to work around the timer bug
@ -1455,7 +1455,7 @@ static u32 board_added(struct pci_func *func, struct controller *ctrl)
set_SOGO(ctrl); set_SOGO(ctrl);
/* Wait for SOBS to be unset */ /* Wait for SOBS to be unset */
wait_for_ctrl_irq (ctrl); wait_for_ctrl_irq(ctrl);
adapter_speed = get_adapter_speed(ctrl, hp_slot); adapter_speed = get_adapter_speed(ctrl, hp_slot);
if (bus->cur_bus_speed != adapter_speed) if (bus->cur_bus_speed != adapter_speed)
@ -1463,7 +1463,7 @@ static u32 board_added(struct pci_func *func, struct controller *ctrl)
rc = WRONG_BUS_FREQUENCY; rc = WRONG_BUS_FREQUENCY;
/* turn off board without attaching to the bus */ /* turn off board without attaching to the bus */
disable_slot_power (ctrl, hp_slot); disable_slot_power(ctrl, hp_slot);
set_SOGO(ctrl); set_SOGO(ctrl);
@ -1484,20 +1484,20 @@ static u32 board_added(struct pci_func *func, struct controller *ctrl)
dbg("%s: after down\n", __func__); dbg("%s: after down\n", __func__);
dbg("%s: before slot_enable\n", __func__); dbg("%s: before slot_enable\n", __func__);
slot_enable (ctrl, hp_slot); slot_enable(ctrl, hp_slot);
dbg("%s: before green_LED_blink\n", __func__); dbg("%s: before green_LED_blink\n", __func__);
green_LED_blink (ctrl, hp_slot); green_LED_blink(ctrl, hp_slot);
dbg("%s: before amber_LED_blink\n", __func__); dbg("%s: before amber_LED_blink\n", __func__);
amber_LED_off (ctrl, hp_slot); amber_LED_off(ctrl, hp_slot);
dbg("%s: before set_SOGO\n", __func__); dbg("%s: before set_SOGO\n", __func__);
set_SOGO(ctrl); set_SOGO(ctrl);
/* Wait for SOBS to be unset */ /* Wait for SOBS to be unset */
dbg("%s: before wait_for_ctrl_irq\n", __func__); dbg("%s: before wait_for_ctrl_irq\n", __func__);
wait_for_ctrl_irq (ctrl); wait_for_ctrl_irq(ctrl);
dbg("%s: after wait_for_ctrl_irq\n", __func__); dbg("%s: after wait_for_ctrl_irq\n", __func__);
dbg("%s: before up\n", __func__); dbg("%s: before up\n", __func__);
@ -1520,7 +1520,7 @@ static u32 board_added(struct pci_func *func, struct controller *ctrl)
} else { } else {
/* Get vendor/device ID u32 */ /* Get vendor/device ID u32 */
ctrl->pci_bus->number = func->bus; ctrl->pci_bus->number = func->bus;
rc = pci_bus_read_config_dword (ctrl->pci_bus, PCI_DEVFN(func->device, func->function), PCI_VENDOR_ID, &temp_register); rc = pci_bus_read_config_dword(ctrl->pci_bus, PCI_DEVFN(func->device, func->function), PCI_VENDOR_ID, &temp_register);
dbg("%s: pci_read_config_dword returns %d\n", __func__, rc); dbg("%s: pci_read_config_dword returns %d\n", __func__, rc);
dbg("%s: temp_register is %x\n", __func__, temp_register); dbg("%s: temp_register is %x\n", __func__, temp_register);
@ -1557,14 +1557,14 @@ static u32 board_added(struct pci_func *func, struct controller *ctrl)
if (rc) { if (rc) {
mutex_lock(&ctrl->crit_sect); mutex_lock(&ctrl->crit_sect);
amber_LED_on (ctrl, hp_slot); amber_LED_on(ctrl, hp_slot);
green_LED_off (ctrl, hp_slot); green_LED_off(ctrl, hp_slot);
slot_disable (ctrl, hp_slot); slot_disable(ctrl, hp_slot);
set_SOGO(ctrl); set_SOGO(ctrl);
/* Wait for SOBS to be unset */ /* Wait for SOBS to be unset */
wait_for_ctrl_irq (ctrl); wait_for_ctrl_irq(ctrl);
mutex_unlock(&ctrl->crit_sect); mutex_unlock(&ctrl->crit_sect);
return rc; return rc;
@ -1589,25 +1589,25 @@ static u32 board_added(struct pci_func *func, struct controller *ctrl)
mutex_lock(&ctrl->crit_sect); mutex_lock(&ctrl->crit_sect);
green_LED_on (ctrl, hp_slot); green_LED_on(ctrl, hp_slot);
set_SOGO(ctrl); set_SOGO(ctrl);
/* Wait for SOBS to be unset */ /* Wait for SOBS to be unset */
wait_for_ctrl_irq (ctrl); wait_for_ctrl_irq(ctrl);
mutex_unlock(&ctrl->crit_sect); mutex_unlock(&ctrl->crit_sect);
} else { } else {
mutex_lock(&ctrl->crit_sect); mutex_lock(&ctrl->crit_sect);
amber_LED_on (ctrl, hp_slot); amber_LED_on(ctrl, hp_slot);
green_LED_off (ctrl, hp_slot); green_LED_off(ctrl, hp_slot);
slot_disable (ctrl, hp_slot); slot_disable(ctrl, hp_slot);
set_SOGO(ctrl); set_SOGO(ctrl);
/* Wait for SOBS to be unset */ /* Wait for SOBS to be unset */
wait_for_ctrl_irq (ctrl); wait_for_ctrl_irq(ctrl);
mutex_unlock(&ctrl->crit_sect); mutex_unlock(&ctrl->crit_sect);
@ -1672,8 +1672,8 @@ static u32 remove_board(struct pci_func *func, u32 replace_flag, struct controll
mutex_lock(&ctrl->crit_sect); mutex_lock(&ctrl->crit_sect);
green_LED_off (ctrl, hp_slot); green_LED_off(ctrl, hp_slot);
slot_disable (ctrl, hp_slot); slot_disable(ctrl, hp_slot);
set_SOGO(ctrl); set_SOGO(ctrl);
@ -1683,7 +1683,7 @@ static u32 remove_board(struct pci_func *func, u32 replace_flag, struct controll
writeb(temp_byte, ctrl->hpc_reg + SLOT_SERR); writeb(temp_byte, ctrl->hpc_reg + SLOT_SERR);
/* Wait for SOBS to be unset */ /* Wait for SOBS to be unset */
wait_for_ctrl_irq (ctrl); wait_for_ctrl_irq(ctrl);
mutex_unlock(&ctrl->crit_sect); mutex_unlock(&ctrl->crit_sect);
@ -1755,7 +1755,7 @@ static int event_thread(void *data)
if (pushbutton_pending) if (pushbutton_pending)
cpqhp_pushbutton_thread(pushbutton_pending); cpqhp_pushbutton_thread(pushbutton_pending);
else else
for (ctrl = cpqhp_ctrl_list; ctrl; ctrl=ctrl->next) for (ctrl = cpqhp_ctrl_list; ctrl; ctrl = ctrl->next)
interrupt_event_handler(ctrl); interrupt_event_handler(ctrl);
} }
dbg("event_thread signals exit\n"); dbg("event_thread signals exit\n");
@ -1766,7 +1766,7 @@ int cpqhp_event_start_thread(void)
{ {
cpqhp_event_thread = kthread_run(event_thread, NULL, "phpd_event"); cpqhp_event_thread = kthread_run(event_thread, NULL, "phpd_event");
if (IS_ERR(cpqhp_event_thread)) { if (IS_ERR(cpqhp_event_thread)) {
err ("Can't start up our event thread\n"); err("Can't start up our event thread\n");
return PTR_ERR(cpqhp_event_thread); return PTR_ERR(cpqhp_event_thread);
} }
@ -1794,7 +1794,7 @@ static int update_slot_info(struct controller *ctrl, struct slot *slot)
info->latch_status = cpq_get_latch_status(ctrl, slot); info->latch_status = cpq_get_latch_status(ctrl, slot);
info->adapter_status = get_presence_status(ctrl, slot); info->adapter_status = get_presence_status(ctrl, slot);
result = pci_hp_change_slot_info(slot->hotplug_slot, info); result = pci_hp_change_slot_info(slot->hotplug_slot, info);
kfree (info); kfree(info);
return result; return result;
} }
@ -1837,23 +1837,23 @@ static void interrupt_event_handler(struct controller *ctrl)
if (p_slot->state == BLINKINGOFF_STATE) { if (p_slot->state == BLINKINGOFF_STATE) {
/* slot is on */ /* slot is on */
dbg("turn on green LED\n"); dbg("turn on green LED\n");
green_LED_on (ctrl, hp_slot); green_LED_on(ctrl, hp_slot);
} else if (p_slot->state == BLINKINGON_STATE) { } else if (p_slot->state == BLINKINGON_STATE) {
/* slot is off */ /* slot is off */
dbg("turn off green LED\n"); dbg("turn off green LED\n");
green_LED_off (ctrl, hp_slot); green_LED_off(ctrl, hp_slot);
} }
info(msg_button_cancel, p_slot->number); info(msg_button_cancel, p_slot->number);
p_slot->state = STATIC_STATE; p_slot->state = STATIC_STATE;
amber_LED_off (ctrl, hp_slot); amber_LED_off(ctrl, hp_slot);
set_SOGO(ctrl); set_SOGO(ctrl);
/* Wait for SOBS to be unset */ /* Wait for SOBS to be unset */
wait_for_ctrl_irq (ctrl); wait_for_ctrl_irq(ctrl);
mutex_unlock(&ctrl->crit_sect); mutex_unlock(&ctrl->crit_sect);
} }
@ -1861,7 +1861,7 @@ static void interrupt_event_handler(struct controller *ctrl)
else if (ctrl->event_queue[loop].event_type == INT_BUTTON_RELEASE) { else if (ctrl->event_queue[loop].event_type == INT_BUTTON_RELEASE) {
dbg("button release\n"); dbg("button release\n");
if (is_slot_enabled (ctrl, hp_slot)) { if (is_slot_enabled(ctrl, hp_slot)) {
dbg("slot is on\n"); dbg("slot is on\n");
p_slot->state = BLINKINGOFF_STATE; p_slot->state = BLINKINGOFF_STATE;
info(msg_button_off, p_slot->number); info(msg_button_off, p_slot->number);
@ -1874,13 +1874,13 @@ static void interrupt_event_handler(struct controller *ctrl)
dbg("blink green LED and turn off amber\n"); dbg("blink green LED and turn off amber\n");
amber_LED_off (ctrl, hp_slot); amber_LED_off(ctrl, hp_slot);
green_LED_blink (ctrl, hp_slot); green_LED_blink(ctrl, hp_slot);
set_SOGO(ctrl); set_SOGO(ctrl);
/* Wait for SOBS to be unset */ /* Wait for SOBS to be unset */
wait_for_ctrl_irq (ctrl); wait_for_ctrl_irq(ctrl);
mutex_unlock(&ctrl->crit_sect); mutex_unlock(&ctrl->crit_sect);
init_timer(&p_slot->task_event); init_timer(&p_slot->task_event);
@ -1940,7 +1940,7 @@ void cpqhp_pushbutton_thread(unsigned long slot)
dbg("In power_down_board, func = %p, ctrl = %p\n", func, ctrl); dbg("In power_down_board, func = %p, ctrl = %p\n", func, ctrl);
if (!func) { if (!func) {
dbg("Error! func NULL in %s\n", __func__); dbg("Error! func NULL in %s\n", __func__);
return ; return;
} }
if (cpqhp_process_SS(ctrl, func) != 0) { if (cpqhp_process_SS(ctrl, func) != 0) {
@ -1962,7 +1962,7 @@ void cpqhp_pushbutton_thread(unsigned long slot)
dbg("In add_board, func = %p, ctrl = %p\n", func, ctrl); dbg("In add_board, func = %p, ctrl = %p\n", func, ctrl);
if (!func) { if (!func) {
dbg("Error! func NULL in %s\n", __func__); dbg("Error! func NULL in %s\n", __func__);
return ; return;
} }
if (ctrl != NULL) { if (ctrl != NULL) {
@ -1973,7 +1973,7 @@ void cpqhp_pushbutton_thread(unsigned long slot)
set_SOGO(ctrl); set_SOGO(ctrl);
/* Wait for SOBS to be unset */ /* Wait for SOBS to be unset */
wait_for_ctrl_irq (ctrl); wait_for_ctrl_irq(ctrl);
} }
} }
@ -2086,7 +2086,7 @@ int cpqhp_process_SS(struct controller *ctrl, struct pci_func *func)
unsigned int devfn; unsigned int devfn;
struct slot *p_slot; struct slot *p_slot;
struct pci_bus *pci_bus = ctrl->pci_bus; struct pci_bus *pci_bus = ctrl->pci_bus;
int physical_slot=0; int physical_slot = 0;
device = func->device; device = func->device;
func = cpqhp_slot_find(ctrl->bus, device, index++); func = cpqhp_slot_find(ctrl->bus, device, index++);
@ -2100,7 +2100,7 @@ int cpqhp_process_SS(struct controller *ctrl, struct pci_func *func)
devfn = PCI_DEVFN(func->device, func->function); devfn = PCI_DEVFN(func->device, func->function);
/* Check the Class Code */ /* Check the Class Code */
rc = pci_bus_read_config_byte (pci_bus, devfn, 0x0B, &class_code); rc = pci_bus_read_config_byte(pci_bus, devfn, 0x0B, &class_code);
if (rc) if (rc)
return rc; return rc;
@ -2109,13 +2109,13 @@ int cpqhp_process_SS(struct controller *ctrl, struct pci_func *func)
rc = REMOVE_NOT_SUPPORTED; rc = REMOVE_NOT_SUPPORTED;
} else { } else {
/* See if it's a bridge */ /* See if it's a bridge */
rc = pci_bus_read_config_byte (pci_bus, devfn, PCI_HEADER_TYPE, &header_type); rc = pci_bus_read_config_byte(pci_bus, devfn, PCI_HEADER_TYPE, &header_type);
if (rc) if (rc)
return rc; return rc;
/* If it's a bridge, check the VGA Enable bit */ /* If it's a bridge, check the VGA Enable bit */
if ((header_type & 0x7F) == PCI_HEADER_TYPE_BRIDGE) { if ((header_type & 0x7F) == PCI_HEADER_TYPE_BRIDGE) {
rc = pci_bus_read_config_byte (pci_bus, devfn, PCI_BRIDGE_CONTROL, &BCR); rc = pci_bus_read_config_byte(pci_bus, devfn, PCI_BRIDGE_CONTROL, &BCR);
if (rc) if (rc)
return rc; return rc;
@ -2217,7 +2217,7 @@ int cpqhp_hardware_test(struct controller *ctrl, int test_num)
set_SOGO(ctrl); set_SOGO(ctrl);
/* Wait for SOGO interrupt */ /* Wait for SOGO interrupt */
wait_for_ctrl_irq (ctrl); wait_for_ctrl_irq(ctrl);
/* Get ready for next iteration */ /* Get ready for next iteration */
long_delay((3*HZ)/10); long_delay((3*HZ)/10);
@ -2227,7 +2227,7 @@ int cpqhp_hardware_test(struct controller *ctrl, int test_num)
set_SOGO(ctrl); set_SOGO(ctrl);
/* Wait for SOGO interrupt */ /* Wait for SOGO interrupt */
wait_for_ctrl_irq (ctrl); wait_for_ctrl_irq(ctrl);
/* Get ready for next iteration */ /* Get ready for next iteration */
long_delay((3*HZ)/10); long_delay((3*HZ)/10);
@ -2243,7 +2243,7 @@ int cpqhp_hardware_test(struct controller *ctrl, int test_num)
set_SOGO(ctrl); set_SOGO(ctrl);
/* Wait for SOBS to be unset */ /* Wait for SOBS to be unset */
wait_for_ctrl_irq (ctrl); wait_for_ctrl_irq(ctrl);
break; break;
case 2: case 2:
/* Do other stuff here! */ /* Do other stuff here! */
@ -2279,7 +2279,7 @@ static u32 configure_new_device(struct controller *ctrl, struct pci_func *func
dbg("%s\n", __func__); dbg("%s\n", __func__);
/* Check for Multi-function device */ /* Check for Multi-function device */
ctrl->pci_bus->number = func->bus; ctrl->pci_bus->number = func->bus;
rc = pci_bus_read_config_byte (ctrl->pci_bus, PCI_DEVFN(func->device, func->function), 0x0E, &temp_byte); rc = pci_bus_read_config_byte(ctrl->pci_bus, PCI_DEVFN(func->device, func->function), 0x0E, &temp_byte);
if (rc) { if (rc) {
dbg("%s: rc = %d\n", __func__, rc); dbg("%s: rc = %d\n", __func__, rc);
return rc; return rc;
@ -2296,7 +2296,7 @@ static u32 configure_new_device(struct controller *ctrl, struct pci_func *func
rc = configure_new_function(ctrl, new_slot, behind_bridge, resources); rc = configure_new_function(ctrl, new_slot, behind_bridge, resources);
if (rc) { if (rc) {
dbg("configure_new_function failed %d\n",rc); dbg("configure_new_function failed %d\n", rc);
index = 0; index = 0;
while (new_slot) { while (new_slot) {
@ -2317,7 +2317,7 @@ static u32 configure_new_device(struct controller *ctrl, struct pci_func *func
* and creates a board structure */ * and creates a board structure */
while ((function < max_functions) && (!stop_it)) { while ((function < max_functions) && (!stop_it)) {
pci_bus_read_config_dword (ctrl->pci_bus, PCI_DEVFN(func->device, function), 0x00, &ID); pci_bus_read_config_dword(ctrl->pci_bus, PCI_DEVFN(func->device, function), 0x00, &ID);
if (ID == 0xFFFFFFFF) { if (ID == 0xFFFFFFFF) {
function++; function++;
@ -2543,10 +2543,10 @@ static int configure_new_function(struct controller *ctrl, struct pci_func *func
/* set Pre Mem base and Limit registers */ /* set Pre Mem base and Limit registers */
temp_word = p_mem_node->base >> 16; temp_word = p_mem_node->base >> 16;
rc = pci_bus_write_config_word (pci_bus, devfn, PCI_PREF_MEMORY_BASE, temp_word); rc = pci_bus_write_config_word(pci_bus, devfn, PCI_PREF_MEMORY_BASE, temp_word);
temp_word = (p_mem_node->base + p_mem_node->length - 1) >> 16; temp_word = (p_mem_node->base + p_mem_node->length - 1) >> 16;
rc = pci_bus_write_config_word (pci_bus, devfn, PCI_PREF_MEMORY_LIMIT, temp_word); rc = pci_bus_write_config_word(pci_bus, devfn, PCI_PREF_MEMORY_LIMIT, temp_word);
/* Adjust this to compensate for extra adjustment in first loop /* Adjust this to compensate for extra adjustment in first loop
*/ */
@ -2560,7 +2560,7 @@ static int configure_new_function(struct controller *ctrl, struct pci_func *func
ID = 0xFFFFFFFF; ID = 0xFFFFFFFF;
pci_bus->number = hold_bus_node->base; pci_bus->number = hold_bus_node->base;
pci_bus_read_config_dword (pci_bus, PCI_DEVFN(device, 0), 0x00, &ID); pci_bus_read_config_dword(pci_bus, PCI_DEVFN(device, 0), 0x00, &ID);
pci_bus->number = func->bus; pci_bus->number = func->bus;
if (ID != 0xFFFFFFFF) { /* device present */ if (ID != 0xFFFFFFFF) { /* device present */
@ -2579,7 +2579,7 @@ static int configure_new_function(struct controller *ctrl, struct pci_func *func
new_slot->status = 0; new_slot->status = 0;
rc = configure_new_device(ctrl, new_slot, 1, &temp_resources); rc = configure_new_device(ctrl, new_slot, 1, &temp_resources);
dbg("configure_new_device rc=0x%x\n",rc); dbg("configure_new_device rc=0x%x\n", rc);
} /* End of IF (device in slot?) */ } /* End of IF (device in slot?) */
} /* End of FOR loop */ } /* End of FOR loop */
@ -2615,7 +2615,7 @@ static int configure_new_function(struct controller *ctrl, struct pci_func *func
temp_byte = temp_resources.bus_head->base - 1; temp_byte = temp_resources.bus_head->base - 1;
/* set subordinate bus */ /* set subordinate bus */
rc = pci_bus_write_config_byte (pci_bus, devfn, PCI_SUBORDINATE_BUS, temp_byte); rc = pci_bus_write_config_byte(pci_bus, devfn, PCI_SUBORDINATE_BUS, temp_byte);
if (temp_resources.bus_head->length == 0) { if (temp_resources.bus_head->length == 0) {
kfree(temp_resources.bus_head); kfree(temp_resources.bus_head);
@ -2636,7 +2636,7 @@ static int configure_new_function(struct controller *ctrl, struct pci_func *func
hold_IO_node->base = io_node->base + io_node->length; hold_IO_node->base = io_node->base + io_node->length;
temp_byte = (hold_IO_node->base) >> 8; temp_byte = (hold_IO_node->base) >> 8;
rc = pci_bus_write_config_word (pci_bus, devfn, PCI_IO_BASE, temp_byte); rc = pci_bus_write_config_word(pci_bus, devfn, PCI_IO_BASE, temp_byte);
return_resource(&(resources->io_head), io_node); return_resource(&(resources->io_head), io_node);
} }
@ -2655,13 +2655,13 @@ static int configure_new_function(struct controller *ctrl, struct pci_func *func
func->io_head = hold_IO_node; func->io_head = hold_IO_node;
temp_byte = (io_node->base - 1) >> 8; temp_byte = (io_node->base - 1) >> 8;
rc = pci_bus_write_config_byte (pci_bus, devfn, PCI_IO_LIMIT, temp_byte); rc = pci_bus_write_config_byte(pci_bus, devfn, PCI_IO_LIMIT, temp_byte);
return_resource(&(resources->io_head), io_node); return_resource(&(resources->io_head), io_node);
} else { } else {
/* it doesn't need any IO */ /* it doesn't need any IO */
temp_word = 0x0000; temp_word = 0x0000;
rc = pci_bus_write_config_word (pci_bus, devfn, PCI_IO_LIMIT, temp_word); rc = pci_bus_write_config_word(pci_bus, devfn, PCI_IO_LIMIT, temp_word);
return_resource(&(resources->io_head), io_node); return_resource(&(resources->io_head), io_node);
kfree(hold_IO_node); kfree(hold_IO_node);
@ -2687,7 +2687,7 @@ static int configure_new_function(struct controller *ctrl, struct pci_func *func
hold_mem_node->base = mem_node->base + mem_node->length; hold_mem_node->base = mem_node->base + mem_node->length;
temp_word = (hold_mem_node->base) >> 16; temp_word = (hold_mem_node->base) >> 16;
rc = pci_bus_write_config_word (pci_bus, devfn, PCI_MEMORY_BASE, temp_word); rc = pci_bus_write_config_word(pci_bus, devfn, PCI_MEMORY_BASE, temp_word);
return_resource(&(resources->mem_head), mem_node); return_resource(&(resources->mem_head), mem_node);
} }
@ -2706,14 +2706,14 @@ static int configure_new_function(struct controller *ctrl, struct pci_func *func
/* configure end address */ /* configure end address */
temp_word = (mem_node->base - 1) >> 16; temp_word = (mem_node->base - 1) >> 16;
rc = pci_bus_write_config_word (pci_bus, devfn, PCI_MEMORY_LIMIT, temp_word); rc = pci_bus_write_config_word(pci_bus, devfn, PCI_MEMORY_LIMIT, temp_word);
/* Return unused resources to the pool */ /* Return unused resources to the pool */
return_resource(&(resources->mem_head), mem_node); return_resource(&(resources->mem_head), mem_node);
} else { } else {
/* it doesn't need any Mem */ /* it doesn't need any Mem */
temp_word = 0x0000; temp_word = 0x0000;
rc = pci_bus_write_config_word (pci_bus, devfn, PCI_MEMORY_LIMIT, temp_word); rc = pci_bus_write_config_word(pci_bus, devfn, PCI_MEMORY_LIMIT, temp_word);
return_resource(&(resources->mem_head), mem_node); return_resource(&(resources->mem_head), mem_node);
kfree(hold_mem_node); kfree(hold_mem_node);
@ -2739,7 +2739,7 @@ static int configure_new_function(struct controller *ctrl, struct pci_func *func
hold_p_mem_node->base = p_mem_node->base + p_mem_node->length; hold_p_mem_node->base = p_mem_node->base + p_mem_node->length;
temp_word = (hold_p_mem_node->base) >> 16; temp_word = (hold_p_mem_node->base) >> 16;
rc = pci_bus_write_config_word (pci_bus, devfn, PCI_PREF_MEMORY_BASE, temp_word); rc = pci_bus_write_config_word(pci_bus, devfn, PCI_PREF_MEMORY_BASE, temp_word);
return_resource(&(resources->p_mem_head), p_mem_node); return_resource(&(resources->p_mem_head), p_mem_node);
} }
@ -2758,13 +2758,13 @@ static int configure_new_function(struct controller *ctrl, struct pci_func *func
func->p_mem_head = hold_p_mem_node; func->p_mem_head = hold_p_mem_node;
temp_word = (p_mem_node->base - 1) >> 16; temp_word = (p_mem_node->base - 1) >> 16;
rc = pci_bus_write_config_word (pci_bus, devfn, PCI_PREF_MEMORY_LIMIT, temp_word); rc = pci_bus_write_config_word(pci_bus, devfn, PCI_PREF_MEMORY_LIMIT, temp_word);
return_resource(&(resources->p_mem_head), p_mem_node); return_resource(&(resources->p_mem_head), p_mem_node);
} else { } else {
/* it doesn't need any PMem */ /* it doesn't need any PMem */
temp_word = 0x0000; temp_word = 0x0000;
rc = pci_bus_write_config_word (pci_bus, devfn, PCI_PREF_MEMORY_LIMIT, temp_word); rc = pci_bus_write_config_word(pci_bus, devfn, PCI_PREF_MEMORY_LIMIT, temp_word);
return_resource(&(resources->p_mem_head), p_mem_node); return_resource(&(resources->p_mem_head), p_mem_node);
kfree(hold_p_mem_node); kfree(hold_p_mem_node);
@ -2790,16 +2790,16 @@ static int configure_new_function(struct controller *ctrl, struct pci_func *func
* PCI_COMMAND_INVALIDATE | * PCI_COMMAND_INVALIDATE |
* PCI_COMMAND_PARITY | * PCI_COMMAND_PARITY |
* PCI_COMMAND_SERR */ * PCI_COMMAND_SERR */
rc = pci_bus_write_config_word (pci_bus, devfn, PCI_COMMAND, command); rc = pci_bus_write_config_word(pci_bus, devfn, PCI_COMMAND, command);
/* set Bridge Control Register */ /* set Bridge Control Register */
command = 0x07; /* = PCI_BRIDGE_CTL_PARITY | command = 0x07; /* = PCI_BRIDGE_CTL_PARITY |
* PCI_BRIDGE_CTL_SERR | * PCI_BRIDGE_CTL_SERR |
* PCI_BRIDGE_CTL_NO_ISA */ * PCI_BRIDGE_CTL_NO_ISA */
rc = pci_bus_write_config_word (pci_bus, devfn, PCI_BRIDGE_CONTROL, command); rc = pci_bus_write_config_word(pci_bus, devfn, PCI_BRIDGE_CONTROL, command);
} else if ((temp_byte & 0x7F) == PCI_HEADER_TYPE_NORMAL) { } else if ((temp_byte & 0x7F) == PCI_HEADER_TYPE_NORMAL) {
/* Standard device */ /* Standard device */
rc = pci_bus_read_config_byte (pci_bus, devfn, 0x0B, &class_code); rc = pci_bus_read_config_byte(pci_bus, devfn, 0x0B, &class_code);
if (class_code == PCI_BASE_CLASS_DISPLAY) { if (class_code == PCI_BASE_CLASS_DISPLAY) {
/* Display (video) adapter (not supported) */ /* Display (video) adapter (not supported) */
@ -2810,9 +2810,9 @@ static int configure_new_function(struct controller *ctrl, struct pci_func *func
temp_register = 0xFFFFFFFF; temp_register = 0xFFFFFFFF;
dbg("CND: bus=%d, devfn=%d, offset=%d\n", pci_bus->number, devfn, cloop); dbg("CND: bus=%d, devfn=%d, offset=%d\n", pci_bus->number, devfn, cloop);
rc = pci_bus_write_config_dword (pci_bus, devfn, cloop, temp_register); rc = pci_bus_write_config_dword(pci_bus, devfn, cloop, temp_register);
rc = pci_bus_read_config_dword (pci_bus, devfn, cloop, &temp_register); rc = pci_bus_read_config_dword(pci_bus, devfn, cloop, &temp_register);
dbg("CND: base = 0x%x\n", temp_register); dbg("CND: base = 0x%x\n", temp_register);
if (temp_register) { /* If this register is implemented */ if (temp_register) { /* If this register is implemented */
@ -2891,7 +2891,7 @@ static int configure_new_function(struct controller *ctrl, struct pci_func *func
} /* End of base register loop */ } /* End of base register loop */
if (cpqhp_legacy_mode) { if (cpqhp_legacy_mode) {
/* Figure out which interrupt pin this function uses */ /* Figure out which interrupt pin this function uses */
rc = pci_bus_read_config_byte (pci_bus, devfn, rc = pci_bus_read_config_byte(pci_bus, devfn,
PCI_INTERRUPT_PIN, &temp_byte); PCI_INTERRUPT_PIN, &temp_byte);
/* If this function needs an interrupt and we are behind /* If this function needs an interrupt and we are behind
@ -2905,7 +2905,7 @@ static int configure_new_function(struct controller *ctrl, struct pci_func *func
resources->irqs->barber_pole - 1) & 0x03]; resources->irqs->barber_pole - 1) & 0x03];
} else { } else {
/* Program IRQ based on card type */ /* Program IRQ based on card type */
rc = pci_bus_read_config_byte (pci_bus, devfn, 0x0B, &class_code); rc = pci_bus_read_config_byte(pci_bus, devfn, 0x0B, &class_code);
if (class_code == PCI_BASE_CLASS_STORAGE) if (class_code == PCI_BASE_CLASS_STORAGE)
IRQ = cpqhp_disk_irq; IRQ = cpqhp_disk_irq;
@ -2914,7 +2914,7 @@ static int configure_new_function(struct controller *ctrl, struct pci_func *func
} }
/* IRQ Line */ /* IRQ Line */
rc = pci_bus_write_config_byte (pci_bus, devfn, PCI_INTERRUPT_LINE, IRQ); rc = pci_bus_write_config_byte(pci_bus, devfn, PCI_INTERRUPT_LINE, IRQ);
} }
if (!behind_bridge) { if (!behind_bridge) {
@ -2950,7 +2950,7 @@ static int configure_new_function(struct controller *ctrl, struct pci_func *func
* PCI_COMMAND_INVALIDATE | * PCI_COMMAND_INVALIDATE |
* PCI_COMMAND_PARITY | * PCI_COMMAND_PARITY |
* PCI_COMMAND_SERR */ * PCI_COMMAND_SERR */
rc = pci_bus_write_config_word (pci_bus, devfn, rc = pci_bus_write_config_word(pci_bus, devfn,
PCI_COMMAND, temp_word); PCI_COMMAND, temp_word);
} else { /* End of Not-A-Bridge else */ } else { /* End of Not-A-Bridge else */
/* It's some strange type of PCI adapter (Cardbus?) */ /* It's some strange type of PCI adapter (Cardbus?) */
@ -2961,11 +2961,11 @@ static int configure_new_function(struct controller *ctrl, struct pci_func *func
return 0; return 0;
free_and_out: free_and_out:
cpqhp_destroy_resource_list (&temp_resources); cpqhp_destroy_resource_list(&temp_resources);
return_resource(&(resources-> bus_head), hold_bus_node); return_resource(&(resources->bus_head), hold_bus_node);
return_resource(&(resources-> io_head), hold_IO_node); return_resource(&(resources->io_head), hold_IO_node);
return_resource(&(resources-> mem_head), hold_mem_node); return_resource(&(resources->mem_head), hold_mem_node);
return_resource(&(resources-> p_mem_head), hold_p_mem_node); return_resource(&(resources->p_mem_head), hold_p_mem_node);
return rc; return rc;
} }

View File

@ -114,10 +114,10 @@ static u32 add_byte(u32 **p_buffer, u8 value, u32 *used, u32 *avail)
if ((*used + 1) > *avail) if ((*used + 1) > *avail)
return(1); return(1);
*((u8*)*p_buffer) = value; *((u8 *)*p_buffer) = value;
tByte = (u8**)p_buffer; tByte = (u8 **)p_buffer;
(*tByte)++; (*tByte)++;
*used+=1; *used += 1;
return(0); return(0);
} }
@ -129,7 +129,7 @@ static u32 add_dword(u32 **p_buffer, u32 value, u32 *used, u32 *avail)
**p_buffer = value; **p_buffer = value;
(*p_buffer)++; (*p_buffer)++;
*used+=4; *used += 4;
return(0); return(0);
} }
@ -141,7 +141,7 @@ static u32 add_dword(u32 **p_buffer, u32 value, u32 *used, u32 *avail)
* *
* returns 0 for non-Compaq ROM, 1 for Compaq ROM * returns 0 for non-Compaq ROM, 1 for Compaq ROM
*/ */
static int check_for_compaq_ROM (void __iomem *rom_start) static int check_for_compaq_ROM(void __iomem *rom_start)
{ {
u8 temp1, temp2, temp3, temp4, temp5, temp6; u8 temp1, temp2, temp3, temp4, temp5, temp6;
int result = 0; int result = 0;
@ -160,12 +160,12 @@ static int check_for_compaq_ROM (void __iomem *rom_start)
(temp6 == 'Q')) { (temp6 == 'Q')) {
result = 1; result = 1;
} }
dbg ("%s - returned %d\n", __func__, result); dbg("%s - returned %d\n", __func__, result);
return result; return result;
} }
static u32 access_EV (u16 operation, u8 *ev_name, u8 *buffer, u32 *buf_size) static u32 access_EV(u16 operation, u8 *ev_name, u8 *buffer, u32 *buf_size)
{ {
unsigned long flags; unsigned long flags;
int op = operation; int op = operation;
@ -197,7 +197,7 @@ static u32 access_EV (u16 operation, u8 *ev_name, u8 *buffer, u32 *buf_size)
* *
* Read the hot plug Resource Table from NVRAM * Read the hot plug Resource Table from NVRAM
*/ */
static int load_HRT (void __iomem *rom_start) static int load_HRT(void __iomem *rom_start)
{ {
u32 available; u32 available;
u32 temp_dword; u32 temp_dword;
@ -232,7 +232,7 @@ static int load_HRT (void __iomem *rom_start)
* *
* Save the hot plug Resource Table in NVRAM * Save the hot plug Resource Table in NVRAM
*/ */
static u32 store_HRT (void __iomem *rom_start) static u32 store_HRT(void __iomem *rom_start)
{ {
u32 *buffer; u32 *buffer;
u32 *pFill; u32 *pFill;
@ -252,7 +252,7 @@ static u32 store_HRT (void __iomem *rom_start)
if (!check_for_compaq_ROM(rom_start)) if (!check_for_compaq_ROM(rom_start))
return(1); return(1);
buffer = (u32*) evbuffer; buffer = (u32 *) evbuffer;
if (!buffer) if (!buffer)
return(1); return(1);
@ -306,7 +306,7 @@ static u32 store_HRT (void __iomem *rom_start)
loop = 0; loop = 0;
while (resNode) { while (resNode) {
loop ++; loop++;
/* base */ /* base */
rc = add_dword(&pFill, resNode->base, &usedbytes, &available); rc = add_dword(&pFill, resNode->base, &usedbytes, &available);
@ -331,7 +331,7 @@ static u32 store_HRT (void __iomem *rom_start)
loop = 0; loop = 0;
while (resNode) { while (resNode) {
loop ++; loop++;
/* base */ /* base */
rc = add_dword(&pFill, resNode->base, &usedbytes, &available); rc = add_dword(&pFill, resNode->base, &usedbytes, &available);
@ -356,7 +356,7 @@ static u32 store_HRT (void __iomem *rom_start)
loop = 0; loop = 0;
while (resNode) { while (resNode) {
loop ++; loop++;
/* base */ /* base */
rc = add_dword(&pFill, resNode->base, &usedbytes, &available); rc = add_dword(&pFill, resNode->base, &usedbytes, &available);
@ -381,7 +381,7 @@ static u32 store_HRT (void __iomem *rom_start)
loop = 0; loop = 0;
while (resNode) { while (resNode) {
loop ++; loop++;
/* base */ /* base */
rc = add_dword(&pFill, resNode->base, &usedbytes, &available); rc = add_dword(&pFill, resNode->base, &usedbytes, &available);
@ -408,7 +408,7 @@ static u32 store_HRT (void __iomem *rom_start)
temp_dword = usedbytes; temp_dword = usedbytes;
rc = access_EV(WRITE_EV, "CQTHPS", (u8*) buffer, &temp_dword); rc = access_EV(WRITE_EV, "CQTHPS", (u8 *) buffer, &temp_dword);
dbg("usedbytes = 0x%x, length = 0x%x\n", usedbytes, temp_dword); dbg("usedbytes = 0x%x, length = 0x%x\n", usedbytes, temp_dword);
@ -423,7 +423,7 @@ static u32 store_HRT (void __iomem *rom_start)
} }
void compaq_nvram_init (void __iomem *rom_start) void compaq_nvram_init(void __iomem *rom_start)
{ {
if (rom_start) if (rom_start)
compaq_int15_entry_point = (rom_start + ROM_INT15_PHY_ADDR - ROM_PHY_ADDR); compaq_int15_entry_point = (rom_start + ROM_INT15_PHY_ADDR - ROM_PHY_ADDR);
@ -435,7 +435,7 @@ void compaq_nvram_init (void __iomem *rom_start)
} }
int compaq_nvram_load (void __iomem *rom_start, struct controller *ctrl) int compaq_nvram_load(void __iomem *rom_start, struct controller *ctrl)
{ {
u8 bus, device, function; u8 bus, device, function;
u8 nummem, numpmem, numio, numbus; u8 nummem, numpmem, numio, numbus;
@ -451,7 +451,7 @@ int compaq_nvram_load (void __iomem *rom_start, struct controller *ctrl)
if (!evbuffer_init) { if (!evbuffer_init) {
/* Read the resource list information in from NVRAM */ /* Read the resource list information in from NVRAM */
if (load_HRT(rom_start)) if (load_HRT(rom_start))
memset (evbuffer, 0, 1024); memset(evbuffer, 0, 1024);
evbuffer_init = 1; evbuffer_init = 1;
} }
@ -472,7 +472,7 @@ int compaq_nvram_load (void __iomem *rom_start, struct controller *ctrl)
p_byte += 3; p_byte += 3;
if (p_byte > ((u8*)p_EV_header + evbuffer_length)) if (p_byte > ((u8 *)p_EV_header + evbuffer_length))
return 2; return 2;
bus = p_ev_ctrl->bus; bus = p_ev_ctrl->bus;
@ -489,20 +489,20 @@ int compaq_nvram_load (void __iomem *rom_start, struct controller *ctrl)
p_byte += 4; p_byte += 4;
if (p_byte > ((u8*)p_EV_header + evbuffer_length)) if (p_byte > ((u8 *)p_EV_header + evbuffer_length))
return 2; return 2;
/* Skip forward to the next entry */ /* Skip forward to the next entry */
p_byte += (nummem + numpmem + numio + numbus) * 8; p_byte += (nummem + numpmem + numio + numbus) * 8;
if (p_byte > ((u8*)p_EV_header + evbuffer_length)) if (p_byte > ((u8 *)p_EV_header + evbuffer_length))
return 2; return 2;
p_ev_ctrl = (struct ev_hrt_ctrl *) p_byte; p_ev_ctrl = (struct ev_hrt_ctrl *) p_byte;
p_byte += 3; p_byte += 3;
if (p_byte > ((u8*)p_EV_header + evbuffer_length)) if (p_byte > ((u8 *)p_EV_header + evbuffer_length))
return 2; return 2;
bus = p_ev_ctrl->bus; bus = p_ev_ctrl->bus;
@ -517,7 +517,7 @@ int compaq_nvram_load (void __iomem *rom_start, struct controller *ctrl)
p_byte += 4; p_byte += 4;
if (p_byte > ((u8*)p_EV_header + evbuffer_length)) if (p_byte > ((u8 *)p_EV_header + evbuffer_length))
return 2; return 2;
while (nummem--) { while (nummem--) {
@ -526,20 +526,20 @@ int compaq_nvram_load (void __iomem *rom_start, struct controller *ctrl)
if (!mem_node) if (!mem_node)
break; break;
mem_node->base = *(u32*)p_byte; mem_node->base = *(u32 *)p_byte;
dbg("mem base = %8.8x\n",mem_node->base); dbg("mem base = %8.8x\n", mem_node->base);
p_byte += 4; p_byte += 4;
if (p_byte > ((u8*)p_EV_header + evbuffer_length)) { if (p_byte > ((u8 *)p_EV_header + evbuffer_length)) {
kfree(mem_node); kfree(mem_node);
return 2; return 2;
} }
mem_node->length = *(u32*)p_byte; mem_node->length = *(u32 *)p_byte;
dbg("mem length = %8.8x\n",mem_node->length); dbg("mem length = %8.8x\n", mem_node->length);
p_byte += 4; p_byte += 4;
if (p_byte > ((u8*)p_EV_header + evbuffer_length)) { if (p_byte > ((u8 *)p_EV_header + evbuffer_length)) {
kfree(mem_node); kfree(mem_node);
return 2; return 2;
} }
@ -554,20 +554,20 @@ int compaq_nvram_load (void __iomem *rom_start, struct controller *ctrl)
if (!p_mem_node) if (!p_mem_node)
break; break;
p_mem_node->base = *(u32*)p_byte; p_mem_node->base = *(u32 *)p_byte;
dbg("pre-mem base = %8.8x\n",p_mem_node->base); dbg("pre-mem base = %8.8x\n", p_mem_node->base);
p_byte += 4; p_byte += 4;
if (p_byte > ((u8*)p_EV_header + evbuffer_length)) { if (p_byte > ((u8 *)p_EV_header + evbuffer_length)) {
kfree(p_mem_node); kfree(p_mem_node);
return 2; return 2;
} }
p_mem_node->length = *(u32*)p_byte; p_mem_node->length = *(u32 *)p_byte;
dbg("pre-mem length = %8.8x\n",p_mem_node->length); dbg("pre-mem length = %8.8x\n", p_mem_node->length);
p_byte += 4; p_byte += 4;
if (p_byte > ((u8*)p_EV_header + evbuffer_length)) { if (p_byte > ((u8 *)p_EV_header + evbuffer_length)) {
kfree(p_mem_node); kfree(p_mem_node);
return 2; return 2;
} }
@ -582,20 +582,20 @@ int compaq_nvram_load (void __iomem *rom_start, struct controller *ctrl)
if (!io_node) if (!io_node)
break; break;
io_node->base = *(u32*)p_byte; io_node->base = *(u32 *)p_byte;
dbg("io base = %8.8x\n",io_node->base); dbg("io base = %8.8x\n", io_node->base);
p_byte += 4; p_byte += 4;
if (p_byte > ((u8*)p_EV_header + evbuffer_length)) { if (p_byte > ((u8 *)p_EV_header + evbuffer_length)) {
kfree(io_node); kfree(io_node);
return 2; return 2;
} }
io_node->length = *(u32*)p_byte; io_node->length = *(u32 *)p_byte;
dbg("io length = %8.8x\n",io_node->length); dbg("io length = %8.8x\n", io_node->length);
p_byte += 4; p_byte += 4;
if (p_byte > ((u8*)p_EV_header + evbuffer_length)) { if (p_byte > ((u8 *)p_EV_header + evbuffer_length)) {
kfree(io_node); kfree(io_node);
return 2; return 2;
} }
@ -610,18 +610,18 @@ int compaq_nvram_load (void __iomem *rom_start, struct controller *ctrl)
if (!bus_node) if (!bus_node)
break; break;
bus_node->base = *(u32*)p_byte; bus_node->base = *(u32 *)p_byte;
p_byte += 4; p_byte += 4;
if (p_byte > ((u8*)p_EV_header + evbuffer_length)) { if (p_byte > ((u8 *)p_EV_header + evbuffer_length)) {
kfree(bus_node); kfree(bus_node);
return 2; return 2;
} }
bus_node->length = *(u32*)p_byte; bus_node->length = *(u32 *)p_byte;
p_byte += 4; p_byte += 4;
if (p_byte > ((u8*)p_EV_header + evbuffer_length)) { if (p_byte > ((u8 *)p_EV_header + evbuffer_length)) {
kfree(bus_node); kfree(bus_node);
return 2; return 2;
} }
@ -650,7 +650,7 @@ int compaq_nvram_load (void __iomem *rom_start, struct controller *ctrl)
} }
int compaq_nvram_store (void __iomem *rom_start) int compaq_nvram_store(void __iomem *rom_start)
{ {
int rc = 1; int rc = 1;

View File

@ -81,7 +81,7 @@ static void __iomem *detect_HRT_floating_pointer(void __iomem *begin, void __iom
} }
int cpqhp_configure_device (struct controller *ctrl, struct pci_func *func) int cpqhp_configure_device(struct controller *ctrl, struct pci_func *func)
{ {
struct pci_bus *child; struct pci_bus *child;
int num; int num;
@ -89,7 +89,7 @@ int cpqhp_configure_device (struct controller *ctrl, struct pci_func *func)
pci_lock_rescan_remove(); pci_lock_rescan_remove();
if (func->pci_dev == NULL) if (func->pci_dev == NULL)
func->pci_dev = pci_get_bus_and_slot(func->bus,PCI_DEVFN(func->device, func->function)); func->pci_dev = pci_get_bus_and_slot(func->bus, PCI_DEVFN(func->device, func->function));
/* No pci device, we need to create it then */ /* No pci device, we need to create it then */
if (func->pci_dev == NULL) { if (func->pci_dev == NULL) {
@ -128,7 +128,7 @@ int cpqhp_unconfigure_device(struct pci_func *func)
dbg("%s: bus/dev/func = %x/%x/%x\n", __func__, func->bus, func->device, func->function); dbg("%s: bus/dev/func = %x/%x/%x\n", __func__, func->bus, func->device, func->function);
pci_lock_rescan_remove(); pci_lock_rescan_remove();
for (j=0; j<8 ; j++) { for (j = 0; j < 8 ; j++) {
struct pci_dev *temp = pci_get_bus_and_slot(func->bus, PCI_DEVFN(func->device, j)); struct pci_dev *temp = pci_get_bus_and_slot(func->bus, PCI_DEVFN(func->device, j));
if (temp) { if (temp) {
pci_dev_put(temp); pci_dev_put(temp);
@ -143,11 +143,11 @@ static int PCI_RefinedAccessConfig(struct pci_bus *bus, unsigned int devfn, u8 o
{ {
u32 vendID = 0; u32 vendID = 0;
if (pci_bus_read_config_dword (bus, devfn, PCI_VENDOR_ID, &vendID) == -1) if (pci_bus_read_config_dword(bus, devfn, PCI_VENDOR_ID, &vendID) == -1)
return -1; return -1;
if (vendID == 0xffffffff) if (vendID == 0xffffffff)
return -1; return -1;
return pci_bus_read_config_dword (bus, devfn, offset, value); return pci_bus_read_config_dword(bus, devfn, offset, value);
} }
@ -158,7 +158,7 @@ static int PCI_RefinedAccessConfig(struct pci_bus *bus, unsigned int devfn, u8 o
* @dev_num: device number of PCI device * @dev_num: device number of PCI device
* @slot: pointer to u8 where slot number will be returned * @slot: pointer to u8 where slot number will be returned
*/ */
int cpqhp_set_irq (u8 bus_num, u8 dev_num, u8 int_pin, u8 irq_num) int cpqhp_set_irq(u8 bus_num, u8 dev_num, u8 int_pin, u8 irq_num)
{ {
int rc = 0; int rc = 0;
@ -230,7 +230,7 @@ static int PCI_ScanBusForNonBridge(struct controller *ctrl, u8 bus_num, u8 *dev_
dbg("Looking for bridge bus_num %d dev_num %d\n", bus_num, tdevice); dbg("Looking for bridge bus_num %d dev_num %d\n", bus_num, tdevice);
/* Yep we got one. bridge ? */ /* Yep we got one. bridge ? */
if ((work >> 8) == PCI_TO_PCI_BRIDGE_CLASS) { if ((work >> 8) == PCI_TO_PCI_BRIDGE_CLASS) {
pci_bus_read_config_byte (ctrl->pci_bus, PCI_DEVFN(tdevice, 0), PCI_SECONDARY_BUS, &tbus); pci_bus_read_config_byte(ctrl->pci_bus, PCI_DEVFN(tdevice, 0), PCI_SECONDARY_BUS, &tbus);
/* XXX: no recursion, wtf? */ /* XXX: no recursion, wtf? */
dbg("Recurse on bus_num %d tdevice %d\n", tbus, tdevice); dbg("Recurse on bus_num %d tdevice %d\n", tbus, tdevice);
return 0; return 0;
@ -257,16 +257,16 @@ static int PCI_GetBusDevHelper(struct controller *ctrl, u8 *bus_num, u8 *dev_num
*bus_num = tbus; *bus_num = tbus;
*dev_num = tdevice; *dev_num = tdevice;
ctrl->pci_bus->number = tbus; ctrl->pci_bus->number = tbus;
pci_bus_read_config_dword (ctrl->pci_bus, *dev_num, PCI_VENDOR_ID, &work); pci_bus_read_config_dword(ctrl->pci_bus, *dev_num, PCI_VENDOR_ID, &work);
if (!nobridge || (work == 0xffffffff)) if (!nobridge || (work == 0xffffffff))
return 0; return 0;
dbg("bus_num %d devfn %d\n", *bus_num, *dev_num); dbg("bus_num %d devfn %d\n", *bus_num, *dev_num);
pci_bus_read_config_dword (ctrl->pci_bus, *dev_num, PCI_CLASS_REVISION, &work); pci_bus_read_config_dword(ctrl->pci_bus, *dev_num, PCI_CLASS_REVISION, &work);
dbg("work >> 8 (%x) = BRIDGE (%x)\n", work >> 8, PCI_TO_PCI_BRIDGE_CLASS); dbg("work >> 8 (%x) = BRIDGE (%x)\n", work >> 8, PCI_TO_PCI_BRIDGE_CLASS);
if ((work >> 8) == PCI_TO_PCI_BRIDGE_CLASS) { if ((work >> 8) == PCI_TO_PCI_BRIDGE_CLASS) {
pci_bus_read_config_byte (ctrl->pci_bus, *dev_num, PCI_SECONDARY_BUS, &tbus); pci_bus_read_config_byte(ctrl->pci_bus, *dev_num, PCI_SECONDARY_BUS, &tbus);
dbg("Scan bus for Non Bridge: bus %d\n", tbus); dbg("Scan bus for Non Bridge: bus %d\n", tbus);
if (PCI_ScanBusForNonBridge(ctrl, tbus, dev_num) == 0) { if (PCI_ScanBusForNonBridge(ctrl, tbus, dev_num) == 0) {
*bus_num = tbus; *bus_num = tbus;
@ -280,7 +280,7 @@ static int PCI_GetBusDevHelper(struct controller *ctrl, u8 *bus_num, u8 *dev_num
} }
int cpqhp_get_bus_dev (struct controller *ctrl, u8 *bus_num, u8 *dev_num, u8 slot) int cpqhp_get_bus_dev(struct controller *ctrl, u8 *bus_num, u8 *dev_num, u8 slot)
{ {
/* plain (bridges allowed) */ /* plain (bridges allowed) */
return PCI_GetBusDevHelper(ctrl, bus_num, dev_num, slot, 0); return PCI_GetBusDevHelper(ctrl, bus_num, dev_num, slot, 0);
@ -419,7 +419,7 @@ int cpqhp_save_config(struct controller *ctrl, int busnumber, int is_hot_plug)
new_slot->pci_dev = pci_get_bus_and_slot(new_slot->bus, (new_slot->device << 3) | new_slot->function); new_slot->pci_dev = pci_get_bus_and_slot(new_slot->bus, (new_slot->device << 3) | new_slot->function);
for (cloop = 0; cloop < 0x20; cloop++) { for (cloop = 0; cloop < 0x20; cloop++) {
rc = pci_bus_read_config_dword(ctrl->pci_bus, PCI_DEVFN(device, function), cloop << 2, (u32 *) & (new_slot-> config_space [cloop])); rc = pci_bus_read_config_dword(ctrl->pci_bus, PCI_DEVFN(device, function), cloop << 2, (u32 *) &(new_slot->config_space[cloop]));
if (rc) if (rc)
return rc; return rc;
} }
@ -465,7 +465,7 @@ int cpqhp_save_config(struct controller *ctrl, int busnumber, int is_hot_plug)
* *
* returns 0 if success * returns 0 if success
*/ */
int cpqhp_save_slot_config (struct controller *ctrl, struct pci_func *new_slot) int cpqhp_save_slot_config(struct controller *ctrl, struct pci_func *new_slot)
{ {
long rc; long rc;
u8 class_code; u8 class_code;
@ -481,7 +481,7 @@ int cpqhp_save_slot_config (struct controller *ctrl, struct pci_func *new_slot)
ID = 0xFFFFFFFF; ID = 0xFFFFFFFF;
ctrl->pci_bus->number = new_slot->bus; ctrl->pci_bus->number = new_slot->bus;
pci_bus_read_config_dword (ctrl->pci_bus, PCI_DEVFN(new_slot->device, 0), PCI_VENDOR_ID, &ID); pci_bus_read_config_dword(ctrl->pci_bus, PCI_DEVFN(new_slot->device, 0), PCI_VENDOR_ID, &ID);
if (ID == 0xFFFFFFFF) if (ID == 0xFFFFFFFF)
return 2; return 2;
@ -497,7 +497,7 @@ int cpqhp_save_slot_config (struct controller *ctrl, struct pci_func *new_slot)
while (function < max_functions) { while (function < max_functions) {
if ((header_type & 0x7F) == PCI_HEADER_TYPE_BRIDGE) { if ((header_type & 0x7F) == PCI_HEADER_TYPE_BRIDGE) {
/* Recurse the subordinate bus */ /* Recurse the subordinate bus */
pci_bus_read_config_byte (ctrl->pci_bus, PCI_DEVFN(new_slot->device, function), PCI_SECONDARY_BUS, &secondary_bus); pci_bus_read_config_byte(ctrl->pci_bus, PCI_DEVFN(new_slot->device, function), PCI_SECONDARY_BUS, &secondary_bus);
sub_bus = (int) secondary_bus; sub_bus = (int) secondary_bus;
@ -514,7 +514,7 @@ int cpqhp_save_slot_config (struct controller *ctrl, struct pci_func *new_slot)
new_slot->status = 0; new_slot->status = 0;
for (cloop = 0; cloop < 0x20; cloop++) for (cloop = 0; cloop < 0x20; cloop++)
pci_bus_read_config_dword(ctrl->pci_bus, PCI_DEVFN(new_slot->device, function), cloop << 2, (u32 *) & (new_slot-> config_space [cloop])); pci_bus_read_config_dword(ctrl->pci_bus, PCI_DEVFN(new_slot->device, function), cloop << 2, (u32 *) &(new_slot->config_space[cloop]));
function++; function++;
@ -571,10 +571,10 @@ int cpqhp_save_base_addr_length(struct controller *ctrl, struct pci_func *func)
devfn = PCI_DEVFN(func->device, func->function); devfn = PCI_DEVFN(func->device, func->function);
/* Check for Bridge */ /* Check for Bridge */
pci_bus_read_config_byte (pci_bus, devfn, PCI_HEADER_TYPE, &header_type); pci_bus_read_config_byte(pci_bus, devfn, PCI_HEADER_TYPE, &header_type);
if ((header_type & 0x7F) == PCI_HEADER_TYPE_BRIDGE) { if ((header_type & 0x7F) == PCI_HEADER_TYPE_BRIDGE) {
pci_bus_read_config_byte (pci_bus, devfn, PCI_SECONDARY_BUS, &secondary_bus); pci_bus_read_config_byte(pci_bus, devfn, PCI_SECONDARY_BUS, &secondary_bus);
sub_bus = (int) secondary_bus; sub_bus = (int) secondary_bus;
@ -595,8 +595,8 @@ int cpqhp_save_base_addr_length(struct controller *ctrl, struct pci_func *func)
*/ */
for (cloop = 0x10; cloop <= 0x14; cloop += 4) { for (cloop = 0x10; cloop <= 0x14; cloop += 4) {
temp_register = 0xFFFFFFFF; temp_register = 0xFFFFFFFF;
pci_bus_write_config_dword (pci_bus, devfn, cloop, temp_register); pci_bus_write_config_dword(pci_bus, devfn, cloop, temp_register);
pci_bus_read_config_dword (pci_bus, devfn, cloop, &base); pci_bus_read_config_dword(pci_bus, devfn, cloop, &base);
/* If this register is implemented */ /* If this register is implemented */
if (base) { if (base) {
if (base & 0x01L) { if (base & 0x01L) {
@ -631,8 +631,8 @@ int cpqhp_save_base_addr_length(struct controller *ctrl, struct pci_func *func)
/* Figure out IO and memory base lengths */ /* Figure out IO and memory base lengths */
for (cloop = 0x10; cloop <= 0x24; cloop += 4) { for (cloop = 0x10; cloop <= 0x24; cloop += 4) {
temp_register = 0xFFFFFFFF; temp_register = 0xFFFFFFFF;
pci_bus_write_config_dword (pci_bus, devfn, cloop, temp_register); pci_bus_write_config_dword(pci_bus, devfn, cloop, temp_register);
pci_bus_read_config_dword (pci_bus, devfn, cloop, &base); pci_bus_read_config_dword(pci_bus, devfn, cloop, &base);
/* If this register is implemented */ /* If this register is implemented */
if (base) { if (base) {
@ -686,7 +686,7 @@ int cpqhp_save_base_addr_length(struct controller *ctrl, struct pci_func *func)
* *
* returns 0 if success * returns 0 if success
*/ */
int cpqhp_save_used_resources (struct controller *ctrl, struct pci_func *func) int cpqhp_save_used_resources(struct controller *ctrl, struct pci_func *func)
{ {
u8 cloop; u8 cloop;
u8 header_type; u8 header_type;
@ -791,7 +791,7 @@ int cpqhp_save_used_resources (struct controller *ctrl, struct pci_func *func)
} }
/* Figure out IO and memory base lengths */ /* Figure out IO and memory base lengths */
for (cloop = 0x10; cloop <= 0x14; cloop += 4) { for (cloop = 0x10; cloop <= 0x14; cloop += 4) {
pci_bus_read_config_dword (pci_bus, devfn, cloop, &save_base); pci_bus_read_config_dword(pci_bus, devfn, cloop, &save_base);
temp_register = 0xFFFFFFFF; temp_register = 0xFFFFFFFF;
pci_bus_write_config_dword(pci_bus, devfn, cloop, temp_register); pci_bus_write_config_dword(pci_bus, devfn, cloop, temp_register);
@ -972,13 +972,13 @@ int cpqhp_configure_board(struct controller *ctrl, struct pci_func *func)
* registers are programmed last * registers are programmed last
*/ */
for (cloop = 0x3C; cloop > 0; cloop -= 4) for (cloop = 0x3C; cloop > 0; cloop -= 4)
pci_bus_write_config_dword (pci_bus, devfn, cloop, func->config_space[cloop >> 2]); pci_bus_write_config_dword(pci_bus, devfn, cloop, func->config_space[cloop >> 2]);
pci_bus_read_config_byte (pci_bus, devfn, PCI_HEADER_TYPE, &header_type); pci_bus_read_config_byte(pci_bus, devfn, PCI_HEADER_TYPE, &header_type);
/* If this is a bridge device, restore subordinate devices */ /* If this is a bridge device, restore subordinate devices */
if ((header_type & 0x7F) == PCI_HEADER_TYPE_BRIDGE) { if ((header_type & 0x7F) == PCI_HEADER_TYPE_BRIDGE) {
pci_bus_read_config_byte (pci_bus, devfn, PCI_SECONDARY_BUS, &secondary_bus); pci_bus_read_config_byte(pci_bus, devfn, PCI_SECONDARY_BUS, &secondary_bus);
sub_bus = (int) secondary_bus; sub_bus = (int) secondary_bus;
@ -998,7 +998,7 @@ int cpqhp_configure_board(struct controller *ctrl, struct pci_func *func)
*/ */
for (cloop = 16; cloop < 40; cloop += 4) { for (cloop = 16; cloop < 40; cloop += 4) {
pci_bus_read_config_dword (pci_bus, devfn, cloop, &temp); pci_bus_read_config_dword(pci_bus, devfn, cloop, &temp);
if (temp != func->config_space[cloop >> 2]) { if (temp != func->config_space[cloop >> 2]) {
dbg("Config space compare failure!!! offset = %x\n", cloop); dbg("Config space compare failure!!! offset = %x\n", cloop);
@ -1050,7 +1050,7 @@ int cpqhp_valid_replace(struct controller *ctrl, struct pci_func *func)
pci_bus->number = func->bus; pci_bus->number = func->bus;
devfn = PCI_DEVFN(func->device, func->function); devfn = PCI_DEVFN(func->device, func->function);
pci_bus_read_config_dword (pci_bus, devfn, PCI_VENDOR_ID, &temp_register); pci_bus_read_config_dword(pci_bus, devfn, PCI_VENDOR_ID, &temp_register);
/* No adapter present */ /* No adapter present */
if (temp_register == 0xFFFFFFFF) if (temp_register == 0xFFFFFFFF)
@ -1060,14 +1060,14 @@ int cpqhp_valid_replace(struct controller *ctrl, struct pci_func *func)
return(ADAPTER_NOT_SAME); return(ADAPTER_NOT_SAME);
/* Check for same revision number and class code */ /* Check for same revision number and class code */
pci_bus_read_config_dword (pci_bus, devfn, PCI_CLASS_REVISION, &temp_register); pci_bus_read_config_dword(pci_bus, devfn, PCI_CLASS_REVISION, &temp_register);
/* Adapter not the same */ /* Adapter not the same */
if (temp_register != func->config_space[0x08 >> 2]) if (temp_register != func->config_space[0x08 >> 2])
return(ADAPTER_NOT_SAME); return(ADAPTER_NOT_SAME);
/* Check for Bridge */ /* Check for Bridge */
pci_bus_read_config_byte (pci_bus, devfn, PCI_HEADER_TYPE, &header_type); pci_bus_read_config_byte(pci_bus, devfn, PCI_HEADER_TYPE, &header_type);
if ((header_type & 0x7F) == PCI_HEADER_TYPE_BRIDGE) { if ((header_type & 0x7F) == PCI_HEADER_TYPE_BRIDGE) {
/* In order to continue checking, we must program the /* In order to continue checking, we must program the
@ -1076,7 +1076,7 @@ int cpqhp_valid_replace(struct controller *ctrl, struct pci_func *func)
*/ */
temp_register = func->config_space[0x18 >> 2]; temp_register = func->config_space[0x18 >> 2];
pci_bus_write_config_dword (pci_bus, devfn, PCI_PRIMARY_BUS, temp_register); pci_bus_write_config_dword(pci_bus, devfn, PCI_PRIMARY_BUS, temp_register);
secondary_bus = (temp_register >> 8) & 0xFF; secondary_bus = (temp_register >> 8) & 0xFF;
@ -1094,7 +1094,7 @@ int cpqhp_valid_replace(struct controller *ctrl, struct pci_func *func)
/* Check to see if it is a standard config header */ /* Check to see if it is a standard config header */
else if ((header_type & 0x7F) == PCI_HEADER_TYPE_NORMAL) { else if ((header_type & 0x7F) == PCI_HEADER_TYPE_NORMAL) {
/* Check subsystem vendor and ID */ /* Check subsystem vendor and ID */
pci_bus_read_config_dword (pci_bus, devfn, PCI_SUBSYSTEM_VENDOR_ID, &temp_register); pci_bus_read_config_dword(pci_bus, devfn, PCI_SUBSYSTEM_VENDOR_ID, &temp_register);
if (temp_register != func->config_space[0x2C >> 2]) { if (temp_register != func->config_space[0x2C >> 2]) {
/* If it's a SMART-2 and the register isn't /* If it's a SMART-2 and the register isn't
@ -1108,8 +1108,8 @@ int cpqhp_valid_replace(struct controller *ctrl, struct pci_func *func)
/* Figure out IO and memory base lengths */ /* Figure out IO and memory base lengths */
for (cloop = 0x10; cloop <= 0x24; cloop += 4) { for (cloop = 0x10; cloop <= 0x24; cloop += 4) {
temp_register = 0xFFFFFFFF; temp_register = 0xFFFFFFFF;
pci_bus_write_config_dword (pci_bus, devfn, cloop, temp_register); pci_bus_write_config_dword(pci_bus, devfn, cloop, temp_register);
pci_bus_read_config_dword (pci_bus, devfn, cloop, &base); pci_bus_read_config_dword(pci_bus, devfn, cloop, &base);
/* If this register is implemented */ /* If this register is implemented */
if (base) { if (base) {
@ -1234,7 +1234,7 @@ int cpqhp_find_available_resources(struct controller *ctrl, void __iomem *rom_st
if (rc) if (rc)
return rc; return rc;
one_slot = rom_resource_table + sizeof (struct hrt); one_slot = rom_resource_table + sizeof(struct hrt);
i = readb(rom_resource_table + NUMBER_OF_ENTRIES); i = readb(rom_resource_table + NUMBER_OF_ENTRIES);
dbg("number_of_entries = %d\n", i); dbg("number_of_entries = %d\n", i);
@ -1263,12 +1263,12 @@ int cpqhp_find_available_resources(struct controller *ctrl, void __iomem *rom_st
/* If this entry isn't for our controller's bus, ignore it */ /* If this entry isn't for our controller's bus, ignore it */
if (primary_bus != ctrl->bus) { if (primary_bus != ctrl->bus) {
i--; i--;
one_slot += sizeof (struct slot_rt); one_slot += sizeof(struct slot_rt);
continue; continue;
} }
/* find out if this entry is for an occupied slot */ /* find out if this entry is for an occupied slot */
ctrl->pci_bus->number = primary_bus; ctrl->pci_bus->number = primary_bus;
pci_bus_read_config_dword (ctrl->pci_bus, dev_func, PCI_VENDOR_ID, &temp_dword); pci_bus_read_config_dword(ctrl->pci_bus, dev_func, PCI_VENDOR_ID, &temp_dword);
dbg("temp_D_word = %x\n", temp_dword); dbg("temp_D_word = %x\n", temp_dword);
if (temp_dword != 0xFFFFFFFF) { if (temp_dword != 0xFFFFFFFF) {
@ -1283,7 +1283,7 @@ int cpqhp_find_available_resources(struct controller *ctrl, void __iomem *rom_st
/* If we can't find a match, skip this table entry */ /* If we can't find a match, skip this table entry */
if (!func) { if (!func) {
i--; i--;
one_slot += sizeof (struct slot_rt); one_slot += sizeof(struct slot_rt);
continue; continue;
} }
/* this may not work and shouldn't be used */ /* this may not work and shouldn't be used */
@ -1395,7 +1395,7 @@ int cpqhp_find_available_resources(struct controller *ctrl, void __iomem *rom_st
} }
i--; i--;
one_slot += sizeof (struct slot_rt); one_slot += sizeof(struct slot_rt);
} }
/* If all of the following fail, we don't have any resources for /* If all of the following fail, we don't have any resources for
@ -1475,7 +1475,7 @@ int cpqhp_return_board_resources(struct pci_func *func, struct resource_lists *r
* *
* Puts node back in the resource list pointed to by head * Puts node back in the resource list pointed to by head
*/ */
void cpqhp_destroy_resource_list (struct resource_lists *resources) void cpqhp_destroy_resource_list(struct resource_lists *resources)
{ {
struct pci_resource *res, *tres; struct pci_resource *res, *tres;
@ -1522,7 +1522,7 @@ void cpqhp_destroy_resource_list (struct resource_lists *resources)
* *
* Puts node back in the resource list pointed to by head * Puts node back in the resource list pointed to by head
*/ */
void cpqhp_destroy_board_resources (struct pci_func *func) void cpqhp_destroy_board_resources(struct pci_func *func)
{ {
struct pci_resource *res, *tres; struct pci_resource *res, *tres;

View File

@ -39,7 +39,7 @@
#include "cpqphp.h" #include "cpqphp.h"
static DEFINE_MUTEX(cpqphp_mutex); static DEFINE_MUTEX(cpqphp_mutex);
static int show_ctrl (struct controller *ctrl, char *buf) static int show_ctrl(struct controller *ctrl, char *buf)
{ {
char *out = buf; char *out = buf;
int index; int index;
@ -77,7 +77,7 @@ static int show_ctrl (struct controller *ctrl, char *buf)
return out - buf; return out - buf;
} }
static int show_dev (struct controller *ctrl, char *buf) static int show_dev(struct controller *ctrl, char *buf)
{ {
char *out = buf; char *out = buf;
int index; int index;
@ -119,7 +119,7 @@ static int show_dev (struct controller *ctrl, char *buf)
out += sprintf(out, "start = %8.8x, length = %8.8x\n", res->base, res->length); out += sprintf(out, "start = %8.8x, length = %8.8x\n", res->base, res->length);
res = res->next; res = res->next;
} }
slot=slot->next; slot = slot->next;
} }
return out - buf; return out - buf;

View File

@ -39,11 +39,11 @@ extern int ibmphp_debug;
#else #else
#define MY_NAME THIS_MODULE->name #define MY_NAME THIS_MODULE->name
#endif #endif
#define debug(fmt, arg...) do { if (ibmphp_debug == 1) printk(KERN_DEBUG "%s: " fmt , MY_NAME , ## arg); } while (0) #define debug(fmt, arg...) do { if (ibmphp_debug == 1) printk(KERN_DEBUG "%s: " fmt, MY_NAME, ## arg); } while (0)
#define debug_pci(fmt, arg...) do { if (ibmphp_debug) printk(KERN_DEBUG "%s: " fmt , MY_NAME , ## arg); } while (0) #define debug_pci(fmt, arg...) do { if (ibmphp_debug) printk(KERN_DEBUG "%s: " fmt, MY_NAME, ## arg); } while (0)
#define err(format, arg...) printk(KERN_ERR "%s: " format , MY_NAME , ## arg) #define err(format, arg...) printk(KERN_ERR "%s: " format, MY_NAME, ## arg)
#define info(format, arg...) printk(KERN_INFO "%s: " format , MY_NAME , ## arg) #define info(format, arg...) printk(KERN_INFO "%s: " format, MY_NAME, ## arg)
#define warn(format, arg...) printk(KERN_WARNING "%s: " format , MY_NAME , ## arg) #define warn(format, arg...) printk(KERN_WARNING "%s: " format, MY_NAME, ## arg)
/* EBDA stuff */ /* EBDA stuff */
@ -603,7 +603,7 @@ void ibmphp_hpc_stop_poll_thread(void);
#define SLOT_CONNECT(s) ((u8) ((s & HPC_SLOT_CONNECT) \ #define SLOT_CONNECT(s) ((u8) ((s & HPC_SLOT_CONNECT) \
? HPC_SLOT_DISCONNECTED : HPC_SLOT_CONNECTED)) ? HPC_SLOT_DISCONNECTED : HPC_SLOT_CONNECTED))
#define SLOT_ATTN(s,es) ((u8) ((es & HPC_SLOT_BLINK_ATTN) \ #define SLOT_ATTN(s, es) ((u8) ((es & HPC_SLOT_BLINK_ATTN) \
? HPC_SLOT_ATTN_BLINK \ ? HPC_SLOT_ATTN_BLINK \
: ((s & HPC_SLOT_ATTN) ? HPC_SLOT_ATTN_ON : HPC_SLOT_ATTN_OFF))) : ((s & HPC_SLOT_ATTN) ? HPC_SLOT_ATTN_ON : HPC_SLOT_ATTN_OFF)))

View File

@ -39,11 +39,11 @@
#include <asm/io_apic.h> #include <asm/io_apic.h>
#include "ibmphp.h" #include "ibmphp.h"
#define attn_on(sl) ibmphp_hpc_writeslot (sl, HPC_SLOT_ATTNON) #define attn_on(sl) ibmphp_hpc_writeslot(sl, HPC_SLOT_ATTNON)
#define attn_off(sl) ibmphp_hpc_writeslot (sl, HPC_SLOT_ATTNOFF) #define attn_off(sl) ibmphp_hpc_writeslot(sl, HPC_SLOT_ATTNOFF)
#define attn_LED_blink(sl) ibmphp_hpc_writeslot (sl, HPC_SLOT_BLINKLED) #define attn_LED_blink(sl) ibmphp_hpc_writeslot(sl, HPC_SLOT_BLINKLED)
#define get_ctrl_revision(sl, rev) ibmphp_hpc_readslot (sl, READ_REVLEVEL, rev) #define get_ctrl_revision(sl, rev) ibmphp_hpc_readslot(sl, READ_REVLEVEL, rev)
#define get_hpc_options(sl, opt) ibmphp_hpc_readslot (sl, READ_HPCOPTIONS, opt) #define get_hpc_options(sl, opt) ibmphp_hpc_readslot(sl, READ_HPCOPTIONS, opt)
#define DRIVER_VERSION "0.6" #define DRIVER_VERSION "0.6"
#define DRIVER_DESC "IBM Hot Plug PCI Controller Driver" #define DRIVER_DESC "IBM Hot Plug PCI Controller Driver"
@ -52,9 +52,9 @@ int ibmphp_debug;
static bool debug; static bool debug;
module_param(debug, bool, S_IRUGO | S_IWUSR); module_param(debug, bool, S_IRUGO | S_IWUSR);
MODULE_PARM_DESC (debug, "Debugging mode enabled or not"); MODULE_PARM_DESC(debug, "Debugging mode enabled or not");
MODULE_LICENSE ("GPL"); MODULE_LICENSE("GPL");
MODULE_DESCRIPTION (DRIVER_DESC); MODULE_DESCRIPTION(DRIVER_DESC);
struct pci_bus *ibmphp_pci_bus; struct pci_bus *ibmphp_pci_bus;
static int max_slots; static int max_slots;
@ -113,7 +113,7 @@ static inline int slot_update(struct slot **sl)
return rc; return rc;
} }
static int __init get_max_slots (void) static int __init get_max_slots(void)
{ {
struct slot *slot_cur; struct slot *slot_cur;
struct list_head *tmp; struct list_head *tmp;
@ -459,7 +459,7 @@ static int get_max_adapter_speed_1(struct hotplug_slot *hotplug_slot, u8 *value,
*value = SLOT_SPEED(myslot.ext_status); *value = SLOT_SPEED(myslot.ext_status);
} else } else
*value = MAX_ADAPTER_NONE; *value = MAX_ADAPTER_NONE;
} }
} }
if (flag) if (flag)
@ -620,11 +620,11 @@ int ibmphp_update_slot_info(struct slot *slot_cur)
info->attention_status = SLOT_ATTN(slot_cur->status, info->attention_status = SLOT_ATTN(slot_cur->status,
slot_cur->ext_status); slot_cur->ext_status);
info->latch_status = SLOT_LATCH(slot_cur->status); info->latch_status = SLOT_LATCH(slot_cur->status);
if (!SLOT_PRESENT(slot_cur->status)) { if (!SLOT_PRESENT(slot_cur->status)) {
info->adapter_status = 0; info->adapter_status = 0;
/* info->max_adapter_speed_status = MAX_ADAPTER_NONE; */ /* info->max_adapter_speed_status = MAX_ADAPTER_NONE; */
} else { } else {
info->adapter_status = 1; info->adapter_status = 1;
/* get_max_adapter_speed_1(slot_cur->hotplug_slot, /* get_max_adapter_speed_1(slot_cur->hotplug_slot,
&info->max_adapter_speed_status, 0); */ &info->max_adapter_speed_status, 0); */
} }
@ -866,7 +866,7 @@ static int set_bus(struct slot *slot_cur)
int retval; int retval;
static struct pci_device_id ciobx[] = { static struct pci_device_id ciobx[] = {
{ PCI_DEVICE(PCI_VENDOR_ID_SERVERWORKS, 0x0101) }, { PCI_DEVICE(PCI_VENDOR_ID_SERVERWORKS, 0x0101) },
{ }, { },
}; };
debug("%s - entry slot # %d\n", __func__, slot_cur->number); debug("%s - entry slot # %d\n", __func__, slot_cur->number);
@ -1182,7 +1182,7 @@ error_power:
* HOT REMOVING ADAPTER CARD * * HOT REMOVING ADAPTER CARD *
* INPUT: POINTER TO THE HOTPLUG SLOT STRUCTURE * * INPUT: POINTER TO THE HOTPLUG SLOT STRUCTURE *
* OUTPUT: SUCCESS 0 ; FAILURE: UNCONFIGURE , VALIDATE * * OUTPUT: SUCCESS 0 ; FAILURE: UNCONFIGURE , VALIDATE *
DISABLE POWER , * * DISABLE POWER , *
**************************************************************/ **************************************************************/
static int ibmphp_disable_slot(struct hotplug_slot *hotplug_slot) static int ibmphp_disable_slot(struct hotplug_slot *hotplug_slot)
{ {

File diff suppressed because it is too large Load Diff

View File

@ -40,7 +40,7 @@
#include "ibmphp.h" #include "ibmphp.h"
static int to_debug = 0; static int to_debug = 0;
#define debug_polling(fmt, arg...) do { if (to_debug) debug (fmt, arg); } while (0) #define debug_polling(fmt, arg...) do { if (to_debug) debug(fmt, arg); } while (0)
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
// timeout values // timeout values
@ -110,16 +110,16 @@ static struct task_struct *ibmphp_poll_thread;
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
// local function prototypes // local function prototypes
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
static u8 i2c_ctrl_read (struct controller *, void __iomem *, u8); static u8 i2c_ctrl_read(struct controller *, void __iomem *, u8);
static u8 i2c_ctrl_write (struct controller *, void __iomem *, u8, u8); static u8 i2c_ctrl_write(struct controller *, void __iomem *, u8, u8);
static u8 hpc_writecmdtoindex (u8, u8); static u8 hpc_writecmdtoindex(u8, u8);
static u8 hpc_readcmdtoindex (u8, u8); static u8 hpc_readcmdtoindex(u8, u8);
static void get_hpc_access (void); static void get_hpc_access(void);
static void free_hpc_access (void); static void free_hpc_access(void);
static int poll_hpc(void *data); static int poll_hpc(void *data);
static int process_changeinstatus (struct slot *, struct slot *); static int process_changeinstatus(struct slot *, struct slot *);
static int process_changeinlatch (u8, u8, struct controller *); static int process_changeinlatch(u8, u8, struct controller *);
static int hpc_wait_ctlr_notworking (int, struct controller *, void __iomem *, u8 *); static int hpc_wait_ctlr_notworking(int, struct controller *, void __iomem *, u8 *);
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
@ -128,16 +128,16 @@ static int hpc_wait_ctlr_notworking (int, struct controller *, void __iomem *, u
* *
* Action: initialize semaphores and variables * Action: initialize semaphores and variables
*---------------------------------------------------------------------*/ *---------------------------------------------------------------------*/
void __init ibmphp_hpc_initvars (void) void __init ibmphp_hpc_initvars(void)
{ {
debug ("%s - Entry\n", __func__); debug("%s - Entry\n", __func__);
mutex_init(&sem_hpcaccess); mutex_init(&sem_hpcaccess);
sema_init(&semOperations, 1); sema_init(&semOperations, 1);
sema_init(&sem_exit, 0); sema_init(&sem_exit, 0);
to_debug = 0; to_debug = 0;
debug ("%s - Exit\n", __func__); debug("%s - Exit\n", __func__);
} }
/*---------------------------------------------------------------------- /*----------------------------------------------------------------------
@ -146,7 +146,7 @@ void __init ibmphp_hpc_initvars (void)
* Action: read from HPC over I2C * Action: read from HPC over I2C
* *
*---------------------------------------------------------------------*/ *---------------------------------------------------------------------*/
static u8 i2c_ctrl_read (struct controller *ctlr_ptr, void __iomem *WPGBbar, u8 index) static u8 i2c_ctrl_read(struct controller *ctlr_ptr, void __iomem *WPGBbar, u8 index)
{ {
u8 status; u8 status;
int i; int i;
@ -155,7 +155,7 @@ static u8 i2c_ctrl_read (struct controller *ctlr_ptr, void __iomem *WPGBbar, u8
unsigned long ultemp; unsigned long ultemp;
unsigned long data; // actual data HILO format unsigned long data; // actual data HILO format
debug_polling ("%s - Entry WPGBbar[%p] index[%x] \n", __func__, WPGBbar, index); debug_polling("%s - Entry WPGBbar[%p] index[%x] \n", __func__, WPGBbar, index);
//-------------------------------------------------------------------- //--------------------------------------------------------------------
// READ - step 1 // READ - step 1
@ -178,28 +178,28 @@ static u8 i2c_ctrl_read (struct controller *ctlr_ptr, void __iomem *WPGBbar, u8
ultemp = ultemp << 8; ultemp = ultemp << 8;
data |= ultemp; data |= ultemp;
} else { } else {
err ("this controller type is not supported \n"); err("this controller type is not supported \n");
return HPC_ERROR; return HPC_ERROR;
} }
wpg_data = swab32 (data); // swap data before writing wpg_data = swab32(data); // swap data before writing
wpg_addr = WPGBbar + WPG_I2CMOSUP_OFFSET; wpg_addr = WPGBbar + WPG_I2CMOSUP_OFFSET;
writel (wpg_data, wpg_addr); writel(wpg_data, wpg_addr);
//-------------------------------------------------------------------- //--------------------------------------------------------------------
// READ - step 2 : clear the message buffer // READ - step 2 : clear the message buffer
data = 0x00000000; data = 0x00000000;
wpg_data = swab32 (data); wpg_data = swab32(data);
wpg_addr = WPGBbar + WPG_I2CMBUFL_OFFSET; wpg_addr = WPGBbar + WPG_I2CMBUFL_OFFSET;
writel (wpg_data, wpg_addr); writel(wpg_data, wpg_addr);
//-------------------------------------------------------------------- //--------------------------------------------------------------------
// READ - step 3 : issue start operation, I2C master control bit 30:ON // READ - step 3 : issue start operation, I2C master control bit 30:ON
// 2020 : [20] OR operation at [20] offset 0x20 // 2020 : [20] OR operation at [20] offset 0x20
data = WPG_I2CMCNTL_STARTOP_MASK; data = WPG_I2CMCNTL_STARTOP_MASK;
wpg_data = swab32 (data); wpg_data = swab32(data);
wpg_addr = WPGBbar + WPG_I2CMCNTL_OFFSET + WPG_I2C_OR; wpg_addr = WPGBbar + WPG_I2CMCNTL_OFFSET + WPG_I2C_OR;
writel (wpg_data, wpg_addr); writel(wpg_data, wpg_addr);
//-------------------------------------------------------------------- //--------------------------------------------------------------------
// READ - step 4 : wait until start operation bit clears // READ - step 4 : wait until start operation bit clears
@ -207,14 +207,14 @@ static u8 i2c_ctrl_read (struct controller *ctlr_ptr, void __iomem *WPGBbar, u8
while (i) { while (i) {
msleep(10); msleep(10);
wpg_addr = WPGBbar + WPG_I2CMCNTL_OFFSET; wpg_addr = WPGBbar + WPG_I2CMCNTL_OFFSET;
wpg_data = readl (wpg_addr); wpg_data = readl(wpg_addr);
data = swab32 (wpg_data); data = swab32(wpg_data);
if (!(data & WPG_I2CMCNTL_STARTOP_MASK)) if (!(data & WPG_I2CMCNTL_STARTOP_MASK))
break; break;
i--; i--;
} }
if (i == 0) { if (i == 0) {
debug ("%s - Error : WPG timeout\n", __func__); debug("%s - Error : WPG timeout\n", __func__);
return HPC_ERROR; return HPC_ERROR;
} }
//-------------------------------------------------------------------- //--------------------------------------------------------------------
@ -223,26 +223,26 @@ static u8 i2c_ctrl_read (struct controller *ctlr_ptr, void __iomem *WPGBbar, u8
while (i) { while (i) {
msleep(10); msleep(10);
wpg_addr = WPGBbar + WPG_I2CSTAT_OFFSET; wpg_addr = WPGBbar + WPG_I2CSTAT_OFFSET;
wpg_data = readl (wpg_addr); wpg_data = readl(wpg_addr);
data = swab32 (wpg_data); data = swab32(wpg_data);
if (HPC_I2CSTATUS_CHECK (data)) if (HPC_I2CSTATUS_CHECK(data))
break; break;
i--; i--;
} }
if (i == 0) { if (i == 0) {
debug ("ctrl_read - Exit Error:I2C timeout\n"); debug("ctrl_read - Exit Error:I2C timeout\n");
return HPC_ERROR; return HPC_ERROR;
} }
//-------------------------------------------------------------------- //--------------------------------------------------------------------
// READ - step 6 : get DATA // READ - step 6 : get DATA
wpg_addr = WPGBbar + WPG_I2CMBUFL_OFFSET; wpg_addr = WPGBbar + WPG_I2CMBUFL_OFFSET;
wpg_data = readl (wpg_addr); wpg_data = readl(wpg_addr);
data = swab32 (wpg_data); data = swab32(wpg_data);
status = (u8) data; status = (u8) data;
debug_polling ("%s - Exit index[%x] status[%x]\n", __func__, index, status); debug_polling("%s - Exit index[%x] status[%x]\n", __func__, index, status);
return (status); return (status);
} }
@ -254,7 +254,7 @@ static u8 i2c_ctrl_read (struct controller *ctlr_ptr, void __iomem *WPGBbar, u8
* *
* Return 0 or error codes * Return 0 or error codes
*---------------------------------------------------------------------*/ *---------------------------------------------------------------------*/
static u8 i2c_ctrl_write (struct controller *ctlr_ptr, void __iomem *WPGBbar, u8 index, u8 cmd) static u8 i2c_ctrl_write(struct controller *ctlr_ptr, void __iomem *WPGBbar, u8 index, u8 cmd)
{ {
u8 rc; u8 rc;
void __iomem *wpg_addr; // base addr + offset void __iomem *wpg_addr; // base addr + offset
@ -263,7 +263,7 @@ static u8 i2c_ctrl_write (struct controller *ctlr_ptr, void __iomem *WPGBbar, u8
unsigned long data; // actual data HILO format unsigned long data; // actual data HILO format
int i; int i;
debug_polling ("%s - Entry WPGBbar[%p] index[%x] cmd[%x]\n", __func__, WPGBbar, index, cmd); debug_polling("%s - Entry WPGBbar[%p] index[%x] cmd[%x]\n", __func__, WPGBbar, index, cmd);
rc = 0; rc = 0;
//-------------------------------------------------------------------- //--------------------------------------------------------------------
@ -289,28 +289,28 @@ static u8 i2c_ctrl_write (struct controller *ctlr_ptr, void __iomem *WPGBbar, u8
ultemp = ultemp << 8; ultemp = ultemp << 8;
data |= ultemp; data |= ultemp;
} else { } else {
err ("this controller type is not supported \n"); err("this controller type is not supported \n");
return HPC_ERROR; return HPC_ERROR;
} }
wpg_data = swab32 (data); // swap data before writing wpg_data = swab32(data); // swap data before writing
wpg_addr = WPGBbar + WPG_I2CMOSUP_OFFSET; wpg_addr = WPGBbar + WPG_I2CMOSUP_OFFSET;
writel (wpg_data, wpg_addr); writel(wpg_data, wpg_addr);
//-------------------------------------------------------------------- //--------------------------------------------------------------------
// WRITE - step 2 : clear the message buffer // WRITE - step 2 : clear the message buffer
data = 0x00000000 | (unsigned long)cmd; data = 0x00000000 | (unsigned long)cmd;
wpg_data = swab32 (data); wpg_data = swab32(data);
wpg_addr = WPGBbar + WPG_I2CMBUFL_OFFSET; wpg_addr = WPGBbar + WPG_I2CMBUFL_OFFSET;
writel (wpg_data, wpg_addr); writel(wpg_data, wpg_addr);
//-------------------------------------------------------------------- //--------------------------------------------------------------------
// WRITE - step 3 : issue start operation,I2C master control bit 30:ON // WRITE - step 3 : issue start operation,I2C master control bit 30:ON
// 2020 : [20] OR operation at [20] offset 0x20 // 2020 : [20] OR operation at [20] offset 0x20
data = WPG_I2CMCNTL_STARTOP_MASK; data = WPG_I2CMCNTL_STARTOP_MASK;
wpg_data = swab32 (data); wpg_data = swab32(data);
wpg_addr = WPGBbar + WPG_I2CMCNTL_OFFSET + WPG_I2C_OR; wpg_addr = WPGBbar + WPG_I2CMCNTL_OFFSET + WPG_I2C_OR;
writel (wpg_data, wpg_addr); writel(wpg_data, wpg_addr);
//-------------------------------------------------------------------- //--------------------------------------------------------------------
// WRITE - step 4 : wait until start operation bit clears // WRITE - step 4 : wait until start operation bit clears
@ -318,14 +318,14 @@ static u8 i2c_ctrl_write (struct controller *ctlr_ptr, void __iomem *WPGBbar, u8
while (i) { while (i) {
msleep(10); msleep(10);
wpg_addr = WPGBbar + WPG_I2CMCNTL_OFFSET; wpg_addr = WPGBbar + WPG_I2CMCNTL_OFFSET;
wpg_data = readl (wpg_addr); wpg_data = readl(wpg_addr);
data = swab32 (wpg_data); data = swab32(wpg_data);
if (!(data & WPG_I2CMCNTL_STARTOP_MASK)) if (!(data & WPG_I2CMCNTL_STARTOP_MASK))
break; break;
i--; i--;
} }
if (i == 0) { if (i == 0) {
debug ("%s - Exit Error:WPG timeout\n", __func__); debug("%s - Exit Error:WPG timeout\n", __func__);
rc = HPC_ERROR; rc = HPC_ERROR;
} }
@ -335,25 +335,25 @@ static u8 i2c_ctrl_write (struct controller *ctlr_ptr, void __iomem *WPGBbar, u8
while (i) { while (i) {
msleep(10); msleep(10);
wpg_addr = WPGBbar + WPG_I2CSTAT_OFFSET; wpg_addr = WPGBbar + WPG_I2CSTAT_OFFSET;
wpg_data = readl (wpg_addr); wpg_data = readl(wpg_addr);
data = swab32 (wpg_data); data = swab32(wpg_data);
if (HPC_I2CSTATUS_CHECK (data)) if (HPC_I2CSTATUS_CHECK(data))
break; break;
i--; i--;
} }
if (i == 0) { if (i == 0) {
debug ("ctrl_read - Error : I2C timeout\n"); debug("ctrl_read - Error : I2C timeout\n");
rc = HPC_ERROR; rc = HPC_ERROR;
} }
debug_polling ("%s Exit rc[%x]\n", __func__, rc); debug_polling("%s Exit rc[%x]\n", __func__, rc);
return (rc); return (rc);
} }
//------------------------------------------------------------ //------------------------------------------------------------
// Read from ISA type HPC // Read from ISA type HPC
//------------------------------------------------------------ //------------------------------------------------------------
static u8 isa_ctrl_read (struct controller *ctlr_ptr, u8 offset) static u8 isa_ctrl_read(struct controller *ctlr_ptr, u8 offset)
{ {
u16 start_address; u16 start_address;
u16 end_address; u16 end_address;
@ -361,56 +361,56 @@ static u8 isa_ctrl_read (struct controller *ctlr_ptr, u8 offset)
start_address = ctlr_ptr->u.isa_ctlr.io_start; start_address = ctlr_ptr->u.isa_ctlr.io_start;
end_address = ctlr_ptr->u.isa_ctlr.io_end; end_address = ctlr_ptr->u.isa_ctlr.io_end;
data = inb (start_address + offset); data = inb(start_address + offset);
return data; return data;
} }
//-------------------------------------------------------------- //--------------------------------------------------------------
// Write to ISA type HPC // Write to ISA type HPC
//-------------------------------------------------------------- //--------------------------------------------------------------
static void isa_ctrl_write (struct controller *ctlr_ptr, u8 offset, u8 data) static void isa_ctrl_write(struct controller *ctlr_ptr, u8 offset, u8 data)
{ {
u16 start_address; u16 start_address;
u16 port_address; u16 port_address;
start_address = ctlr_ptr->u.isa_ctlr.io_start; start_address = ctlr_ptr->u.isa_ctlr.io_start;
port_address = start_address + (u16) offset; port_address = start_address + (u16) offset;
outb (data, port_address); outb(data, port_address);
} }
static u8 pci_ctrl_read (struct controller *ctrl, u8 offset) static u8 pci_ctrl_read(struct controller *ctrl, u8 offset)
{ {
u8 data = 0x00; u8 data = 0x00;
debug ("inside pci_ctrl_read\n"); debug("inside pci_ctrl_read\n");
if (ctrl->ctrl_dev) if (ctrl->ctrl_dev)
pci_read_config_byte (ctrl->ctrl_dev, HPC_PCI_OFFSET + offset, &data); pci_read_config_byte(ctrl->ctrl_dev, HPC_PCI_OFFSET + offset, &data);
return data; return data;
} }
static u8 pci_ctrl_write (struct controller *ctrl, u8 offset, u8 data) static u8 pci_ctrl_write(struct controller *ctrl, u8 offset, u8 data)
{ {
u8 rc = -ENODEV; u8 rc = -ENODEV;
debug ("inside pci_ctrl_write\n"); debug("inside pci_ctrl_write\n");
if (ctrl->ctrl_dev) { if (ctrl->ctrl_dev) {
pci_write_config_byte (ctrl->ctrl_dev, HPC_PCI_OFFSET + offset, data); pci_write_config_byte(ctrl->ctrl_dev, HPC_PCI_OFFSET + offset, data);
rc = 0; rc = 0;
} }
return rc; return rc;
} }
static u8 ctrl_read (struct controller *ctlr, void __iomem *base, u8 offset) static u8 ctrl_read(struct controller *ctlr, void __iomem *base, u8 offset)
{ {
u8 rc; u8 rc;
switch (ctlr->ctlr_type) { switch (ctlr->ctlr_type) {
case 0: case 0:
rc = isa_ctrl_read (ctlr, offset); rc = isa_ctrl_read(ctlr, offset);
break; break;
case 1: case 1:
rc = pci_ctrl_read (ctlr, offset); rc = pci_ctrl_read(ctlr, offset);
break; break;
case 2: case 2:
case 4: case 4:
rc = i2c_ctrl_read (ctlr, base, offset); rc = i2c_ctrl_read(ctlr, base, offset);
break; break;
default: default:
return -ENODEV; return -ENODEV;
@ -418,7 +418,7 @@ static u8 ctrl_read (struct controller *ctlr, void __iomem *base, u8 offset)
return rc; return rc;
} }
static u8 ctrl_write (struct controller *ctlr, void __iomem *base, u8 offset, u8 data) static u8 ctrl_write(struct controller *ctlr, void __iomem *base, u8 offset, u8 data)
{ {
u8 rc = 0; u8 rc = 0;
switch (ctlr->ctlr_type) { switch (ctlr->ctlr_type) {
@ -426,7 +426,7 @@ static u8 ctrl_write (struct controller *ctlr, void __iomem *base, u8 offset, u8
isa_ctrl_write(ctlr, offset, data); isa_ctrl_write(ctlr, offset, data);
break; break;
case 1: case 1:
rc = pci_ctrl_write (ctlr, offset, data); rc = pci_ctrl_write(ctlr, offset, data);
break; break;
case 2: case 2:
case 4: case 4:
@ -444,7 +444,7 @@ static u8 ctrl_write (struct controller *ctlr, void __iomem *base, u8 offset, u8
* *
* Return index, HPC_ERROR * Return index, HPC_ERROR
*---------------------------------------------------------------------*/ *---------------------------------------------------------------------*/
static u8 hpc_writecmdtoindex (u8 cmd, u8 index) static u8 hpc_writecmdtoindex(u8 cmd, u8 index)
{ {
u8 rc; u8 rc;
@ -476,7 +476,7 @@ static u8 hpc_writecmdtoindex (u8 cmd, u8 index)
break; break;
default: default:
err ("hpc_writecmdtoindex - Error invalid cmd[%x]\n", cmd); err("hpc_writecmdtoindex - Error invalid cmd[%x]\n", cmd);
rc = HPC_ERROR; rc = HPC_ERROR;
} }
@ -490,7 +490,7 @@ static u8 hpc_writecmdtoindex (u8 cmd, u8 index)
* *
* Return index, HPC_ERROR * Return index, HPC_ERROR
*---------------------------------------------------------------------*/ *---------------------------------------------------------------------*/
static u8 hpc_readcmdtoindex (u8 cmd, u8 index) static u8 hpc_readcmdtoindex(u8 cmd, u8 index)
{ {
u8 rc; u8 rc;
@ -533,7 +533,7 @@ static u8 hpc_readcmdtoindex (u8 cmd, u8 index)
* *
* Return 0 or error codes * Return 0 or error codes
*---------------------------------------------------------------------*/ *---------------------------------------------------------------------*/
int ibmphp_hpc_readslot (struct slot *pslot, u8 cmd, u8 *pstatus) int ibmphp_hpc_readslot(struct slot *pslot, u8 cmd, u8 *pstatus)
{ {
void __iomem *wpg_bbar = NULL; void __iomem *wpg_bbar = NULL;
struct controller *ctlr_ptr; struct controller *ctlr_ptr;
@ -542,69 +542,69 @@ int ibmphp_hpc_readslot (struct slot *pslot, u8 cmd, u8 *pstatus)
int rc = 0; int rc = 0;
int busindex; int busindex;
debug_polling ("%s - Entry pslot[%p] cmd[%x] pstatus[%p]\n", __func__, pslot, cmd, pstatus); debug_polling("%s - Entry pslot[%p] cmd[%x] pstatus[%p]\n", __func__, pslot, cmd, pstatus);
if ((pslot == NULL) if ((pslot == NULL)
|| ((pstatus == NULL) && (cmd != READ_ALLSTAT) && (cmd != READ_BUSSTATUS))) { || ((pstatus == NULL) && (cmd != READ_ALLSTAT) && (cmd != READ_BUSSTATUS))) {
rc = -EINVAL; rc = -EINVAL;
err ("%s - Error invalid pointer, rc[%d]\n", __func__, rc); err("%s - Error invalid pointer, rc[%d]\n", __func__, rc);
return rc; return rc;
} }
if (cmd == READ_BUSSTATUS) { if (cmd == READ_BUSSTATUS) {
busindex = ibmphp_get_bus_index (pslot->bus); busindex = ibmphp_get_bus_index(pslot->bus);
if (busindex < 0) { if (busindex < 0) {
rc = -EINVAL; rc = -EINVAL;
err ("%s - Exit Error:invalid bus, rc[%d]\n", __func__, rc); err("%s - Exit Error:invalid bus, rc[%d]\n", __func__, rc);
return rc; return rc;
} else } else
index = (u8) busindex; index = (u8) busindex;
} else } else
index = pslot->ctlr_index; index = pslot->ctlr_index;
index = hpc_readcmdtoindex (cmd, index); index = hpc_readcmdtoindex(cmd, index);
if (index == HPC_ERROR) { if (index == HPC_ERROR) {
rc = -EINVAL; rc = -EINVAL;
err ("%s - Exit Error:invalid index, rc[%d]\n", __func__, rc); err("%s - Exit Error:invalid index, rc[%d]\n", __func__, rc);
return rc; return rc;
} }
ctlr_ptr = pslot->ctrl; ctlr_ptr = pslot->ctrl;
get_hpc_access (); get_hpc_access();
//-------------------------------------------------------------------- //--------------------------------------------------------------------
// map physical address to logical address // map physical address to logical address
//-------------------------------------------------------------------- //--------------------------------------------------------------------
if ((ctlr_ptr->ctlr_type == 2) || (ctlr_ptr->ctlr_type == 4)) if ((ctlr_ptr->ctlr_type == 2) || (ctlr_ptr->ctlr_type == 4))
wpg_bbar = ioremap (ctlr_ptr->u.wpeg_ctlr.wpegbbar, WPG_I2C_IOREMAP_SIZE); wpg_bbar = ioremap(ctlr_ptr->u.wpeg_ctlr.wpegbbar, WPG_I2C_IOREMAP_SIZE);
//-------------------------------------------------------------------- //--------------------------------------------------------------------
// check controller status before reading // check controller status before reading
//-------------------------------------------------------------------- //--------------------------------------------------------------------
rc = hpc_wait_ctlr_notworking (HPC_CTLR_WORKING_TOUT, ctlr_ptr, wpg_bbar, &status); rc = hpc_wait_ctlr_notworking(HPC_CTLR_WORKING_TOUT, ctlr_ptr, wpg_bbar, &status);
if (!rc) { if (!rc) {
switch (cmd) { switch (cmd) {
case READ_ALLSTAT: case READ_ALLSTAT:
// update the slot structure // update the slot structure
pslot->ctrl->status = status; pslot->ctrl->status = status;
pslot->status = ctrl_read (ctlr_ptr, wpg_bbar, index); pslot->status = ctrl_read(ctlr_ptr, wpg_bbar, index);
rc = hpc_wait_ctlr_notworking (HPC_CTLR_WORKING_TOUT, ctlr_ptr, wpg_bbar, rc = hpc_wait_ctlr_notworking(HPC_CTLR_WORKING_TOUT, ctlr_ptr, wpg_bbar,
&status); &status);
if (!rc) if (!rc)
pslot->ext_status = ctrl_read (ctlr_ptr, wpg_bbar, index + WPG_1ST_EXTSLOT_INDEX); pslot->ext_status = ctrl_read(ctlr_ptr, wpg_bbar, index + WPG_1ST_EXTSLOT_INDEX);
break; break;
case READ_SLOTSTATUS: case READ_SLOTSTATUS:
// DO NOT update the slot structure // DO NOT update the slot structure
*pstatus = ctrl_read (ctlr_ptr, wpg_bbar, index); *pstatus = ctrl_read(ctlr_ptr, wpg_bbar, index);
break; break;
case READ_EXTSLOTSTATUS: case READ_EXTSLOTSTATUS:
// DO NOT update the slot structure // DO NOT update the slot structure
*pstatus = ctrl_read (ctlr_ptr, wpg_bbar, index); *pstatus = ctrl_read(ctlr_ptr, wpg_bbar, index);
break; break;
case READ_CTLRSTATUS: case READ_CTLRSTATUS:
@ -613,36 +613,36 @@ int ibmphp_hpc_readslot (struct slot *pslot, u8 cmd, u8 *pstatus)
break; break;
case READ_BUSSTATUS: case READ_BUSSTATUS:
pslot->busstatus = ctrl_read (ctlr_ptr, wpg_bbar, index); pslot->busstatus = ctrl_read(ctlr_ptr, wpg_bbar, index);
break; break;
case READ_REVLEVEL: case READ_REVLEVEL:
*pstatus = ctrl_read (ctlr_ptr, wpg_bbar, index); *pstatus = ctrl_read(ctlr_ptr, wpg_bbar, index);
break; break;
case READ_HPCOPTIONS: case READ_HPCOPTIONS:
*pstatus = ctrl_read (ctlr_ptr, wpg_bbar, index); *pstatus = ctrl_read(ctlr_ptr, wpg_bbar, index);
break; break;
case READ_SLOTLATCHLOWREG: case READ_SLOTLATCHLOWREG:
// DO NOT update the slot structure // DO NOT update the slot structure
*pstatus = ctrl_read (ctlr_ptr, wpg_bbar, index); *pstatus = ctrl_read(ctlr_ptr, wpg_bbar, index);
break; break;
// Not used // Not used
case READ_ALLSLOT: case READ_ALLSLOT:
list_for_each (pslotlist, &ibmphp_slot_head) { list_for_each(pslotlist, &ibmphp_slot_head) {
pslot = list_entry (pslotlist, struct slot, ibm_slot_list); pslot = list_entry(pslotlist, struct slot, ibm_slot_list);
index = pslot->ctlr_index; index = pslot->ctlr_index;
rc = hpc_wait_ctlr_notworking (HPC_CTLR_WORKING_TOUT, ctlr_ptr, rc = hpc_wait_ctlr_notworking(HPC_CTLR_WORKING_TOUT, ctlr_ptr,
wpg_bbar, &status); wpg_bbar, &status);
if (!rc) { if (!rc) {
pslot->status = ctrl_read (ctlr_ptr, wpg_bbar, index); pslot->status = ctrl_read(ctlr_ptr, wpg_bbar, index);
rc = hpc_wait_ctlr_notworking (HPC_CTLR_WORKING_TOUT, rc = hpc_wait_ctlr_notworking(HPC_CTLR_WORKING_TOUT,
ctlr_ptr, wpg_bbar, &status); ctlr_ptr, wpg_bbar, &status);
if (!rc) if (!rc)
pslot->ext_status = pslot->ext_status =
ctrl_read (ctlr_ptr, wpg_bbar, ctrl_read(ctlr_ptr, wpg_bbar,
index + WPG_1ST_EXTSLOT_INDEX); index + WPG_1ST_EXTSLOT_INDEX);
} else { } else {
err ("%s - Error ctrl_read failed\n", __func__); err("%s - Error ctrl_read failed\n", __func__);
rc = -EINVAL; rc = -EINVAL;
break; break;
} }
@ -659,11 +659,11 @@ int ibmphp_hpc_readslot (struct slot *pslot, u8 cmd, u8 *pstatus)
// remove physical to logical address mapping // remove physical to logical address mapping
if ((ctlr_ptr->ctlr_type == 2) || (ctlr_ptr->ctlr_type == 4)) if ((ctlr_ptr->ctlr_type == 2) || (ctlr_ptr->ctlr_type == 4))
iounmap (wpg_bbar); iounmap(wpg_bbar);
free_hpc_access (); free_hpc_access();
debug_polling ("%s - Exit rc[%d]\n", __func__, rc); debug_polling("%s - Exit rc[%d]\n", __func__, rc);
return rc; return rc;
} }
@ -672,7 +672,7 @@ int ibmphp_hpc_readslot (struct slot *pslot, u8 cmd, u8 *pstatus)
* *
* Action: issue a WRITE command to HPC * Action: issue a WRITE command to HPC
*---------------------------------------------------------------------*/ *---------------------------------------------------------------------*/
int ibmphp_hpc_writeslot (struct slot *pslot, u8 cmd) int ibmphp_hpc_writeslot(struct slot *pslot, u8 cmd)
{ {
void __iomem *wpg_bbar = NULL; void __iomem *wpg_bbar = NULL;
struct controller *ctlr_ptr; struct controller *ctlr_ptr;
@ -682,55 +682,55 @@ int ibmphp_hpc_writeslot (struct slot *pslot, u8 cmd)
int rc = 0; int rc = 0;
int timeout; int timeout;
debug_polling ("%s - Entry pslot[%p] cmd[%x]\n", __func__, pslot, cmd); debug_polling("%s - Entry pslot[%p] cmd[%x]\n", __func__, pslot, cmd);
if (pslot == NULL) { if (pslot == NULL) {
rc = -EINVAL; rc = -EINVAL;
err ("%s - Error Exit rc[%d]\n", __func__, rc); err("%s - Error Exit rc[%d]\n", __func__, rc);
return rc; return rc;
} }
if ((cmd == HPC_BUS_33CONVMODE) || (cmd == HPC_BUS_66CONVMODE) || if ((cmd == HPC_BUS_33CONVMODE) || (cmd == HPC_BUS_66CONVMODE) ||
(cmd == HPC_BUS_66PCIXMODE) || (cmd == HPC_BUS_100PCIXMODE) || (cmd == HPC_BUS_66PCIXMODE) || (cmd == HPC_BUS_100PCIXMODE) ||
(cmd == HPC_BUS_133PCIXMODE)) { (cmd == HPC_BUS_133PCIXMODE)) {
busindex = ibmphp_get_bus_index (pslot->bus); busindex = ibmphp_get_bus_index(pslot->bus);
if (busindex < 0) { if (busindex < 0) {
rc = -EINVAL; rc = -EINVAL;
err ("%s - Exit Error:invalid bus, rc[%d]\n", __func__, rc); err("%s - Exit Error:invalid bus, rc[%d]\n", __func__, rc);
return rc; return rc;
} else } else
index = (u8) busindex; index = (u8) busindex;
} else } else
index = pslot->ctlr_index; index = pslot->ctlr_index;
index = hpc_writecmdtoindex (cmd, index); index = hpc_writecmdtoindex(cmd, index);
if (index == HPC_ERROR) { if (index == HPC_ERROR) {
rc = -EINVAL; rc = -EINVAL;
err ("%s - Error Exit rc[%d]\n", __func__, rc); err("%s - Error Exit rc[%d]\n", __func__, rc);
return rc; return rc;
} }
ctlr_ptr = pslot->ctrl; ctlr_ptr = pslot->ctrl;
get_hpc_access (); get_hpc_access();
//-------------------------------------------------------------------- //--------------------------------------------------------------------
// map physical address to logical address // map physical address to logical address
//-------------------------------------------------------------------- //--------------------------------------------------------------------
if ((ctlr_ptr->ctlr_type == 2) || (ctlr_ptr->ctlr_type == 4)) { if ((ctlr_ptr->ctlr_type == 2) || (ctlr_ptr->ctlr_type == 4)) {
wpg_bbar = ioremap (ctlr_ptr->u.wpeg_ctlr.wpegbbar, WPG_I2C_IOREMAP_SIZE); wpg_bbar = ioremap(ctlr_ptr->u.wpeg_ctlr.wpegbbar, WPG_I2C_IOREMAP_SIZE);
debug ("%s - ctlr id[%x] physical[%lx] logical[%lx] i2c[%x]\n", __func__, debug("%s - ctlr id[%x] physical[%lx] logical[%lx] i2c[%x]\n", __func__,
ctlr_ptr->ctlr_id, (ulong) (ctlr_ptr->u.wpeg_ctlr.wpegbbar), (ulong) wpg_bbar, ctlr_ptr->ctlr_id, (ulong) (ctlr_ptr->u.wpeg_ctlr.wpegbbar), (ulong) wpg_bbar,
ctlr_ptr->u.wpeg_ctlr.i2c_addr); ctlr_ptr->u.wpeg_ctlr.i2c_addr);
} }
//-------------------------------------------------------------------- //--------------------------------------------------------------------
// check controller status before writing // check controller status before writing
//-------------------------------------------------------------------- //--------------------------------------------------------------------
rc = hpc_wait_ctlr_notworking (HPC_CTLR_WORKING_TOUT, ctlr_ptr, wpg_bbar, &status); rc = hpc_wait_ctlr_notworking(HPC_CTLR_WORKING_TOUT, ctlr_ptr, wpg_bbar, &status);
if (!rc) { if (!rc) {
ctrl_write (ctlr_ptr, wpg_bbar, index, cmd); ctrl_write(ctlr_ptr, wpg_bbar, index, cmd);
//-------------------------------------------------------------------- //--------------------------------------------------------------------
// check controller is still not working on the command // check controller is still not working on the command
@ -738,11 +738,11 @@ int ibmphp_hpc_writeslot (struct slot *pslot, u8 cmd)
timeout = CMD_COMPLETE_TOUT_SEC; timeout = CMD_COMPLETE_TOUT_SEC;
done = 0; done = 0;
while (!done) { while (!done) {
rc = hpc_wait_ctlr_notworking (HPC_CTLR_WORKING_TOUT, ctlr_ptr, wpg_bbar, rc = hpc_wait_ctlr_notworking(HPC_CTLR_WORKING_TOUT, ctlr_ptr, wpg_bbar,
&status); &status);
if (!rc) { if (!rc) {
if (NEEDTOCHECK_CMDSTATUS (cmd)) { if (NEEDTOCHECK_CMDSTATUS(cmd)) {
if (CTLR_FINISHED (status) == HPC_CTLR_FINISHED_YES) if (CTLR_FINISHED(status) == HPC_CTLR_FINISHED_YES)
done = 1; done = 1;
} else } else
done = 1; done = 1;
@ -751,7 +751,7 @@ int ibmphp_hpc_writeslot (struct slot *pslot, u8 cmd)
msleep(1000); msleep(1000);
if (timeout < 1) { if (timeout < 1) {
done = 1; done = 1;
err ("%s - Error command complete timeout\n", __func__); err("%s - Error command complete timeout\n", __func__);
rc = -EFAULT; rc = -EFAULT;
} else } else
timeout--; timeout--;
@ -763,10 +763,10 @@ int ibmphp_hpc_writeslot (struct slot *pslot, u8 cmd)
// remove physical to logical address mapping // remove physical to logical address mapping
if ((ctlr_ptr->ctlr_type == 2) || (ctlr_ptr->ctlr_type == 4)) if ((ctlr_ptr->ctlr_type == 2) || (ctlr_ptr->ctlr_type == 4))
iounmap (wpg_bbar); iounmap(wpg_bbar);
free_hpc_access (); free_hpc_access();
debug_polling ("%s - Exit rc[%d]\n", __func__, rc); debug_polling("%s - Exit rc[%d]\n", __func__, rc);
return rc; return rc;
} }
@ -775,7 +775,7 @@ int ibmphp_hpc_writeslot (struct slot *pslot, u8 cmd)
* *
* Action: make sure only one process can access HPC at one time * Action: make sure only one process can access HPC at one time
*---------------------------------------------------------------------*/ *---------------------------------------------------------------------*/
static void get_hpc_access (void) static void get_hpc_access(void)
{ {
mutex_lock(&sem_hpcaccess); mutex_lock(&sem_hpcaccess);
} }
@ -783,7 +783,7 @@ static void get_hpc_access (void)
/*---------------------------------------------------------------------- /*----------------------------------------------------------------------
* Name: free_hpc_access() * Name: free_hpc_access()
*---------------------------------------------------------------------*/ *---------------------------------------------------------------------*/
void free_hpc_access (void) void free_hpc_access(void)
{ {
mutex_unlock(&sem_hpcaccess); mutex_unlock(&sem_hpcaccess);
} }
@ -793,21 +793,21 @@ void free_hpc_access (void)
* *
* Action: make sure only one process can change the data structure * Action: make sure only one process can change the data structure
*---------------------------------------------------------------------*/ *---------------------------------------------------------------------*/
void ibmphp_lock_operations (void) void ibmphp_lock_operations(void)
{ {
down (&semOperations); down(&semOperations);
to_debug = 1; to_debug = 1;
} }
/*---------------------------------------------------------------------- /*----------------------------------------------------------------------
* Name: ibmphp_unlock_operations() * Name: ibmphp_unlock_operations()
*---------------------------------------------------------------------*/ *---------------------------------------------------------------------*/
void ibmphp_unlock_operations (void) void ibmphp_unlock_operations(void)
{ {
debug ("%s - Entry\n", __func__); debug("%s - Entry\n", __func__);
up (&semOperations); up(&semOperations);
to_debug = 0; to_debug = 0;
debug ("%s - Exit\n", __func__); debug("%s - Exit\n", __func__);
} }
/*---------------------------------------------------------------------- /*----------------------------------------------------------------------
@ -828,28 +828,28 @@ static int poll_hpc(void *data)
int poll_count = 0; int poll_count = 0;
u8 ctrl_count = 0x00; u8 ctrl_count = 0x00;
debug ("%s - Entry\n", __func__); debug("%s - Entry\n", __func__);
while (!kthread_should_stop()) { while (!kthread_should_stop()) {
/* try to get the lock to do some kind of hardware access */ /* try to get the lock to do some kind of hardware access */
down (&semOperations); down(&semOperations);
switch (poll_state) { switch (poll_state) {
case POLL_LATCH_REGISTER: case POLL_LATCH_REGISTER:
oldlatchlow = curlatchlow; oldlatchlow = curlatchlow;
ctrl_count = 0x00; ctrl_count = 0x00;
list_for_each (pslotlist, &ibmphp_slot_head) { list_for_each(pslotlist, &ibmphp_slot_head) {
if (ctrl_count >= ibmphp_get_total_controllers()) if (ctrl_count >= ibmphp_get_total_controllers())
break; break;
pslot = list_entry (pslotlist, struct slot, ibm_slot_list); pslot = list_entry(pslotlist, struct slot, ibm_slot_list);
if (pslot->ctrl->ctlr_relative_id == ctrl_count) { if (pslot->ctrl->ctlr_relative_id == ctrl_count) {
ctrl_count++; ctrl_count++;
if (READ_SLOT_LATCH (pslot->ctrl)) { if (READ_SLOT_LATCH(pslot->ctrl)) {
rc = ibmphp_hpc_readslot (pslot, rc = ibmphp_hpc_readslot(pslot,
READ_SLOTLATCHLOWREG, READ_SLOTLATCHLOWREG,
&curlatchlow); &curlatchlow);
if (oldlatchlow != curlatchlow) if (oldlatchlow != curlatchlow)
process_changeinlatch (oldlatchlow, process_changeinlatch(oldlatchlow,
curlatchlow, curlatchlow,
pslot->ctrl); pslot->ctrl);
} }
@ -859,25 +859,25 @@ static int poll_hpc(void *data)
poll_state = POLL_SLEEP; poll_state = POLL_SLEEP;
break; break;
case POLL_SLOTS: case POLL_SLOTS:
list_for_each (pslotlist, &ibmphp_slot_head) { list_for_each(pslotlist, &ibmphp_slot_head) {
pslot = list_entry (pslotlist, struct slot, ibm_slot_list); pslot = list_entry(pslotlist, struct slot, ibm_slot_list);
// make a copy of the old status // make a copy of the old status
memcpy ((void *) &myslot, (void *) pslot, memcpy((void *) &myslot, (void *) pslot,
sizeof (struct slot)); sizeof(struct slot));
rc = ibmphp_hpc_readslot (pslot, READ_ALLSTAT, NULL); rc = ibmphp_hpc_readslot(pslot, READ_ALLSTAT, NULL);
if ((myslot.status != pslot->status) if ((myslot.status != pslot->status)
|| (myslot.ext_status != pslot->ext_status)) || (myslot.ext_status != pslot->ext_status))
process_changeinstatus (pslot, &myslot); process_changeinstatus(pslot, &myslot);
} }
ctrl_count = 0x00; ctrl_count = 0x00;
list_for_each (pslotlist, &ibmphp_slot_head) { list_for_each(pslotlist, &ibmphp_slot_head) {
if (ctrl_count >= ibmphp_get_total_controllers()) if (ctrl_count >= ibmphp_get_total_controllers())
break; break;
pslot = list_entry (pslotlist, struct slot, ibm_slot_list); pslot = list_entry(pslotlist, struct slot, ibm_slot_list);
if (pslot->ctrl->ctlr_relative_id == ctrl_count) { if (pslot->ctrl->ctlr_relative_id == ctrl_count) {
ctrl_count++; ctrl_count++;
if (READ_SLOT_LATCH (pslot->ctrl)) if (READ_SLOT_LATCH(pslot->ctrl))
rc = ibmphp_hpc_readslot (pslot, rc = ibmphp_hpc_readslot(pslot,
READ_SLOTLATCHLOWREG, READ_SLOTLATCHLOWREG,
&curlatchlow); &curlatchlow);
} }
@ -887,13 +887,13 @@ static int poll_hpc(void *data)
break; break;
case POLL_SLEEP: case POLL_SLEEP:
/* don't sleep with a lock on the hardware */ /* don't sleep with a lock on the hardware */
up (&semOperations); up(&semOperations);
msleep(POLL_INTERVAL_SEC * 1000); msleep(POLL_INTERVAL_SEC * 1000);
if (kthread_should_stop()) if (kthread_should_stop())
goto out_sleep; goto out_sleep;
down (&semOperations); down(&semOperations);
if (poll_count >= POLL_LATCH_CNT) { if (poll_count >= POLL_LATCH_CNT) {
poll_count = 0; poll_count = 0;
@ -903,13 +903,13 @@ static int poll_hpc(void *data)
break; break;
} }
/* give up the hardware semaphore */ /* give up the hardware semaphore */
up (&semOperations); up(&semOperations);
/* sleep for a short time just for good measure */ /* sleep for a short time just for good measure */
out_sleep: out_sleep:
msleep(100); msleep(100);
} }
up (&sem_exit); up(&sem_exit);
debug ("%s - Exit\n", __func__); debug("%s - Exit\n", __func__);
return 0; return 0;
} }
@ -929,14 +929,14 @@ out_sleep:
* *
* Notes: * Notes:
*---------------------------------------------------------------------*/ *---------------------------------------------------------------------*/
static int process_changeinstatus (struct slot *pslot, struct slot *poldslot) static int process_changeinstatus(struct slot *pslot, struct slot *poldslot)
{ {
u8 status; u8 status;
int rc = 0; int rc = 0;
u8 disable = 0; u8 disable = 0;
u8 update = 0; u8 update = 0;
debug ("process_changeinstatus - Entry pslot[%p], poldslot[%p]\n", pslot, poldslot); debug("process_changeinstatus - Entry pslot[%p], poldslot[%p]\n", pslot, poldslot);
// bit 0 - HPC_SLOT_POWER // bit 0 - HPC_SLOT_POWER
if ((pslot->status & 0x01) != (poldslot->status & 0x01)) if ((pslot->status & 0x01) != (poldslot->status & 0x01))
@ -958,7 +958,7 @@ static int process_changeinstatus (struct slot *pslot, struct slot *poldslot)
// bit 5 - HPC_SLOT_PWRGD // bit 5 - HPC_SLOT_PWRGD
if ((pslot->status & 0x20) != (poldslot->status & 0x20)) if ((pslot->status & 0x20) != (poldslot->status & 0x20))
// OFF -> ON: ignore, ON -> OFF: disable slot // OFF -> ON: ignore, ON -> OFF: disable slot
if ((poldslot->status & 0x20) && (SLOT_CONNECT (poldslot->status) == HPC_SLOT_CONNECTED) && (SLOT_PRESENT (poldslot->status))) if ((poldslot->status & 0x20) && (SLOT_CONNECT(poldslot->status) == HPC_SLOT_CONNECTED) && (SLOT_PRESENT(poldslot->status)))
disable = 1; disable = 1;
// bit 6 - HPC_SLOT_BUS_SPEED // bit 6 - HPC_SLOT_BUS_SPEED
@ -969,20 +969,20 @@ static int process_changeinstatus (struct slot *pslot, struct slot *poldslot)
update = 1; update = 1;
// OPEN -> CLOSE // OPEN -> CLOSE
if (pslot->status & 0x80) { if (pslot->status & 0x80) {
if (SLOT_PWRGD (pslot->status)) { if (SLOT_PWRGD(pslot->status)) {
// power goes on and off after closing latch // power goes on and off after closing latch
// check again to make sure power is still ON // check again to make sure power is still ON
msleep(1000); msleep(1000);
rc = ibmphp_hpc_readslot (pslot, READ_SLOTSTATUS, &status); rc = ibmphp_hpc_readslot(pslot, READ_SLOTSTATUS, &status);
if (SLOT_PWRGD (status)) if (SLOT_PWRGD(status))
update = 1; update = 1;
else // overwrite power in pslot to OFF else // overwrite power in pslot to OFF
pslot->status &= ~HPC_SLOT_POWER; pslot->status &= ~HPC_SLOT_POWER;
} }
} }
// CLOSE -> OPEN // CLOSE -> OPEN
else if ((SLOT_PWRGD (poldslot->status) == HPC_SLOT_PWRGD_GOOD) else if ((SLOT_PWRGD(poldslot->status) == HPC_SLOT_PWRGD_GOOD)
&& (SLOT_CONNECT (poldslot->status) == HPC_SLOT_CONNECTED) && (SLOT_PRESENT (poldslot->status))) { && (SLOT_CONNECT(poldslot->status) == HPC_SLOT_CONNECTED) && (SLOT_PRESENT(poldslot->status))) {
disable = 1; disable = 1;
} }
// else - ignore // else - ignore
@ -992,15 +992,15 @@ static int process_changeinstatus (struct slot *pslot, struct slot *poldslot)
update = 1; update = 1;
if (disable) { if (disable) {
debug ("process_changeinstatus - disable slot\n"); debug("process_changeinstatus - disable slot\n");
pslot->flag = 0; pslot->flag = 0;
rc = ibmphp_do_disable_slot (pslot); rc = ibmphp_do_disable_slot(pslot);
} }
if (update || disable) if (update || disable)
ibmphp_update_slot_info (pslot); ibmphp_update_slot_info(pslot);
debug ("%s - Exit rc[%d] disable[%x] update[%x]\n", __func__, rc, disable, update); debug("%s - Exit rc[%d] disable[%x] update[%x]\n", __func__, rc, disable, update);
return rc; return rc;
} }
@ -1015,32 +1015,32 @@ static int process_changeinstatus (struct slot *pslot, struct slot *poldslot)
* Return 0 or error codes * Return 0 or error codes
* Value: * Value:
*---------------------------------------------------------------------*/ *---------------------------------------------------------------------*/
static int process_changeinlatch (u8 old, u8 new, struct controller *ctrl) static int process_changeinlatch(u8 old, u8 new, struct controller *ctrl)
{ {
struct slot myslot, *pslot; struct slot myslot, *pslot;
u8 i; u8 i;
u8 mask; u8 mask;
int rc = 0; int rc = 0;
debug ("%s - Entry old[%x], new[%x]\n", __func__, old, new); debug("%s - Entry old[%x], new[%x]\n", __func__, old, new);
// bit 0 reserved, 0 is LSB, check bit 1-6 for 6 slots // bit 0 reserved, 0 is LSB, check bit 1-6 for 6 slots
for (i = ctrl->starting_slot_num; i <= ctrl->ending_slot_num; i++) { for (i = ctrl->starting_slot_num; i <= ctrl->ending_slot_num; i++) {
mask = 0x01 << i; mask = 0x01 << i;
if ((mask & old) != (mask & new)) { if ((mask & old) != (mask & new)) {
pslot = ibmphp_get_slot_from_physical_num (i); pslot = ibmphp_get_slot_from_physical_num(i);
if (pslot) { if (pslot) {
memcpy ((void *) &myslot, (void *) pslot, sizeof (struct slot)); memcpy((void *) &myslot, (void *) pslot, sizeof(struct slot));
rc = ibmphp_hpc_readslot (pslot, READ_ALLSTAT, NULL); rc = ibmphp_hpc_readslot(pslot, READ_ALLSTAT, NULL);
debug ("%s - call process_changeinstatus for slot[%d]\n", __func__, i); debug("%s - call process_changeinstatus for slot[%d]\n", __func__, i);
process_changeinstatus (pslot, &myslot); process_changeinstatus(pslot, &myslot);
} else { } else {
rc = -EINVAL; rc = -EINVAL;
err ("%s - Error bad pointer for slot[%d]\n", __func__, i); err("%s - Error bad pointer for slot[%d]\n", __func__, i);
} }
} }
} }
debug ("%s - Exit rc[%d]\n", __func__, rc); debug("%s - Exit rc[%d]\n", __func__, rc);
return rc; return rc;
} }
@ -1049,13 +1049,13 @@ static int process_changeinlatch (u8 old, u8 new, struct controller *ctrl)
* *
* Action: start polling thread * Action: start polling thread
*---------------------------------------------------------------------*/ *---------------------------------------------------------------------*/
int __init ibmphp_hpc_start_poll_thread (void) int __init ibmphp_hpc_start_poll_thread(void)
{ {
debug ("%s - Entry\n", __func__); debug("%s - Entry\n", __func__);
ibmphp_poll_thread = kthread_run(poll_hpc, NULL, "hpc_poll"); ibmphp_poll_thread = kthread_run(poll_hpc, NULL, "hpc_poll");
if (IS_ERR(ibmphp_poll_thread)) { if (IS_ERR(ibmphp_poll_thread)) {
err ("%s - Error, thread not started\n", __func__); err("%s - Error, thread not started\n", __func__);
return PTR_ERR(ibmphp_poll_thread); return PTR_ERR(ibmphp_poll_thread);
} }
return 0; return 0;
@ -1066,30 +1066,30 @@ int __init ibmphp_hpc_start_poll_thread (void)
* *
* Action: stop polling thread and cleanup * Action: stop polling thread and cleanup
*---------------------------------------------------------------------*/ *---------------------------------------------------------------------*/
void __exit ibmphp_hpc_stop_poll_thread (void) void __exit ibmphp_hpc_stop_poll_thread(void)
{ {
debug ("%s - Entry\n", __func__); debug("%s - Entry\n", __func__);
kthread_stop(ibmphp_poll_thread); kthread_stop(ibmphp_poll_thread);
debug ("before locking operations \n"); debug("before locking operations\n");
ibmphp_lock_operations (); ibmphp_lock_operations();
debug ("after locking operations \n"); debug("after locking operations\n");
// wait for poll thread to exit // wait for poll thread to exit
debug ("before sem_exit down \n"); debug("before sem_exit down\n");
down (&sem_exit); down(&sem_exit);
debug ("after sem_exit down \n"); debug("after sem_exit down\n");
// cleanup // cleanup
debug ("before free_hpc_access \n"); debug("before free_hpc_access\n");
free_hpc_access (); free_hpc_access();
debug ("after free_hpc_access \n"); debug("after free_hpc_access\n");
ibmphp_unlock_operations (); ibmphp_unlock_operations();
debug ("after unlock operations \n"); debug("after unlock operations\n");
up (&sem_exit); up(&sem_exit);
debug ("after sem exit up\n"); debug("after sem exit up\n");
debug ("%s - Exit\n", __func__); debug("%s - Exit\n", __func__);
} }
/*---------------------------------------------------------------------- /*----------------------------------------------------------------------
@ -1100,32 +1100,32 @@ void __exit ibmphp_hpc_stop_poll_thread (void)
* Return 0, HPC_ERROR * Return 0, HPC_ERROR
* Value: * Value:
*---------------------------------------------------------------------*/ *---------------------------------------------------------------------*/
static int hpc_wait_ctlr_notworking (int timeout, struct controller *ctlr_ptr, void __iomem *wpg_bbar, static int hpc_wait_ctlr_notworking(int timeout, struct controller *ctlr_ptr, void __iomem *wpg_bbar,
u8 *pstatus) u8 *pstatus)
{ {
int rc = 0; int rc = 0;
u8 done = 0; u8 done = 0;
debug_polling ("hpc_wait_ctlr_notworking - Entry timeout[%d]\n", timeout); debug_polling("hpc_wait_ctlr_notworking - Entry timeout[%d]\n", timeout);
while (!done) { while (!done) {
*pstatus = ctrl_read (ctlr_ptr, wpg_bbar, WPG_CTLR_INDEX); *pstatus = ctrl_read(ctlr_ptr, wpg_bbar, WPG_CTLR_INDEX);
if (*pstatus == HPC_ERROR) { if (*pstatus == HPC_ERROR) {
rc = HPC_ERROR; rc = HPC_ERROR;
done = 1; done = 1;
} }
if (CTLR_WORKING (*pstatus) == HPC_CTLR_WORKING_NO) if (CTLR_WORKING(*pstatus) == HPC_CTLR_WORKING_NO)
done = 1; done = 1;
if (!done) { if (!done) {
msleep(1000); msleep(1000);
if (timeout < 1) { if (timeout < 1) {
done = 1; done = 1;
err ("HPCreadslot - Error ctlr timeout\n"); err("HPCreadslot - Error ctlr timeout\n");
rc = HPC_ERROR; rc = HPC_ERROR;
} else } else
timeout--; timeout--;
} }
} }
debug_polling ("hpc_wait_ctlr_notworking - Exit rc[%x] status[%x]\n", rc, *pstatus); debug_polling("hpc_wait_ctlr_notworking - Exit rc[%x] status[%x]\n", rc, *pstatus);
return rc; return rc;
} }

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -45,10 +45,10 @@
#define MY_NAME "pci_hotplug" #define MY_NAME "pci_hotplug"
#define dbg(fmt, arg...) do { if (debug) printk(KERN_DEBUG "%s: %s: " fmt , MY_NAME , __func__ , ## arg); } while (0) #define dbg(fmt, arg...) do { if (debug) printk(KERN_DEBUG "%s: %s: " fmt, MY_NAME, __func__, ## arg); } while (0)
#define err(format, arg...) printk(KERN_ERR "%s: " format , MY_NAME , ## arg) #define err(format, arg...) printk(KERN_ERR "%s: " format, MY_NAME, ## arg)
#define info(format, arg...) printk(KERN_INFO "%s: " format , MY_NAME , ## arg) #define info(format, arg...) printk(KERN_INFO "%s: " format, MY_NAME, ## arg)
#define warn(format, arg...) printk(KERN_WARNING "%s: " format , MY_NAME , ## arg) #define warn(format, arg...) printk(KERN_WARNING "%s: " format, MY_NAME, ## arg)
/* local variables */ /* local variables */
@ -226,7 +226,7 @@ static ssize_t test_write_file(struct pci_slot *pci_slot, const char *buf,
u32 test; u32 test;
int retval = 0; int retval = 0;
ltest = simple_strtoul (buf, NULL, 10); ltest = simple_strtoul(buf, NULL, 10);
test = (u32)(ltest & 0xffffffff); test = (u32)(ltest & 0xffffffff);
dbg("test = %d\n", test); dbg("test = %d\n", test);

View File

@ -47,14 +47,14 @@ extern bool pciehp_debug;
#define dbg(format, arg...) \ #define dbg(format, arg...) \
do { \ do { \
if (pciehp_debug) \ if (pciehp_debug) \
printk(KERN_DEBUG "%s: " format, MY_NAME , ## arg); \ printk(KERN_DEBUG "%s: " format, MY_NAME, ## arg); \
} while (0) } while (0)
#define err(format, arg...) \ #define err(format, arg...) \
printk(KERN_ERR "%s: " format, MY_NAME , ## arg) printk(KERN_ERR "%s: " format, MY_NAME, ## arg)
#define info(format, arg...) \ #define info(format, arg...) \
printk(KERN_INFO "%s: " format, MY_NAME , ## arg) printk(KERN_INFO "%s: " format, MY_NAME, ## arg)
#define warn(format, arg...) \ #define warn(format, arg...) \
printk(KERN_WARNING "%s: " format, MY_NAME , ## arg) printk(KERN_WARNING "%s: " format, MY_NAME, ## arg)
#define ctrl_dbg(ctrl, format, arg...) \ #define ctrl_dbg(ctrl, format, arg...) \
do { \ do { \

View File

@ -62,14 +62,14 @@ MODULE_PARM_DESC(pciehp_force, "Force pciehp, even if OSHP is missing");
#define PCIE_MODULE_NAME "pciehp" #define PCIE_MODULE_NAME "pciehp"
static int set_attention_status (struct hotplug_slot *slot, u8 value); static int set_attention_status(struct hotplug_slot *slot, u8 value);
static int enable_slot (struct hotplug_slot *slot); static int enable_slot(struct hotplug_slot *slot);
static int disable_slot (struct hotplug_slot *slot); static int disable_slot(struct hotplug_slot *slot);
static int get_power_status (struct hotplug_slot *slot, u8 *value); static int get_power_status(struct hotplug_slot *slot, u8 *value);
static int get_attention_status (struct hotplug_slot *slot, u8 *value); static int get_attention_status(struct hotplug_slot *slot, u8 *value);
static int get_latch_status (struct hotplug_slot *slot, u8 *value); static int get_latch_status(struct hotplug_slot *slot, u8 *value);
static int get_adapter_status (struct hotplug_slot *slot, u8 *value); static int get_adapter_status(struct hotplug_slot *slot, u8 *value);
static int reset_slot (struct hotplug_slot *slot, int probe); static int reset_slot(struct hotplug_slot *slot, int probe);
/** /**
* release_slot - free up the memory used by a slot * release_slot - free up the memory used by a slot

View File

@ -52,11 +52,11 @@ static LIST_HEAD(slot_list);
do { \ do { \
if (debug) \ if (debug) \
printk(KERN_DEBUG "%s: " format "\n", \ printk(KERN_DEBUG "%s: " format "\n", \
MY_NAME , ## arg); \ MY_NAME, ## arg); \
} while (0) } while (0)
#define err(format, arg...) printk(KERN_ERR "%s: " format "\n", MY_NAME , ## arg) #define err(format, arg...) printk(KERN_ERR "%s: " format "\n", MY_NAME, ## arg)
#define info(format, arg...) printk(KERN_INFO "%s: " format "\n", MY_NAME , ## arg) #define info(format, arg...) printk(KERN_INFO "%s: " format "\n", MY_NAME, ## arg)
#define warn(format, arg...) printk(KERN_WARNING "%s: " format "\n", MY_NAME , ## arg) #define warn(format, arg...) printk(KERN_WARNING "%s: " format "\n", MY_NAME, ## arg)
/* local variables */ /* local variables */
static bool debug; static bool debug;
@ -72,14 +72,14 @@ MODULE_LICENSE("GPL");
module_param(debug, bool, 0644); module_param(debug, bool, 0644);
MODULE_PARM_DESC(debug, "Debugging mode enabled or not"); MODULE_PARM_DESC(debug, "Debugging mode enabled or not");
static int enable_slot (struct hotplug_slot *slot); static int enable_slot(struct hotplug_slot *slot);
static int disable_slot (struct hotplug_slot *slot); static int disable_slot(struct hotplug_slot *slot);
static int set_attention_status (struct hotplug_slot *slot, u8 value); static int set_attention_status(struct hotplug_slot *slot, u8 value);
static int hardware_test (struct hotplug_slot *slot, u32 value); static int hardware_test(struct hotplug_slot *slot, u32 value);
static int get_power_status (struct hotplug_slot *slot, u8 *value); static int get_power_status(struct hotplug_slot *slot, u8 *value);
static int get_attention_status (struct hotplug_slot *slot, u8 *value); static int get_attention_status(struct hotplug_slot *slot, u8 *value);
static int get_latch_status (struct hotplug_slot *slot, u8 *value); static int get_latch_status(struct hotplug_slot *slot, u8 *value);
static int get_adapter_status (struct hotplug_slot *slot, u8 *value); static int get_adapter_status(struct hotplug_slot *slot, u8 *value);
static struct hotplug_slot_ops skel_hotplug_slot_ops = { static struct hotplug_slot_ops skel_hotplug_slot_ops = {
.enable_slot = enable_slot, .enable_slot = enable_slot,

View File

@ -51,11 +51,11 @@ extern bool rpaphp_debug;
do { \ do { \
if (rpaphp_debug) \ if (rpaphp_debug) \
printk(KERN_DEBUG "%s: " format, \ printk(KERN_DEBUG "%s: " format, \
MY_NAME , ## arg); \ MY_NAME, ## arg); \
} while (0) } while (0)
#define err(format, arg...) printk(KERN_ERR "%s: " format, MY_NAME , ## arg) #define err(format, arg...) printk(KERN_ERR "%s: " format, MY_NAME, ## arg)
#define info(format, arg...) printk(KERN_INFO "%s: " format, MY_NAME , ## arg) #define info(format, arg...) printk(KERN_INFO "%s: " format, MY_NAME, ## arg)
#define warn(format, arg...) printk(KERN_WARNING "%s: " format, MY_NAME , ## arg) #define warn(format, arg...) printk(KERN_WARNING "%s: " format, MY_NAME, ## arg)
/* slot states */ /* slot states */

View File

@ -94,7 +94,7 @@ static int get_power_status(struct hotplug_slot *hotplug_slot, u8 *value)
int retval, level; int retval, level;
struct slot *slot = (struct slot *)hotplug_slot->private; struct slot *slot = (struct slot *)hotplug_slot->private;
retval = rtas_get_power_level (slot->power_domain, &level); retval = rtas_get_power_level(slot->power_domain, &level);
if (!retval) if (!retval)
*value = level; *value = level;
return retval; return retval;

View File

@ -126,7 +126,7 @@ int rpaphp_enable_slot(struct slot *slot)
if (rpaphp_debug) { if (rpaphp_debug) {
struct pci_dev *dev; struct pci_dev *dev;
dbg("%s: pci_devs of slot[%s]\n", __func__, slot->dn->full_name); dbg("%s: pci_devs of slot[%s]\n", __func__, slot->dn->full_name);
list_for_each_entry (dev, &bus->devices, bus_list) list_for_each_entry(dev, &bus->devices, bus_list)
dbg("\t%s\n", pci_name(dev)); dbg("\t%s\n", pci_name(dev));
} }
} }

View File

@ -48,7 +48,7 @@ void dealloc_slot_struct(struct slot *slot)
} }
struct slot *alloc_slot_struct(struct device_node *dn, struct slot *alloc_slot_struct(struct device_node *dn,
int drc_index, char *drc_name, int power_domain) int drc_index, char *drc_name, int power_domain)
{ {
struct slot *slot; struct slot *slot;

View File

@ -99,7 +99,7 @@ static ssize_t path_show(struct pci_slot *pci_slot, char *buf)
if (!slot) if (!slot)
return retval; return retval;
retval = sprintf (buf, "%s\n", slot->physical_path); retval = sprintf(buf, "%s\n", slot->physical_path);
return retval; return retval;
} }
@ -313,7 +313,7 @@ static int sn_slot_disable(struct hotplug_slot *bss_hotplug_slot,
} }
if ((action == PCI_REQ_SLOT_DISABLE) && rc) { if ((action == PCI_REQ_SLOT_DISABLE) && rc) {
dev_dbg(&slot->pci_bus->self->dev,"remove failed rc = %d\n", rc); dev_dbg(&slot->pci_bus->self->dev, "remove failed rc = %d\n", rc);
} }
return rc; return rc;
@ -488,7 +488,7 @@ static int disable_slot(struct hotplug_slot *bss_hotplug_slot)
/* free the ACPI resources for the slot */ /* free the ACPI resources for the slot */
if (SN_ACPI_BASE_SUPPORT() && if (SN_ACPI_BASE_SUPPORT() &&
PCI_CONTROLLER(slot->pci_bus)->companion) { PCI_CONTROLLER(slot->pci_bus)->companion) {
unsigned long long adr; unsigned long long adr;
struct acpi_device *device; struct acpi_device *device;
acpi_handle phandle; acpi_handle phandle;

View File

@ -50,14 +50,14 @@ extern bool shpchp_debug;
#define dbg(format, arg...) \ #define dbg(format, arg...) \
do { \ do { \
if (shpchp_debug) \ if (shpchp_debug) \
printk(KERN_DEBUG "%s: " format, MY_NAME , ## arg); \ printk(KERN_DEBUG "%s: " format, MY_NAME, ## arg); \
} while (0) } while (0)
#define err(format, arg...) \ #define err(format, arg...) \
printk(KERN_ERR "%s: " format, MY_NAME , ## arg) printk(KERN_ERR "%s: " format, MY_NAME, ## arg)
#define info(format, arg...) \ #define info(format, arg...) \
printk(KERN_INFO "%s: " format, MY_NAME , ## arg) printk(KERN_INFO "%s: " format, MY_NAME, ## arg)
#define warn(format, arg...) \ #define warn(format, arg...) \
printk(KERN_WARNING "%s: " format, MY_NAME , ## arg) printk(KERN_WARNING "%s: " format, MY_NAME, ## arg)
#define ctrl_dbg(ctrl, format, arg...) \ #define ctrl_dbg(ctrl, format, arg...) \
do { \ do { \
@ -295,7 +295,7 @@ static inline void amd_pogo_errata_restore_misc_reg(struct slot *p_slot)
pci_write_config_dword(p_slot->ctrl->pci_dev, PCIX_MEM_BASE_LIMIT_OFFSET, rse_set); pci_write_config_dword(p_slot->ctrl->pci_dev, PCIX_MEM_BASE_LIMIT_OFFSET, rse_set);
} }
/* restore MiscII register */ /* restore MiscII register */
pci_read_config_dword(p_slot->ctrl->pci_dev, PCIX_MISCII_OFFSET, &pcix_misc2_temp ); pci_read_config_dword(p_slot->ctrl->pci_dev, PCIX_MISCII_OFFSET, &pcix_misc2_temp);
if (p_slot->ctrl->pcix_misc2_reg & SERRFATALENABLE_MASK) if (p_slot->ctrl->pcix_misc2_reg & SERRFATALENABLE_MASK)
pcix_misc2_temp |= SERRFATALENABLE_MASK; pcix_misc2_temp |= SERRFATALENABLE_MASK;

View File

@ -57,13 +57,13 @@ MODULE_PARM_DESC(shpchp_poll_time, "Polling mechanism frequency, in seconds");
#define SHPC_MODULE_NAME "shpchp" #define SHPC_MODULE_NAME "shpchp"
static int set_attention_status (struct hotplug_slot *slot, u8 value); static int set_attention_status(struct hotplug_slot *slot, u8 value);
static int enable_slot (struct hotplug_slot *slot); static int enable_slot(struct hotplug_slot *slot);
static int disable_slot (struct hotplug_slot *slot); static int disable_slot(struct hotplug_slot *slot);
static int get_power_status (struct hotplug_slot *slot, u8 *value); static int get_power_status(struct hotplug_slot *slot, u8 *value);
static int get_attention_status (struct hotplug_slot *slot, u8 *value); static int get_attention_status(struct hotplug_slot *slot, u8 *value);
static int get_latch_status (struct hotplug_slot *slot, u8 *value); static int get_latch_status(struct hotplug_slot *slot, u8 *value);
static int get_adapter_status (struct hotplug_slot *slot, u8 *value); static int get_adapter_status(struct hotplug_slot *slot, u8 *value);
static struct hotplug_slot_ops shpchp_hotplug_slot_ops = { static struct hotplug_slot_ops shpchp_hotplug_slot_ops = {
.set_attention_status = set_attention_status, .set_attention_status = set_attention_status,
@ -194,7 +194,7 @@ void cleanup_slots(struct controller *ctrl)
/* /*
* set_attention_status - Turns the Amber LED for a slot on, off or blink * set_attention_status - Turns the Amber LED for a slot on, off or blink
*/ */
static int set_attention_status (struct hotplug_slot *hotplug_slot, u8 status) static int set_attention_status(struct hotplug_slot *hotplug_slot, u8 status)
{ {
struct slot *slot = get_slot(hotplug_slot); struct slot *slot = get_slot(hotplug_slot);
@ -207,7 +207,7 @@ static int set_attention_status (struct hotplug_slot *hotplug_slot, u8 status)
return 0; return 0;
} }
static int enable_slot (struct hotplug_slot *hotplug_slot) static int enable_slot(struct hotplug_slot *hotplug_slot)
{ {
struct slot *slot = get_slot(hotplug_slot); struct slot *slot = get_slot(hotplug_slot);
@ -217,7 +217,7 @@ static int enable_slot (struct hotplug_slot *hotplug_slot)
return shpchp_sysfs_enable_slot(slot); return shpchp_sysfs_enable_slot(slot);
} }
static int disable_slot (struct hotplug_slot *hotplug_slot) static int disable_slot(struct hotplug_slot *hotplug_slot)
{ {
struct slot *slot = get_slot(hotplug_slot); struct slot *slot = get_slot(hotplug_slot);
@ -227,7 +227,7 @@ static int disable_slot (struct hotplug_slot *hotplug_slot)
return shpchp_sysfs_disable_slot(slot); return shpchp_sysfs_disable_slot(slot);
} }
static int get_power_status (struct hotplug_slot *hotplug_slot, u8 *value) static int get_power_status(struct hotplug_slot *hotplug_slot, u8 *value)
{ {
struct slot *slot = get_slot(hotplug_slot); struct slot *slot = get_slot(hotplug_slot);
int retval; int retval;
@ -242,7 +242,7 @@ static int get_power_status (struct hotplug_slot *hotplug_slot, u8 *value)
return 0; return 0;
} }
static int get_attention_status (struct hotplug_slot *hotplug_slot, u8 *value) static int get_attention_status(struct hotplug_slot *hotplug_slot, u8 *value)
{ {
struct slot *slot = get_slot(hotplug_slot); struct slot *slot = get_slot(hotplug_slot);
int retval; int retval;
@ -257,7 +257,7 @@ static int get_attention_status (struct hotplug_slot *hotplug_slot, u8 *value)
return 0; return 0;
} }
static int get_latch_status (struct hotplug_slot *hotplug_slot, u8 *value) static int get_latch_status(struct hotplug_slot *hotplug_slot, u8 *value)
{ {
struct slot *slot = get_slot(hotplug_slot); struct slot *slot = get_slot(hotplug_slot);
int retval; int retval;
@ -272,7 +272,7 @@ static int get_latch_status (struct hotplug_slot *hotplug_slot, u8 *value)
return 0; return 0;
} }
static int get_adapter_status (struct hotplug_slot *hotplug_slot, u8 *value) static int get_adapter_status(struct hotplug_slot *hotplug_slot, u8 *value)
{ {
struct slot *slot = get_slot(hotplug_slot); struct slot *slot = get_slot(hotplug_slot);
int retval; int retval;

View File

@ -542,7 +542,7 @@ static int hpc_set_attention_status(struct slot *slot, u8 value)
u8 slot_cmd = 0; u8 slot_cmd = 0;
switch (value) { switch (value) {
case 0 : case 0:
slot_cmd = SET_ATTN_OFF; /* OFF */ slot_cmd = SET_ATTN_OFF; /* OFF */
break; break;
case 1: case 1:

View File

@ -35,7 +35,7 @@
/* A few routines that create sysfs entries for the hot plug controller */ /* A few routines that create sysfs entries for the hot plug controller */
static ssize_t show_ctrl (struct device *dev, struct device_attribute *attr, char *buf) static ssize_t show_ctrl(struct device *dev, struct device_attribute *attr, char *buf)
{ {
struct pci_dev *pdev; struct pci_dev *pdev;
char *out = buf; char *out = buf;
@ -43,7 +43,7 @@ static ssize_t show_ctrl (struct device *dev, struct device_attribute *attr, cha
struct resource *res; struct resource *res;
struct pci_bus *bus; struct pci_bus *bus;
pdev = container_of (dev, struct pci_dev, dev); pdev = container_of(dev, struct pci_dev, dev);
bus = pdev->subordinate; bus = pdev->subordinate;
out += sprintf(buf, "Free resources: memory\n"); out += sprintf(buf, "Free resources: memory\n");
@ -83,11 +83,11 @@ static ssize_t show_ctrl (struct device *dev, struct device_attribute *attr, cha
return out - buf; return out - buf;
} }
static DEVICE_ATTR (ctrl, S_IRUGO, show_ctrl, NULL); static DEVICE_ATTR(ctrl, S_IRUGO, show_ctrl, NULL);
int shpchp_create_ctrl_files (struct controller *ctrl) int shpchp_create_ctrl_files(struct controller *ctrl)
{ {
return device_create_file (&ctrl->pci_dev->dev, &dev_attr_ctrl); return device_create_file(&ctrl->pci_dev->dev, &dev_attr_ctrl);
} }
void shpchp_remove_ctrl_files(struct controller *ctrl) void shpchp_remove_ctrl_files(struct controller *ctrl)

View File

@ -1534,7 +1534,7 @@ void __weak pcibios_release_device(struct pci_dev *dev) {}
* is the default implementation. Architecture implementations can * is the default implementation. Architecture implementations can
* override this. * override this.
*/ */
void __weak pcibios_disable_device (struct pci_dev *dev) {} void __weak pcibios_disable_device(struct pci_dev *dev) {}
/** /**
* pcibios_penalize_isa_irq - penalize an ISA IRQ * pcibios_penalize_isa_irq - penalize an ISA IRQ

View File

@ -442,7 +442,7 @@ static void __assign_resources_sorted(struct list_head *head,
break; break;
} }
} }
} }
} }