162306a36Sopenharmony_cii.MX CPUFreq-DT OPP bindings
262306a36Sopenharmony_ci================================
362306a36Sopenharmony_ci
462306a36Sopenharmony_ciCertain i.MX SoCs support different OPPs depending on the "market segment" and
562306a36Sopenharmony_ci"speed grading" value which are written in fuses. These bits are combined with
662306a36Sopenharmony_cithe opp-supported-hw values for each OPP to check if the OPP is allowed.
762306a36Sopenharmony_ci
862306a36Sopenharmony_ciRequired properties:
962306a36Sopenharmony_ci--------------------
1062306a36Sopenharmony_ci
1162306a36Sopenharmony_ciFor each opp entry in 'operating-points-v2' table:
1262306a36Sopenharmony_ci- opp-supported-hw: Two bitmaps indicating:
1362306a36Sopenharmony_ci  - Supported speed grade mask
1462306a36Sopenharmony_ci  - Supported market segment mask
1562306a36Sopenharmony_ci    0: Consumer
1662306a36Sopenharmony_ci    1: Extended Consumer
1762306a36Sopenharmony_ci    2: Industrial
1862306a36Sopenharmony_ci    3: Automotive
1962306a36Sopenharmony_ci
2062306a36Sopenharmony_ciExample:
2162306a36Sopenharmony_ci--------
2262306a36Sopenharmony_ci
2362306a36Sopenharmony_ciopp_table {
2462306a36Sopenharmony_ci	compatible = "operating-points-v2";
2562306a36Sopenharmony_ci	opp-1000000000 {
2662306a36Sopenharmony_ci		opp-hz = /bits/ 64 <1000000000>;
2762306a36Sopenharmony_ci		/* grade >= 0, consumer only */
2862306a36Sopenharmony_ci		opp-supported-hw = <0xf>, <0x3>;
2962306a36Sopenharmony_ci	};
3062306a36Sopenharmony_ci
3162306a36Sopenharmony_ci	opp-1300000000 {
3262306a36Sopenharmony_ci		opp-hz = /bits/ 64 <1300000000>;
3362306a36Sopenharmony_ci		opp-microvolt = <1000000>;
3462306a36Sopenharmony_ci		/* grade >= 1, all segments */
3562306a36Sopenharmony_ci		opp-supported-hw = <0xe>, <0x7>;
3662306a36Sopenharmony_ci	};
3762306a36Sopenharmony_ci}
38