Merge tag 'erofs-for-5.16-rc1-fixes' of git://git.kernel.org/pub/scm/linux/kernel...
[linux-2.6-microblaze.git] / drivers / scsi / ibmvscsi_tgt / ibmvscsi_tgt.c
index 10b6c6d..61f06f6 100644 (file)
@@ -3948,41 +3948,16 @@ static struct configfs_attribute *ibmvscsis_wwn_attrs[] = {
        NULL,
 };
 
-static ssize_t ibmvscsis_tpg_enable_show(struct config_item *item,
-                                        char *page)
-{
-       struct se_portal_group *se_tpg = to_tpg(item);
-       struct ibmvscsis_tport *tport = container_of(se_tpg,
-                                                    struct ibmvscsis_tport,
-                                                    se_tpg);
 
-       return snprintf(page, PAGE_SIZE, "%d\n", (tport->enabled) ? 1 : 0);
-}
-
-static ssize_t ibmvscsis_tpg_enable_store(struct config_item *item,
-                                         const char *page, size_t count)
+static int ibmvscsis_enable_tpg(struct se_portal_group *se_tpg, bool enable)
 {
-       struct se_portal_group *se_tpg = to_tpg(item);
        struct ibmvscsis_tport *tport = container_of(se_tpg,
                                                     struct ibmvscsis_tport,
                                                     se_tpg);
        struct scsi_info *vscsi = container_of(tport, struct scsi_info, tport);
-       unsigned long tmp;
-       int rc;
        long lrc;
 
-       rc = kstrtoul(page, 0, &tmp);
-       if (rc < 0) {
-               dev_err(&vscsi->dev, "Unable to extract srpt_tpg_store_enable\n");
-               return -EINVAL;
-       }
-
-       if ((tmp != 0) && (tmp != 1)) {
-               dev_err(&vscsi->dev, "Illegal value for srpt_tpg_store_enable\n");
-               return -EINVAL;
-       }
-
-       if (tmp) {
+       if (enable) {
                spin_lock_bh(&vscsi->intr_lock);
                tport->enabled = true;
                lrc = ibmvscsis_enable_change_state(vscsi);
@@ -3998,17 +3973,8 @@ static ssize_t ibmvscsis_tpg_enable_store(struct config_item *item,
                spin_unlock_bh(&vscsi->intr_lock);
        }
 
-       dev_dbg(&vscsi->dev, "tpg_enable_store, tmp %ld, state %d\n", tmp,
-               vscsi->state);
-
-       return count;
+       return 0;
 }
-CONFIGFS_ATTR(ibmvscsis_tpg_, enable);
-
-static struct configfs_attribute *ibmvscsis_tpg_attrs[] = {
-       &ibmvscsis_tpg_attr_enable,
-       NULL,
-};
 
 static const struct target_core_fabric_ops ibmvscsis_ops = {
        .module                         = THIS_MODULE,
@@ -4038,10 +4004,10 @@ static const struct target_core_fabric_ops ibmvscsis_ops = {
        .fabric_make_wwn                = ibmvscsis_make_tport,
        .fabric_drop_wwn                = ibmvscsis_drop_tport,
        .fabric_make_tpg                = ibmvscsis_make_tpg,
+       .fabric_enable_tpg              = ibmvscsis_enable_tpg,
        .fabric_drop_tpg                = ibmvscsis_drop_tpg,
 
        .tfc_wwn_attrs                  = ibmvscsis_wwn_attrs,
-       .tfc_tpg_base_attrs             = ibmvscsis_tpg_attrs,
 };
 
 static void ibmvscsis_dev_release(struct device *dev) {};