Yeah, and also goes a long way towards explaining why my documentation
changes never went anywhere.
They are wrong for 2.3, but mostly right for 2.2.
Shall I resubmit them as a patch to 2.2 documentation, taking out the stuff
about check_/request_/release_*_region? Or am I still misunderstanding
something in the 2.2 kernel?
> > In pci.h the struct in 2.2.13 (and I would assume later) had
> >
> > unsigned long base_address[6]
> >
> > which cooresponded to the various PCI Base Address Registers.
> >
> > Why did this change, and what was wrong with the old
> base_address[] array?
> > Since every PCI driver is supposed to get the address from
> this field, I
> > think this is a legitimate question.
>
> 2.2.x you get the value from the PCI registers. Its a copy of
> the BAR with flags
Actually, this isn't what I understood Martin to have told me. I had written
him on this exact point to get clarification.
It is a 'converted BAR', not the value in the PCI BAR. It is the physical
address on that system bus, although someone mentioned this should probably
be treated more as a cookie in order to be architechure neutral.
In any case, on 2.2.x I was told that it was the value to pass into
ioremap().
> With 2.3.x you get told the start/end/size of each resource
> and if it is
> I/O or memory. Resource objects are portable for all busses.
> Also they do the
> things like 64bit using dual BAR's properly for you, and they
> can do magic
> mappings as needed.
Great. Sounds like someone should document this somewhere.
Going to make for a reasonable amount of ifdefs() in drivers that are used
on both 2.2 and the development kernel. Yuck.
-Bret
-------------------------------------------------------------
SBS Technologies, Connectivity Products
... solutions for real-time connectivity
Bret Indrelee, Engineer
SBS Technologies, Inc., Connectivity Products
1284 Corporate Center Drive, St. Paul MN 55121
Direct: (651) 905-4731
Main: (651) 905-4700 Fax: (651) 905-4701
E-mail: bindrelee@sbs-cp.com http://www.sbs.com
-------------------------------------------------------------
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/