Lines Matching refs:bmc
336 struct bmc_device *bmc; member
2023 ipmi_version_major(&intf->bmc->id), in smi_version_proc_show()
2024 ipmi_version_minor(&intf->bmc->id)); in smi_version_proc_show()
2205 struct bmc_device *bmc = to_bmc_device(dev); in __find_bmc_guid() local
2206 return memcmp(bmc->guid, id, 16) == 0; in __find_bmc_guid()
2229 struct bmc_device *bmc = to_bmc_device(dev); in __find_bmc_prod_dev_id() local
2231 return (bmc->id.product_id == id->product_id in __find_bmc_prod_dev_id()
2232 && bmc->id.device_id == id->device_id); in __find_bmc_prod_dev_id()
2256 struct bmc_device *bmc = to_bmc_device(dev); in device_id_show() local
2258 return snprintf(buf, 10, "%u\n", bmc->id.device_id); in device_id_show()
2266 struct bmc_device *bmc = to_bmc_device(dev); in provides_device_sdrs_show() local
2269 (bmc->id.device_revision & 0x80) >> 7); in provides_device_sdrs_show()
2277 struct bmc_device *bmc = to_bmc_device(dev); in revision_show() local
2280 bmc->id.device_revision & 0x0F); in revision_show()
2288 struct bmc_device *bmc = to_bmc_device(dev); in firmware_revision_show() local
2290 return snprintf(buf, 20, "%u.%x\n", bmc->id.firmware_revision_1, in firmware_revision_show()
2291 bmc->id.firmware_revision_2); in firmware_revision_show()
2299 struct bmc_device *bmc = to_bmc_device(dev); in ipmi_version_show() local
2302 ipmi_version_major(&bmc->id), in ipmi_version_show()
2303 ipmi_version_minor(&bmc->id)); in ipmi_version_show()
2311 struct bmc_device *bmc = to_bmc_device(dev); in add_dev_support_show() local
2314 bmc->id.additional_device_support); in add_dev_support_show()
2323 struct bmc_device *bmc = to_bmc_device(dev); in manufacturer_id_show() local
2325 return snprintf(buf, 20, "0x%6.6x\n", bmc->id.manufacturer_id); in manufacturer_id_show()
2333 struct bmc_device *bmc = to_bmc_device(dev); in product_id_show() local
2335 return snprintf(buf, 10, "0x%4.4x\n", bmc->id.product_id); in product_id_show()
2343 struct bmc_device *bmc = to_bmc_device(dev); in aux_firmware_rev_show() local
2346 bmc->id.aux_firmware_revision[3], in aux_firmware_rev_show()
2347 bmc->id.aux_firmware_revision[2], in aux_firmware_rev_show()
2348 bmc->id.aux_firmware_revision[1], in aux_firmware_rev_show()
2349 bmc->id.aux_firmware_revision[0]); in aux_firmware_rev_show()
2356 struct bmc_device *bmc = to_bmc_device(dev); in guid_show() local
2359 (long long) bmc->guid[0], in guid_show()
2360 (long long) bmc->guid[8]); in guid_show()
2382 struct bmc_device *bmc = to_bmc_device(dev); in bmc_dev_attr_is_visible() local
2386 return bmc->id.aux_firmware_revision_set ? mode : 0; in bmc_dev_attr_is_visible()
2388 return bmc->guid_set ? mode : 0; in bmc_dev_attr_is_visible()
2415 struct bmc_device *bmc = container_of(ref, struct bmc_device, usecount); in cleanup_bmc_device() local
2417 platform_device_unregister(&bmc->pdev); in cleanup_bmc_device()
2422 struct bmc_device *bmc = intf->bmc; in ipmi_bmc_unregister() local
2426 sysfs_remove_link(&bmc->pdev.dev.kobj, intf->my_dev_name); in ipmi_bmc_unregister()
2432 kref_put(&bmc->usecount, cleanup_bmc_device); in ipmi_bmc_unregister()
2433 intf->bmc = NULL; in ipmi_bmc_unregister()
2440 struct bmc_device *bmc = intf->bmc; in ipmi_bmc_register() local
2449 if (bmc->guid_set) in ipmi_bmc_register()
2450 old_bmc = ipmi_find_bmc_guid(&ipmidriver.driver, bmc->guid); in ipmi_bmc_register()
2453 bmc->id.product_id, in ipmi_bmc_register()
2454 bmc->id.device_id); in ipmi_bmc_register()
2461 kfree(bmc); in ipmi_bmc_register()
2462 intf->bmc = old_bmc; in ipmi_bmc_register()
2463 bmc = old_bmc; in ipmi_bmc_register()
2465 kref_get(&bmc->usecount); in ipmi_bmc_register()
2471 bmc->id.manufacturer_id, in ipmi_bmc_register()
2472 bmc->id.product_id, in ipmi_bmc_register()
2473 bmc->id.device_id); in ipmi_bmc_register()
2475 unsigned char orig_dev_id = bmc->id.device_id; in ipmi_bmc_register()
2478 snprintf(bmc->name, sizeof(bmc->name), in ipmi_bmc_register()
2479 "ipmi_bmc.%4.4x", bmc->id.product_id); in ipmi_bmc_register()
2480 bmc->pdev.name = bmc->name; in ipmi_bmc_register()
2483 bmc->id.product_id, in ipmi_bmc_register()
2484 bmc->id.device_id)) { in ipmi_bmc_register()
2493 bmc->id.product_id, bmc->id.device_id); in ipmi_bmc_register()
2496 bmc->id.device_id++; /* Wraps at 255 */ in ipmi_bmc_register()
2497 if (bmc->id.device_id == orig_dev_id) { in ipmi_bmc_register()
2504 bmc->pdev.dev.driver = &ipmidriver.driver; in ipmi_bmc_register()
2505 bmc->pdev.id = bmc->id.device_id; in ipmi_bmc_register()
2506 bmc->pdev.dev.release = release_bmc_device; in ipmi_bmc_register()
2507 bmc->pdev.dev.type = &bmc_device_type; in ipmi_bmc_register()
2508 kref_init(&bmc->usecount); in ipmi_bmc_register()
2510 rv = platform_device_register(&bmc->pdev); in ipmi_bmc_register()
2513 put_device(&bmc->pdev.dev); in ipmi_bmc_register()
2527 bmc->id.manufacturer_id, in ipmi_bmc_register()
2528 bmc->id.product_id, in ipmi_bmc_register()
2529 bmc->id.device_id); in ipmi_bmc_register()
2536 rv = sysfs_create_link(&intf->si_dev->kobj, &bmc->pdev.dev.kobj, "bmc"); in ipmi_bmc_register()
2553 rv = sysfs_create_link(&bmc->pdev.dev.kobj, &intf->si_dev->kobj, in ipmi_bmc_register()
2611 intf->bmc->guid_set = 0; in guid_handler()
2616 intf->bmc->guid_set = 0; in guid_handler()
2625 memcpy(intf->bmc->guid, msg->msg.data, 16); in guid_handler()
2626 intf->bmc->guid_set = 1; in guid_handler()
2636 intf->bmc->guid_set = 0x2; in get_guid()
2641 intf->bmc->guid_set = 0; in get_guid()
2642 wait_event(intf->waitq, intf->bmc->guid_set != 2); in get_guid()
2785 intf->bmc = kzalloc(sizeof(*intf->bmc), GFP_KERNEL); in ipmi_register_smi()
2786 if (!intf->bmc) { in ipmi_register_smi()
2792 intf->bmc->id = *device_id; in ipmi_register_smi()