help writing pci firmware


 
Thread Tools Search this Thread
Top Forums Programming help writing pci firmware
# 8  
Old 01-24-2011
So it is a PC ? What O/S is the PC running ?
If you are writing PCI firmware to create a PCI card from scratch, you would then have to write the driver on the O/S side to interface that into the O/S on the pc, otherwise its useless. I guess your first stop would be the PCI specification.
Good luck!
# 9  
Old 01-24-2011
Like I said it's not going to run on any OS, I plan to use a boot floopy, load grub, let grub load the "firmware/interface whatever you want to call it", then the firmware/interface will interface the PCI device. Thats it. And this firmware/interface will be written in assembly. Basically all I want to know is low level access such as address regions, and perhaps protocols.
# 10  
Old 01-24-2011
NeurOn, please compose your thoughts so that people do not waste their valuable time trying to decipher what you mean. Ongoing vagueness on your part is not appreciated.

Before anybody on this forum can ever begin to assist you, you need to decide what firmware your proposed driver code is going to run on, how you are going to program the firmware, and what hardware your low-level PCI driver is going to work with.

Oh, and which particular PCI standard are you planning to develop against

---------- Post updated at 06:16 PM ---------- Previous update was at 06:07 PM ----------

BTW, have you figured out which type of PCI bus is in your PC?
# 11  
Old 01-24-2011
OK, so you are writing some interfacing software in x86 assembly (firmware is code that lives in (e)prom on the PCI card itself, which I guess this isnt).

So you need to read up on GRUB (how that calls the x86 to start the boot sequence, and what it does before your code is called), and what will be available for you to use (BIOS calls, Software interrupts, dynamic memory, 32/64 bit, etc). Then you will need to reset the PCI bus, and initialize all the hardware you will need to talk to the PCI card (timers, PCI bridge, etc). Then you need to code the interaction with the PCI card (and the other hardware you will need). This is all stuff that O/S do when starting up, and I would say that you probably dont have a lot of choice about where to read about that, and 99% of it will be PC specific. My recommendation would be to look at the "Minix" sources. They are a lot simpler than Linux and are for teaching purposes, and will be relatively simplistic when they start the boot process. Even so, I think this is a large undertaking and your learning curves will be massive. I hope this helps you along your way...
# 12  
Old 01-24-2011
dude this is exactly what I'm looking for. Thanks for the help.
Oh, and sorry about the vagueness of my questions, I'll try to do better next time
# 13  
Old 01-24-2011
It seems to me that you should be looking at something like coreboot to execute your proposed payload rather than GRUB.
# 14  
Old 01-24-2011
Ah, this too might help.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Hardware

Could USB ever take over PCI

Internally speaking, for your motherboard bus. Would it be possible for a usb standard to be used in place of the PCI or PCIe bus that is now nearly standard on all PC's? If not, why wouldn't this work? (8 Replies)
Discussion started by: Lost in Cyberia
8 Replies

2. Hardware

Lspci: PCI Devices?

hey everyone, just a general question. I did an lspci on my home computer, and it got me thinking... When I hear pci..I think of the physical slots on your motherboard. usually beige in color.. But the list returned to me is of atleast 20 items. None of which, (besides the graphics card) is... (3 Replies)
Discussion started by: Lost in Cyberia
3 Replies

3. Slackware

converting mouse to pci

Need to free up a usb port for webcam. What does xorg.conf look like in order to work if I move mouse to PCI port via a converter plug? (1 Reply)
Discussion started by: slak0
1 Replies

4. Solaris

available PCI slots on v440

How do I find any available PCI slots on a v440? When I run prtconf, I get the following output? But I am not able to make out whether all the PCI slots are used. ================================= IO Devices ================================= Bus Freq Brd Type MHz Slot ... (1 Reply)
Discussion started by: jtamminen
1 Replies

5. Linux

PCI Card recognized

I installed PCI Card HP SC44Ge - SAS1068E on my linux CentOS 5.4 is there a way to find out if the PCI is properly installed and recognized by linux. lspci is enough? just to add that PCI card is connected to a tape... also how can I find out driver and firmware version? thanks a... (1 Reply)
Discussion started by: karlochacon
1 Replies

6. Solaris

How to look for open pci slots

I'm looking for open PCI slots in our array of sun boxes. I need help on how to distinguish if there's an open slot or not using prtdiag and prtconf. Is there a better tool for this? TIA. Here's my prtdiag -v | grep pci: pci 66 PCI5 SUNW,qlc-pci1077,2312 (scsi-+ ... (9 Replies)
Discussion started by: revzalot
9 Replies

7. UNIX for Dummies Questions & Answers

bad pci slot?

Hi, im having a problem installing my pci wireless card. Im using knoppix, but my problem is with the mobo i think. im using an older laptop, toshiba satellite 2540 and when i plug in the card i get lights on sometimes. this means its getting power right. so then to install the card into the... (0 Replies)
Discussion started by: jestra
0 Replies

8. Solaris

Pci Id

How do I get the PCI ID for my Realtek adapter? It's a Solaris x86 installation. (5 Replies)
Discussion started by: kuultak
5 Replies

9. Solaris

rs232 pci-card

hello mates, do you know a manufactor for rs232 serial pci cards for the sparc architecture? it seems that there is no original product from sun for that purpose. strange, isn't it? problem is that i have a V250 with only one db9 rs232 serial port, and i need it for a modem connection, but i also... (1 Reply)
Discussion started by: pressy
1 Replies

10. BSD

WLAN PCI Cards

Hi! I just wanted to know what network cards are supported in FreeBSD. I have looked at the list of supported cards but I can't find any of them in the stores. Is the list not updated, I would really preciate info about where (in EU, Sweden) I can buy them. /Peter (2 Replies)
Discussion started by: Barfly.se
2 Replies
Login or Register to Ask a Question