PCI driver development problems
Bob Pickles
BPICKLES at btconnect.com
Fri Jan 23 06:08:21 PST 2004
Gurdial
I am in the same position, but have gone past most of these issues, I only
have 5 days
experience though.
The device should be made in your attach() function using make_dev(), then
the device should
be installed...
use tail -f /var/log/messages to see errors that kldload reports, this is
helpful, as it will give
silly errors, when it's just link errors.
Hope this helps.
Bob Pickles
SBS Technologies.
----- Original Message -----
From: "Admin" <admin at sycos.co.uk>
To: <freebsd-questions at freebsd.org>
Cc: <peter at sycos.co.uk>
Sent: Friday, January 23, 2004 1:50 PM
Subject: PCI driver development problems
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
_______________________________________________
freebsd-questions at freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscribe at freebsd.org"
***This message has been scanned for virus, spam, and undesirable
content.***
***For further information, contact your mail administrator.***
More information about the freebsd-questions
mailing list