what is the init entrance for pci bus scan in FREEbsd?
kylin
fierykylin at gmail.com
Tue Jun 7 04:12:29 GMT 2005
sir :
it is a great pleasure to get ur reply .thank you very much for your words
below is my appinion , i will report with the advance of my work
On 6/6/05, M. Warner Losh <imp at bsdimp.com> wrote:
> I'm not sure I understand what you are getting at here. First, devd
> already provides 95% of the infrastructure to do things when devices
> are added to the system.
sorry ,i ignore it!! it is really a lite tool:) ,but it seems that
/dev/devctl does not present the function to write to the devctl,then
I think it is impossible to give order to disable or enable the pci
slots without making changes.
static struct cdevsw dev_cdevsw = {
.d_version = D_VERSION,
.d_flags = D_NEEDGIANT,
.d_open = devopen,
.d_close = devclose,
.d_read = devread,
.d_ioctl = devioctl,
.d_poll = devpoll,
.d_name = "devctl",
.d_maj = CDEV_MAJOR,
};
i need the function to cooperated with the hardware to detect the
present of card ,and enumerate the bus , and add it to the bus ,
then it is devd that should come into play( like the sbin/hotplug in
linux?):)
> Second, you assume that linux's way of doing things is how FreeBSD
> does things. This isn't the case. FreeBSD scans the bus at pci bus
> attach time and adds chilren nodes that it finds. In the Cardbus
> case, it will add nodes as the card bus bridge tells us of children,
> and then probe/attaches them.
i mean the enumeration way . and the trickes to talk with the hotplug bridge.
BTW pci_init() is the start point for PCI enumeration in linux. The
way to add the device to the lists
> Finally, you should send me your work for review. I've been keen on
> expanding pci bus support for a long time and would be happy to review
> such changes.
> BTW, Which chipsets and hotplugging methods do you support?
i will begin with the fake way here ,then give support to pciexpress
native hotplug .there is common register interface for pci e hotplug
first ,i will not change the source ,just add a module.
--
we who r about to die,salute u!
More information about the freebsd-questions
mailing list