ChanServ changed the topic of #linux-msm to:
Daanct12 has joined #linux-msm
<lumag> aka_[m], I think it might be better to split single gpu.yaml into corresponding qcom,adreno-Nxx.yaml. I think DT maintainers prefer to get rid of complex if-else statements. If there is anything common, feel free to add gpu-common.yaml or qcom,adreno-common.yaml
<lumag> aka_[m], maybe krzk can suggest which approach to take
mgonzalez has quit [Remote host closed the connection]
marvin24 has joined #linux-msm
marvin24_ has quit [Ping timeout: 480 seconds]
<travmurav[m]> <konradybcio> "until "the great dts linting..." <- is "the tool"(tm) still only in the status of "we dream of it at night"?
minecrell2 has quit []
minecrell2 has joined #linux-msm
pespin has joined #linux-msm
pespin has quit []
pespin has joined #linux-msm
<konradybcio> yes
<konradybcio> we did get as far as krzk's dt preference docs in the kernel
<travmurav[m]> oh, where are those?
<travmurav[m]> konradybcio: dts-coding-style.rst I guess?
<konradybcio> yes
<travmurav[m]> I see
<travmurav[m]> cool
mripard_ is now known as mripard
Daanct12 has quit [Quit: WeeChat 4.2.1]
<aka_[m]> lumag: so adreno-common.yaml and yaml for each Gen(6 and 7) together?
<aka_[m]> I guess it will be hard to do
<aka_[m]> But i can try
<aka_[m]> seems like im like out of ideas even if
<aka_[m]> i still don't understand yaml
<konradybcio> where are you stuck?
<aka_[m]> on how even adreno-common supposed to look
<aka_[m]> if i want to split it i would need to do yaml per gen
<aka_[m]> i cannot imagine even how common yaml would even work
<aka_[m]> its not like its .h
<aka_[m]> Mali have per arch
<konradybcio> well the common one would define things like clocks, pds, reg, iommus etc
<konradybcio> then each gen could have specific values for these things
<aka_[m]> but what would be "common" ?
<aka_[m]> i mean if we have "common" do we need to mention same props per gen?
<aka_[m]> like you said lets say clocks are common but count is different per gen/soc/model
<aka_[m]> so minItems/items probably would be needed to be repeated?
<konradybcio> under "properties" you require everything that is allowed, then you specify requires entries under "required" and do per-sku specifics in allof:if:
<konradybcio> the common base will be sort of like function prototypes
<konradybcio> see bindings/opp/
<aka_[m]> im lost really lost.
<aka_[m]> For MDSS there is mdss.yaml, mdss-common.yaml and SOC-mdss.yaml
<konradybcio> yeah those are a mess
<konradybcio> don't look too hard
<aka_[m]> i guess now im going to document every single a5xx
<aka_[m]> so we have a504/a505/a506/a508/a509/a510/a512/a530/a540
<aka_[m]> bro i haven't had so much mental exercise in years
<aka_[m]> s/bro/man/
<konradybcio> it's big brain time
<lumag> aka_[m], for mdss you can skip mdss.yaml, just soc-mdss and mdss-common.
<lumag> likewise for DPU or GCC
<aka_[m]> guess its much easier to just give up
<aka_[m]> ok i don't understand it at all
<aka_[m]> and fact i need to clean tree before trying dt_bindings_check is even worse
<konradybcio> you don't, just open the file and click ctrl-s, that will make kbuild think it needs rebuilding since the timestamp changed
<konradybcio> you may be missing a properties: under allOf:
<aka_[m]> i miss fact i don't understand it at all
<aka_[m]> i guess reg-names could go into generic a5xx pattern match
<konradybcio> i think you need to add unevaluatedProperties: true and im not sure if the $ref is in the correct plate
<konradybcio> place
<konradybcio> iirc it mattered if it's before/after the allof
<aka_[m]> still the same
<aka_[m]> patternProperties sounds like it wants a5xx to be subnode
<aka_[m]> like on mdss-soc pattern prop is dpu
<aka_[m]> ok
<aka_[m]> still breaking but now it seems to respect adreno-common
<aka_[m]> oh boy
<aka_[m]> konradybcio: seems like doing $nodename seems to match against anything in example
<aka_[m]> so if someone made zap_shader gpu@mem then its going to validate zap_shader against gpu yaml
<konradybcio> the dt checker ignores labels
<lumag> aka_[m], usually no, the schema is selected via the compatible.
<lumag> Unless you nave $nodename in it
<aka_[m]> properties:
<aka_[m]> $nodename:
<aka_[m]> pattern: "^gpu@[0-9a-f]+$"
<aka_[m]> still for both i get this:... (full message at <https://matrix.org/_matrix/media/v3/download/matrix.org/BkfrUNFtBgyaUdPvVMQRbXvl>)
<lumag> aka_[m], if that's your gpu-common, add select: false
<aka_[m]> had it and no difference
<aka_[m]> kanged from mdss-common
<aka_[m]> if anyone has some idea im open for receiving help
<aka_[m]> what kind of wizard are u?
<lumag> btw, if you are splitting the schema, it makes sense to add one file per family / group of nodes, removing ifs
<lumag> e.g. qcom,adreno-306.yaml, qcom,adreno-330.yaml (which also includes 305.18), etc.
<aka_[m]> so it ends with common,gen,shared family?
<aka_[m]> its so confusing
<aka_[m]> huh it almost seems to be now working
<aka_[m]> i only have wrong required on common
<aka_[m]> because a6xx uses gmu
<aka_[m]> well if you say so i will split it tomorrow
<aka_[m]> not like im going to send any series before saturday
pespin has quit [Remote host closed the connection]