xref: /linux/drivers/gpu/drm/radeon/cik.h (revision cdd38c5f1ce4398ec58fec95904b75824daab7b5)
1e6a29196SLee Jones /* cik.h -- Private header for radeon driver -*- linux-c -*-
2e6a29196SLee Jones  * Copyright 2012 Advanced Micro Devices, Inc.
3e6a29196SLee Jones  *
4e6a29196SLee Jones  * Permission is hereby granted, free of charge, to any person obtaining a
5e6a29196SLee Jones  * copy of this software and associated documentation files (the "Software"),
6e6a29196SLee Jones  * to deal in the Software without restriction, including without limitation
7e6a29196SLee Jones  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
8e6a29196SLee Jones  * and/or sell copies of the Software, and to permit persons to whom the
9e6a29196SLee Jones  * Software is furnished to do so, subject to the following conditions:
10e6a29196SLee Jones  *
11e6a29196SLee Jones  * The above copyright notice and this permission notice shall be included in
12e6a29196SLee Jones  * all copies or substantial portions of the Software.
13e6a29196SLee Jones  *
14e6a29196SLee Jones  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15e6a29196SLee Jones  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16e6a29196SLee Jones  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
17e6a29196SLee Jones  * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR
18e6a29196SLee Jones  * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
19e6a29196SLee Jones  * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
20e6a29196SLee Jones  * OTHER DEALINGS IN THE SOFTWARE.
21e6a29196SLee Jones  */
22e6a29196SLee Jones 
23e6a29196SLee Jones #ifndef __CIK_H__
24e6a29196SLee Jones #define __CIK_H__
25e6a29196SLee Jones 
26e6a29196SLee Jones struct radeon_device;
27e6a29196SLee Jones 
28e6a29196SLee Jones void cik_enter_rlc_safe_mode(struct radeon_device *rdev);
29e6a29196SLee Jones void cik_exit_rlc_safe_mode(struct radeon_device *rdev);
30e6a29196SLee Jones int ci_mc_load_microcode(struct radeon_device *rdev);
31e6a29196SLee Jones void cik_update_cg(struct radeon_device *rdev, u32 block, bool enable);
320a999f7dSLee Jones u32 cik_gpu_check_soft_reset(struct radeon_device *rdev);
33c580cfc9SLee Jones void cik_init_cp_pg_table(struct radeon_device *rdev);
34c580cfc9SLee Jones u32 cik_get_csb_size(struct radeon_device *rdev);
35c580cfc9SLee Jones void cik_get_csb_buffer(struct radeon_device *rdev, volatile u32 *buffer);
36e6a29196SLee Jones 
37ea115610SLee Jones int cik_sdma_resume(struct radeon_device *rdev);
38ea115610SLee Jones void cik_sdma_enable(struct radeon_device *rdev, bool enable);
39ea115610SLee Jones void cik_sdma_fini(struct radeon_device *rdev);
40e6a29196SLee Jones #endif                         /* __CIK_H__ */
41