Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 1 Jul 2004 18:05:55 +0400
From:      Alex K <lesha@intercaf.ru>
To:        ticso@cicely.de, "Daniel O'Connor" <doconnor@gsoft.com.au>
Cc:        freebsd-hackers@freebsd.org
Subject:   uplcom.c changes (was: USB driver selection algorithm?)
Message-ID:  <200407011805.55432.lesha@intercaf.ru>
In-Reply-To: <20040701123615.GA57889@cicely12.cicely.de>
References:  <200406301904.44292.lesha@intercaf.ru> <20040701123615.GA57889@cicely12.cicely.de>

next in thread | previous in thread | raw e-mail | index | archive | help

Hello!
 =20
Bernd Walter wrote:
> uplcom takes devices (or maybe interfaces) based on vendor/product ID.
>
> > What approach will you recommend?
>
> What is your problem?
2 different USB devices with same vendor/product ID, only revision differes.
They both will be handeled by uplcom, but initialization should be differen=
t,
because chips are different (PL2303 and PL2303X)

Daniel O'Connor wrote:
> The probe and attach routines shouuld be able to select on revision,
> although  I'd be suprised if the 2 differ by enough that one driver could=
n't=20
> cover them both.
Technically it will be 1 driver, but device initialization should
differ based on revision. (just trying to add some functionality to uplcom.c
to support PL2303X USB-2-Serial chipset)

I have already sent some mail to personal @freebsd.org boxes of people
who were tweaking uplcom.c during last few months, but I think I should
copy it to the list, as it is not the only problem I have.

Cheers,
        AL.

=2D------[ Cut here ]---------------

I have recently got USB cable for my Nokia 6100 phone,
which is based on PL2303X chipset, I thought it will work
with uplcom driver, but no, something changed.

After some investigation and USB bus snooping on "Other OS"=20
I have found that upon connection host sends some special
initialization sequences to the cable.

I have tried modifing uplcom.c to do this initialization, now
I can "cu -l /dev/ucom0" and speak "AT" commands to phone.

But connection to phone is somehow not "binary safe", some=20
characerts typed will return garbage - for example "F" returns "=FD"=20
but some characters work OK, and if I will type a working letter -=20
any one character following will also be OK. So if I type "AF"=20
it will work correctly

What can be causing such problem?

Patch here: http://gate.intercaf.ru/~lesha/6100/pl2303x.patch

Also Prolific people gave me Linux driver for PL2303X
(it is not included with Linux as for now, and not avaible via
their web site)
http://gate.intercaf.ru/~lesha/6100/pl2303x-linux.zip

This may be of interest.

If anyone of you, magisters, will have some spare time and/or
ideas how to make this work - I will be very pleased.

My kernel programming knowledge is very limitied, not to say "none".



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