RyzenAdj

Struct RyzenAdj 

Source
pub struct RyzenAdj { /* private fields */ }
Expand description

Struct holding access to an open instance of ryzenadj

Implementations§

Source§

impl RyzenAdj

Source

pub fn new() -> RyzenAdjResult<Self>

Returns a new RyzenAdj instance

Source

pub fn refresh(&self) -> RyzenAdjResult<()>

Refresh current readed values from the CPU

Source

pub fn get_apu_skin_temp_limit(&self) -> RyzenAdjResult<f32>

Gets the APU skin temperature limit

Source

pub fn get_apu_skin_temp_value(&self) -> RyzenAdjResult<f32>

Gets the APU skin temperature value

Source

pub fn get_apu_slow_limit(&self) -> RyzenAdjResult<f32>

Gets the APU slow limit

Source

pub fn get_apu_slow_value(&self) -> RyzenAdjResult<f32>

Gets the APU slow value

Source

pub fn get_bios_if_ver(&self) -> RyzenAdjResult<i32>

Gets bios ver

Source

pub fn get_cclk_busy_value(&self) -> RyzenAdjResult<f32>

Gets cclk busy value

Source

pub fn get_cclk_setpoint(&self) -> RyzenAdjResult<f32>

Gets cclk setpoint

Source

pub fn get_core_clk(&self, core: u32) -> RyzenAdjResult<f32>

Gets current core clk

Source

pub fn get_core_power(&self, core: u32) -> RyzenAdjResult<f32>

Gets current core power

Source

pub fn get_core_temp(&self, core: u32) -> RyzenAdjResult<f32>

Gets current core temp

Source

pub fn get_core_volt(&self, core: u32) -> RyzenAdjResult<f32>

Gets current core volt

Source

pub fn get_cpu_family(&self) -> RyzenAdjResult<RyzenFamily>

Gets the cpu family

Source

pub fn get_dgpu_skin_temp_limit(&self) -> RyzenAdjResult<f32>

Gets the dgpu skin temp limit

Source

pub fn get_dgpu_skin_temp_value(&self) -> RyzenAdjResult<f32>

Gets the dgpu skin temp value

Source

pub fn get_fast_limit(&self) -> RyzenAdjResult<f32>

Gets the fast limit

Source

pub fn get_fast_value(&self) -> RyzenAdjResult<f32>

Gets the fast value

Source

pub fn get_fclk(&self) -> RyzenAdjResult<f32>

Gets fclk

Source

pub fn get_gfx_temp(&self) -> RyzenAdjResult<f32>

Gets gfx tmp

Source

pub fn get_gfx_clk(&self) -> RyzenAdjResult<f32>

Gets gfx clk

Source

pub fn get_gfx_volt(&self) -> RyzenAdjResult<f32>

Gets gfx volt

Source

pub fn get_l3_clk(&self) -> RyzenAdjResult<f32>

Gets l3 cache clk

Source

pub fn get_l3_logic(&self) -> RyzenAdjResult<f32>

Gets l3 logic

Source

pub fn get_l3_temp(&self) -> RyzenAdjResult<f32>

Gets l3 temp

Source

pub fn get_l3_vddm(&self) -> RyzenAdjResult<f32>

Gets l3 vddm

Source

pub fn get_mem_clk(&self) -> RyzenAdjResult<f32>

Gets mem clk

Source

pub fn get_psi0_current(&self) -> RyzenAdjResult<f32>

Gets psi0 current

Source

pub fn get_psi0soc_current(&self) -> RyzenAdjResult<f32>

Gets psi0soc current

Source

pub fn get_slow_limit(&self) -> RyzenAdjResult<f32>

Gets slow limit

Source

pub fn get_slow_time(&self) -> RyzenAdjResult<f32>

Gets slow time

Source

pub fn get_slow_value(&self) -> RyzenAdjResult<f32>

Gets slow value

Source

pub fn get_soc_power(&self) -> RyzenAdjResult<f32>

Gets soc power

Source

pub fn get_soc_volt(&self) -> RyzenAdjResult<f32>

Gets soc voltage

Source

pub fn get_socket_power(&self) -> RyzenAdjResult<f32>

Gets socket power

Source

pub fn get_stapm_limit(&self) -> RyzenAdjResult<f32>

Gets stamp limit

Source

pub fn get_stapm_time(&self) -> RyzenAdjResult<f32>

Gets stamp time

Source

pub fn get_stapm_value(&self) -> RyzenAdjResult<f32>

