mtip32xx: Remove 'registers' and 'flags' from sysfs
This patch removes entries 'registers' and 'flags' from sysfs. Updated ABI file to reflect this change. Reported-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Asai Thambi S P <asamymuthupa@micron.com> Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
parent
9b2ea86bc9
commit
7412ff139d
|
@ -1,26 +1,5 @@
|
||||||
What: /sys/block/rssd*/registers
|
|
||||||
Date: March 2012
|
|
||||||
KernelVersion: 3.3
|
|
||||||
Contact: Asai Thambi S P <asamymuthupa@micron.com>
|
|
||||||
Description: This is a read-only file. Dumps below driver information and
|
|
||||||
hardware registers.
|
|
||||||
- S ACTive
|
|
||||||
- Command Issue
|
|
||||||
- Completed
|
|
||||||
- PORT IRQ STAT
|
|
||||||
- HOST IRQ STAT
|
|
||||||
- Allocated
|
|
||||||
- Commands in Q
|
|
||||||
|
|
||||||
What: /sys/block/rssd*/status
|
What: /sys/block/rssd*/status
|
||||||
Date: April 2012
|
Date: April 2012
|
||||||
KernelVersion: 3.4
|
KernelVersion: 3.4
|
||||||
Contact: Asai Thambi S P <asamymuthupa@micron.com>
|
Contact: Asai Thambi S P <asamymuthupa@micron.com>
|
||||||
Description: This is a read-only file. Indicates the status of the device.
|
Description: This is a read-only file. Indicates the status of the device.
|
||||||
|
|
||||||
What: /sys/block/rssd*/flags
|
|
||||||
Date: May 2012
|
|
||||||
KernelVersion: 3.5
|
|
||||||
Contact: Asai Thambi S P <asamymuthupa@micron.com>
|
|
||||||
Description: This is a read-only file. Dumps the flags in port and driver
|
|
||||||
data structure
|
|
||||||
|
|
|
@ -2546,7 +2546,7 @@ static struct scatterlist *mtip_hw_get_scatterlist(struct driver_data *dd,
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Sysfs register/status dump.
|
* Sysfs status dump.
|
||||||
*
|
*
|
||||||
* @dev Pointer to the device structure, passed by the kernrel.
|
* @dev Pointer to the device structure, passed by the kernrel.
|
||||||
* @attr Pointer to the device_attribute structure passed by the kernel.
|
* @attr Pointer to the device_attribute structure passed by the kernel.
|
||||||
|
@ -2555,71 +2555,6 @@ static struct scatterlist *mtip_hw_get_scatterlist(struct driver_data *dd,
|
||||||
* return value
|
* return value
|
||||||
* The size, in bytes, of the data copied into buf.
|
* The size, in bytes, of the data copied into buf.
|
||||||
*/
|
*/
|
||||||
static ssize_t mtip_hw_show_registers(struct device *dev,
|
|
||||||
struct device_attribute *attr,
|
|
||||||
char *buf)
|
|
||||||
{
|
|
||||||
u32 group_allocated;
|
|
||||||
struct driver_data *dd = dev_to_disk(dev)->private_data;
|
|
||||||
int size = 0;
|
|
||||||
int n;
|
|
||||||
|
|
||||||
size += sprintf(&buf[size], "Hardware\n--------\n");
|
|
||||||
size += sprintf(&buf[size], "S ACTive : [ 0x");
|
|
||||||
|
|
||||||
for (n = dd->slot_groups-1; n >= 0; n--)
|
|
||||||
size += sprintf(&buf[size], "%08X ",
|
|
||||||
readl(dd->port->s_active[n]));
|
|
||||||
|
|
||||||
size += sprintf(&buf[size], "]\n");
|
|
||||||
size += sprintf(&buf[size], "Command Issue : [ 0x");
|
|
||||||
|
|
||||||
for (n = dd->slot_groups-1; n >= 0; n--)
|
|
||||||
size += sprintf(&buf[size], "%08X ",
|
|
||||||
readl(dd->port->cmd_issue[n]));
|
|
||||||
|
|
||||||
size += sprintf(&buf[size], "]\n");
|
|
||||||
size += sprintf(&buf[size], "Completed : [ 0x");
|
|
||||||
|
|
||||||
for (n = dd->slot_groups-1; n >= 0; n--)
|
|
||||||
size += sprintf(&buf[size], "%08X ",
|
|
||||||
readl(dd->port->completed[n]));
|
|
||||||
|
|
||||||
size += sprintf(&buf[size], "]\n");
|
|
||||||
size += sprintf(&buf[size], "PORT IRQ STAT : [ 0x%08X ]\n",
|
|
||||||
readl(dd->port->mmio + PORT_IRQ_STAT));
|
|
||||||
size += sprintf(&buf[size], "HOST IRQ STAT : [ 0x%08X ]\n",
|
|
||||||
readl(dd->mmio + HOST_IRQ_STAT));
|
|
||||||
size += sprintf(&buf[size], "\n");
|
|
||||||
|
|
||||||
size += sprintf(&buf[size], "Local\n-----\n");
|
|
||||||
size += sprintf(&buf[size], "Allocated : [ 0x");
|
|
||||||
|
|
||||||
for (n = dd->slot_groups-1; n >= 0; n--) {
|
|
||||||
if (sizeof(long) > sizeof(u32))
|
|
||||||
group_allocated =
|
|
||||||
dd->port->allocated[n/2] >> (32*(n&1));
|
|
||||||
else
|
|
||||||
group_allocated = dd->port->allocated[n];
|
|
||||||
size += sprintf(&buf[size], "%08X ", group_allocated);
|
|
||||||
}
|
|
||||||
size += sprintf(&buf[size], "]\n");
|
|
||||||
|
|
||||||
size += sprintf(&buf[size], "Commands in Q: [ 0x");
|
|
||||||
|
|
||||||
for (n = dd->slot_groups-1; n >= 0; n--) {
|
|
||||||
if (sizeof(long) > sizeof(u32))
|
|
||||||
group_allocated =
|
|
||||||
dd->port->cmds_to_issue[n/2] >> (32*(n&1));
|
|
||||||
else
|
|
||||||
group_allocated = dd->port->cmds_to_issue[n];
|
|
||||||
size += sprintf(&buf[size], "%08X ", group_allocated);
|
|
||||||
}
|
|
||||||
size += sprintf(&buf[size], "]\n");
|
|
||||||
|
|
||||||
return size;
|
|
||||||
}
|
|
||||||
|
|
||||||
static ssize_t mtip_hw_show_status(struct device *dev,
|
static ssize_t mtip_hw_show_status(struct device *dev,
|
||||||
struct device_attribute *attr,
|
struct device_attribute *attr,
|
||||||
char *buf)
|
char *buf)
|
||||||
|
@ -2637,24 +2572,7 @@ static ssize_t mtip_hw_show_status(struct device *dev,
|
||||||
return size;
|
return size;
|
||||||
}
|
}
|
||||||
|
|
||||||
static ssize_t mtip_hw_show_flags(struct device *dev,
|
|
||||||
struct device_attribute *attr,
|
|
||||||
char *buf)
|
|
||||||
{
|
|
||||||
struct driver_data *dd = dev_to_disk(dev)->private_data;
|
|
||||||
int size = 0;
|
|
||||||
|
|
||||||
size += sprintf(&buf[size], "Flag in port struct : [ %08lX ]\n",
|
|
||||||
dd->port->flags);
|
|
||||||
size += sprintf(&buf[size], "Flag in dd struct : [ %08lX ]\n",
|
|
||||||
dd->dd_flag);
|
|
||||||
|
|
||||||
return size;
|
|
||||||
}
|
|
||||||
|
|
||||||
static DEVICE_ATTR(registers, S_IRUGO, mtip_hw_show_registers, NULL);
|
|
||||||
static DEVICE_ATTR(status, S_IRUGO, mtip_hw_show_status, NULL);
|
static DEVICE_ATTR(status, S_IRUGO, mtip_hw_show_status, NULL);
|
||||||
static DEVICE_ATTR(flags, S_IRUGO, mtip_hw_show_flags, NULL);
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Create the sysfs related attributes.
|
* Create the sysfs related attributes.
|
||||||
|
@ -2671,15 +2589,9 @@ static int mtip_hw_sysfs_init(struct driver_data *dd, struct kobject *kobj)
|
||||||
if (!kobj || !dd)
|
if (!kobj || !dd)
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
||||||
if (sysfs_create_file(kobj, &dev_attr_registers.attr))
|
|
||||||
dev_warn(&dd->pdev->dev,
|
|
||||||
"Error creating 'registers' sysfs entry\n");
|
|
||||||
if (sysfs_create_file(kobj, &dev_attr_status.attr))
|
if (sysfs_create_file(kobj, &dev_attr_status.attr))
|
||||||
dev_warn(&dd->pdev->dev,
|
dev_warn(&dd->pdev->dev,
|
||||||
"Error creating 'status' sysfs entry\n");
|
"Error creating 'status' sysfs entry\n");
|
||||||
if (sysfs_create_file(kobj, &dev_attr_flags.attr))
|
|
||||||
dev_warn(&dd->pdev->dev,
|
|
||||||
"Error creating 'flags' sysfs entry\n");
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2698,9 +2610,7 @@ static int mtip_hw_sysfs_exit(struct driver_data *dd, struct kobject *kobj)
|
||||||
if (!kobj || !dd)
|
if (!kobj || !dd)
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
||||||
sysfs_remove_file(kobj, &dev_attr_registers.attr);
|
|
||||||
sysfs_remove_file(kobj, &dev_attr_status.attr);
|
sysfs_remove_file(kobj, &dev_attr_status.attr);
|
||||||
sysfs_remove_file(kobj, &dev_attr_flags.attr);
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue