hive 3597 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c static int amdgpu_do_asic_reset(struct amdgpu_hive_info *hive, hive 3693 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c if (hive && tmp_adev->gmc.xgmi.num_physical_nodes > 1) hive 3694 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c r = amdgpu_xgmi_update_topology(hive, tmp_adev); hive 3779 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c struct amdgpu_hive_info *hive = NULL; hive 3790 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c hive = amdgpu_get_xgmi_hive(adev, false); hive 3800 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c if (hive && !mutex_trylock(&hive->reset_lock)) { hive 3802 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c job ? job->base.id : -1, hive->hive_id); hive 3807 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c if (!amdgpu_device_lock_adev(adev, !hive)) { hive 3815 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c if (!hive) { hive 3825 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c device_list_handle = &hive->device_list; hive 3908 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c r = amdgpu_do_asic_reset(hive, device_list_handle, &need_full_reset); hive 3947 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c if (hive) hive 3948 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c mutex_unlock(&hive->reset_lock); hive 38 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c void *amdgpu_xgmi_hive_try_lock(struct amdgpu_hive_info *hive) hive 40 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c return &hive->device_list; hive 74 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c struct amdgpu_hive_info *hive = hive 77 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c return snprintf(buf, PAGE_SIZE, "%llu\n", hive->hive_id); hive 81 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c struct amdgpu_hive_info *hive) hive 85 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c if (WARN_ON(hive->kobj)) hive 88 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c hive->kobj = kobject_create_and_add("xgmi_hive_info", &adev->dev->kobj); hive 89 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c if (!hive->kobj) { hive 94 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c hive->dev_attr = (struct device_attribute) { hive 103 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c ret = sysfs_create_file(hive->kobj, &hive->dev_attr.attr); hive 106 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c kobject_del(hive->kobj); hive 107 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c kobject_put(hive->kobj); hive 108 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c hive->kobj = NULL; hive 115 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c struct amdgpu_hive_info *hive) hive 117 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c sysfs_remove_file(hive->kobj, &hive->dev_attr.attr); hive 118 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c kobject_del(hive->kobj); hive 119 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c kobject_put(hive->kobj); hive 120 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c hive->kobj = NULL; hive 167 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c struct amdgpu_hive_info *hive) hive 186 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c if (adev != hive->adev) { hive 187 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c ret = sysfs_create_link(&adev->dev->kobj, hive->kobj, hive 195 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c sprintf(node, "node%d", hive->number_devices); hive 197 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c ret = sysfs_create_link(hive->kobj, &adev->dev->kobj, node); hive 217 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c struct amdgpu_hive_info *hive) hive 221 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c sysfs_remove_link(hive->kobj, adev->ddev->unique); hive 275 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c struct amdgpu_hive_info *hive = amdgpu_get_xgmi_hive(adev, 0); hive 277 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c if (!hive) hive 280 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c if (hive->pstate == pstate) hive 296 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c int amdgpu_xgmi_update_topology(struct amdgpu_hive_info *hive, struct amdgpu_device *adev) hive 302 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c hive->number_devices, hive 329 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c struct amdgpu_hive_info *hive; hive 357 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c hive = amdgpu_get_xgmi_hive(adev, 1); hive 358 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c if (!hive) { hive 368 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c list_add_tail(&adev->gmc.xgmi.head, &hive->device_list); hive 369 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c list_for_each_entry(entry, &hive->device_list, head) hive 372 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c hive->number_devices = count; hive 375 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c list_for_each_entry(tmp_adev, &hive->device_list, gmc.xgmi.head) { hive 383 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c ret = amdgpu_xgmi_update_topology(hive, tmp_adev); hive 389 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c list_for_each_entry(tmp_adev, &hive->device_list, gmc.xgmi.head) { hive 404 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c ret = amdgpu_xgmi_sysfs_add_dev_info(adev, hive); hive 407 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c mutex_unlock(&hive->hive_lock); hive 422 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c struct amdgpu_hive_info *hive; hive 427 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c hive = amdgpu_get_xgmi_hive(adev, 1); hive 428 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c if (!hive) hive 431 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c if (!(hive->number_devices--)) { hive 432 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c amdgpu_xgmi_sysfs_destroy(adev, hive); hive 433 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c mutex_destroy(&hive->hive_lock); hive 434 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c mutex_destroy(&hive->reset_lock); hive 436 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c amdgpu_xgmi_sysfs_rem_dev_info(adev, hive); hive 437 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c mutex_unlock(&hive->hive_lock); hive 39 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.h int amdgpu_xgmi_update_topology(struct amdgpu_hive_info *hive, struct amdgpu_device *adev); hive 565 drivers/gpu/drm/amd/amdgpu/soc15.c struct amdgpu_hive_info *hive = amdgpu_get_xgmi_hive(adev, 0); hive 568 drivers/gpu/drm/amd/amdgpu/soc15.c if (hive || (ras && ras->supported))