Lines Matching defs:radeon_device
2308 struct radeon_device { struct
2309 struct device *dev;
2310 struct drm_device *ddev;
2311 struct pci_dev *pdev;
2312 struct rw_semaphore exclusive_lock;
2314 union radeon_asic_config config;
2315 enum radeon_family family;
2316 unsigned long flags;
2317 int usec_timeout;
2318 enum radeon_pll_errata pll_errata;
2319 int num_gb_pipes;
2320 int num_z_pipes;
2321 int disp_priority;
2323 uint8_t *bios;
2324 bool is_atom_bios;
2325 uint16_t bios_header_start;
2326 struct radeon_bo *stolen_vga_memory;
2328 resource_size_t rmmio_base;
2329 resource_size_t rmmio_size;
2331 spinlock_t mmio_idx_lock;
2333 spinlock_t smc_idx_lock;
2335 spinlock_t pll_idx_lock;
2337 spinlock_t mc_idx_lock;
2339 spinlock_t pcie_idx_lock;
2341 spinlock_t pciep_idx_lock;
2343 spinlock_t pif_idx_lock;
2345 spinlock_t cg_idx_lock;
2347 spinlock_t uvd_idx_lock;
2349 spinlock_t rcu_idx_lock;
2351 spinlock_t didt_idx_lock;
2353 spinlock_t end_idx_lock;
2354 void __iomem *rmmio;
2355 radeon_rreg_t mc_rreg;
2356 radeon_wreg_t mc_wreg;
2357 radeon_rreg_t pll_rreg;
2358 radeon_wreg_t pll_wreg;
2359 uint32_t pcie_reg_mask;
2360 radeon_rreg_t pciep_rreg;
2361 radeon_wreg_t pciep_wreg;
2363 void __iomem *rio_mem;
2364 resource_size_t rio_mem_size;
2365 struct radeon_clock clock;
2366 struct radeon_mc mc;
2367 struct radeon_gart gart;
2368 struct radeon_mode_info mode_info;
2369 struct radeon_scratch scratch;
2370 struct radeon_doorbell doorbell;
2371 struct radeon_mman mman;
2372 struct radeon_fence_driver fence_drv[RADEON_NUM_RINGS];
2373 wait_queue_head_t fence_queue;
2374 u64 fence_context;
2375 struct mutex ring_lock;
2376 struct radeon_ring ring[RADEON_NUM_RINGS];
2377 bool ib_pool_ready;
2378 struct radeon_sa_manager ring_tmp_bo;
2379 struct radeon_irq irq;
2380 struct radeon_asic *asic;
2381 struct radeon_gem gem;
2382 struct radeon_pm pm;
2383 struct radeon_uvd uvd;
2384 struct radeon_vce vce;
2385 uint32_t bios_scratch[RADEON_BIOS_NUM_SCRATCH];
2386 struct radeon_wb wb;
2387 struct radeon_dummy_page dummy_page;
2388 bool shutdown;
2389 bool need_swiotlb;
2390 bool accel_working;
2391 bool fastfb_working; /* IGP feature*/
2392 bool needs_reset, in_reset;
2393 struct radeon_surface_reg surface_regs[RADEON_GEM_MAX_SURFACES];
2394 const struct firmware *me_fw; /* all family ME firmware */
2395 const struct firmware *pfp_fw; /* r6/700 PFP firmware */
2396 const struct firmware *rlc_fw; /* r6/700 RLC firmware */
2397 const struct firmware *mc_fw; /* NI MC firmware */
2398 const struct firmware *ce_fw; /* SI CE firmware */
2399 const struct firmware *mec_fw; /* CIK MEC firmware */
2400 const struct firmware *mec2_fw; /* KV MEC2 firmware */
2401 const struct firmware *sdma_fw; /* CIK SDMA firmware */
2402 const struct firmware *smc_fw; /* SMC firmware */
2403 const struct firmware *uvd_fw; /* UVD firmware */
2404 const struct firmware *vce_fw; /* VCE firmware */
2405 bool new_fw;
2406 struct r600_vram_scratch vram_scratch;
2407 int msi_enabled; /* msi enabled */
2408 struct r600_ih ih; /* r6/700 interrupt ring */
2409 struct radeon_rlc rlc;
2410 struct radeon_mec mec;
2411 struct delayed_work hotplug_work;
2412 struct work_struct dp_work;
2413 struct work_struct audio_work;
2414 int num_crtc; /* number of crtcs */
2415 struct mutex dc_hw_i2c_mutex; /* display controller hw i2c mutex */
2416 bool has_uvd;
2417 bool has_vce;
2418 struct r600_audio audio; /* audio stuff */
2419 struct notifier_block acpi_nb;
2421 struct drm_file *hyperz_filp;
2422 struct drm_file *cmask_filp;
2424 struct radeon_i2c_chan *i2c_bus[RADEON_MAX_I2C_BUS];
2426 struct radeon_debugfs debugfs[RADEON_DEBUGFS_MAX_COMPONENTS];
2427 unsigned debugfs_count;
2429 struct radeon_vm_manager vm_manager;
2430 struct mutex gpu_clock_mutex;
2455 int radeon_device_init(struct radeon_device *rdev, argument