Lines Matching refs:rdev

33 static int si_set_smc_sram_address(struct radeon_device *rdev,  in si_set_smc_sram_address()  argument
47 int si_copy_bytes_to_smc(struct radeon_device *rdev, in si_copy_bytes_to_smc() argument
62 spin_lock_irqsave(&rdev->smc_idx_lock, flags); in si_copy_bytes_to_smc()
67 ret = si_set_smc_sram_address(rdev, addr, limit); in si_copy_bytes_to_smc()
82 ret = si_set_smc_sram_address(rdev, addr, limit); in si_copy_bytes_to_smc()
100 ret = si_set_smc_sram_address(rdev, addr, limit); in si_copy_bytes_to_smc()
108 spin_unlock_irqrestore(&rdev->smc_idx_lock, flags); in si_copy_bytes_to_smc()
113 void si_start_smc(struct radeon_device *rdev) in si_start_smc() argument
122 void si_reset_smc(struct radeon_device *rdev) in si_reset_smc() argument
136 int si_program_jump_on_start(struct radeon_device *rdev) in si_program_jump_on_start() argument
140 return si_copy_bytes_to_smc(rdev, 0x0, data, 4, sizeof(data)+1); in si_program_jump_on_start()
143 void si_stop_smc_clock(struct radeon_device *rdev) in si_stop_smc_clock() argument
152 void si_start_smc_clock(struct radeon_device *rdev) in si_start_smc_clock() argument
161 bool si_is_smc_running(struct radeon_device *rdev) in si_is_smc_running() argument
172 PPSMC_Result si_send_msg_to_smc(struct radeon_device *rdev, PPSMC_Msg msg) in si_send_msg_to_smc() argument
177 if (!si_is_smc_running(rdev)) in si_send_msg_to_smc()
182 for (i = 0; i < rdev->usec_timeout; i++) { in si_send_msg_to_smc()
193 PPSMC_Result si_wait_for_smc_inactive(struct radeon_device *rdev) in si_wait_for_smc_inactive() argument
198 if (!si_is_smc_running(rdev)) in si_wait_for_smc_inactive()
201 for (i = 0; i < rdev->usec_timeout; i++) { in si_wait_for_smc_inactive()
211 int si_load_smc_ucode(struct radeon_device *rdev, u32 limit) in si_load_smc_ucode() argument
219 if (!rdev->smc_fw) in si_load_smc_ucode()
222 if (rdev->new_fw) { in si_load_smc_ucode()
224 (const struct smc_firmware_header_v1_0 *)rdev->smc_fw->data; in si_load_smc_ucode()
231 (rdev->smc_fw->data + le32_to_cpu(hdr->header.ucode_array_offset_bytes)); in si_load_smc_ucode()
233 switch (rdev->family) { in si_load_smc_ucode()
258 src = (const u8 *)rdev->smc_fw->data; in si_load_smc_ucode()
264 spin_lock_irqsave(&rdev->smc_idx_lock, flags); in si_load_smc_ucode()
277 spin_unlock_irqrestore(&rdev->smc_idx_lock, flags); in si_load_smc_ucode()
282 int si_read_smc_sram_dword(struct radeon_device *rdev, u32 smc_address, in si_read_smc_sram_dword() argument
288 spin_lock_irqsave(&rdev->smc_idx_lock, flags); in si_read_smc_sram_dword()
289 ret = si_set_smc_sram_address(rdev, smc_address, limit); in si_read_smc_sram_dword()
292 spin_unlock_irqrestore(&rdev->smc_idx_lock, flags); in si_read_smc_sram_dword()
297 int si_write_smc_sram_dword(struct radeon_device *rdev, u32 smc_address, in si_write_smc_sram_dword() argument
303 spin_lock_irqsave(&rdev->smc_idx_lock, flags); in si_write_smc_sram_dword()
304 ret = si_set_smc_sram_address(rdev, smc_address, limit); in si_write_smc_sram_dword()
307 spin_unlock_irqrestore(&rdev->smc_idx_lock, flags); in si_write_smc_sram_dword()