Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 13 Jul 1996 17:03:24 +0200 (MET DST)
From:      Thomas Graichen <graichen@axp5.physik.fu-berlin.de>
To:        bde@zeta.org.au (Bruce Evans)
Cc:        hackers@FreeBSD.org
Subject:   Re: sio / modem problems
Message-ID:  <199607131503.RAA01130@mordillo>
In-Reply-To: <199607112254.IAA18667@godzilla.zeta.org.au> from "Bruce Evans" at Jul 12, 96 08:54:57 am

next in thread | previous in thread | raw e-mail | index | archive | help
hasn't Bruce Evans said ? ...
> 
> >> i have an internal creatix phone-master modem - which will be detected in
> >> FreeBSD 2.0.5 but not in the 2.1.0 RELEASE or the march 2.2 snap - it's
> 
> The probe didn't change (not even one byte of the source) between 2.0.5R
> and 2.1.0R.
> 
> Revision 1.135 on 25 Feb introduced some delays in the probe in the hope
> of fixing this problem.  These should be in the March 2.2 snap.
> 
> These changes are missing from -stable :-(.  (Or `:-)' if they actually
> make things worse :-).
> 
> The probe hasn't changed significantly in -current since rev.1.135.
> 
> >I recently fixed a modem detection problem from someone by inserting 
> >"DELAY(1000);"'s in sioprobe() everywhere the /* EXTRA DELAY? */ comment
> >appeared.  It's a hack, but clearly some portion of that code is running 
> 
> The delays in rev.1.135 are in slightly different places.  They are
> probably necessary if the UART is actually a bunch of i/o ports under
> software control.  The software can reasonably take a long time to
> complete a sequence of events that it initiates.  OTOH, for events
> initiated by the host cpu, such as writes to control registers, the
> UART needs to respond withing a few hundred nsec to preserve 16550
> compatibility.  Otherwise back to back writes to a control register
> might lose the intermediate steps...  I added delays in exactly the
> cases where it seems reasonable for the UART to be slow.
> 
but they are not enough :-) - but i solved it (half) - i disabled the "fast AT
cycle option" and now it is detected fine - i found that out after playing
around a bit with the 2.0.5 kernel (the generic detected it but a smaller
kernel built for my system not - 2.0.5 too - this way i found out that it is
some kind of timing problem - it is detected by all kernels if i turned off
the turbo switch of the computer - this way i came to the bios setting)

now the question is - can it be solved by software (some more delays)
because linux detects it fine ?

t

p.s.: thanks to all the people who replied to my question

-- 
  thomas graichen    graichen@mail.physik.fu-berlin.de    graichen@FreeBSD.org

  perfection is reached, not when there is no longer anything to add, but when
      there is no longer anything to take away    antoine de saint-exupery



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199607131503.RAA01130>