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