robertfoss has quit [reticulum.oftc.net helix.oftc.net]
socksinspace has quit [reticulum.oftc.net helix.oftc.net]
z3ntu has quit [reticulum.oftc.net helix.oftc.net]
Newbyte has quit [reticulum.oftc.net helix.oftc.net]
flamingradian[m] has quit [reticulum.oftc.net helix.oftc.net]
minecrell[m] has quit [reticulum.oftc.net helix.oftc.net]
Tooniis[m] has quit [reticulum.oftc.net helix.oftc.net]
xtex[m] has quit [reticulum.oftc.net helix.oftc.net]
KieranBingham[m] has quit [reticulum.oftc.net helix.oftc.net]
dliviu has quit [reticulum.oftc.net helix.oftc.net]
mal has quit [reticulum.oftc.net helix.oftc.net]
socksinspace has joined #linux-msm
mal has joined #linux-msm
robertfoss has joined #linux-msm
flamingradian[m] has joined #linux-msm
KieranBingham[m] has joined #linux-msm
minecrell[m] has joined #linux-msm
<calebccff>
bryanodonoghue: thanks. I was checking the clocks with sdm845-debugcc -b cam -a while capturing (or attempting to, clocks were all on though). The thing is the rates reported by debugcc don't match at all what's in debugfs
<calebccff>
bryanodonoghue: after messing with the camcc-sdm845 driver a bit there seems to be an extra divide by 4 somewhere, I was able to get the mclk frequency to match by fiddling with the RCG but the timer clock is still 1/4 of what it should be https://p.calebs.dev/9df8d4@raw
<calebccff>
note that debugfs reports the correct rates for it
<calebccff>
it should be 270MHz but it's actually 67MHz
<calebccff>
the RCGs have the CLK_SET_PARENT_RATE flag, where the parent is the PLL
<calebccff>
the PLL postdiv even*
<calebccff>
but the set_rate cb is never called for the postdiv or the PLL itself
<calebccff>
there's a weird comment about that flag being needed specifically for PLL2_OUT_EVEN (which is what mclk0 is derived from) but it's all just odd
<calebccff>
hoping lumag has some ideas
<calebccff>
unless the div4 is a bug in debugcc /shrug
<aka_[m]>
calebccff: i wonder
<aka_[m]>
how this clock can achieve such rate
<aka_[m]>
your problem is with cam_cc_csi0phytimer_clk_src ?
<aka_[m]>
ok thats too complicated for my taste
<aka_[m]>
and i still wonder why clk code is so confusing
<aka_[m]>
there is EVEN but there is no enable reg and no enable mask
<aka_[m]>
i know it could be enabled by "reset value"
<aka_[m]>
but why don't we have .enable ops do something like .is_enabled and then if things match just not do pll->is_enabled = true or whatever