[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

PC386 boot problems (solved)




On Mon, 6 Dec 1999, VALETTE Eric wrote:

> 
> The pc386 startup ldsegs.s has several problems
> 
> --------------------------------------------------------------------------------
> 	.p2align 4
> 	.globl _delay
> 	.globl delay
> delay:
> _delay:
> /*
> 	outb	%al, $0xED   <=== why %
> */
> /*			     <=== unterminated comment !!!!
>  
> 	movl	$0x200, %eax <== again %
> delay1:
> 	dec	%eax	     <== idem
> 	jnz	delay1
> 	ret
> ----------------------------------------------------------------------------------
> 
> The major one is the unterminated comment of course!!!!
> 
> BUT : the location for the outb was the old buggy code. I already sent a fix for
> that one (0x80 instead of 0xed). Linux use this by default and believe me
> linux has run on more PC hardware than RTEMS will ever.
> 
> Side comment : loop for delay is the worse things that exist without proper 
> calibration.

This loop is called once during start up, so the the point should be 
a reliable minimum delay time (this one will give you 1us on 1Gz
processor), versus precision achived through a strange trick.

> Could the guy that suggested the change test with 0x80?

The problem I found was that start16.s does not have enough delay
time while doing Gate 20 operation. I just changed ldsegs.s along 
same lines, hence '%'.


> 
> 
> -- 
>    __                 
>   /  `                   	Eric Valette
>  /--   __  o _.          	Canon CRF - Communication Dept
> (___, / (_(_(__         	Rue de la touche lambert
> 				35517 Cesson-Sevigne  Cedex
> 				FRANCE
> Tel: +33 (0)2 99 87 68 91	Fax: +33 (0)2 99 84 11 30
> E-mail: valette at crf.canon.fr	http://www.crf.canon.fr
> 

Thanks,

Aleksey.