crypto: nx - remove pSeries NX 'status' field

Remove the 'status' field from the pSeries NX driver data.

The 'status' field isn't used by the driver at all; it simply checks the
devicetree status node at initialization, and returns success if 'okay'
and failure otherwise.

Signed-off-by: Dan Streetman <ddstreet@ieee.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
Dan Streetman 2015-07-22 14:26:32 -04:00 committed by Herbert Xu
parent 039af9675f
commit 90fd73f912

View file

@ -99,11 +99,6 @@ struct nx842_workmem {
#define NX842_HW_PAGE_SIZE (4096) #define NX842_HW_PAGE_SIZE (4096)
#define NX842_HW_PAGE_MASK (~(NX842_HW_PAGE_SIZE-1)) #define NX842_HW_PAGE_MASK (~(NX842_HW_PAGE_SIZE-1))
enum nx842_status {
UNAVAILABLE,
AVAILABLE
};
struct ibm_nx842_counters { struct ibm_nx842_counters {
atomic64_t comp_complete; atomic64_t comp_complete;
atomic64_t comp_failed; atomic64_t comp_failed;
@ -121,7 +116,6 @@ static struct nx842_devdata {
unsigned int max_sg_len; unsigned int max_sg_len;
unsigned int max_sync_size; unsigned int max_sync_size;
unsigned int max_sync_sg; unsigned int max_sync_sg;
enum nx842_status status;
} __rcu *devdata; } __rcu *devdata;
static DEFINE_SPINLOCK(devdata_mutex); static DEFINE_SPINLOCK(devdata_mutex);
@ -537,48 +531,36 @@ static int nx842_OF_set_defaults(struct nx842_devdata *devdata)
devdata->max_sync_size = 0; devdata->max_sync_size = 0;
devdata->max_sync_sg = 0; devdata->max_sync_sg = 0;
devdata->max_sg_len = 0; devdata->max_sg_len = 0;
devdata->status = UNAVAILABLE;
return 0; return 0;
} else } else
return -ENOENT; return -ENOENT;
} }
/** /**
* nx842_OF_upd_status -- Update the device info from OF status prop * nx842_OF_upd_status -- Check the device info from OF status prop
* *
* The status property indicates if the accelerator is enabled. If the * The status property indicates if the accelerator is enabled. If the
* device is in the OF tree it indicates that the hardware is present. * device is in the OF tree it indicates that the hardware is present.
* The status field indicates if the device is enabled when the status * The status field indicates if the device is enabled when the status
* is 'okay'. Otherwise the device driver will be disabled. * is 'okay'. Otherwise the device driver will be disabled.
* *
* @devdata - struct nx842_devdata to update
* @prop - struct property point containing the maxsyncop for the update * @prop - struct property point containing the maxsyncop for the update
* *
* Returns: * Returns:
* 0 - Device is available * 0 - Device is available
* -ENODEV - Device is not available * -ENODEV - Device is not available
*/ */
static int nx842_OF_upd_status(struct nx842_devdata *devdata, static int nx842_OF_upd_status(struct property *prop)
struct property *prop) { {
int ret = 0;
const char *status = (const char *)prop->value; const char *status = (const char *)prop->value;
if (!strncmp(status, "okay", (size_t)prop->length)) { if (!strncmp(status, "okay", (size_t)prop->length))
devdata->status = AVAILABLE; return 0;
} else { if (!strncmp(status, "disabled", (size_t)prop->length))
/* return -ENODEV;
* Caller will log that the device is disabled, so only dev_info(devdata->dev, "%s: unknown status '%s'\n", __func__, status);
* output if there is an unexpected status.
*/
if (strncmp(status, "disabled", (size_t)prop->length)) {
dev_info(devdata->dev, "%s: status '%s' is not 'okay'\n",
__func__, status);
}
devdata->status = UNAVAILABLE;
ret = -ENODEV;
}
return ret; return -EINVAL;
} }
/** /**
@ -784,7 +766,7 @@ static int nx842_OF_upd(struct property *new_prop)
goto out; goto out;
/* Perform property updates */ /* Perform property updates */
ret = nx842_OF_upd_status(new_devdata, status); ret = nx842_OF_upd_status(status);
if (ret) if (ret)
goto error_out; goto error_out;
@ -1100,7 +1082,6 @@ static int __init nx842_pseries_init(void)
pr_err("Could not allocate memory for device data\n"); pr_err("Could not allocate memory for device data\n");
return -ENOMEM; return -ENOMEM;
} }
new_devdata->status = UNAVAILABLE;
RCU_INIT_POINTER(devdata, new_devdata); RCU_INIT_POINTER(devdata, new_devdata);
ret = vio_register_driver(&nx842_vio_driver); ret = vio_register_driver(&nx842_vio_driver);