On Nov 18, 2008 7:26am, Corey Osgood <[EMAIL PROTECTED]> wrote:
On Mon, Nov 17, 2008 at 11:45 PM, Elia Yehuda [EMAIL PROTECTED]> wrote:

well, i managed to make it work as you initially suggested
(adding .ops_pci to northbridge_operations),
but... i had to change the .device to 0x7124 (which is what lspci shows
me) - are you all sure 82810


device_id is 7120? i use 82810e but according to datasheet it should be
the same.

Nope, here's from my i810 datasheet:

DIDDevice Identification Register (Device 0)
Address Offset: 02–03h

Default Value: 82810 = 7120h
82810-DC100 = 7122h
Attribute: Read Only
Size: 16 bits

So, go ahead and do this:

static const struct pci_driver i810_northbridge_driver __pci_driver = {


.ops = &northbridge_operations,

.vendor = PCI_VENDOR_ID_INTEL,

.device = 0x7120,

};

static const struct pci_driver i810e_northbridge_driver __pci_driver = {

.ops = &northbridge_operations,

.vendor = PCI_VENDOR_ID_INTEL,

.device = 0x7124,

};

exactly what i just did! only different naming :-)
thanks for all your info.


Please do not be tempted to add i810-dc100 in there as well, unless you
want to read through the i810 datasheet and fix any other differences ;)

:)


-Corey





Elia.

On Tue, Nov 18, 2008 at 6:04 AM, Corey Osgood [EMAIL PROTECTED]>
wrote:





On Mon, Nov 17, 2008 at 10:10 PM, Elia Yehuda [EMAIL PROTECTED]> wrote:








On Tue, Nov 18, 2008 at 3:44 AM, Joseph Smith [EMAIL PROTECTED]> wrote:








On Tue, 18 Nov 2008 00:59:07 +0200, "Elia Yehuda" [EMAIL PROTECTED]>

wrote:

> just noticed ive put it in cpu_bus_ops... have a laugh...

>


No worries, this is how we learn :-)

>

> but i dont have "static struct device_operations mc_ops" - where should
i

> add

> the .ops_pci ?

>


Little confused about what your trying to do here. This doesn't work??



static const struct pci_driver northbridge_driver __pci_driver = {

.ops = &northbridge_operations,

.vendor = PCI_VENDOR_ID_INTEL,

.device = 0x7120,

};



this works just fine. i simply don't know where to add ".ops_pci" since i
dont have
"static struct device_operations mc_ops" in northbridge.c








You should be able to add it to pci_domain_ops, but be sure to check that
it actually runs. Otherwise, you'll need to create that mc_ops driver with just the .ops_pci and everything else set to NULL, and use this:




static void enable_dev(struct device *dev)
{
struct device_path path; //unused?

/* Set the operations if it is a special bus type */
if (dev->path.type == DEVICE_PATH_PCI_DOMAIN) {
dev->ops = &pci_domain_ops;



pci_set_method(dev);
} else if (dev->path.type == DEVICE_PATH_APIC_CLUSTER) {
dev->ops = &cpu_bus_ops;
} else if (dev->path.type == DEVICE_PATH_PCI) {
dev->ops = &mc_ops;



}


}

I hope you can understand what I'm trying to say, I'ma bit tired right
now.

-Corey











Elia.
--
coreboot mailing list: [email protected]
http://www.coreboot.org/mailman/listinfo/coreboot

Reply via email to