Re: w1_ds2408 linux driver

From: Jean-Francois Dagenais
Date: Thu Mar 07 2013 - 15:09:26 EST



On 2013-02-19, at 9:44 AM, Olivier KSIKES wrote:

> Dear Mr Dagenais,
>
> I have just tried your w1-ds2408 linux driver on a TP link mini router running openwrt with w1-gpio. I was able to successfully update a 2408 outputs by writing a byte to the /output file.
> However, I would like to drive an LCD screen, and this method seems limited to 3/4 chars per second.
>
> I had little more luck driving the 2408 thru the generic w1 driver (using the rw file), where I reached around 25 bytes/s.
> This is however far from the actual 1wire bus capabilities.
>
> Thus, I'm wondering if there is a faster way to output a series of bytes to the 2408 using your driver?
> Is there any doc available apart from w1_ds2408.c comments?
>
> With best regards and congratulations for your great work,
>
> Olivier Ksikes

Here are my test results.

I have a simple main() that opens the /sys/bus/w1/devices/29-0000000xyz/output
file and keeps it open.

I sweep from 0 to 255 in a tight loop that simply does

for (int i=0; i <= 1024; ++i) {
file.putChar(i);
file.seek(0);
}
return 0;

I invoke this using "time" and do 1024/timespent to get:
Current driver (w/read-back ): ~48 chars/seconds
Improved driver (wo/read-back): ~98 chars/seconds

patch will follow...

Cheers.




--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/