2001-10-29 15:45:45

by John Nilsson

[permalink] [raw]
Subject: Writing a driver for a pci busmaster ide controller, need tutoring.

This is probably one of those RTFM and FAQ mails, but I'm desperate.

I have just recived the register specs for a chip called piccolo_s, this is
a bus master ide controller found it some older toshiba laptops.
As this is my first atempt to write a driver I find my self not really
having the knowhow to do this. And it is extremely hard to find good
tutorials on the subject =)
So please if anyone find the time and motivation, would you write me one?
Mabey not but if you were to send me all you know on this topic I might be
able to puzzle the bits and pieces together and write this driver.
It would be easier for me to just let one of you guys write this driver, but
if noone is in any hurry I would find this a great learning experience, and
fun to ;)

I've found one good documet, "PCI Managment in Linux 2.2 by Alan Cox", but I
feel this isn't enough. Alan? would you please give me some pointers?

My experience is not great, I can find my way arond C. I have some basic
knowlege of how a computer works (apparantly not enough), but I acctually do
not know what this driver is supposed to do, other than setting som
registers.
Also is there a way to use /proc to find devices that don't have a driver?
Or is it just not there?
/John Nilsson
If you dont feel like sending me private mails, pleas CC me :)

_________________________________________________________________
Get your FREE download of MSN Explorer at http://explorer.msn.com/intl.asp


2001-10-29 16:23:11

by Alan

[permalink] [raw]
Subject: Re: Writing a driver for a pci busmaster ide controller, need tutoring.

> As this is my first atempt to write a driver I find my self not really
> having the knowhow to do this. And it is extremely hard to find good
> tutorials on the subject =)
> So please if anyone find the time and motivation, would you write me one?
> Mabey not but if you were to send me all you know on this topic I might be
> able to puzzle the bits and pieces together and write this driver.

There are two things that will help you straight away. The first is the
Linux Device Drivers book (version 2) - also available online for
cheapskates ;)

The second is Documentation/pci.txt, and Documentation/DMA-mapping.txt

> It would be easier for me to just let one of you guys write this driver, but
> if noone is in any hurry I would find this a great learning experience, and
> fun to ;)

Another good bit of news is that providing the device follows standard
IDE bus mastering design (pretty much all do) then you only actually have
to write the tuning code for the chipset.

ide-pci.c contains a table of PCI capable devices and any driver needed.
You provide pci initialisers, dma finctions and ide functions.

Take a look at amd74xx.c for example - thats a driver letting ide-dma.c
do all the work.


2001-10-30 15:31:03

by Alex Deucher

[permalink] [raw]
Subject: Re: Writing a driver for a pci busmaster ide controller, need tutoring.

The only issue with the Piccolo controller is that I
don't think it is a PCI device (doesn't show up in
lspci anyway). It's part of toshiba's integrated
chipset, so I'm not sure exactly how it is accessed.
I haven't looked at the docs in a while. Good luck
with it. I'd love to see DMA working on my laptop.


Alex

----------------------------

> As this is my first atempt to write a driver I find
my self not really
> having the knowhow to do this. And it is extremely
hard to find good
> tutorials on the subject =)
> So please if anyone find the time and motivation,
would you write me one?
> Mabey not but if you were to send me all you know on
this topic I might be
> able to puzzle the bits and pieces together and
write this driver.

There are two things that will help you straight away.
The first is the
Linux Device Drivers book (version 2) - also available
online for
cheapskates ;)

The second is Documentation/pci.txt, and
Documentation/DMA-mapping.txt

> It would be easier for me to just let one of you
guys write this driver, but
> if noone is in any hurry I would find this a great
learning experience, and
> fun to ;)

Another good bit of news is that providing the device
follows standard
IDE bus mastering design (pretty much all do) then you
only actually have
to write the tuning code for the chipset.

ide-pci.c contains a table of PCI capable devices and
any driver needed.
You provide pci initialisers, dma finctions and ide
functions.

Take a look at amd74xx.c for example - thats a driver
letting ide-dma.c
do all the work.

__________________________________________________
Do You Yahoo!?
Make a great connection at Yahoo! Personals.
http://personals.yahoo.com