On 18/05/2023 11:05, Varadarajan Narayanan wrote: > On Thu, May 18, 2023 at 09:09:12AM +0200, Krzysztof Kozlowski wrote: >> On 18/05/2023 07:40, Varadarajan Narayanan wrote: >>> On Wed, May 17, 2023 at 09:00:49AM +0200, Krzysztof Kozlowski wrote: >>>> On 17/05/2023 07:57, Varadarajan Narayanan wrote: >>>>> Part-1 is adding the 'const' entries at the beginning i.e. >>>>> >>>>> + - const: qcom,tsens-v0_1 >>>>> + - const: qcom,tsens-v1 >>>>> + - const: qcom,tsens-v2 >>>>> + - const: qcom,ipq8074-tsens >>>>> >>>>> Part-2 is changing from one valid syntax to another i.e. >>>>> >>>>> + items: >>>>> + - enum: >>>>> + - qcom,ipq9574-tsens >>>>> + - const: qcom,ipq8074-tsens >>>>> >>>>> Without both of the above changes, either or both of dtbs_check >>>>> & dt_binding_check fails. So, it is not possible to just add the >>>>> "valid hunk" (part-2) alone. >>>> >>>> Of course it is. All schema files work like that... >>>>> >>>>> If having both part-1 and part-2 in the same patch is not >>>>> acceptable, shall I split them into two patches? Please let me know. >>>> >>>> No, hunk one is not justified. >>> >>> For the other compatibles, the enum entries and const/fallback >>> entries are different. For the 9574 & 8074 case, we want to have >>> qcom,ipq8074-tsens as both enum and const/fallback entry. Hence, >>> if we don't have the first hunk, dtbs_check fails for 8074 >>> related dtbs >>> >>> ipq8074-hk01.dtb: thermal-sensor@4a9000: compatible: 'oneOf' condition >>> ['qcom,ipq8074-tsens'] is too short >> >> Why? It is already there. Open the file and you will see that this is >> already covered. > > I guess dtbs_check doesn't like the same value being a const and > a oneof entry. I don't understand. > Have attached the file, please see if something is > not in order. I don't know what changed there. Please work on patches. > >> If you remove it, then yes, you will see errors and the answer is: do >> not remove it. > > I haven't removed it. You did. Look: - description: v2 of TSENS with combined interrupt - enum: - - qcom,ipq8074-tsens The first character in the diff (-) means removal. > For this patch, ipq8074-tsens changed from > being an oneof enum entry to a const entry. Probably, that is why > dtbs_check is giving these errors. You removed the entry which you should not have touched. > >>> ipq8074-hk10-c2.dtb: thermal-sensor@4a9000: compatible: 'oneOf' condition >>> ['qcom,ipq8074-tsens'] is too short >>> >>> ipq8074-hk10-c1.dtb: thermal-sensor@4a9000: compatible: 'oneOf' condition >>> ['qcom,ipq8074-tsens'] is too short >>> >>> I'm not sure of the correct solution. Having the first hunk >>> solves the above dtbs_check errors, so went with it. I'm able to >>> avoid dtbs_check errors with just one entry in the first hunk. >> >> You made multiple changes in one patch which is not correct. Your goal >> is to add only one change - ipq9574 followed by ipq8074. Add this one. >> Don't touch others. > > But that breaks dtbs_check. All other cases, hundreds of other binding files, do not have problem. Only this one "breaks dtbs_check". No, it does not. Whatever is broken is result of your removal of unrelated pieces. > >>> + - const: qcom,ipq8074-tsens >>> >>> Please let me know if there is a better way to resolve this or we >>> can have just the 8074 entry in the first hunk. >> >> You only need to add new item on the oneOf list: >> - enum >> - ipq9574 >> - const: ipq8074 > > The "['qcom,ipq8074-tsens'] is too short" errors were generated > with the above snippet only. Please see the attachment It's not true. The error you see is result because you removed something you should not. I did not ask you to remove anything. So repeating - "add new item". Adding is not "removal and adding". Adding is just "adding". Best regards, Krzysztof