OCS2-MICRON-WTB-PRESET .BL = 16, .tRFCpb = 140, .tRFCab = 280, .tRAS = (uint32_t)MAX(42.0, 3 * C.nCK_mariko), .tRPpb = 18, .tRPab = 21, .tRC = C.tRAS + C.tRPab, .tDQSCK_min = 1.5, .tDQSCK_max = 3.5, .tWPRE = 2 * C.nCK_mariko, .tRPST = 1.5 * C.nCK_mariko, .tDQSS_max = 1.25 - ((60 - 30) / C.tCK_avg_m), .tDQS2DQ_max = 0.8, .tDQSQ = 0.18, .tWTR = (uint32_t)MAX(10.0, 8 * C.nCK_mariko), .tRTP = C.nCK_mariko * C.tCK_avg_m, // Cannot find concrete value for this timing .tWR = (uint32_t)MAX(10.0, 4 * C.nCK_mariko), .tR2REF = 8, // Try 16, 8 or 9 × 2 × 8 or 16 .tRCD = 20, // Cannot find concrete value for this timing .tRRD = 10, // Cannot find concrete value for this timing .tREFpb = 488, .tXP = MAX(7.5, 5 * C.nCK_mariko), .tCMDCKE = MAX(1.75, 3 * C.nCK_mariko), .tMRWCKEL = (uint32_t)MAX(14.0, 10 * C.nCK_mariko), .tCKELCS = MAX(5.0, 5 * C.nCK_mariko), .tCSCKEH = 1.75, .tXSR = MAX(C.tRFCpb + 7.5, 5 * C.nCK_mariko), .tCKE = MAX(7.5, 4 * C.nCK_mariko), .tSR = (uint32_t)MAX(15.0, 3 * C.nCK_mariko), .tFAW = (uint32_t)(4 * C.tCK_avg_m), .tCKCKEH = MAX(1.75, 3 * C.nCK_mariko), .WL = 14, .RL = 32,