Re: How to implement PSC driver on Au1550

Shigeyuki Fukushima <[email protected]>
Newsgroups gmane.os.netbsd.ports.evbmips
Organization NetBSD Developper
Message-ID <[email protected]>
Izumi Tsutsui wrote:
> In article <[email protected]>
> [email protected] wrote:
> 
>> Almost Ok.
>> But Attaching wm0 failed. Hummmm...
>> kiyohara's OMS-AL400 works fine.
> 
> Hmm, bad firmware revision (PCI space is not mapped properly)?
> pci_configure_bus(9) is recommended?
> Anyway, info by options PCI_CONFIG_DUMP may help.

About wm0's PCI_CONFIG_DUMP:

wm0 at pci0 dev 3 function 0: PCI configuration registers:
  Common header:
    0x00: 0x10768086 0x02300147 0x02000005 0x0000fc00

    Vendor Name: Intel (0x8086)
    Device Name: i82541GI Gigabit Ethernet (0x1076)
    Command register: 0x0147
      I/O space accesses: on
      Memory space accesses: on
      Bus mastering: on
      Special cycles: off
      MWI transactions: off
      Palette snooping: off
      Parity error checking: on
      Address/data stepping: off
      System error (SERR): on
      Fast back-to-back transactions: off
    Status register: 0x0230
      Capability List support: on
      66 MHz capable: on
      User Definable Features (UDF) support: off
      Fast back-to-back capable: off
      Data parity error detected: off
      DEVSEL timing: medium (0x1)
      Slave signaled Target Abort: off
      Master received Target Abort: off
      Master received Master Abort: off
      Asserted System Error (SERR): off
      Parity error detected: off
    Class Name: network (0x02)
    Subclass Name: ethernet (0x00)
    Interface: 0x00
    Revision ID: 0x05
    BIST: 0x00
    Header Type: 0x00 (0x00)
    Latency Timer: 0xfc
    Cache Line Size: 0x00

  Type 0 ("normal" device) header:
    0x10: 0x20000000 0x00000000 0x01000001 0x00000000
    0x20: 0x00000000 0x00000000 0x00000000 0x10768086
    0x30: 0x00000000 0x000000dc 0x00000000 0x00ff0100

    Base address register at 0x10
      type: 32-bit nonprefetchable memory
      base: 0x20000000, size: 0x00020000
    Base address register at 0x14
      not implemented(?)
    Base address register at 0x18
      type: 32-bit i/o
      base: 0x01000000, size: 0x00000040
    Base address register at 0x1c
      not implemented(?)
    Base address register at 0x20
      not implemented(?)
    Base address register at 0x24
      not implemented(?)
    Cardbus CIS Pointer: 0x00000000
    Subsystem vendor ID: 0x8086
    Subsystem ID: 0x1076
    Expansion ROM Base Address: 0x00000000
    Capability list pointer: 0xdc
    Reserved @ 0x38: 0x00000000
    Maximum Latency: 0x00
    Minimum Grant: 0xff
    Interrupt pin: 0x01 (pin A)
    Interrupt line: 0x00

  Capability register at 0xdc
    type: 0x01 (Power Management, rev. 1.0)
  Capability register at 0xe4
    type: 0x07 (PCI-X)

  Device-dependent header:
    0x40: 0x00000000 0x00000000 0x00000000 0x00000000
    0x50: 0x00000000 0x00000000 0x00000000 0x00000000
    0x60: 0x00000000 0x00000000 0x00000000 0x00000000
    0x70: 0x00000000 0x00000000 0x00000000 0x00000000
    0x80: 0x00000000 0x00000000 0x00000000 0x00000000
    0x90: 0x00000000 0x00000000 0x00000000 0x00000000
    0xa0: 0x00000000 0x00000000 0x00000000 0x00000000
    0xb0: 0x00000000 0x00000000 0x00000000 0x00000000
    0xc0: 0x00000000 0x00000000 0x00000000 0x00000000
    0xd0: 0x00000000 0x00000000 0x00000000 0x4822e401
    0xe0: 0x28002000 0x00020007 0x00400040 0x00000000
    0xf0: 0x00800005 0x00000000 0x00000000 0x00000000

    Don't know how to pretty-print device-dependent header.

