Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 23 Feb 2017 02:48:28 +0200
From:      Arto Pekkanen <isoa@kapsi.fi>
To:        freebsd-hardware@freebsd.org
Subject:   Re: (accidentally unicasted) Re: In which a touchscreen is rehabilitated, or: How I learned to stop being scared and just hack at /usr/src/sys/dev
Message-ID:  <b6431088-8831-34fe-8eaa-23982c8ea517@kapsi.fi>
In-Reply-To: <c7ecd84b-e367-8a8f-e42a-e9a3e141d227@gmx.com>
References:  <0c7ad294-86f0-a076-f337-83e17d58fdd0@gmx.com> <6503fcce-fa54-e449-d158-f77323bebfcb@kapsi.fi> <c7ecd84b-e367-8a8f-e42a-e9a3e141d227@gmx.com>

next in thread | previous in thread | raw e-mail | index | archive | help
This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--3BtGTLBta5xMA6iaKoHafhn2gaqHoDegA
Content-Type: multipart/mixed; boundary="d21XJW5UFOXamRvqIKiaA5Db8vVlsVlX4";
 protected-headers="v1"
From: Arto Pekkanen <isoa@kapsi.fi>
To: freebsd-hardware@freebsd.org
Message-ID: <b6431088-8831-34fe-8eaa-23982c8ea517@kapsi.fi>
Subject: Re: (accidentally unicasted) Re: In which a touchscreen is
 rehabilitated, or: How I learned to stop being scared and just hack at
 /usr/src/sys/dev
References: <0c7ad294-86f0-a076-f337-83e17d58fdd0@gmx.com>
 <6503fcce-fa54-e449-d158-f77323bebfcb@kapsi.fi>
 <c7ecd84b-e367-8a8f-e42a-e9a3e141d227@gmx.com>
In-Reply-To: <c7ecd84b-e367-8a8f-e42a-e9a3e141d227@gmx.com>

--d21XJW5UFOXamRvqIKiaA5Db8vVlsVlX4
Content-Type: text/plain; charset=windows-1252
Content-Transfer-Encoding: quoted-printable

I was just being direct in regards to having a new feature contributed,
instead of it drowning into the noise of a mailing list, which tends to
happen too often. Especially support for new devices are needed.

As for getting the patch approved and MFC'd, read this first:
https://www.freebsd.org/doc/en_US.ISO8859-1/articles/contributing/contrib=
-how.html

A direct quote from above:
"Once you have a set of diffs (which you may test with the patch(1)
command), you should submit them for inclusion with FreeBSD as a bug
report."

To learn how to report a bug report:
https://www.freebsd.org/support/bugreports.html

A web based platform is used to submit and track the problem report.
This is better for the maintainers than using mailing lists.

Thanks.

