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