Intel i82541GI Gigabit Ethernet (ethernet network, revision 0x05) at ?
dev 3 function 0 (intrswiz 0, intrpin 0x1, i/o on, mem on, no quirks):
Intel i82541GI 1000BASE-T Ethernet, rev. 5
wm0: unable to map device registers


About wm1's PCI_CONFIG_DUMP:

wm1 at pci0 dev 4 function 0: PCI configuration registers:
  Common header:
    0x00: 0x10768086 0x02300147 0x02000005 0x0000fc00

    Vendor Name: Intel (0x8086)
    Device Name: i82541GI Gigabit Ethernet (0x1076)
    Command register: 0x0147
      I/O space accesses: on
      Memory space accesses: on
      Bus mastering: on
      Special cycles: off
      MWI transactions: off
      Palette snooping: off
      Parity error checking: on
      Address/data stepping: off
      System error (SERR): on
      Fast back-to-back transactions: off
    Status register: 0x0230
      Capability List support: on
      66 MHz capable: on
      User Definable Features (UDF) support: off
      Fast back-to-back capable: off
      Data parity error detected: off
      DEVSEL timing: medium (0x1)
      Slave signaled Target Abort: off
      Master received Target Abort: off
      Master received Master Abort: off
      Asserted System Error (SERR): off
      Parity error detected: off
    Class Name: network (0x02)
    Subclass Name: ethernet (0x00)
    Interface: 0x00
    Revision ID: 0x05
    BIST: 0x00
    Header Type: 0x00 (0x00)
    Latency Timer: 0xfc
    Cache Line Size: 0x00

  Type 0 ("normal" device) header:
    0x10: 0x20020000 0x00000000 0x01000041 0x00000000
    0x20: 0x00000000 0x00000000 0x00000000 0x10768086
    0x30: 0x00000000 0x000000dc 0x00000000 0x00ff0100

    Base address register at 0x10
      type: 32-bit nonprefetchable memory
      base: 0x20020000, size: 0x00020000
    Base address register at 0x14
      not implemented(?)
    Base address register at 0x18
      type: 32-bit i/o
      base: 0x01000040, size: 0x00000040
    Base address register at 0x1c
      not implemented(?)
    Base address register at 0x20
      not implemented(?)
    Base address register at 0x24
      not implemented(?)
    Cardbus CIS Pointer: 0x00000000
    Subsystem vendor ID: 0x8086
    Subsystem ID: 0x1076
    Expansion ROM Base Address: 0x00000000
    Capability list pointer: 0xdc
    Reserved @ 0x38: 0x00000000
    Maximum Latency: 0x00
    Minimum Grant: 0xff
    Interrupt pin: 0x01 (pin A)
    Interrupt line: 0x00

  Capability register at 0xdc
    type: 0x01 (Power Management, rev. 1.0)
  Capability register at 0xe4
    type: 0x07 (PCI-X)

  Device-dependent header:
    0x40: 0x00000000 0x00000000 0x00000000 0x00000000
    0x50: 0x00000000 0x00000000 0x00000000 0x00000000
    0x60: 0x00000000 0x00000000 0x00000000 0x00000000
    0x70: 0x00000000 0x00000000 0x00000000 0x00000000
    0x80: 0x00000000 0x00000000 0x00000000 0x00000000
    0x90: 0x00000000 0x00000000 0x00000000 0x00000000
    0xa0: 0x00000000 0x00000000 0x00000000 0x00000000
    0xb0: 0x00000000 0x00000000 0x00000000 0x00000000
    0xc0: 0x00000000 0x00000000 0x00000000 0x00000000
    0xd0: 0x00000000 0x00000000 0x00000000 0x4822e401
    0xe0: 0x28002000 0x00020007 0x00400080 0x00000000
    0xf0: 0x00800005 0x00000000 0x00000000 0x00000000

    Don't know how to pretty-print device-dependent header.

Intel i82541GI Gigabit Ethernet (ethernet network, revision 0x05) at ?
dev 4 function 0 (intrswiz 0, intrpin 0x1, i/o on, mem on, no quirks):
Intel i82541GI 1000BASE-T Ethernet, rev. 5
wm1: interrupting at irq 1
wm1: Ethernet address 00:0a:85:02:50:46


-- 
Kind Regards,
--- shige
Shigeyuki Fukushima <shige@{FreeBSD,jp.FreeBSD,NetBSD}.org>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.