Lines Matching defs:radeon_device
2339 struct radeon_device { struct
2340 struct device *dev;
2341 struct drm_device *ddev;
2342 struct pci_dev *pdev;
2344 struct pci_controller *hose;
2346 struct radeon_agp_head *agp;
2347 struct rw_semaphore exclusive_lock;
2349 union radeon_asic_config config;
2350 enum radeon_family family;
2351 unsigned long flags;
2352 int usec_timeout;
2353 enum radeon_pll_errata pll_errata;
2354 int num_gb_pipes;
2355 int num_z_pipes;
2356 int disp_priority;
2358 uint8_t *bios;
2359 bool is_atom_bios;
2360 uint16_t bios_header_start;
2361 struct radeon_bo *stolen_vga_memory;
2363 resource_size_t rmmio_base;
2364 resource_size_t rmmio_size;
2366 spinlock_t mmio_idx_lock;
2368 spinlock_t smc_idx_lock;
2370 spinlock_t pll_idx_lock;
2372 spinlock_t mc_idx_lock;
2374 spinlock_t pcie_idx_lock;
2376 spinlock_t pciep_idx_lock;
2378 spinlock_t pif_idx_lock;
2380 spinlock_t cg_idx_lock;
2382 spinlock_t uvd_idx_lock;
2384 spinlock_t rcu_idx_lock;
2386 spinlock_t didt_idx_lock;
2388 spinlock_t end_idx_lock;
2389 void __iomem *rmmio;
2390 radeon_rreg_t mc_rreg;
2391 radeon_wreg_t mc_wreg;
2392 radeon_rreg_t pll_rreg;
2393 radeon_wreg_t pll_wreg;
2394 uint32_t pcie_reg_mask;
2395 radeon_rreg_t pciep_rreg;
2396 radeon_wreg_t pciep_wreg;
2398 void __iomem *rio_mem;
2399 resource_size_t rio_mem_size;
2400 struct radeon_clock clock;
2401 struct radeon_mc mc;
2402 struct radeon_gart gart;
2403 struct radeon_mode_info mode_info;
2404 struct radeon_scratch scratch;
2405 struct radeon_doorbell doorbell;
2406 struct radeon_mman mman;
2407 struct radeon_fence_driver fence_drv[RADEON_NUM_RINGS];
2408 wait_queue_head_t fence_queue;
2409 u64 fence_context;
2410 struct mutex ring_lock;
2411 struct radeon_ring ring[RADEON_NUM_RINGS];
2412 bool ib_pool_ready;
2413 struct radeon_sa_manager ring_tmp_bo;
2414 struct radeon_irq irq;
2415 struct radeon_asic *asic;
2416 struct radeon_gem gem;
2417 struct radeon_pm pm;
2418 struct radeon_uvd uvd;
2419 struct radeon_vce vce;
2420 uint32_t bios_scratch[RADEON_BIOS_NUM_SCRATCH];
2421 struct radeon_wb wb;
2422 struct radeon_dummy_page dummy_page;
2423 bool shutdown;
2424 bool need_swiotlb;
2425 bool accel_working;
2426 bool fastfb_working; /* IGP feature*/
2427 bool needs_reset, in_reset;
2428 struct radeon_surface_reg surface_regs[RADEON_GEM_MAX_SURFACES];
2429 const struct firmware *me_fw; /* all family ME firmware */
2430 const struct firmware *pfp_fw; /* r6/700 PFP firmware */
2431 const struct firmware *rlc_fw; /* r6/700 RLC firmware */
2432 const struct firmware *mc_fw; /* NI MC firmware */
2433 const struct firmware *ce_fw; /* SI CE firmware */
2434 const struct firmware *mec_fw; /* CIK MEC firmware */
2435 const struct firmware *mec2_fw; /* KV MEC2 firmware */
2436 const struct firmware *sdma_fw; /* CIK SDMA firmware */
2437 const struct firmware *smc_fw; /* SMC firmware */
2438 const struct firmware *uvd_fw; /* UVD firmware */
2439 const struct firmware *vce_fw; /* VCE firmware */
2440 bool new_fw;
2441 struct r600_vram_scratch vram_scratch;
2442 int msi_enabled; /* msi enabled */
2443 struct r600_ih ih; /* r6/700 interrupt ring */
2444 struct radeon_rlc rlc;
2445 struct radeon_mec mec;
2446 struct delayed_work hotplug_work;
2447 struct work_struct dp_work;
2448 struct work_struct audio_work;
2449 int num_crtc; /* number of crtcs */
2450 struct mutex dc_hw_i2c_mutex; /* display controller hw i2c mutex */
2451 bool has_uvd;
2452 bool has_vce;
2453 struct r600_audio audio; /* audio stuff */
2454 struct notifier_block acpi_nb;
2456 struct drm_file *hyperz_filp;
2457 struct drm_file *cmask_filp;
2459 struct radeon_i2c_chan *i2c_bus[RADEON_MAX_I2C_BUS];
2461 struct radeon_vm_manager vm_manager;
2485 int radeon_device_init(struct radeon_device *rdev, argument