Lines Matching refs:rdev

58 	struct radeon_device *rdev = dev->dev_private;  in radeon_driver_unload_kms()  local
60 if (rdev == NULL) in radeon_driver_unload_kms()
63 if (rdev->rmmio == NULL) in radeon_driver_unload_kms()
68 radeon_kfd_device_fini(rdev); in radeon_driver_unload_kms()
70 radeon_acpi_fini(rdev); in radeon_driver_unload_kms()
72 radeon_modeset_fini(rdev); in radeon_driver_unload_kms()
73 radeon_device_fini(rdev); in radeon_driver_unload_kms()
76 kfree(rdev); in radeon_driver_unload_kms()
96 struct radeon_device *rdev; in radeon_driver_load_kms() local
99 rdev = kzalloc(sizeof(struct radeon_device), GFP_KERNEL); in radeon_driver_load_kms()
100 if (rdev == NULL) { in radeon_driver_load_kms()
103 dev->dev_private = (void *)rdev; in radeon_driver_load_kms()
125 r = radeon_device_init(rdev, dev, dev->pdev, flags); in radeon_driver_load_kms()
135 r = radeon_modeset_init(rdev); in radeon_driver_load_kms()
143 acpi_status = radeon_acpi_init(rdev); in radeon_driver_load_kms()
149 radeon_kfd_device_probe(rdev); in radeon_driver_load_kms()
150 radeon_kfd_device_init(rdev); in radeon_driver_load_kms()
215 struct radeon_device *rdev = dev->dev_private; in radeon_info_ioctl() local
217 struct radeon_mode_info *minfo = &rdev->mode_info; in radeon_info_ioctl()
232 *value = rdev->num_gb_pipes; in radeon_info_ioctl()
235 *value = rdev->num_z_pipes; in radeon_info_ioctl()
239 if ((rdev->family >= CHIP_CEDAR) && (rdev->family <= CHIP_HEMLOCK)) in radeon_info_ioctl()
242 *value = rdev->accel_working; in radeon_info_ioctl()
249 for (i = 0, found = 0; i < rdev->num_crtc; i++) { in radeon_info_ioctl()
264 if (rdev->family == CHIP_HAWAII) { in radeon_info_ioctl()
265 if (rdev->accel_working) { in radeon_info_ioctl()
266 if (rdev->new_fw) in radeon_info_ioctl()
274 *value = rdev->accel_working; in radeon_info_ioctl()
278 if (rdev->family >= CHIP_BONAIRE) in radeon_info_ioctl()
279 *value = rdev->config.cik.tile_config; in radeon_info_ioctl()
280 else if (rdev->family >= CHIP_TAHITI) in radeon_info_ioctl()
281 *value = rdev->config.si.tile_config; in radeon_info_ioctl()
282 else if (rdev->family >= CHIP_CAYMAN) in radeon_info_ioctl()
283 *value = rdev->config.cayman.tile_config; in radeon_info_ioctl()
284 else if (rdev->family >= CHIP_CEDAR) in radeon_info_ioctl()
285 *value = rdev->config.evergreen.tile_config; in radeon_info_ioctl()
286 else if (rdev->family >= CHIP_RV770) in radeon_info_ioctl()
287 *value = rdev->config.rv770.tile_config; in radeon_info_ioctl()
288 else if (rdev->family >= CHIP_R600) in radeon_info_ioctl()
289 *value = rdev->config.r600.tile_config; in radeon_info_ioctl()
310 radeon_set_filp_rights(dev, &rdev->hyperz_filp, filp, value); in radeon_info_ioctl()
322 radeon_set_filp_rights(dev, &rdev->cmask_filp, filp, value); in radeon_info_ioctl()
326 if (rdev->asic->get_xclk) in radeon_info_ioctl()
327 *value = radeon_get_xclk(rdev) * 10; in radeon_info_ioctl()
329 *value = rdev->clock.spll.reference_freq * 10; in radeon_info_ioctl()
332 if (rdev->family >= CHIP_BONAIRE) in radeon_info_ioctl()
333 *value = rdev->config.cik.max_backends_per_se * in radeon_info_ioctl()
334 rdev->config.cik.max_shader_engines; in radeon_info_ioctl()
335 else if (rdev->family >= CHIP_TAHITI) in radeon_info_ioctl()
336 *value = rdev->config.si.max_backends_per_se * in radeon_info_ioctl()
337 rdev->config.si.max_shader_engines; in radeon_info_ioctl()
338 else if (rdev->family >= CHIP_CAYMAN) in radeon_info_ioctl()
339 *value = rdev->config.cayman.max_backends_per_se * in radeon_info_ioctl()
340 rdev->config.cayman.max_shader_engines; in radeon_info_ioctl()
341 else if (rdev->family >= CHIP_CEDAR) in radeon_info_ioctl()
342 *value = rdev->config.evergreen.max_backends; in radeon_info_ioctl()
343 else if (rdev->family >= CHIP_RV770) in radeon_info_ioctl()
344 *value = rdev->config.rv770.max_backends; in radeon_info_ioctl()
345 else if (rdev->family >= CHIP_R600) in radeon_info_ioctl()
346 *value = rdev->config.r600.max_backends; in radeon_info_ioctl()
352 if (rdev->family >= CHIP_BONAIRE) in radeon_info_ioctl()
353 *value = rdev->config.cik.max_tile_pipes; in radeon_info_ioctl()
354 else if (rdev->family >= CHIP_TAHITI) in radeon_info_ioctl()
355 *value = rdev->config.si.max_tile_pipes; in radeon_info_ioctl()
356 else if (rdev->family >= CHIP_CAYMAN) in radeon_info_ioctl()
357 *value = rdev->config.cayman.max_tile_pipes; in radeon_info_ioctl()
358 else if (rdev->family >= CHIP_CEDAR) in radeon_info_ioctl()
359 *value = rdev->config.evergreen.max_tile_pipes; in radeon_info_ioctl()
360 else if (rdev->family >= CHIP_RV770) in radeon_info_ioctl()
361 *value = rdev->config.rv770.max_tile_pipes; in radeon_info_ioctl()
362 else if (rdev->family >= CHIP_R600) in radeon_info_ioctl()
363 *value = rdev->config.r600.max_tile_pipes; in radeon_info_ioctl()
372 if (rdev->family >= CHIP_BONAIRE) in radeon_info_ioctl()
373 *value = rdev->config.cik.backend_map; in radeon_info_ioctl()
374 else if (rdev->family >= CHIP_TAHITI) in radeon_info_ioctl()
375 *value = rdev->config.si.backend_map; in radeon_info_ioctl()
376 else if (rdev->family >= CHIP_CAYMAN) in radeon_info_ioctl()
377 *value = rdev->config.cayman.backend_map; in radeon_info_ioctl()
378 else if (rdev->family >= CHIP_CEDAR) in radeon_info_ioctl()
379 *value = rdev->config.evergreen.backend_map; in radeon_info_ioctl()
380 else if (rdev->family >= CHIP_RV770) in radeon_info_ioctl()
381 *value = rdev->config.rv770.backend_map; in radeon_info_ioctl()
382 else if (rdev->family >= CHIP_R600) in radeon_info_ioctl()
383 *value = rdev->config.r600.backend_map; in radeon_info_ioctl()
390 if (rdev->family < CHIP_CAYMAN) in radeon_info_ioctl()
396 if (rdev->family < CHIP_CAYMAN) in radeon_info_ioctl()
401 if (rdev->family >= CHIP_BONAIRE) in radeon_info_ioctl()
402 *value = rdev->config.cik.max_cu_per_sh; in radeon_info_ioctl()
403 else if (rdev->family >= CHIP_TAHITI) in radeon_info_ioctl()
404 *value = rdev->config.si.max_cu_per_sh; in radeon_info_ioctl()
405 else if (rdev->family >= CHIP_CAYMAN) in radeon_info_ioctl()
406 *value = rdev->config.cayman.max_pipes_per_simd; in radeon_info_ioctl()
407 else if (rdev->family >= CHIP_CEDAR) in radeon_info_ioctl()
408 *value = rdev->config.evergreen.max_pipes; in radeon_info_ioctl()
409 else if (rdev->family >= CHIP_RV770) in radeon_info_ioctl()
410 *value = rdev->config.rv770.max_pipes; in radeon_info_ioctl()
411 else if (rdev->family >= CHIP_R600) in radeon_info_ioctl()
412 *value = rdev->config.r600.max_pipes; in radeon_info_ioctl()
418 if (rdev->family < CHIP_R600) { in radeon_info_ioctl()
424 value64 = radeon_get_gpu_clock_counter(rdev); in radeon_info_ioctl()
427 if (rdev->family >= CHIP_BONAIRE) in radeon_info_ioctl()
428 *value = rdev->config.cik.max_shader_engines; in radeon_info_ioctl()
429 else if (rdev->family >= CHIP_TAHITI) in radeon_info_ioctl()
430 *value = rdev->config.si.max_shader_engines; in radeon_info_ioctl()
431 else if (rdev->family >= CHIP_CAYMAN) in radeon_info_ioctl()
432 *value = rdev->config.cayman.max_shader_engines; in radeon_info_ioctl()
433 else if (rdev->family >= CHIP_CEDAR) in radeon_info_ioctl()
434 *value = rdev->config.evergreen.num_ses; in radeon_info_ioctl()
439 if (rdev->family >= CHIP_BONAIRE) in radeon_info_ioctl()
440 *value = rdev->config.cik.max_sh_per_se; in radeon_info_ioctl()
441 else if (rdev->family >= CHIP_TAHITI) in radeon_info_ioctl()
442 *value = rdev->config.si.max_sh_per_se; in radeon_info_ioctl()
447 *value = rdev->fastfb_working; in radeon_info_ioctl()
457 *value = rdev->ring[RADEON_RING_TYPE_GFX_INDEX].ready; in radeon_info_ioctl()
460 *value = rdev->ring[R600_RING_TYPE_DMA_INDEX].ready; in radeon_info_ioctl()
461 *value |= rdev->ring[CAYMAN_RING_TYPE_DMA1_INDEX].ready; in radeon_info_ioctl()
464 *value = rdev->ring[R600_RING_TYPE_UVD_INDEX].ready; in radeon_info_ioctl()
467 *value = rdev->ring[TN_RING_TYPE_VCE1_INDEX].ready; in radeon_info_ioctl()
474 if (rdev->family >= CHIP_BONAIRE) { in radeon_info_ioctl()
475 value = rdev->config.cik.tile_mode_array; in radeon_info_ioctl()
477 } else if (rdev->family >= CHIP_TAHITI) { in radeon_info_ioctl()
478 value = rdev->config.si.tile_mode_array; in radeon_info_ioctl()
486 if (rdev->family >= CHIP_BONAIRE) { in radeon_info_ioctl()
487 value = rdev->config.cik.macrotile_mode_array; in radeon_info_ioctl()
498 if (rdev->family >= CHIP_BONAIRE) { in radeon_info_ioctl()
499 *value = rdev->config.cik.backend_enable_mask; in radeon_info_ioctl()
500 } else if (rdev->family >= CHIP_TAHITI) { in radeon_info_ioctl()
501 *value = rdev->config.si.backend_enable_mask; in radeon_info_ioctl()
507 if ((rdev->pm.pm_method == PM_METHOD_DPM) && in radeon_info_ioctl()
508 rdev->pm.dpm_enabled) in radeon_info_ioctl()
509 *value = rdev->pm.dpm.dyn_state.max_clock_voltage_on_ac.sclk * 10; in radeon_info_ioctl()
511 *value = rdev->pm.default_sclk * 10; in radeon_info_ioctl()
514 *value = rdev->vce.fw_version; in radeon_info_ioctl()
517 *value = rdev->vce.fb_version; in radeon_info_ioctl()
522 value64 = atomic64_read(&rdev->num_bytes_moved); in radeon_info_ioctl()
527 value64 = atomic64_read(&rdev->vram_usage); in radeon_info_ioctl()
532 value64 = atomic64_read(&rdev->gtt_usage); in radeon_info_ioctl()
535 if (rdev->family >= CHIP_BONAIRE) in radeon_info_ioctl()
536 *value = rdev->config.cik.active_cus; in radeon_info_ioctl()
537 else if (rdev->family >= CHIP_TAHITI) in radeon_info_ioctl()
538 *value = rdev->config.si.active_cus; in radeon_info_ioctl()
539 else if (rdev->family >= CHIP_CAYMAN) in radeon_info_ioctl()
540 *value = rdev->config.cayman.active_simds; in radeon_info_ioctl()
541 else if (rdev->family >= CHIP_CEDAR) in radeon_info_ioctl()
542 *value = rdev->config.evergreen.active_simds; in radeon_info_ioctl()
543 else if (rdev->family >= CHIP_RV770) in radeon_info_ioctl()
544 *value = rdev->config.rv770.active_simds; in radeon_info_ioctl()
545 else if (rdev->family >= CHIP_R600) in radeon_info_ioctl()
546 *value = rdev->config.r600.active_simds; in radeon_info_ioctl()
552 if (rdev->asic->pm.get_temperature) in radeon_info_ioctl()
553 *value = radeon_get_temperature(rdev); in radeon_info_ioctl()
559 if (rdev->pm.dpm_enabled) in radeon_info_ioctl()
560 *value = radeon_dpm_get_current_sclk(rdev) / 100; in radeon_info_ioctl()
562 *value = rdev->pm.current_sclk / 100; in radeon_info_ioctl()
566 if (rdev->pm.dpm_enabled) in radeon_info_ioctl()
567 *value = radeon_dpm_get_current_mclk(rdev) / 100; in radeon_info_ioctl()
569 *value = rdev->pm.current_mclk / 100; in radeon_info_ioctl()
576 if (radeon_get_allowed_info_register(rdev, *value, value)) in radeon_info_ioctl()
620 struct radeon_device *rdev = dev->dev_private; in radeon_driver_open_kms() local
630 if (rdev->family >= CHIP_CAYMAN) { in radeon_driver_open_kms()
640 if (rdev->accel_working) { in radeon_driver_open_kms()
642 r = radeon_vm_init(rdev, vm); in radeon_driver_open_kms()
648 r = radeon_bo_reserve(rdev->ring_tmp_bo.bo, false); in radeon_driver_open_kms()
650 radeon_vm_fini(rdev, vm); in radeon_driver_open_kms()
657 vm->ib_bo_va = radeon_vm_bo_add(rdev, vm, in radeon_driver_open_kms()
658 rdev->ring_tmp_bo.bo); in radeon_driver_open_kms()
659 r = radeon_vm_bo_set_addr(rdev, vm->ib_bo_va, in radeon_driver_open_kms()
664 radeon_vm_fini(rdev, vm); in radeon_driver_open_kms()
688 struct radeon_device *rdev = dev->dev_private; in radeon_driver_postclose_kms() local
691 if (rdev->family >= CHIP_CAYMAN && file_priv->driver_priv) { in radeon_driver_postclose_kms()
696 if (rdev->accel_working) { in radeon_driver_postclose_kms()
697 r = radeon_bo_reserve(rdev->ring_tmp_bo.bo, false); in radeon_driver_postclose_kms()
700 radeon_vm_bo_rmv(rdev, vm->ib_bo_va); in radeon_driver_postclose_kms()
701 radeon_bo_unreserve(rdev->ring_tmp_bo.bo); in radeon_driver_postclose_kms()
703 radeon_vm_fini(rdev, vm); in radeon_driver_postclose_kms()
723 struct radeon_device *rdev = dev->dev_private; in radeon_driver_preclose_kms() local
724 if (rdev->hyperz_filp == file_priv) in radeon_driver_preclose_kms()
725 rdev->hyperz_filp = NULL; in radeon_driver_preclose_kms()
726 if (rdev->cmask_filp == file_priv) in radeon_driver_preclose_kms()
727 rdev->cmask_filp = NULL; in radeon_driver_preclose_kms()
728 radeon_uvd_free_handles(rdev, file_priv); in radeon_driver_preclose_kms()
729 radeon_vce_free_handles(rdev, file_priv); in radeon_driver_preclose_kms()
746 struct radeon_device *rdev = dev->dev_private; in radeon_get_vblank_counter_kms() local
748 if (crtc < 0 || crtc >= rdev->num_crtc) { in radeon_get_vblank_counter_kms()
753 return radeon_get_vblank_counter(rdev, crtc); in radeon_get_vblank_counter_kms()
767 struct radeon_device *rdev = dev->dev_private; in radeon_enable_vblank_kms() local
771 if (crtc < 0 || crtc >= rdev->num_crtc) { in radeon_enable_vblank_kms()
776 spin_lock_irqsave(&rdev->irq.lock, irqflags); in radeon_enable_vblank_kms()
777 rdev->irq.crtc_vblank_int[crtc] = true; in radeon_enable_vblank_kms()
778 r = radeon_irq_set(rdev); in radeon_enable_vblank_kms()
779 spin_unlock_irqrestore(&rdev->irq.lock, irqflags); in radeon_enable_vblank_kms()
793 struct radeon_device *rdev = dev->dev_private; in radeon_disable_vblank_kms() local
796 if (crtc < 0 || crtc >= rdev->num_crtc) { in radeon_disable_vblank_kms()
801 spin_lock_irqsave(&rdev->irq.lock, irqflags); in radeon_disable_vblank_kms()
802 rdev->irq.crtc_vblank_int[crtc] = false; in radeon_disable_vblank_kms()
803 radeon_irq_set(rdev); in radeon_disable_vblank_kms()
804 spin_unlock_irqrestore(&rdev->irq.lock, irqflags); in radeon_disable_vblank_kms()
826 struct radeon_device *rdev = dev->dev_private; in radeon_get_vblank_timestamp_kms() local
834 drmcrtc = &rdev->mode_info.crtcs[crtc]->base; in radeon_get_vblank_timestamp_kms()