EmbeddedRelated.com
Forums
Memfault Beyond the Launch

Need help for developing a SCSI hard disk driver

Started by Bobione44 June 19, 2006
Hello,

First of all, here is a description of the hardware. The microprocessor
is a Freescale PowerQuicc8270, connected to a LSI53C1010 controler via
a PCI bus, and a hard disk is connected to the SCSI controler.

I need to develop a hard disk driver to read and write binary data
from/to an offset on the disk. The driver does not need to be generic
at all, it should only be able to read/write from/to ONE hard disk
connected to the SCSI bus (no need to support any other device
(scanner, CDR Writer, ...)).

The point is I dont know anything on driving a SCSI hard disk. I have
found reference documentation for each hardware component, but it is
not containing any information on how to read and write to the hard
disk. I imagine there is a sequence of SCSI commands to be sent, but
the static and dynamic descriptions of theses commands remains unknown
to me.

Does anyone could help me by indicating me where to find such
informations :
- introduction to SCSI bus and hard disk driving
- configuration of SCSI bus
- sequence of SCSI command to send for reading binary data, for writing
binary data, for activating and deactivating the hard disk.
Web links or books references would be also very usefull.

Thanks for your help :-)

Davy

Bobione44 wrote:

> Does anyone could help me by indicating me where to find such > informations : > - introduction to SCSI bus and hard disk driving > - configuration of SCSI bus > - sequence of SCSI command to send for reading binary data, for writing > binary data, for activating and deactivating the hard disk. > Web links or books references would be also very usefull.
http://www.amazon.com/gp/product/0201175142/qid=1150759001/sr=2-2/ref=pd_bbs_b_2_2/104-6822622-9986367?s=books&v=glance&n=283155 I found the IDE stuff useful, can't speak for the SCSI.
"Bobione44" <bobione44@hotmail.fr> wrote in message 
news:1150756380.694837.177750@p79g2000cwp.googlegroups.com...

> The point is I dont know anything on driving a SCSI hard disk. I have > found reference documentation for each hardware component, but it is > not containing any information on how to read and write to the hard > disk. I imagine there is a sequence of SCSI commands to be sent, but > the static and dynamic descriptions of theses commands remains unknown > to me.
SCSI is *NOT* magic. There are *fundamental technical reasons* why it is necessary to sacrifice a young goat to your SCSI chain now and then. -- jfw@proteon.com (John Woods) (From 0xdeadbeef archive)
www.t10.org is a good starting point.It will take some reading, but
generally you should be able to find your way within a few days.
The documents are well organized and the task is not hard,
just bulky.

Dimiter

------------------------------------------------------
Dimiter Popoff               Transgalactic Instruments

http://www.tgi-sci.com
------------------------------------------------------

Bobione44 wrote:
> Hello, > > First of all, here is a description of the hardware. The microprocessor > is a Freescale PowerQuicc8270, connected to a LSI53C1010 controler via > a PCI bus, and a hard disk is connected to the SCSI controler. > > I need to develop a hard disk driver to read and write binary data > from/to an offset on the disk. The driver does not need to be generic > at all, it should only be able to read/write from/to ONE hard disk > connected to the SCSI bus (no need to support any other device > (scanner, CDR Writer, ...)). > > The point is I dont know anything on driving a SCSI hard disk. I have > found reference documentation for each hardware component, but it is > not containing any information on how to read and write to the hard > disk. I imagine there is a sequence of SCSI commands to be sent, but > the static and dynamic descriptions of theses commands remains unknown > to me. > > Does anyone could help me by indicating me where to find such > informations : > - introduction to SCSI bus and hard disk driving > - configuration of SCSI bus > - sequence of SCSI command to send for reading binary data, for writing > binary data, for activating and deactivating the hard disk. > Web links or books references would be also very usefull. > > Thanks for your help :-) > > Davy
"Bobione44" <bobione44@hotmail.fr> writes:
> > First of all, here is a description of the hardware. The microprocessor > is a Freescale PowerQuicc8270, connected to a LSI53C1010 controler via > a PCI bus, and a hard disk is connected to the SCSI controler. > > I need to develop a hard disk driver to read and write binary data > from/to an offset on the disk. The driver does not need to be generic > at all, it should only be able to read/write from/to ONE hard disk > connected to the SCSI bus (no need to support any other device > (scanner, CDR Writer, ...)). > > The point is I dont know anything on driving a SCSI hard disk. I have > found reference documentation for each hardware component, but it is > not containing any information on how to read and write to the hard > disk. I imagine there is a sequence of SCSI commands to be sent, but > the static and dynamic descriptions of theses commands remains unknown > to me. > > Does anyone could help me by indicating me where to find such > informations : > - introduction to SCSI bus and hard disk driving > - configuration of SCSI bus > - sequence of SCSI command to send for reading binary data, for writing > binary data, for activating and deactivating the hard disk. > Web links or books references would be also very usefull.
There's a standard for SCSI which explains it quite well. Also, most vendors SCSI controllers have a good description of the process. The controllers do the tricky parts (some better than others)...
T10.org is a very good link, and I have found lots of documentation
which should answer to my questions. The reference documentation I was
searching is also there.

Thanks for your help, I just have to read and extract the interesting
informations for my job ;-)

Davy


Memfault Beyond the Launch