On 27/04/2022 11:28, allen-kh.cheng wrote: > Hi Krzysztof, > > On Tue, 2022-04-26 at 12:14 +0200, Krzysztof Kozlowski wrote: >> On 26/04/2022 12:02, allen-kh.cheng wrote: >>> Hi Krzysztof, >>> >>> On Tue, 2022-04-26 at 08:31 +0200, Krzysztof Kozlowski wrote: >>>> On 26/04/2022 08:23, allen-kh.cheng wrote: >>>>>>> +properties: >>>>>>> + compatible: >>>>>>> + oneOf: >>>>>>> + - enum: >>>>>>> + - mediatek,mt8173-efuse >>>>>>> + - mediatek,efuse >>>>>> >>>>>> Still no changes... >>>>>> >>>>> >>>>> I just want to confirm again. >>>>> >>>>> "Generic compatibles should not be used standalone" >>>>> >>>>> It seems we should remove mediatek,efuse and keep >>>>> "mediatek,mt8173- >>>>> efuse"in binding. have I got that right? >>>> >>>> You should comment for which chipsets this compatible is and add >>>> a >>>> deprecated:true. In such case it cannot be part of enum but >>>> separate >>>> item in this oneOf. >>>> >>>> >>>> Best regards, >>>> Krzysztof >>> >>> Thanks for your suggestions, I would plan to send PATCHs as below, >>> >>> We have a PATCH 01 for current accepted dts >>> >>> properties: >>> compatible: >>> oneOf: >>> - enum: >>> - mediatek,efuse >>> >>> - mediatek,mt8173-efuse >>> description: Only mt8173-efuse >>> with generic fallback should be used >>> - items: >>> - enum: >>> >>> - mediatek,mt7622-efuse >>> ... >>> - const: mediatek,efuse >>> >>> Then add PATCH 02 to deprecate it >>> >>> properties: >>> compatible: >>> oneOf: >>> - enum: >>> - mediatek,efuse >>> - mediatek,mt8173-efuse >>> deprecated: true >>> description: The mediatek,efuse is a generic fallback for >>> other >>> Chipset. Do not use the single compatible such as mediatek,efuse >>> or mediatek,mt8173-efuse. It is deprecated. >>> - items: >>> - enum: >>> - mediatek,mt7622-efuse >>> ... >>> - const: mediatek,efuse >>> >>> >>> PATCH 03 for 8173 >>> >>> update mt8173.dtsi >>> >>> change compatible from "mediatek,mt8173-efuse" to "mediatek,mt8173- >>> efuse", "mediatek,efuse"; >>> >>> >>> Do you think it'd be okay ? >> >> The idea is correct, but as I said it cannot be part of enum, but >> separate item in oneOf. You should see an error when testing your >> patch. >> >> >> Best regards, >> Krzysztof > > I have tested > make DT_CHECKER_FLAGS=-m dt_binding_check > DT_SCHEMA_FILES=Documentation/devicetree/bindings/nvmem/mtk,efuse.yaml > > make ARCH=arm64 dtbs_check > DT_SCHEMA_FILES=Documentation/devicetree/bindings/nvmem/mtk,efuse.yaml > > Is the following correct as final version ? Almost :) > > properties: > compatible: > oneOf: > - const: mediatek,mt8173-efuse > #Don't use this in new dts files This compatible above is correct for mt8173, isn't it? > deprecated: true > - const: > mediatek,efuse > deprecated: true > description: > > Please use mediatek,efuse as fallback. Description does not match. This should be something like: "MediaTek efuse for MT8173. Deprecated, use mediatek,mt8173-efuse instead" Best regards, Krzysztof