Gets stamp value

Source

pub fn get_tctl_temp(&self) -> RyzenAdjResult<f32>

Gets tctl temp

Source

pub fn get_tctl_temp_value(&self) -> RyzenAdjResult<f32>

Gets tctl temp value

Source

pub fn get_vrm_current(&self) -> RyzenAdjResult<f32>

Gets vrm current

Source

pub fn get_vrm_current_value(&self) -> RyzenAdjResult<f32>

Gets vrm current value

Source

pub fn get_vrmmax_current(&self) -> RyzenAdjResult<f32>

Gets vrmmax current

Source

pub fn get_vrmmax_current_value(&self) -> RyzenAdjResult<f32>

Gets vrmmax current value

Source

pub fn get_vrmsoc_current(&self) -> RyzenAdjResult<f32>

Gets vrmsoc current

Source

pub fn get_vrmsoc_current_value(&self) -> RyzenAdjResult<f32>

Gets vrmsoc current value

Source

pub fn get_vrmsocmax_current(&self) -> RyzenAdjResult<f32>

Gets vrmsocmax current

Source

pub fn get_vrmsocmax_current_value(&self) -> RyzenAdjResult<f32>

Gets vrmsocmax current value

Source

pub fn set_apu_skin_temp_limit(&self, value: u32) -> RyzenAdjResult<()>

Sets the apu skin temp limit

Source

pub fn set_apu_slow_limit(&self, value: u32) -> RyzenAdjResult<()>

Sets the apu slow limit

Source

pub unsafe fn set_unsafe_coall(&self, value: u32) -> RyzenAdjResult<()>

Sets the all core curve optimiser

Calling this function with a wrong value might crash you system those marking it as unsafe

§Safety
  • value needs to be in proper range, the base of this value is 0x100000 and can go -/+ 30 decimal
Source

pub unsafe fn set_unsafe_cogfx(&self, value: u32) -> RyzenAdjResult<()>

Sets the igpu curve optimiser

Calling this function with a wrong value might crash you system those marking it as unsafe

§Safety
  • value needs to be in proper range, the base of this value is 0x100000 and can go -/+ 30 decimal
Source

pub unsafe fn set_unsafe_coper(&self, value: u32) -> RyzenAdjResult<()>

Sets the per core curve optimiser

Calling this function with a wrong value might crash you system those marking it as unsafe

§Safety
  • value needs to be in proper range, the base of this value is 0x100000 the formula for per core Curve Optimizer (on a single CCD mobile APU) is * 0x100000 + ((0x100000 + ) & 0xFFFFF). for example to set -10 on core no.2 and -5 on core no.3 it’s:
Source

pub fn set_coall(&self, value: i32) -> RyzenAdjResult<()>

Sets the all core curve optimiser

Source

pub fn set_coper(&self, core: u32, value: i32) -> RyzenAdjResult<()>

Sets the per core curve optimiser

Source

pub fn set_dgpu_skin_temp_limit(&self, value: u32) -> RyzenAdjResult<()>

Sets the dgpu skin temp limit

Source

pub fn set_enable_oc(&self) -> RyzenAdjResult<()>

Enable overclock (Renoir and up Only)

Source

pub fn set_disable_oc(&self) -> RyzenAdjResult<()>

Disable overclock (Renoir and up Only)

Source

pub fn set_fast_limit(&self, value: u32) -> RyzenAdjResult<()>

Sets the fast limit

Source

pub fn set_gfx_clk(&self, value: u32) -> RyzenAdjResult<()>

Sets the gfx clk

Source

pub fn set_max_fclk_freq(&self, value: u32) -> RyzenAdjResult<()>

Sets maximum Transmission (CPU-GPU) Frequency

Source

pub fn set_max_gfxclk_freq(&self, value: u32) -> RyzenAdjResult<()>

Sets max gfxclk frequency

Source

pub fn set_max_lclk(&self, value: u32) -> RyzenAdjResult<()>

Sets the max lclk

Source

pub fn set_max_performance(&self) -> RyzenAdjResult<()>

Sets max perfomence mode

Source

pub fn set_max_socclk_freq(&self, value: u32) -> RyzenAdjResult<()>

Sets max socclk freq

Source

pub fn set_max_vcn(&self, value: u32) -> RyzenAdjResult<()>

Sets maximum Video Core Next freq

Source

pub fn set_min_fclk_freq(&self, value: u32) -> RyzenAdjResult<()>

