[SeaBIOS] [PATCH 0/5] pci: two-pass initialization

Marc Jones marcj303 at gmail.com
Tue Aug 9 21:26:26 CEST 2011


On Tue, Aug 9, 2011 at 2:54 AM, Bjørn Mork <bjorn at mork.no> wrote:
> Kevin O'Connor <kevin at koconnor.net> writes:
>> On Mon, Jul 11, 2011 at 09:20:27AM +0200, Gerd Hoffmann wrote:
>>>   Hi,
>>>
>>> Next (and hopefully final) version of the two-pass pci initialization
>>> patches.  Addressed review comments, fixed some bugs, especially the
>>> io range setup for bridges.
>>
>> Thanks - I committed this series.
>
> Sorry for being this late into the game, but this patch series seems to
> break (some?) network interfaces on older FreeBSD systems.  Exactly why
> is unclear to me.  The following error message is received (multiple
> times):
>
>  Aug  9 08:03:05 frebsd44 /kernel: fxp0: device timeout
>
> and pinging or any other attempt to transmit packets will fail:
>
>  frebsd44# ping 10.0.2.2
>  PING 10.0.2.2 (10.0.2.2): 56 data bytes
>  ^C
>  --- 10.0.2.2 ping statistics ---
>  3 packets transmitted, 0 packets received, 100% packet loss
>
>
>
> I tested this with a clean install of FreeBSD 4.4-REL and a single Intel
> 82559 interface.  A gzipped qemu/kvm raw disk image with serial console
> setup is available from http://huey.mork.no/fbsd44.raw.gz  (66MB)
>
> Run it as e.g.
>
>  qemu -hda fbsd44.raw -net nic,model=i82559er -net user \
>  -serial mon:stdio -monitor null -nographic \
>  -bios bios-image-under-test.bin
>
> and login as root with no password.  It has a single fxp0 configured
> with 10.0.2.1/24 matching the qemu "user" network defaults, so pinging
> 10.0.2.2 should work when running with above cmdline.
>
>
> Bisecting shows that
>
> 01a5c8813b2e709809c07c5d7fab9d1c3ddb4989 is the first bad commit
> commit 01a5c8813b2e709809c07c5d7fab9d1c3ddb4989
> Author: Gerd Hoffmann <kraxel at redhat.com>
> Date:   Mon Jul 11 09:20:29 2011 +0200
>
>    pci: activate two-pass pci initialization code
>
>    This patch actually enables the two-pass pci initialization and
>    deactivates the old pci initialization bits.
>
>    Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
>
> :040000 040000 07d0e9f2b470932f0682683fb3b979b321db866b cd181630a3892ebbd54b54a1ccd91eb38c24e88c M      src
>
>
> I've also verified that checking out commit 82b39b2 works OK, and that
> reverting these 4 commits on top of current HEAD also results in a
> working image:
>
>  77b8536 pci: set BUILD_PCIMEM_START to 0xe0000000
>  60a348b pci: cleanup config.h
>  3bbd11f pci: remove old pci initilaization code
>  01a5c88 pci: activate two-pass pci initialization code
>
>
> Please let me know if there is something else I should test.
>
>
>
> Bjørn

Hi Bjørn,

Can you see if there are differences in the PCI cfg registers between
the versions? Use lspci -vxxx, or something similar.

Marc


-- 
http://se-eng.com



More information about the SeaBIOS mailing list