> 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, ®); /* 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