Usually we can change the configuration of a specific hardware only when the framework of drivers for that peripheral is designed with that interaction interface, so you can do it either in the kernel or (most likey) from the userspace code, take the CAN bus document for Griffin for example, you can set the bitrate from user space by command “ip link set can0 type can bitrate 125000”, based on the fact that both the driver/middleware and application layer for socket CAN is ready for you to do that.Of course you can also change the parameters by hard coding in the driver as a hacking.