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