PCI driver development problems
Admin
admin at sycos.co.uk
Fri Jan 23 05:51:55 PST 2004
I am using FreeBSD Version 5.1.
I am developing a driver for a PCI interface. I have spent almost a month to understand the FreeBSD architecture and how to develop a device driver. I have a number of issues requiring immediate help:
1. I have tried using the /usr/share/examples/drivers/make_device_driver.sh file to generate a skeleton driver and it failed with a number of errors and warnings.
2. I used the examples for 'echo' Pseudo device driver (FreeBSD Architecture Handbook) and managed to compile the code. When I tried to load the driver, the load failed due to there being no node in the /dev directory. I tried using mknod /dev/echo c 33 0 and the following error message was returned: No such file or directory. I can create a node in any other directory but not in /dev directory.
3. I have tried compiling /usr/share/examples/kld file and they are giving errors. I have tried compiling PUC driver code and it fails on header files. I managed to find other files, but, I could not find opt_puc.h header file.
4. I have modified the make_device_driver.sh to generate code for a pci device driver. when I try to compile the kernel with the pci driver node, it won't compile, because I am unable to enter device node in /dev directory. Can I communicate with my PCI card without creating the device node?
5. I can see the product hardware details using pciconf -l command. But, when I try using pciconf -a(selector), it returns error "cannot parse selector".
6. Is there a document which covers how to convert a driver into kld?
7. I am currently using FreeBSD 5.1. Have any of the above problems been addressed in FreeBSD 5.2?
8. Are there any kernel debugging tools in the system I can use?
9. Are there any working examples in FreeBSD 5.2?
I am stuck and desperately need your help. Would you please advise a.s.a.p.
If you have an up-to-date example of a PCI interface device driver that works, I would be very grateful to receive a copy to assist me.
Regards
Gurdial Chandra
More information about the freebsd-questions
mailing list