So, I'm confused by the mystic line of code in driver-baikalu.c:
msg.data[0] = (clk == 0) ? clk : ((clk / 10) % 20) + 2;
I decided to run some common settings. These resulting values in no way correlate, even if the controller board was accepting input:
mhz | ((clk / 10) % 20) + 2
-------------------------------
150 | 17
200 | 2
250 | 7
300 | 12
350 | 17
400 | 2
Perhaps someone smarter can enlighten me?
Also, I found that the following line seems to be leftover from an earlier generation of miner (PiZero_170605_V1.4.img):
miner->clock = msg.data[3] << 1;
But I'm not sure why they are bitwise left shifting it.