From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andre Schwarz Date: Fri, 11 Jul 2008 11:03:17 +0200 Subject: [U-Boot-Users] [PATCH] I2C Dummy Driver In-Reply-To: <20080710200329.B5549242FF@gemini.denx.de> References: <20080710200329.B5549242FF@gemini.denx.de> Message-ID: <487721D5.6050103@matrix-vision.de> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Wolfgang Denk schrieb: > In message <1215712408-23567-3-git-send-email-ricardo.ribalda@uam.es> you wrote: > >> Signed-off-by: Ricardo Ribalda Delgado >> > > What is the intention or practical use of this dummy driver? > > > I think we could use it well for mounting different memory configurations on the same base board. This happens frequently due to different size requests from customers or chip-replacement. Actually I'll have to compile u-boot for each memory config ... very bad. Getting the data out of flash (environment or small dedicated sector) would be fine. Creating valid eeprom entries for use as SPD is another thing of ocurse. >> --- a/drivers/i2c/Makefile >> +++ b/drivers/i2c/Makefile >> @@ -30,6 +30,7 @@ COBJS-y += omap1510_i2c.o >> > ... > >> +COBJS-y += dummy_i2c.o >> > > Please make "COBJS-$(CONFIG_DUMMY_I2C) += dummy_i2c.o" and ... > > >> diff --git a/drivers/i2c/dummy_i2c.c b/drivers/i2c/dummy_i2c.c >> new file mode 100644 >> index 0000000..04f6edb >> --- /dev/null >> +++ b/drivers/i2c/dummy_i2c.c >> @@ -0,0 +1,84 @@ >> > ... > > >> + (C) Copyright 2008 >> + Ricado Ribalda, Universidad Autonoma de Madrid, ricardo.ribaldauam.es , ricardo.ribaldagmail.com >> > > [Line too long] > > >> + This program is free software: you can redistribute it and/or modify >> + it under the terms of the GNU General Public License as published by >> + the Free Software Foundation, either version 3 of the License, or >> + (at your option) any later version. >> > > [ GPLv2 needed] > > >> +#if defined(CONFIG_DUMMY_I2C) >> > > ... drop this #ifdef / #endif > > >> + >> +#include >> +u8 i2c_dummy_buffer[256]={0x80,0x8,0x8,0x0D,0x0A,0x60,0x40,0x0,0x5,0x3D,0x50,0x0,0x82,0x10,0x0,0x0,0x0C,0x4,0x18,0x1,0x4,0x0,0x1,0x50,0x50,0x0,0x0,0x3C,0x28,0x3C,0x2D,0x40,0x25,0x37,0x10,0x22,0x3C,0x1E,0x1E,0x0,0x0,0x3C,0x69,0x80,0x1E,0x28,0x0,0x0,0x0, >> 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x12,0xC9,0x2C,'0','0','0','0','0','0','0',0x0,'4','H','T','F','3','2','6','4','H','Y','-','5','3','E','D','3',0x3,0x0,0x0,0x0,0x0}; >> > > Line way too long. > > Maybe you also want to explain where these magic data is coming from > or what it means? > > >> + if (alen!=1) >> > > if (alen != 1) > > >> + return -1; >> + >> + if (addr+len>0xff) >> > > if (addr+len > 0xff) > > >> + return -1; >> + >> + for(i=0;i> > > for (i=0; i > >> + buffer[i]=i2c_dummy_buffer[i+addr]; >> > > buffer[i] = i2c_dummy_buffer[i+addr]; > > etc., please. > > > Best regards, > > Wolfgang Denk > > MATRIX VISION GmbH, Talstra?e 16, DE-71570 Oppenweiler - Registergericht: Amtsgericht Stuttgart, HRB 271090 Gesch?ftsf?hrer: Gerhard Thullner, Werner Armingeon, Uwe Furtner