From: Joe Perches on 11 Dec 2009 13:50 On Fri, 2009-12-11 at 13:32 -0500, H Hartley Sweeten wrote: > The i2c-iop3xx driver requires a resource region of 0x18 bytes and > currently uses the magic number IOP3XX_I2C_IO_SIZE (defined in > i2c-iop3xx.h) to indicate this. All of the users of this driver > have a platform memory resource so use resource_size() instead of > the magic number. This requires fixing a couple of the memory > resources since they were either off by 1 or just wrong. [] > static struct resource iop13xx_i2c_0_resources[] = { > [0] = { > .start = IOP13XX_I2C0_PHYS, > - .end = IOP13XX_I2C0_PHYS + 0x18, > + .end = IOP13XX_I2C0_PHYS + 0x17, etc. > -#define IOP3XX_I2C_IO_SIZE 0x18 Maybe it's clearer to keep the IO_SIZE define and let the compiler do the adding. ..start = FOO; ..end = FOO + IOP3XX_I2C_IO_SIZE - 1; -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
From: H Hartley Sweeten on 11 Dec 2009 14:00 On Friday, December 11, 2009 11:41 AM, Joe Perches wrote: > On Fri, 2009-12-11 at 13:32 -0500, H Hartley Sweeten wrote: >> The i2c-iop3xx driver requires a resource region of 0x18 bytes and >> currently uses the magic number IOP3XX_I2C_IO_SIZE (defined in >> i2c-iop3xx.h) to indicate this. All of the users of this driver >> have a platform memory resource so use resource_size() instead of >> the magic number. This requires fixing a couple of the memory >> resources since they were either off by 1 or just wrong. >[] >> static struct resource iop13xx_i2c_0_resources[] = { >> [0] = { >> .start = IOP13XX_I2C0_PHYS, >> - .end = IOP13XX_I2C0_PHYS + 0x18, >> + .end = IOP13XX_I2C0_PHYS + 0x17, > > etc. > >> -#define IOP3XX_I2C_IO_SIZE 0x18 > > Maybe it's clearer to keep the IO_SIZE define > and let the compiler do the adding. > > .start = FOO; > .end = FOO + IOP3XX_I2C_IO_SIZE - 1; The problem with that, right now, is that IOP3XX_I2C_IO_SIZE is defined in drivers/i2c/busses/i2c-iop3xx.h. All the platform users under arch/arm would have a pretty oddball include. Also, that header really should just go away and all the information in it just moved into the driver. Regards, Hartley
|
Pages: 1 Prev: hwrng: pasemi - Use __devexit_p Next: K8 ECC error with linux-2.6.32 |