@@ -337,6 +337,157 @@ typedef union requested_active_quads
337
337
// End Quad State
338
338
// -----------------------------------------------------------------------------
339
339
340
+ typedef struct
341
+ {
342
+ union
343
+ {
344
+ uint64_t value ;
345
+ struct
346
+ {
347
+ uint32_t high_order ;
348
+ uint32_t low_order ;
349
+ } words ;
350
+ struct
351
+ {
352
+ uint64_t average_pstate : 8 ;
353
+ uint64_t average_frequency_pstate : 8 ;
354
+ uint64_t clip_pstate : 8 ;
355
+ uint64_t reserved : 8 ;
356
+ uint64_t vratio_inst : 16 ;
357
+ uint64_t vratio_avg : 16 ;
358
+ } fields ;
359
+ } dw0 ;
360
+ union
361
+ {
362
+ uint64_t value ;
363
+ struct
364
+ {
365
+ uint32_t high_order ;
366
+ uint32_t low_order ;
367
+ } words ;
368
+ struct
369
+ {
370
+ uint64_t idd_avg_ma : 16 ;
371
+ uint64_t ics_avg_ma : 16 ;
372
+ uint64_t idn_avg_ma : 16 ;
373
+ uint64_t iio_avg_ma : 16 ;
374
+
375
+ } fields ;
376
+ } dw1 ;
377
+ union
378
+ {
379
+ uint64_t value ;
380
+ struct
381
+ {
382
+ uint32_t high_order ;
383
+ uint32_t low_order ;
384
+ } words ;
385
+ struct
386
+ {
387
+ uint64_t vdd_avg_mv : 16 ;
388
+ uint64_t vcs_avg_mv : 16 ;
389
+ uint64_t vdn_avg_mv : 16 ;
390
+ uint64_t vio_avg_mv : 16 ;
391
+ } fields ;
392
+ } dw2 ;
393
+ union
394
+ {
395
+ uint64_t value ;
396
+ struct
397
+ {
398
+ uint32_t high_order ;
399
+ uint32_t low_order ;
400
+ } words ;
401
+ struct
402
+ {
403
+ uint64_t ocs_avg_0p01pct : 16 ;
404
+ uint64_t reserved : 48 ;
405
+ } fields ;
406
+ } dw3 ;
407
+ } pgpe_wof_values_t ;
408
+
409
+ typedef struct
410
+ {
411
+ union
412
+ {
413
+ uint64_t value ;
414
+ struct
415
+ {
416
+ uint32_t high_order ;
417
+ uint32_t low_order ;
418
+ } words ;
419
+ struct
420
+ {
421
+ uint64_t magic_word : 32 ; //ELTC
422
+ uint64_t total_log_slots : 8 ;
423
+ uint64_t reserved : 24 ;
424
+ } fields ;
425
+ } dw0 ;
426
+ union
427
+ {
428
+ uint64_t value ;
429
+ struct
430
+ {
431
+ uint32_t high_order ;
432
+ uint32_t low_order ;
433
+ } words ;
434
+ struct
435
+ {
436
+ uint64_t errlog_id : 8 ;
437
+ uint64_t errlog_src : 8 ;
438
+ uint64_t errlog_len : 16 ;
439
+ uint64_t pgpe_critical_log_address : 32 ;
440
+ } fields ;
441
+ } dw1 ;
442
+ union
443
+ {
444
+ uint64_t value ;
445
+ struct
446
+ {
447
+ uint32_t high_order ;
448
+ uint32_t low_order ;
449
+ } words ;
450
+ struct
451
+ {
452
+ uint64_t errlog_id : 8 ;
453
+ uint64_t errlog_src : 8 ;
454
+ uint64_t errlog_len : 16 ;
455
+ uint64_t pgpe_info_log_address : 32 ;
456
+ } fields ;
457
+ } dw2 ;
458
+ union
459
+ {
460
+ uint64_t value ;
461
+ struct
462
+ {
463
+ uint32_t high_order ;
464
+ uint32_t low_order ;
465
+ } words ;
466
+ struct
467
+ {
468
+ uint64_t errlog_id : 8 ;
469
+ uint64_t errlog_src : 8 ;
470
+ uint64_t errlog_len : 16 ;
471
+ uint64_t sgpe_critical_log_address : 32 ;
472
+ } fields ;
473
+ } dw3 ;
474
+ union
475
+ {
476
+ uint64_t value ;
477
+ struct
478
+ {
479
+ uint32_t high_order ;
480
+ uint32_t low_order ;
481
+ } words ;
482
+ struct
483
+ {
484
+ uint64_t errlog_id : 8 ;
485
+ uint64_t errlog_src : 8 ;
486
+ uint64_t errlog_len : 16 ;
487
+ uint64_t sgpe_info_log_address : 32 ;
488
+ } fields ;
489
+ } dw4 ;
490
+ } errlog_idx_t ;
340
491
341
492
typedef struct
342
493
{
@@ -358,8 +509,17 @@ typedef struct
358
509
///Requested Active Quads
359
510
requested_active_quads_t req_active_quads ;
360
511
361
- /// FFDC Address list
362
- Hcode_FFDC_list_t ffdc_list ;
512
+ //PGPE WOF Values
513
+ pgpe_wof_values_t pgpe_wof_values ;
514
+
515
+ //Reserved
516
+ uint64_t reserved1 ;
517
+
518
+ /// Hcode Error Log Index
519
+ errlog_idx_t errlog_idx ;
520
+
521
+ //Reserved
522
+ uint64_t reserved2 [24 ];
363
523
364
524
/// Pstate Table
365
525
OCCPstateTable_t pstate_table ;
0 commit comments