@@ -248,50 +248,48 @@ static int init_grps(struct nvm_id *nvm_id, struct nvme_nvm_id *nvme_nvm_id)
248
248
{
249
249
struct nvme_nvm_id_group * src ;
250
250
struct nvm_id_group * dst ;
251
- int i , end ;
252
-
253
- end = min_t (u32 , 4 , nvm_id -> cgrps );
254
-
255
- for (i = 0 ; i < end ; i ++ ) {
256
- src = & nvme_nvm_id -> groups [i ];
257
- dst = & nvm_id -> groups [i ];
258
-
259
- dst -> mtype = src -> mtype ;
260
- dst -> fmtype = src -> fmtype ;
261
- dst -> num_ch = src -> num_ch ;
262
- dst -> num_lun = src -> num_lun ;
263
- dst -> num_pln = src -> num_pln ;
264
-
265
- dst -> num_pg = le16_to_cpu (src -> num_pg );
266
- dst -> num_blk = le16_to_cpu (src -> num_blk );
267
- dst -> fpg_sz = le16_to_cpu (src -> fpg_sz );
268
- dst -> csecs = le16_to_cpu (src -> csecs );
269
- dst -> sos = le16_to_cpu (src -> sos );
270
-
271
- dst -> trdt = le32_to_cpu (src -> trdt );
272
- dst -> trdm = le32_to_cpu (src -> trdm );
273
- dst -> tprt = le32_to_cpu (src -> tprt );
274
- dst -> tprm = le32_to_cpu (src -> tprm );
275
- dst -> tbet = le32_to_cpu (src -> tbet );
276
- dst -> tbem = le32_to_cpu (src -> tbem );
277
- dst -> mpos = le32_to_cpu (src -> mpos );
278
- dst -> mccap = le32_to_cpu (src -> mccap );
279
-
280
- dst -> cpar = le16_to_cpu (src -> cpar );
281
-
282
- if (dst -> fmtype == NVM_ID_FMTYPE_MLC ) {
283
- memcpy (dst -> lptbl .id , src -> lptbl .id , 8 );
284
- dst -> lptbl .mlc .num_pairs =
285
- le16_to_cpu (src -> lptbl .mlc .num_pairs );
286
-
287
- if (dst -> lptbl .mlc .num_pairs > NVME_NVM_LP_MLC_PAIRS ) {
288
- pr_err ("nvm: number of MLC pairs not supported\n" );
289
- return - EINVAL ;
290
- }
291
-
292
- memcpy (dst -> lptbl .mlc .pairs , src -> lptbl .mlc .pairs ,
293
- dst -> lptbl .mlc .num_pairs );
251
+
252
+ if (nvme_nvm_id -> cgrps != 1 )
253
+ return - EINVAL ;
254
+
255
+ src = & nvme_nvm_id -> groups [0 ];
256
+ dst = & nvm_id -> grp ;
257
+
258
+ dst -> mtype = src -> mtype ;
259
+ dst -> fmtype = src -> fmtype ;
260
+ dst -> num_ch = src -> num_ch ;
261
+ dst -> num_lun = src -> num_lun ;
262
+ dst -> num_pln = src -> num_pln ;
263
+
264
+ dst -> num_pg = le16_to_cpu (src -> num_pg );
265
+ dst -> num_blk = le16_to_cpu (src -> num_blk );
266
+ dst -> fpg_sz = le16_to_cpu (src -> fpg_sz );
267
+ dst -> csecs = le16_to_cpu (src -> csecs );
268
+ dst -> sos = le16_to_cpu (src -> sos );
269
+
270
+ dst -> trdt = le32_to_cpu (src -> trdt );
271
+ dst -> trdm = le32_to_cpu (src -> trdm );
272
+ dst -> tprt = le32_to_cpu (src -> tprt );
273
+ dst -> tprm = le32_to_cpu (src -> tprm );
274
+ dst -> tbet = le32_to_cpu (src -> tbet );
275
+ dst -> tbem = le32_to_cpu (src -> tbem );
276
+ dst -> mpos = le32_to_cpu (src -> mpos );
277
+ dst -> mccap = le32_to_cpu (src -> mccap );
278
+
279
+ dst -> cpar = le16_to_cpu (src -> cpar );
280
+
281
+ if (dst -> fmtype == NVM_ID_FMTYPE_MLC ) {
282
+ memcpy (dst -> lptbl .id , src -> lptbl .id , 8 );
283
+ dst -> lptbl .mlc .num_pairs =
284
+ le16_to_cpu (src -> lptbl .mlc .num_pairs );
285
+
286
+ if (dst -> lptbl .mlc .num_pairs > NVME_NVM_LP_MLC_PAIRS ) {
287
+ pr_err ("nvm: number of MLC pairs not supported\n" );
288
+ return - EINVAL ;
294
289
}
290
+
291
+ memcpy (dst -> lptbl .mlc .pairs , src -> lptbl .mlc .pairs ,
292
+ dst -> lptbl .mlc .num_pairs );
295
293
}
296
294
297
295
return 0 ;
@@ -321,7 +319,6 @@ static int nvme_nvm_identity(struct nvm_dev *nvmdev, struct nvm_id *nvm_id)
321
319
322
320
nvm_id -> ver_id = nvme_nvm_id -> ver_id ;
323
321
nvm_id -> vmnt = nvme_nvm_id -> vmnt ;
324
- nvm_id -> cgrps = nvme_nvm_id -> cgrps ;
325
322
nvm_id -> cap = le32_to_cpu (nvme_nvm_id -> cap );
326
323
nvm_id -> dom = le32_to_cpu (nvme_nvm_id -> dom );
327
324
memcpy (& nvm_id -> ppaf , & nvme_nvm_id -> ppaf ,
@@ -622,7 +619,7 @@ static ssize_t nvm_dev_attr_show(struct device *dev,
622
619
return 0 ;
623
620
624
621
id = & ndev -> identity ;
625
- grp = & id -> groups [ 0 ] ;
622
+ grp = & id -> grp ;
626
623
attr = & dattr -> attr ;
627
624
628
625
if (strcmp (attr -> name , "version" ) == 0 ) {
0 commit comments