OS2 World Community Forum
OS/2, eCS & ArcaOS - Technical => Hardware => Topic started by: Martin Iturbide on September 10, 2023, 06:49:44 pm
-
Hello
Now that I was able to install ArcaOS 5.1.0 two machines with touch screen support, I want to see if by any chance I can get support with Wim's drivers.
My first try is with the "Lenovo Miix 510-12ISK (https://www.os2world.com/wiki/index.php/Lenovo_Miix_510-12ISK)". Since it is dual boot, I had tested with Windows 10 that it has a working touch screen and the Lenovo Thinkpad Active Pen.
I had generated it's PCI hardware report (https://www.os2world.com/wiki/index.php/Lenovo_Miix_510-12ISK_Hardware_Report)and USB report, but I can find which is the Hardware ID I should include on USBECD. I'm attaching the devices that I see on Windows 10, but the hardwareID is not a regular one. I can only see is a Wacom device.
My plan is to start with Wim's "Thinkpad Yoga12 (https://home.hccnet.nl/w.m.brul/Yoga12/index.html)" package, since it' the more brand related.
I want to add:
DEVICE=C:\OS2\BOOT\XSMOUSE.SYS
DEVICE=C:\OS2\BOOT\AMOUSE.SYS STYPE=XSMOUSE$
DEVICE=C:\OS2\BOOT\USBECD.SYS /D:????:????:???? /N:$FINGER$ /S /V
DEVICE=C:\OS2\BOOT\USBECD.SYS /D:????:????:???? /N:$STYLUS$ /S /V
RUN=C:\OS2\BOOT\YOGA12.EXE
But I need to fill up the ????
Regards
-
See this page
https://home.hccnet.nl/w.m.brul/penguide/index.html#LenovoThinkPadUSB (https://home.hccnet.nl/w.m.brul/penguide/index.html#LenovoThinkPadUSB)
-
See this page
https://home.hccnet.nl/w.m.brul/penguide/index.html#LenovoThinkPadUSB (https://home.hccnet.nl/w.m.brul/penguide/index.html#LenovoThinkPadUSB)
Thanks Joop
I'm reading the page, and I'm leaning to think that my Wacom device on the Lenovo Miix is a COM Device, since I can not find it on pci.exe or lsusb.
According to what I'm reading I need to use "ACPITREE", but I can not find it. I saw an old Alex Taylor post (2014) (https://www.os2world.com/forum/index.php/topic,289.msg2285.html#msg2285) where he was not able to find ACPITREE, but he found the IRQ looking in Windows, but I don't get where to find that info.
Regards
-
Have you tried rmview? rmview /irq should show the interrupts, rmview /io the ports, rmview /? for help.
-
Thanks Dave
I used rmview /irq and /io, but I don't understand how to map that data to the PSCOM.SYS driver. (I guess I need to use that PSCOM.SYS)
This is the sample of the site:
DEVICE=O:\OS2\BOOT\PSCOM.SYS (1,200,4,I)
(COM1 to access the Wacom Pen at port=200 and irq=4)
But don't know which device is the correct one from the list and how to get those values.
Regards
-
Sorry, I was mistaken about rmview, seems to only work with the driver correctly installed. There must be a way as the installer finds com ports during install.
-
Does it really find all COM ports or only the default COM ports? With a legacy BIOS (CSM), the default COM ports could always be found by looking at the BIOS data area at real address 40:0 (physical address 400). I don't know if that data area still exists in a UEFI system.
-
At one point, testing 5.0.2.3, it found this,
Bus 0 (PCI Express), Device Number 3, Device Function 3
Vendor 8086h Intel Corporation
Device 29B7h 82Q35 Express Serial KT Controller
On a previous computer, resulting in pscom.sys being installed and the boot stopping as pscom.sys couldn't find the port as it was likely part of the Intel management engine and inaccessible. Of course that is using pci.exe and I can't remember if pscom had any arguments. It did result in adding logic in the installer filtering out that controller.
I can't turn off the CSM on this machine to test whether it would find COM 1 (or 2-4 if set that way) and does raise the question whether a pure UEFI machine still has an ISA bus. This one still has the ISA bus with the parallel and serial port on it, it's an old machine.
Hmm, looking at a random testlog from a recent machine on the list, I see,
Bus 0 (PCI Express), Device Number 22, Device Function 3
Vendor 8086h Intel Corporation
Device A363h Cannon Lake PCH Active Management Technology - SOL
Command 0007h (I/O Access, Memory Access, BusMaster)
Status 00B0h (Has Capabilities List, Supports 66MHz,
Supports Back-To-Back Trans., Fast Timing)
Revision 10h, Header Type 80h, Bus Latency Timer 00h
Self test 00h (Self test not supported)
PCI Class Simple Communication, type Serial - 16550
Subsystem ID 313617AAh Unknown
Subsystem Vendor 17AAh Lenovo
Address 0 is an I/O Port : 30A0h
Address 1 is a Memory Address (0-4GiB) : B123F000h
System IRQ 19, INT# D
New Capabilities List Present:
Message Signalled Interrupt Capability
MSI is disabled
MSI function can generate 64-bit addresses
Power Management Capability, Version 1.2
Does not support low power State D1 or D2
Does not support PME# signalling
Current Power State : D0 (Device operational, no power saving)
So perhaps all recent machines that have a serial port have PCI ones.
Martin, have you looked at the pci.exe report.
-
You have a USB device, and I suppose it should be:
DEVICE=C:\OS2\BOOT\USBECD.SYS /D:056A:508C:#### /N:$FINGER$ /S /V
DEVICE=C:\OS2\BOOT\USBECD.SYS /D:056A:508C:#### /N:$STYLUS$ /S /V
(You have not provided enough hardware info that would allow to find out the device release but I think that last parameter of /D is optional)
-
So perhaps all recent machines that have a serial port have PCI ones.
This is true for Notebooks, but not for desktop boards. Don't know how much are available but if you look for a standard COM port, they still exist one some motherboards. Sometimes there's only the header on the board and you need to buy a matching cable to get it to the back side of your PC.
I guess what the Intel management engine includes (sometimes it reports itself as Com42:) is something you can't use for anything else then let Intel manage your system. But I'm not an expert here. I only switch IME off on all my systems as much as possible.
-
You have a USB device, and I suppose it should be:
DEVICE=C:\OS2\BOOT\USBECD.SYS /D:056A:508C:#### /N:$FINGER$ /S /V
DEVICE=C:\OS2\BOOT\USBECD.SYS /D:056A:508C:#### /N:$STYLUS$ /S /V
(You have not provided enough hardware info that would allow to find out the device release but I think that last parameter of /D is optional)
Hello Lars
I have the Tablet/Laptop device PCI report here: https://www.os2world.com/wiki/index.php/Lenovo_Miix_510-12ISK_Hardware_Report
I can not find any "056A:508C" device with PCI.exe or lsusb. What other report do you suggest me to try to find the ID of this device.
I'm still not sure if the touch screen and pen support is USB or COM related.
Regards
-
While searching the internet I found "GNU Linux Debian 11 hardware review - Lenovo Ideapad MIIX 510 12ISK_dmesg.txt" which I attached here.
It appears there as a USB device and its device driver statement would be:
DEVICE=C:\OS2\BOOT\USBECD.SYS /D:056A:508C:0001 /N:$LENOVO$ /S /V
To be on the save side use the wildcard character # for the device release number:
DEVICE=C:\OS2\BOOT\USBECD.SYS /D:056A:508C:#### /N:$LENOVO$ /S /V
After reboot you may run the USBWRITE.CMD script to obtain and display the device descriptor, configuration descriptors and associated interface and endpoint descriptors. Use USBWRITE $LENOVO$ for this particular USB device.
-
Hello Wim
I tried on my config.sys
DEVICE=C:\OS2\BOOT\XSMOUSE.SYS
DEVICE=C:\OS2\BOOT\AMOUSE.SYS STYPE=XSMOUSE$
...
DEVICE=C:\OS2\BOOT\USBECD.SYS /D:056A:508C:#### /N:$LENOVO$ /S /V
When I run "usbwrite $LENOVO$" I get:
SYS0031: A device attached to the system is not functioning.
Just in case I'm attaching my testlog report.
FYI: Since this machine is dual boot, I had checked that on Windows 10 the touch screen and pen support works.
Regards
-
Hallo Martin,
Alas, in ..generic.log the touch screen device does not show up as a USB device nor as a COM device. In Linux Debian it shows up as an SMBus attached I2C device from Synopsys Designware. That system knows how to deal with that and represents it as USB device 056A:508C:0001 (which we tried and failed on our system). As far as I know there is no software to deal with I2CBus/SMBus devices from an application in our operating system. Therefore pen and touch cannot be supported on this laptop.
Regards, Wim.
-
Thanks for the reply. I will move on to try a different touch screen laptop.
But I would like to know, is there a way in ArcaOS to generate some report that will list the touch screen and pen devices like the report that was tool from Linux Debian? (that report that Wim shared from the internet). LSUSB does not show it in this case also.
I'm still trying to find ACPITREE, but I don't know if that is the right tool for this, or where to get it.
Regards
-
AcpiTree is a sample program from the ACPI toolkit, which is distributed with ACPI, but not installed by default.
-
Did AcpiTree compile for you?
I get,
wcc386 acpitree -bm -bt=OS2 -6s -fpi -zq -zp4 -DACPI_APPLICATION
acpitree.c(73): Error! E1031: Name 'Sharable' not found in struct/union acpi_resource_irq
acpitree.c(145): Error! E1031: Name 'Sharable' not found in struct/union acpi_resource_extended_irq
Which is weird as Shareable is declared in acrestyp.h,
typedef struct acpi_resource_irq
{
UINT8 DescriptorLength;
UINT8 Triggering;
UINT8 Polarity;
UINT8 Shareable;
UINT8 WakeCapable;
UINT8 InterruptCount;
UINT8 Interrupts[1];
} ACPI_RESOURCE_IRQ;
{/code]
...
[code]
typedef struct acpi_resource_extended_irq
{
UINT8 ProducerConsumer;
UINT8 Triggering;
UINT8 Polarity;
UINT8 Shareable;
UINT8 WakeCapable;
UINT8 InterruptCount;
ACPI_RESOURCE_SOURCE ResourceSource;
UINT32 Interrupts[1];
} ACPI_RESOURCE_EXTENDED_IRQ;
-
Did AcpiTree compile for you?
I get,
wcc386 acpitree -bm -bt=OS2 -6s -fpi -zq -zp4 -DACPI_APPLICATION
acpitree.c(73): Error! E1031: Name 'Sharable' not found in struct/union acpi_resource_irq <---- SPELLING #1
acpitree.c(145): Error! E1031: Name 'Sharable' not found in struct/union acpi_resource_extended_irq <---- SPELLING #1
Which is weird as Shareable is declared in acrestyp.h,
typedef struct acpi_resource_irq
{
UINT8 DescriptorLength;
UINT8 Triggering;
UINT8 Polarity;
UINT8 Shareable; <--- SPELLING #2
UINT8 WakeCapable;
UINT8 InterruptCount;
UINT8 Interrupts[1];
} ACPI_RESOURCE_IRQ;
{/code]
[/quote]
-
Good eyes, thanks.
-
Hi Dave.
If you compiled AcpiTree, please share it here. I want to give it a try.
Regards
-
Sure, hard to figure out the output.