On 23.2.2017 2:08, Large Hadron Collider wrote:
> Hey, sorry to piss you off but I do not know how to do this.
>=20
>=20
> On 22/02/2017 13:11, Arto Pekkanen wrote:
>> Please contribute your patch and get it approved and MFC'd by
>> maintainers so that other people who are not knowledgeable enough can
>> have the thing working without having to figure out how to hack and
>> patch the kernel. Thanks.
>>
>> On 21.2.2017 2:49, Large Hadron Collider wrote:
>>> (Apologies if this doesn't line break at 79 chars - full formatting i=
n
>>> HTML but this may be lost - shouldn't lose any info though)
>>>
>>> Good day subscribers to this list.
>>>
>>> I'm here with what could be described as a success story and a patch =
in
>>> the same e-mail.
>>>
>>> Please do stop me if WACF00E has already been slated for the next maj=
or
>>> release - but I would like to share how I got my HP Elitebook 2760p's=

>>> touchscreen working.
>>>
>>> So I, a former and now again user of FreeBSD (I got hacked the first
>>> time... silly Ellie shouldn't give shells to strangers, should she no=
w?)
>>> have a laptop whose screen is touch-capable, and whose touchscreen
>>> subsystem is based on a serial Wacom tablet.
>>>
>>> It worked under Linux and too I presume Windows (with which the lapto=
p
>>> shipped), but not FreeBSD. I thought, what was going on? What was I
>>> doing wrong? So after some poking around I discovered that the screen=
 is
>>> a WACF00E - not supported in 11.0-RELEASE-p1 by the driver that handl=
es
>>> the UART.
>>>
>>> It showed
>>>
>>>      unknown pnpinfo _HID=3DWACF00E _UID=3D0 at
>>> handle=3D\_SB_.PCI0.LPCB.SIO_.DIGI
>>>
>>> as the devinfo line.
>>>
>>> Intriguingly, there was this line in uart_bus_acpi.c:static struct
>>> isa_pnp_id acpi_ns8250_ids[]:
>>>
>>>      {0x04f0235c, "Wacom Tablet PC Screen"},         /* WACF004 */
>>>
>>> So I thought what the hell, I'd copy that line under itself and chang=
e
>>> 04f0 (which is byte-swapped, counterintuitively) to 0ef0, representin=
g
>>> WACF00E.
>>>
>>> Adding this:
>>>
>>>      {0x0ef0235c, "Wacom Tablet PC Screen 00e"}, /* WACF00e */
>>>
>>> to uart_bus_acpi.c and this:
>>>
>>>      {0x0ef0235c, NULL},     /* WACF004 - Wacom Tablet PC Screen*/
>>>
>>> (Yes it should read WACF00E in the comment) under the WACF004 entry i=
n
>>> uart_bus_isa.c, then recompiling and installing in whatever way your
>>> configuration might demand seems to make the kernel detect the tablet=
 as
>>> a UART.
>>>
>>> So it detected it, and the dev file was /dev/cuau4, for uart4, the
>>> WACF00E (it was ttyS4 under Linux).
>>>
>>> Great. X didn't detect it on its own, but that let me debug it using
>>> Minicom, which I promptly installed.
>>>
>>> After telling Minicom to use /dev/cuau4 as the modem, and telling it =
to
>>> use 38400 8N1, touches to the screen resulted in what can only be
>>> described as euphoric garbage, indicating that this ugly hack on top =
of
>>> hack alert worked.
>>>
>>> So I set up /usr/local/etc/X11/xorg.conf.d/wacom.conf to include
>>> (slightly amended from my actual setup, which only has ISDV4 in the
>>> stylus but still works for touch, haven't tested for stylus):
>>>
>>> Section "InputDevice"
>>>      Identifier    "wacom stylus"
>>>      Driver        "wacom"
>>>      Option        "Type"            "stylus"
>>>      Option        "Device"        "/dev/cuau4"
>>>      Option        "ForceDevice"        "ISDV4"
>>>      Option          "AutoServerLayout"    "true"
>>> EndSection
>>>
>>> Section "InputDevice"
>>>      Identifier    "wacom eraser"
>>>      Driver        "wacom"
>>>      Option        "Type"            "eraser"
>>>      Option        "Device"        "/dev/cuau4"
>>>      Option        "ForceDevice"        "ISDV4"
>>>      Option          "AutoServerLayout"    "true"
>>> EndSection
>>>
>>> Section "InputDevice"
>>>      Identifier    "wacom touch"
>>>      Driver        "wacom"
>>>      Option        "Type"            "touch"
>>>      Option        "Touch"            "on"
>>>      Option        "Device"        "/dev/cuau4"
>>>      Option        "ForceDevice"        "ISDV4"
>>>      Option          "AutoServerLayout"    "true"
>>> EndSection
>>>
>>> Restarted X, and after
>>>
>>>      % xsetwacom set "wacom touch" Touch on
>>>
>>> (I didn't initially have Touch on in the options list for "wacom touc=
h")
>>> it was almost like striking platinum in a gold mine or something when=

>>> the mouse just followed my finger the way I was used to it doing so
>>> under Linux.
>>>
>>> To those of you who say that FreeBSD will never be ready for the
>>> desktop, you're only right when you're talking to newbs. And this is
>>> living proof that if you know some C and you're intrepid enough,
>>> miracles really can happen.
>>>
>>> _______________________________________________
>>> freebsd-hardware@freebsd.org mailing list
>>> https://lists.freebsd.org/mailman/listinfo/freebsd-hardware
>>> To unsubscribe, send any mail to
>>> "freebsd-hardware-unsubscribe@freebsd.org"
>=20
> _______________________________________________
> freebsd-hardware@freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-hardware
> To unsubscribe, send any mail to "freebsd-hardware-unsubscribe@freebsd.=
org"

--=20
Arto Pekkanen


--d21XJW5UFOXamRvqIKiaA5Db8vVlsVlX4--

--3BtGTLBta5xMA6iaKoHafhn2gaqHoDegA
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iF4EAREIAAYFAliuMWgACgkQTBivhqtJa25VawD+JEfT8v7rD1vdjQakGxoUoAux
c9M0dFnhc/J4TQoavc4BAIxCPwvrt37uVFQFLxQFhrgDtCmG/ANPIe6nhLc63TgL
=e1Uf
-----END PGP SIGNATURE-----

--3BtGTLBta5xMA6iaKoHafhn2gaqHoDegA--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?b6431088-8831-34fe-8eaa-23982c8ea517>