[kernel] fix mtd warnings

Fixes for the following warnings:

drivers/mtd/devices/block2mtd.c: In function '_open_bdev':
drivers/mtd/devices/block2mtd.c:272:3: warning: ISO C90 forbids mixed declarations and code
drivers/mtd/devices/block2mtd.c: In function 'add_device':
drivers/mtd/devices/block2mtd.c:399:13: warning: assignment discards qualifiers from pointer target type

In the case of 442-block2mtd_probe.patch, it's not until the insertion of a executable statement before the definition that causes a warning, so I've chosen to resolve the issue here by splitting the definition and the initialization into a definition and a statement (and assignment) instead.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@27007 3c298f89-4303-0410-b956-a3cf2f4a3e73
master
Florian Fainelli 2011-05-25 19:16:58 +00:00
parent 7cd58d14eb
commit e15963161a
5 changed files with 30 additions and 10 deletions

View File

@ -1,10 +1,16 @@
--- a/drivers/mtd/devices/block2mtd.c
+++ b/drivers/mtd/devices/block2mtd.c
@@ -268,6 +268,7 @@ static int _open_bdev(struct block2mtd_d
@@ -264,10 +264,12 @@ static int _open_bdev(struct block2mtd_d
bdev = open_bdev_exclusive(dev->devname, FMODE_READ|FMODE_WRITE, NULL);
#ifndef MODULE
if (IS_ERR(bdev)) {
+ dev_t devt;
/* We might not have rootfs mounted at this point. Try
to resolve the device name by other means. */
+ wait_for_device_probe();
dev_t devt = name_to_dev_t(dev->devname);
- dev_t devt = name_to_dev_t(dev->devname);
+ devt = name_to_dev_t(dev->devname);
if (devt) {
bdev = open_by_devnum(devt, FMODE_WRITE | FMODE_READ);

View File

@ -1,10 +1,16 @@
--- a/drivers/mtd/devices/block2mtd.c
+++ b/drivers/mtd/devices/block2mtd.c
@@ -269,6 +269,7 @@ static int _open_bdev(struct block2mtd_d
@@ -264,10 +264,12 @@ static int _open_bdev(struct block2mtd_d
bdev = open_bdev_exclusive(dev->devname, FMODE_READ|FMODE_WRITE, NULL);
#ifndef MODULE
if (IS_ERR(bdev)) {
+ dev_t devt;
/* We might not have rootfs mounted at this point. Try
to resolve the device name by other means. */
+ wait_for_device_probe();
dev_t devt = name_to_dev_t(dev->devname);
- dev_t devt = name_to_dev_t(dev->devname);
+ devt = name_to_dev_t(dev->devname);
if (devt) {
bdev = open_by_devnum(devt, FMODE_WRITE | FMODE_READ);

View File

@ -111,8 +111,8 @@
+ }
+
+ memcpy(dpart, part, sizeof(*part));
+ strcpy((char *)&dpart[1], ROOTFS_SPLIT_NAME);
+ dpart->name = (unsigned char *)&dpart[1];
+ strcpy(dpart->name, ROOTFS_SPLIT_NAME);
+
+ dpart->size = rpart->size - (split_offset - spart->offset);
+ dpart->offset = split_offset;
@ -301,7 +301,8 @@
+struct mtd_partition;
struct mtd_partition {
char *name; /* identifier string */
- char *name; /* identifier string */
+ const char *name; /* identifier string */
uint64_t size; /* partition size */
uint64_t offset; /* offset within the master MTD space */
uint32_t mask_flags; /* master MTD flags to mask out for this partition */

View File

@ -1,10 +1,16 @@
--- a/drivers/mtd/devices/block2mtd.c
+++ b/drivers/mtd/devices/block2mtd.c
@@ -268,6 +268,7 @@ static int _open_bdev(struct block2mtd_d
@@ -264,10 +264,12 @@ static int _open_bdev(struct block2mtd_d
bdev = open_bdev_exclusive(dev->devname, FMODE_READ|FMODE_WRITE, NULL);
#ifndef MODULE
if (IS_ERR(bdev)) {
+ dev_t devt;
/* We might not have rootfs mounted at this point. Try
to resolve the device name by other means. */
+ wait_for_device_probe();
dev_t devt = name_to_dev_t(dev->devname);
- dev_t devt = name_to_dev_t(dev->devname);
+ devt = name_to_dev_t(dev->devname);
if (devt) {
bdev = open_by_devnum(devt, FMODE_WRITE | FMODE_READ);

View File

@ -111,8 +111,8 @@
+ }
+
+ memcpy(dpart, part, sizeof(*part));
+ strcpy((char *)&dpart[1], ROOTFS_SPLIT_NAME);
+ dpart->name = (unsigned char *)&dpart[1];
+ strcpy(dpart->name, ROOTFS_SPLIT_NAME);
+
+ dpart->size = rpart->size - (split_offset - spart->offset);
+ dpart->offset = split_offset;
@ -302,7 +302,8 @@
+struct mtd_partition;
struct mtd_partition {
char *name; /* identifier string */
- char *name; /* identifier string */
+ const char *name; /* identifier string */
uint64_t size; /* partition size */
uint64_t offset; /* offset within the master MTD space */
uint32_t mask_flags; /* master MTD flags to mask out for this partition */