Can a test class control the knobs in driver?

Dear All,
Is it always the case that the TOP test class can control/manage the control knobs of sequences only? I mean, I want to override/control some parameters of driver class from top test class, can this be done? If yes, how can that be done? because top test class stimulates only a sequence, so how would the control knob of driver be controlled from top test class? any guidance will be helpfull.
Thanks

Yes, I think that UVM allows to have knob anywhere in the test bench. Place uvmconfig_db set command in the test class and config_db get in the driver (any other component) class.

Here is an example on how I would implement.

class top_test extends uvm_test;
virtual function void build_phase (…);
uvm_config_db#(int)::set(this,“env.i_agent.drv”,“spi_mode”,1);
endfunction
endclass

class driver extends uvm_driver;
int spi_mode=0; // default value for the knob
virtual function void build_phase (…);
uvm_config_db#(int)::get(this,“”,“spi_mode”,spi_mode);
endfunction
endclass

Best,
Michael