Sets minimum Transmission (CPU-GPU) Frequency (MHz)

Source

pub fn set_min_gfxclk_freq(&self, value: u32) -> RyzenAdjResult<()>

Sets min gfxclk frequency

Source

pub fn set_min_lclk(&self, value: u32) -> RyzenAdjResult<()>

Sets min lclk

Source

pub fn set_min_socclk_freq(&self, value: u32) -> RyzenAdjResult<()>

Sets min socclk freq

Source

pub fn set_min_vcn(&self, value: u32) -> RyzenAdjResult<()>

Sets min Video Core Next freq

Source

pub fn set_oc_clk(&self, value: u32) -> RyzenAdjResult<()>

Sets forced Core Clock Speed in MHz (Renoir and up Only)

Source

pub fn set_oc_volt(&self, value: u32) -> RyzenAdjResult<()>

Sets forced Core VID: Must follow this calcuation (1.55 - [VID you want to set e.g. 1.25 for 1.25v]) / 0.00625 (Renoir and up Only)

Source

pub fn set_per_core_oc_clk(&self, value: u32) -> RyzenAdjResult<()>

Sets forced per Core Clock Speed in MHz (Renoir and up Only)

Source

pub fn set_power_saving(&self) -> RyzenAdjResult<()>

Sets power saving mode

Source

pub fn set_prochot_deassertion_ramp(&self, value: u32) -> RyzenAdjResult<()>

Sets Ramp Time After Prochot is Deasserted: limit power based on value, higher values does apply tighter limits after prochot is over

Source

pub fn set_psi0_current(&self, value: u32) -> RyzenAdjResult<()>

Sets PSI0 VDD Current Limit (mA)

Source

pub fn set_psi0soc_current(&self, value: u32) -> RyzenAdjResult<()>

Sets PSI0 SoC Current Limit (mA)

Source

pub fn set_psi3cpu_current(&self, value: u32) -> RyzenAdjResult<()>

Sets PSI3 CPU Current Limit (mA)

Source

pub fn set_psi3gfx_current(&self, value: u32) -> RyzenAdjResult<()>

Sets PSI3 GFX Current Limit (mA)

Source

pub fn set_skin_temp_power_limit(&self, value: u32) -> RyzenAdjResult<()>

Sets Skin Temperature Power Limit (mW)

Source

pub fn set_slow_limit(&self, value: u32) -> RyzenAdjResult<()>

Sets Average Power Limit - PPT LIMIT SLOW (mW)

Source

pub fn set_slow_time(&self, value: u32) -> RyzenAdjResult<()>

Sets Slow PPT Constant Time (s)

Source

pub fn set_stapm_limit(&self, value: u32) -> RyzenAdjResult<()>

Sets Sustained Power Limit - STAPM LIMIT (mW)

Source

pub fn set_stapm_time(&self, value: u32) -> RyzenAdjResult<()>

Sets STAPM constant time (s)

Source

pub fn set_tctl_temp(&self, value: u32) -> RyzenAdjResult<()>

Sets Tctl Temperature Limit (degree C)

Source

pub fn set_vrm_current(&self, value: u32) -> RyzenAdjResult<()>

Sets VRM Current Limit - TDC LIMIT VDD (mA)

Source

pub fn set_vrmcvip_current(&self, value: u32) -> RyzenAdjResult<()>

Sets VRM CVIP Current Limit - TDC LIMIT CVIP (mA)

Source

pub fn set_vrmgfx_current(&self, value: u32) -> RyzenAdjResult<()>

Sets VRM GFX Current Limit - TDC LIMIT GFX (mA)

Source

pub fn set_vrmgfxmax_current(&self, value: u32) -> RyzenAdjResult<()>

Sets VRM GFX Maximum Current Limit - EDC LIMIT GFX (mA)

Source

pub fn set_vrmmax_current(&self, value: u32) -> RyzenAdjResult<()>

Sets VRM Maximum Current Limit - EDC LIMIT VDD (mA)

Source

pub fn set_vrmsoc_current(&self, value: u32) -> RyzenAdjResult<()>

Sets VRM SoC Current Limit - TDC LIMIT SoC (mA)

Source

pub fn set_vrmsocmax_current(&self, value: u32) -> RyzenAdjResult<()>

Sets VRM SoC Maximum Current Limit - EDC LIMIT SoC (mA)

Trait Implementations§

Source§

impl Drop for RyzenAdj

Source§

fn drop(&mut self)

Executes the destructor for this type. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.