[patch] doc_stage1.S : GRUB on DoC

Mark Meade mark at lakeshoremicro.com
Fri Aug 2 09:37:08 EDT 2002


Ilguiz Latypov wrote:
> Would this modification make a difference?  It seems we read the first
> flash block into a different address when identifying the chip.

This didn't make any difference.  It still works find on the faster machine; 
reboots on the P133.

Using GRUBSTART:0 is probably the better way to do this: GRUBSTART:0 is 
equivalent to GRUBLOADSEG:GRUBLOADOFS (8200:0, 07E0:400), and using zero as 
the offset causes the "read block" command to send an address of 0 after 
sending the READID command, similar to the way it's done in bdev_diskonchip.c.

Either way, the result (mfg/id code) temporarily ends up at 8200:0, prior to 
be replaced by the Grub code.

Mark

> -       movw    $1, %cx         /* read just one page */
> -       movw    $GRUBSTART, %ax
> +       movw    $1, %cx			/* read just one block */
> +       movw    $GRUBLOADSEG, %ax
>         movw    %ax, %es
> -       movw    $0, %di
> +       movw    $GRUBLOADOFS, %di
>         call    read_block




More information about the linux-mtd mailing list