Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

gpu: nova-core: consider `clippy::cast_lossless`

Fix all warnings caused by `clippy::cast_lossless`, which is going to be
enabled by [1].

Cc: Alexandre Courbot <acourbot@nvidia.com>
Cc: Miguel Ojeda <ojeda@kernel.org>
Link: https://lore.kernel.org/r/20250615-ptr-as-ptr-v12-5-f43b024581e8@gmail.com [1]
Reviewed-by: Alexandre Courbot <acourbot@nvidia.com>
Tested-by: Alexandre Courbot <acourbot@nvidia.com>
Link: https://lore.kernel.org/r/20250624132337.2242-2-dakr@kernel.org
Signed-off-by: Danilo Krummrich <dakr@kernel.org>

+14 -14
+1 -1
drivers/gpu/nova-core/falcon.rs
··· 428 428 fw.dma_handle_with_offset(load_offsets.src_start as usize)?, 429 429 ), 430 430 }; 431 - if dma_start % DMA_LEN as bindings::dma_addr_t > 0 { 431 + if dma_start % bindings::dma_addr_t::from(DMA_LEN) > 0 { 432 432 dev_err!( 433 433 self.dev, 434 434 "DMA transfer start addresses must be a multiple of {}",
+1 -1
drivers/gpu/nova-core/falcon/hal/ga102.rs
··· 78 78 .set_value(params.pkc_data_offset) 79 79 .write(bar, E::BASE); 80 80 regs::NV_PFALCON2_FALCON_BROM_ENGIDMASK::default() 81 - .set_value(params.engine_id_mask as u32) 81 + .set_value(u32::from(params.engine_id_mask)) 82 82 .write(bar, E::BASE); 83 83 regs::NV_PFALCON2_FALCON_BROM_CURR_UCODE_ID::default() 84 84 .set_ucode_id(params.ucode_id)
+2 -2
drivers/gpu/nova-core/fb/hal/ga100.rs
··· 11 11 use super::tu102::FLUSH_SYSMEM_ADDR_SHIFT; 12 12 13 13 pub(super) fn read_sysmem_flush_page_ga100(bar: &Bar0) -> u64 { 14 - (regs::NV_PFB_NISO_FLUSH_SYSMEM_ADDR::read(bar).adr_39_08() as u64) << FLUSH_SYSMEM_ADDR_SHIFT 15 - | (regs::NV_PFB_NISO_FLUSH_SYSMEM_ADDR_HI::read(bar).adr_63_40() as u64) 14 + u64::from(regs::NV_PFB_NISO_FLUSH_SYSMEM_ADDR::read(bar).adr_39_08()) << FLUSH_SYSMEM_ADDR_SHIFT 15 + | u64::from(regs::NV_PFB_NISO_FLUSH_SYSMEM_ADDR_HI::read(bar).adr_63_40()) 16 16 << FLUSH_SYSMEM_ADDR_SHIFT_HI 17 17 } 18 18
+1 -1
drivers/gpu/nova-core/fb/hal/tu102.rs
··· 10 10 pub(super) const FLUSH_SYSMEM_ADDR_SHIFT: u32 = 8; 11 11 12 12 pub(super) fn read_sysmem_flush_page_gm107(bar: &Bar0) -> u64 { 13 - (regs::NV_PFB_NISO_FLUSH_SYSMEM_ADDR::read(bar).adr_39_08() as u64) << FLUSH_SYSMEM_ADDR_SHIFT 13 + u64::from(regs::NV_PFB_NISO_FLUSH_SYSMEM_ADDR::read(bar).adr_39_08()) << FLUSH_SYSMEM_ADDR_SHIFT 14 14 } 15 15 16 16 pub(super) fn write_sysmem_flush_page_gm107(bar: &Bar0, addr: u64) -> Result {
+1 -1
drivers/gpu/nova-core/firmware/fwsec.rs
··· 346 346 let desc = bios.fwsec_image().header(dev)?; 347 347 let ucode_signed = if desc.signature_count != 0 { 348 348 let sig_base_img = (desc.imem_load_size + desc.pkc_data_offset) as usize; 349 - let desc_sig_versions = desc.signature_versions as u32; 349 + let desc_sig_versions = u32::from(desc.signature_versions); 350 350 let reg_fuse_version = 351 351 falcon.signature_reg_fuse_version(bar, desc.engine_id_mask, desc.ucode_id)?; 352 352 dev_dbg!(
+4 -4
drivers/gpu/nova-core/regs.rs
··· 68 68 impl NV_PFB_PRI_MMU_LOCAL_MEMORY_RANGE { 69 69 /// Returns the usable framebuffer size, in bytes. 70 70 pub(crate) fn usable_fb_size(self) -> u64 { 71 - let size = ((self.lower_mag() as u64) << (self.lower_scale() as u64)) 71 + let size = (u64::from(self.lower_mag()) << u64::from(self.lower_scale())) 72 72 * kernel::sizes::SZ_1M as u64; 73 73 74 74 if self.ecc_mode_enabled() { ··· 87 87 impl NV_PFB_PRI_MMU_WPR2_ADDR_LO { 88 88 /// Returns the lower (inclusive) bound of the WPR2 region. 89 89 pub(crate) fn lower_bound(self) -> u64 { 90 - (self.lo_val() as u64) << 12 90 + u64::from(self.lo_val()) << 12 91 91 } 92 92 } 93 93 ··· 100 100 /// 101 101 /// A value of zero means the WPR2 region is not set. 102 102 pub(crate) fn higher_bound(self) -> u64 { 103 - (self.hi_val() as u64) << 12 103 + u64::from(self.hi_val()) << 12 104 104 } 105 105 } 106 106 ··· 158 158 /// Returns the base address of the VGA workspace, or `None` if none exists. 159 159 pub(crate) fn vga_workspace_addr(self) -> Option<u64> { 160 160 if self.status_valid() { 161 - Some((self.addr() as u64) << 16) 161 + Some(u64::from(self.addr()) << 16) 162 162 } else { 163 163 None 164 164 }
+4 -4
drivers/gpu/nova-core/vbios.rs
··· 494 494 if data.len() >= 30 { 495 495 // Read size_of_block at offset 0x1A. 496 496 size_of_block = Some( 497 - (data[29] as u32) << 24 498 - | (data[28] as u32) << 16 499 - | (data[27] as u32) << 8 500 - | (data[26] as u32), 497 + u32::from(data[29]) << 24 498 + | u32::from(data[28]) << 16 499 + | u32::from(data[27]) << 8 500 + | u32::from(data[26]), 501 501 ); 502 502 } 503 503