mtd: expose subpage size via sysfs

MTD has got sysfs support in 2.6.30-rc1. But subpage size is not
exposed there - do this.

UBI utilities badly need this parameter. At the moment there is
no way to get subpage size - ioctls do not return it. And we
just got sysfs support, so we can easilly extend it with this
additional parameter.

This can be merged late in the development cycle because:
1. sysfs support has been just added - there are no users for
   it so far, even.
2. UBI utilities really need this parameter, and it is better
   not to delay this.

Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
This commit is contained in:
Artem Bityutskiy 2009-04-18 12:29:42 +03:00 committed by David Woodhouse
parent 2fdb11449c
commit e769354895

View File

@ -132,6 +132,17 @@ static ssize_t mtd_writesize_show(struct device *dev,
} }
static DEVICE_ATTR(writesize, S_IRUGO, mtd_writesize_show, NULL); static DEVICE_ATTR(writesize, S_IRUGO, mtd_writesize_show, NULL);
static ssize_t mtd_subpagesize_show(struct device *dev,
struct device_attribute *attr, char *buf)
{
struct mtd_info *mtd = dev_to_mtd(dev);
unsigned int subpagesize = mtd->writesize >> mtd->subpage_sft;
return snprintf(buf, PAGE_SIZE, "%u\n", subpagesize);
}
static DEVICE_ATTR(subpagesize, S_IRUGO, mtd_subpagesize_show, NULL);
static ssize_t mtd_oobsize_show(struct device *dev, static ssize_t mtd_oobsize_show(struct device *dev,
struct device_attribute *attr, char *buf) struct device_attribute *attr, char *buf)
{ {
@ -169,6 +180,7 @@ static struct attribute *mtd_attrs[] = {
&dev_attr_size.attr, &dev_attr_size.attr,
&dev_attr_erasesize.attr, &dev_attr_erasesize.attr,
&dev_attr_writesize.attr, &dev_attr_writesize.attr,
&dev_attr_subpagesize.attr,
&dev_attr_oobsize.attr, &dev_attr_oobsize.attr,
&dev_attr_numeraseregions.attr, &dev_attr_numeraseregions.attr,
&dev_attr_name.attr, &dev_attr_name.attr,