From mboxrd@z Thu Jan 1 00:00:00 1970 From: Michael Tasche Date: Wed, 28 Mar 2007 11:23:00 +0200 Subject: [U-Boot-Users] [PATCH] Fix bugs in cmd_ide.c and cmd_scsi.c In-Reply-To: References: Message-ID: <460A33F4.1060508@esd-electronics.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi all, Denis Peter schrieb: > Fix bugs in diskboot, scsiboot and ide_read > > Fix bug introduced by "Fix get_partition_info() parameter error in all > other calls" from 2005-03-04 in cmd_ide.c and cmd_scsi.c, which prevented > to use diskboot or scsiboot form another device than 0. > Fix bug introduced by "Use "void*" not "unsigned long *" for block dev > read_write pointers" introduced on 2007-02-20, which prevented to read > more than one block form IDE. > > Signed-off-by: Denis Peter > > --- > commit 4816c887ff56b0cc16b142f6fda921683989300e > tree 10339e77b60290529bd0da693af86eca58cac083 > parent 44ba464b99001f8bd1c456a1e9d59726252f707a > author Denis Peter Tue, 27 Mar 2007 16:09:52 +0000 > committer Denis Peter Tue, 27 Mar 2007 16:09:52 +0000 > > common/cmd_ide.c | 6 ++++-- > common/cmd_scsi.c | 2 +- > 2 files changed, 5 insertions(+), 3 deletions(-) > > diff --git a/common/cmd_ide.c b/common/cmd_ide.c > index 2e185cc..5a1cb45 100644 > --- a/common/cmd_ide.c > +++ b/common/cmd_ide.c > @@ -423,7 +423,8 @@ int do_diskboot (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]) > } > part = simple_strtoul(++ep, NULL, 16); > } > - if (get_partition_info (ide_dev_desc, part, &info)) { > + if (get_partition_info (&ide_dev_desc[dev], part, &info)) { > + printf ("error reading partinfo\n"); > SHOW_BOOT_PROGRESS (-1); > return 1; > } > @@ -1233,8 +1234,9 @@ static void ide_ident (block_dev_desc_t *dev_desc) > > /* ------------------------------------------------------------------------- */ > > -ulong ide_read (int device, lbaint_t blknr, ulong blkcnt, void *buffer) > +ulong ide_read (int device, lbaint_t blknr, ulong blkcnt, void *vbuffer) > { > + ulong *buffer = (ulong *)vbuffer; > ulong n = 0; > unsigned char c; > unsigned char pwrsave=0; /* power save */ it seems to me, that the ide_write function will also need this fix. > diff --git a/common/cmd_scsi.c b/common/cmd_scsi.c > index da36ed9..00b84fa 100644 > --- a/common/cmd_scsi.c > +++ b/common/cmd_scsi.c > @@ -248,7 +248,7 @@ int do_scsiboot (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]) > } > part = simple_strtoul(++ep, NULL, 16); > } > - if (get_partition_info (scsi_dev_desc, part, &info)) { > + if (get_partition_info (&scsi_dev_desc[dev], part, &info)) { > printf("error reading partinfo\n"); > return 1; > } > > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share your > opinions on IT & business topics through brief surveys-and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > _______________________________________________ > U-Boot-Users mailing list > U-Boot-Users at lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/u-boot-users > Regards Michael -- _/_/_/_/ Michael Tasche _/_/_/_/ Dipl.-Ing. _/_/_/_/ _/_/_/ _/_/_/_/_/_/_/ esd electronic system design gmbh _/ _/ _/ _/ Vahrenwalder Str. 207 _/ _/ _/_/_/ _/ _/ D-30165 Hannover _/ _/ _/ _/ Phone: +49-511-37298-0 _/_/_/_/_/_/_/ _/_/_/ Fax: +49-511-37298-68