[dv] update dv template to also include derived clocks

Signed-off-by: Timothy Chen <timothytim@google.com>

[dv, sw] DV fixes for clock division

Signed-off-by: Timothy Chen <timothytim@google.com>
diff --git a/hw/top_earlgrey/data/tb__xbar_connect.sv.tpl b/hw/top_earlgrey/data/tb__xbar_connect.sv.tpl
index 896b14b..abdd408 100644
--- a/hw/top_earlgrey/data/tb__xbar_connect.sv.tpl
+++ b/hw/top_earlgrey/data/tb__xbar_connect.sv.tpl
@@ -16,7 +16,7 @@
     clk_src[clk] = src
 
 clk_freq = OrderedDict()
-for clock in top["clocks"]["srcs"]:
+for clock in top["clocks"]["srcs"] + top["clocks"]["derived_srcs"]:
   if clock["name"] in clk_src.values():
     clk_freq[clock["name"]] = clock["freq"]
 
diff --git a/hw/top_earlgrey/dv/env/chip_env_cfg.sv b/hw/top_earlgrey/dv/env/chip_env_cfg.sv
index 9645d10..e51ee6e 100644
--- a/hw/top_earlgrey/dv/env/chip_env_cfg.sv
+++ b/hw/top_earlgrey/dv/env/chip_env_cfg.sv
@@ -7,7 +7,7 @@
   // Testbench settings
   bit                 stub_cpu;
   bit                 en_uart_logger;
-  int                 uart_baud_rate = uart_agent_pkg::BaudRate2Mbps;
+  int                 uart_baud_rate = uart_agent_pkg::BaudRate1Mbps;
   bit                 use_gpio_for_sw_test_status;
   bit                 initialize_ram;
 
diff --git a/sw/device/lib/arch/device_sim_dv.c b/sw/device/lib/arch/device_sim_dv.c
index 5b8c147..8bcac67 100644
--- a/sw/device/lib/arch/device_sim_dv.c
+++ b/sw/device/lib/arch/device_sim_dv.c
@@ -13,13 +13,13 @@
 // TODO: DV testbench completely randomizes these. Need to add code to
 // retrieve these from a preloaded memory location set by the testbench.
 
-const uint64_t kClockFreqCpuHz = 50 * 1000 * 1000;  // 50MHz
+const uint64_t kClockFreqCpuHz = 100 * 1000 * 1000;  // 100MHz
 
-const uint64_t kClockFreqPeripheralHz = 50 * 1000 * 1000;  // 50MHz
+const uint64_t kClockFreqPeripheralHz = 24 * 1000 * 1000;  // 24MHz
 
 const uint64_t kClockFreqUsbHz = 48 * 1000 * 1000;  // 48MHz
 
-const uint64_t kUartBaudrate = 2 * (1 << 20);  // 2Mib/s
+const uint64_t kUartBaudrate = 1 << 20;  // 1Mbps
 
 // No Device Stop Address in our DV simulator.
 const uintptr_t kDeviceStopAddress = 0;