G'Day,

> >     I have now just finished writing a kernel module which handles the
> > OMAP's hardware support for 1-Wire, and have used a test program to
> > interact with the DS2431.  All that remains to do is have a nice, user
> > program that can handle interactions with any number of any kind of
> > 1-Wire device.  Since one happens to be available here, I figured the
> > best approach would be to add in support for my driver to owlib.
> Sounds great.
> >
> >     I am reading through the source to try and work out how this would best
> > be done, but I thought it would be a good idea to ask the developers how
> > they would suggest going about it: after all, you have a much better
> > idea of how this all works than I am likely to figure out in the next
> > few days.
> Pretty easy. You are right, the adapter support is quite well encapsulated.
> 
> Basically all adapter support is in owlib, and transparent to higher levels.
> 
> The type of adapter is determined mainly from the command line (though the 
> serial adapters are distinguished by their response to a query).
> 
> Unique support is in the files
> 
> module/owlib/src/c/*
> 
> where * is ow_ds1410.c
> ow_ds9097.c
> ow_ds9097U.c
> ow_ds9490.c
> 
> (also ow_server.c and ow_badadapter.c)
> 
> I would base my support on ow_9097.c which is a bit-banging passive serial 
> support.

        Thanks for the suggestions: it has made things a lot easier to work
through!  I had actually skipped those files (ow_ds9097.c, etc) assuming
they were 1-Wire devices, rather than adaptors --- I did not think I
would find anything useful in them.  Was I ever wrong!

        I have written ow_omap.c as well as made a variety of additions to
other files here and there, and am now able to add `-o /dev/wire' to the
command line when I load owfs.  When I mount owfs, I get bus.0/, and
when I cat the files in system/adapter/ I now get the information I
would expect to see. I do not, however, get any devices in bus.0/ ---
obviously I am still lacking something.

        My first, key, question is this: where does the actual polling for
devices occur, and what do I have to ensure I do/have to be able to get
it to at least recognise the existence of the device?

        Secondly, I currently have `f->reset' set to a dummy function, as I was
not sure what the purpose of this was, and if it really applied to my
device at all.  If someone could just tell be the basic purpose of this
function, I will be able to work out what to do with it.

        Thanks for the help again: I feel I am on the verge of being able to
see my device, and it is entirely due to the assistance here!

        -- Matthew



-------------------------------------------------------
This SF.Net email is sponsored by the 'Do More With Dual!' webinar happening
July 14 at 8am PDT/11am EDT. We invite you to explore the latest in dual
core and dual graphics technology at this free one hour event hosted by HP, 
AMD, and NVIDIA.  To register visit http://www.hp.com/go/dualwebinar
_______________________________________________
Owfs-developers mailing list
Owfs-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/owfs-developers

Reply via email to