static DEVICE_ATTR(tm_timeout, S_IRUGO|S_IWUSR, bnx2fc_tm_timeout_show,
        bnx2fc_tm_timeout_store);
 
-static struct device_attribute *bnx2fc_host_attrs[] = {
-       &dev_attr_tm_timeout,
+static struct attribute *bnx2fc_host_attrs[] = {
+       &dev_attr_tm_timeout.attr,
        NULL,
 };
 
+ATTRIBUTE_GROUPS(bnx2fc_host);
+
 /*
  * scsi_host_template structure used while registering with SCSI-ml
  */
        .max_sectors            = 0x3fbf,
        .track_queue_depth      = 1,
        .slave_configure        = bnx2fc_slave_configure,
-       .shost_attrs            = bnx2fc_host_attrs,
+       .shost_groups           = bnx2fc_host_groups,
 };
 
 static struct libfc_function_template bnx2fc_libfc_fcn_templ = {