> Date: Mon, 5 Oct 2009 09:51:39 +0200
> From: Christopher Zimmermann <[email protected]>
> 
> rc = sis190_get_mac_addr_from_eeprom(pdev, dev); /* This seems to fail */
> if (rc < 0) {
>     u8 reg;
> 
>     pci_read_config_byte(pdev, 0x73, &reg); /* How to do this in openBSD */

You can't really do byte-access on PCI config space.  So to access the
byte at offset 0x73, you need to do something like:

    reg = (pci_conf(pa->pa_pc, pa->pa_tag, 0x70) >> 24);

>       for (i = 0; i < ARRAY_SIZE(ids); i++) {
>               isa_bridge = pci_get_device(PCI_VENDOR_ID_SI, ids[i], 
>               NULL);
>               if (isa_bridge)
>                       break;
>       }

Here you, you'll want to use pci_find_device().  There is a reasonable
example in dev/pci/agp.c.  You'll need to write your own match
function that matches the SiS ISA bridge instead of a generic VGA
device and use that in the pci_find_device() call.

Cheers,

Mark

Reply via email to