@@ -1017,6 +1017,11 @@ static void json_registers_nssr(__u32 nssr, struct json_object *r)
1017
1017
obj_add_uint (r , "NVM Subsystem Reset Control (NSSRC)" , nssr );
1018
1018
}
1019
1019
1020
+ static void json_registers_nssd (__u32 nssd , struct json_object * r )
1021
+ {
1022
+ obj_add_uint_nx (r , "NVM Subsystem Shutdown Control (NSSC)" , nssd );
1023
+ }
1024
+
1020
1025
static void json_registers_crto (__u32 crto , struct json_object * r )
1021
1026
{
1022
1027
obj_add_uint_x (r , "crto" , crto );
@@ -1254,6 +1259,9 @@ static void json_single_property_human(int offset, uint64_t value64, struct json
1254
1259
case NVME_REG_NSSR :
1255
1260
json_registers_nssr (value32 , r );
1256
1261
break ;
1262
+ case NVME_REG_NSSD :
1263
+ json_registers_nssd (value32 , r );
1264
+ break ;
1257
1265
case NVME_REG_CRTO :
1258
1266
json_registers_crto (value32 , r );
1259
1267
break ;
@@ -2482,6 +2490,16 @@ static void json_ctrl_registers_nssr(void *bar, struct json_object *r)
2482
2490
obj_add_int (r , "nssr" , nssr );
2483
2491
}
2484
2492
2493
+ static void json_ctrl_registers_nssd (void * bar , struct json_object * r )
2494
+ {
2495
+ uint32_t nssd = mmio_read32 (bar + NVME_REG_NSSD );
2496
+
2497
+ if (human ())
2498
+ json_registers_nssd (nssd , obj_create_array_obj (r , "nssd" ));
2499
+ else
2500
+ obj_add_int (r , "nssd" , nssd );
2501
+ }
2502
+
2485
2503
static void json_ctrl_registers_crto (void * bar , struct json_object * r )
2486
2504
{
2487
2505
uint32_t crto = mmio_read32 (bar + NVME_REG_CRTO );
@@ -2673,6 +2691,7 @@ static void json_ctrl_registers(void *bar, bool fabrics)
2673
2691
json_ctrl_registers_cc (bar , r );
2674
2692
json_ctrl_registers_csts (bar , r );
2675
2693
json_ctrl_registers_nssr (bar , r );
2694
+ json_ctrl_registers_nssd (bar , r );
2676
2695
json_ctrl_registers_crto (bar , r );
2677
2696
json_ctrl_registers_aqa (bar , r );
2678
2697
json_ctrl_registers_asq (bar , r );
0 commit comments