@@ -646,59 +646,67 @@ static void stdout_c9_log(struct telemetry_str_log_format *log_data, __u8 *log_d
646646static void stdout_c7_log (struct nvme_dev * dev , struct tcg_configuration_log * log_data )
647647{
648648 int j ;
649+ __u16 log_page_version = le16_to_cpu (log_data -> log_page_version );
649650
650651 printf ("TCG Configuration C7 Log Page Data-\n" );
651652
652- printf (" State : 0x%x\n" ,
653- log_data -> state );
654- printf (" Reserved1 : 0x " );
653+ printf (" State : 0x%x\n" ,
654+ log_data -> state );
655+ printf (" Reserved1 : " );
655656 for (j = 0 ; j < 3 ; j ++ )
656657 printf ("%d" , log_data -> rsvd1 [j ]);
657658 printf ("\n" );
658- printf (" Locking SP Activation Count : 0x%x\n" ,
659+ printf (" Locking SP Activation Count : 0x%x\n" ,
659660 log_data -> locking_sp_act_count );
660- printf (" Tper Revert Count : 0x%x\n" ,
661+ printf (" Tper Revert Count : 0x%x\n" ,
661662 log_data -> type_rev_count );
662- printf (" Locking SP Revert Count : 0x%x\n" ,
663+ printf (" Locking SP Revert Count : 0x%x\n" ,
663664 log_data -> locking_sp_rev_count );
664- printf (" Number of Locking Objects : 0x%x\n" ,
665+ printf (" Number of Locking Objects : 0x%x\n" ,
665666 log_data -> no_of_locking_obj );
666- printf (" Number of Single User Mode Locking Objects : 0x%x\n" ,
667+ printf (" Number of Single User Mode Locking Objects : 0x%x\n" ,
667668 log_data -> no_of_single_um_locking_obj );
668- printf (" Number of Range Provisioned Locking Objects : 0x%x\n" ,
669+ printf (" Number of Range Provisioned Locking Objects : 0x%x\n" ,
669670 log_data -> no_of_range_prov_locking_obj );
670- printf (" Number of Namespace Provisioned Locking Objects : 0x%x\n" ,
671+ printf (" Number of Namespace Provisioned Locking Objects : 0x%x\n" ,
671672 log_data -> no_of_ns_prov_locking_obj );
672- printf (" Number of Read Locked Locking Objects : 0x%x\n" ,
673+ printf (" Number of Read Locked Locking Objects : 0x%x\n" ,
673674 log_data -> no_of_read_lock_locking_obj );
674- printf (" Number of Write Locked Locking Objects : 0x%x\n" ,
675+ printf (" Number of Write Locked Locking Objects : 0x%x\n" ,
675676 log_data -> no_of_write_lock_locking_obj );
676- printf (" Number of Read Unlocked Locking Objects : 0x%x\n" ,
677+ printf (" Number of Read Unlocked Locking Objects : 0x%x\n" ,
677678 log_data -> no_of_read_unlock_locking_obj );
678- printf (" Number of Write Unlocked Locking Objects : 0x%x\n" ,
679+ printf (" Number of Write Unlocked Locking Objects : 0x%x\n" ,
679680 log_data -> no_of_write_unlock_locking_obj );
680- printf (" Reserved2 : 0x%x\n" ,
681- log_data -> rsvd2 );
682-
683- printf (" SID Authentication Try Count : 0x%x\n" ,
681+ printf (" Reserved2 : %x\n" ,
682+ log_data -> rsvd15 );
683+ printf (" SID Authentication Try Count : 0x%x\n" ,
684684 le32_to_cpu (log_data -> sid_auth_try_count ));
685- printf (" SID Authentication Try Limit : 0x%x\n" ,
685+ printf (" SID Authentication Try Limit : 0x%x\n" ,
686686 le32_to_cpu (log_data -> sid_auth_try_limit ));
687- printf (" Programmatic TCG Reset Count : 0x%x\n" ,
687+ printf (" Programmatic TCG Reset Count : 0x%x\n" ,
688688 le32_to_cpu (log_data -> pro_tcg_rc ));
689- printf (" Programmatic Reset Lock Count : 0x%x\n" ,
689+ printf (" Programmatic Reset Lock Count : 0x%x\n" ,
690690 le32_to_cpu (log_data -> pro_rlc ));
691- printf (" TCG Error Count : 0x%x\n" ,
691+ printf (" TCG Error Count : 0x%x\n" ,
692692 le32_to_cpu (log_data -> tcg_ec ));
693693
694- printf (" Reserved3 : 0x" );
695- for (j = 0 ; j < 458 ; j ++ )
696- printf ("%d" , log_data -> rsvd3 [j ]);
694+ if (log_page_version == 1 ) {
695+ printf (" Reserved3 : %d%d" ,
696+ * (__u8 * )& log_data -> no_of_ns_prov_locking_obj_ext ,
697+ * ((__u8 * )& log_data -> no_of_ns_prov_locking_obj_ext + 1 ));
698+ } else {
699+ printf (" Number of Namespace Provisioned Locking Objects Extended : 0x%x\n" ,
700+ le16_to_cpu (log_data -> no_of_ns_prov_locking_obj_ext ));
701+ printf (" Reserved3 : " );
702+ }
703+ for (j = 0 ; j < 456 ; j ++ )
704+ printf ("%d" , log_data -> rsvd38 [j ]);
697705 printf ("\n" );
698706
699- printf (" Log Page Version : 0x%x\n" ,
700- le16_to_cpu ( log_data -> log_page_version ) );
701- printf (" Log page GUID : 0x" );
707+ printf (" Log Page Version : 0x%x\n" ,
708+ log_page_version );
709+ printf (" Log page GUID : 0x" );
702710 for (j = GUID_LEN - 1 ; j >= 0 ; j -- )
703711 printf ("%02x" , log_data -> log_page_guid [j ]);
704712 printf ("\n" );
0 commit comments