1 use crate::fs::Dev; 2 3 #[inline] makedev(maj: u32, min: u32) -> Dev4pub(crate) fn makedev(maj: u32, min: u32) -> Dev { 5 ((u64::from(maj) & 0xffff_f000_u64) << 32) 6 | ((u64::from(maj) & 0x0000_0fff_u64) << 8) 7 | ((u64::from(min) & 0xffff_ff00_u64) << 12) 8 | (u64::from(min) & 0x0000_00ff_u64) 9 } 10 11 #[inline] major(dev: Dev) -> u3212pub(crate) fn major(dev: Dev) -> u32 { 13 (((dev >> 31 >> 1) & 0xffff_f000) | ((dev >> 8) & 0x0000_0fff)) as u32 14 } 15 16 #[inline] minor(dev: Dev) -> u3217pub(crate) fn minor(dev: Dev) -> u32 { 18 (((dev >> 12) & 0xffff_ff00) | (dev & 0x0000_00ff)) as u32 19 } 20