Hi Peter, On 04/29/2012 08:26 PM, Peter Huewe wrote: > This patch removes the duplicated SiS_DRAMType from sis_main.c since it > is already defined exactly the same in init.h. > Since we don't want to include init.h (for size reasons) we move the > struct to sis_main.h. > Since SiS_DRAMType is const and only used by sisfb_post_300_rwtest which is > marked __devinit we can also annotate SiS_DRAMType with __devinitconst. > > And since hardcoded values are bad we use ARRAY_SIZE for determining the > size of SiS_DRAMType ;) > > v2: > Move struct to sis_main.h to decrease module size As far as I can see it should be possible to keep the array in sis_main.c and just delete it in the header files, shouldn't it? I'd prefer to do it this way. Best regards, Florian Tobias Schandinat > > Signed-off-by: Peter Huewe <peterhuewe@xxxxxx> > --- > drivers/video/sis/init.h | 20 -------------------- > drivers/video/sis/sis_main.c | 21 +-------------------- > drivers/video/sis/sis_main.h | 20 ++++++++++++++++++++ > 3 files changed, 21 insertions(+), 40 deletions(-) > > diff --git a/drivers/video/sis/init.h b/drivers/video/sis/init.h > index a22e892..85d6738 100644 > --- a/drivers/video/sis/init.h > +++ b/drivers/video/sis/init.h > @@ -105,26 +105,6 @@ static const unsigned short ModeIndex_1920x1440[] = {0x68, 0x69, 0x00, 0x6b}; > static const unsigned short ModeIndex_300_2048x1536[]= {0x6c, 0x6d, 0x00, 0x00}; > static const unsigned short ModeIndex_310_2048x1536[]= {0x6c, 0x6d, 0x00, 0x6e}; > > -static const unsigned short SiS_DRAMType[17][5]={ > - {0x0C,0x0A,0x02,0x40,0x39}, > - {0x0D,0x0A,0x01,0x40,0x48}, > - {0x0C,0x09,0x02,0x20,0x35}, > - {0x0D,0x09,0x01,0x20,0x44}, > - {0x0C,0x08,0x02,0x10,0x31}, > - {0x0D,0x08,0x01,0x10,0x40}, > - {0x0C,0x0A,0x01,0x20,0x34}, > - {0x0C,0x09,0x01,0x08,0x32}, > - {0x0B,0x08,0x02,0x08,0x21}, > - {0x0C,0x08,0x01,0x08,0x30}, > - {0x0A,0x08,0x02,0x04,0x11}, > - {0x0B,0x0A,0x01,0x10,0x28}, > - {0x09,0x08,0x02,0x02,0x01}, > - {0x0B,0x09,0x01,0x08,0x24}, > - {0x0B,0x08,0x01,0x04,0x20}, > - {0x0A,0x08,0x01,0x02,0x10}, > - {0x09,0x08,0x01,0x01,0x00} > -}; > - > static const unsigned char SiS_MDA_DAC[] = > { > 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, > diff --git a/drivers/video/sis/sis_main.c b/drivers/video/sis/sis_main.c > index 078ca21..8abd42b 100644 > --- a/drivers/video/sis/sis_main.c > +++ b/drivers/video/sis/sis_main.c > @@ -4231,27 +4231,8 @@ sisfb_post_300_rwtest(struct sis_video_info *ivideo, int iteration, int buswidth > unsigned short sr14; > unsigned int k, RankCapacity, PageCapacity, BankNumHigh, BankNumMid; > unsigned int PhysicalAdrOtherPage, PhysicalAdrHigh, PhysicalAdrHalfPage; > - static const unsigned short SiS_DRAMType[17][5] = { > - {0x0C,0x0A,0x02,0x40,0x39}, > - {0x0D,0x0A,0x01,0x40,0x48}, > - {0x0C,0x09,0x02,0x20,0x35}, > - {0x0D,0x09,0x01,0x20,0x44}, > - {0x0C,0x08,0x02,0x10,0x31}, > - {0x0D,0x08,0x01,0x10,0x40}, > - {0x0C,0x0A,0x01,0x20,0x34}, > - {0x0C,0x09,0x01,0x08,0x32}, > - {0x0B,0x08,0x02,0x08,0x21}, > - {0x0C,0x08,0x01,0x08,0x30}, > - {0x0A,0x08,0x02,0x04,0x11}, > - {0x0B,0x0A,0x01,0x10,0x28}, > - {0x09,0x08,0x02,0x02,0x01}, > - {0x0B,0x09,0x01,0x08,0x24}, > - {0x0B,0x08,0x01,0x04,0x20}, > - {0x0A,0x08,0x01,0x02,0x10}, > - {0x09,0x08,0x01,0x01,0x00} > - }; > > - for(k = 0; k <= 16; k++) { > + for (k = 0; k < ARRAY_SIZE(SiS_DRAMType); k++) { > > RankCapacity = buswidth * SiS_DRAMType[k][3]; > > diff --git a/drivers/video/sis/sis_main.h b/drivers/video/sis/sis_main.h > index 9540e97..242c1c3 100644 > --- a/drivers/video/sis/sis_main.h > +++ b/drivers/video/sis/sis_main.h > @@ -776,6 +776,26 @@ extern void SiS_Chrontel701xBLOff(struct SiS_Private *SiS_Pr); > #endif > extern void SiS_SiS30xBLOn(struct SiS_Private *SiS_Pr); > extern void SiS_SiS30xBLOff(struct SiS_Private *SiS_Pr); > + > +static const unsigned short __devinitconst SiS_DRAMType[17][5] = { > + {0x0C,0x0A,0x02,0x40,0x39}, > + {0x0D,0x0A,0x01,0x40,0x48}, > + {0x0C,0x09,0x02,0x20,0x35}, > + {0x0D,0x09,0x01,0x20,0x44}, > + {0x0C,0x08,0x02,0x10,0x31}, > + {0x0D,0x08,0x01,0x10,0x40}, > + {0x0C,0x0A,0x01,0x20,0x34}, > + {0x0C,0x09,0x01,0x08,0x32}, > + {0x0B,0x08,0x02,0x08,0x21}, > + {0x0C,0x08,0x01,0x08,0x30}, > + {0x0A,0x08,0x02,0x04,0x11}, > + {0x0B,0x0A,0x01,0x10,0x28}, > + {0x09,0x08,0x02,0x02,0x01}, > + {0x0B,0x09,0x01,0x08,0x24}, > + {0x0B,0x08,0x01,0x04,0x20}, > + {0x0A,0x08,0x01,0x02,0x10}, > + {0x09,0x08,0x01,0x01,0x00} > +}; > #endif > > -- To unsubscribe from this list: send the line "unsubscribe linux-fbdev" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html