Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 29 Jan 2000 01:41:41 +0100
From:      "Joachim Jäckel" <Joachim.Jaeckel@d.kamp.net>
To:        freebsd-multimedia@freebsd.org
Subject:   could need a little bit support with a device-driver
Message-ID:  <38923745.8ADE97CC@d.kamp.net>

next in thread | raw e-mail | index | archive | help
Hello,

maybe someone could help me a little bit, to understand the following
(or would correct me, if I'm wrong).

My Miro DC10 Card is build like the following: (I'm currently for the
beginning
only interested in the decoder site)

  +---------+         +------------+        +---------+
  | Decoder |         | JPEG Codec |        | Encoder |
  | SAA7110 |         | ZR36060    |        | ADV???? |
  +---------+         +------------+        +---------+
       |                     |
       +---------------------+
                             |
                      +------------+
                      | PCI Bridge |
                      | ZR36067    |
                      +------------+
                             |
                             V
  ----------------PCI-Bus-----------------------------

My "driver" currently detects the PCI-Bridge Processors ID, is mapping
his
registers to a program structure and initializes this structure. 

I think to fully initialize the decoder part of the card, I have to
initialize
the decoder chip, too. (The documentation of the PCI-Bridge chip is
saying, 
that the chip offers an easy way [the post-office-protocoll] to
communicate
with all clients - but, because the decoder chip itself has an i2c
interface,
I've no idea, how to set the subaddresses for data-transfer to the i2c
interface
of the decoder-chip through the PCI-Bridge-chip.)

Because of that, I think I've to program it similiar to the
i2c-interface of the
bktr-device. Therefore, I need the smbus, iicbus and iicbb (btw. what is
the
"bit-banging"-code?) in my kernel and have to register the i2c code with
the "device_add_child" function etc. etc.
(It seems to me, that I could copy the whole bktr_i2c.c file with only
small
changes to my driver, couldn't I?)

Besides that, I would need some functions in the i2c-area, which would
make my
decoder initialization. Couldn´t I simply add a function with the new
funktionality
and call this new i2c-function from e.g. the ioctl-routine of my
main-driver?
How could I do write to my encoder with a slave-indicator and a
sub-address (bti2c_smb_* functions?)?
(I'll need an interface to the encoder which has also an i2c-interface
in the 
future, too. - How could I get the slave-indicator value from the card?
I think
this interface would use the same i2c-code in the driver?)

That are enough questions for the beginning, (I'll have severall in the
future...)
maybe you could help me a little bit, to see a little bit clearer.

Thanks in advance,
-- 
Joachim.Jaeckel@d.kamp.net -- http://home.kamp.net/home/joachim.jaeckel


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-multimedia" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?38923745.8ADE97CC>