RE: Dell docking station & Dell Embedded Controller & PS/2 devices

From: Mario.Limonciello
Date: Mon May 07 2018 - 16:30:37 EST


> -----Original Message-----
> From: Pali RohÃr [mailto:pali.rohar@xxxxxxxxx]
> Sent: Monday, May 7, 2018 3:28 PM
> To: Limonciello, Mario
> Cc: dmitry.torokhov@xxxxxxxxx; linux-input@xxxxxxxxxxxxxxx; linux-
> kernel@xxxxxxxxxxxxxxx
> Subject: Re: Dell docking station & Dell Embedded Controller & PS/2 devices
>
> On Monday 07 May 2018 20:18:30 Mario.Limonciello@xxxxxxxx wrote:
> > > > > So I guess you could write a platform driver that would install i8042
> > > > > filter on Dell laptops/portables, monitor keyboard data stream and kick
> > > > > of rescans on serio ports. The problem is filter gets "serio" so you do
> > > > > not really know whether ACK is spurious or not. And I would really
> > > > > prefer keeping this crap out of atkbd proper... And all of this is racy
> > > > > as hell. What happens if we get keyboard reconnected as we reinitialize
> > > > > it?
> > > >
> > > > If it's done as a platform driver I would suspect it's possible to tell whether
> > > > a dock is connected to at least give you some heuristic here to have a better
> > > > guess whether it's spurious.
> > >
> > > Apparently checking for docking station is not enough. There are also
> > > Dell Legacy Extenders (or how it is called) which exports internal PS/2,
> > > Parallel and Serial Ports. It is also connecting to bottom of laptop.
> > > But currently I do not have them for testing.
> > >
> > > > Pali on your system that supports this dock, check and see how many
> > > > System Enclosure SMBIOS tables (structure type 03) are present.
> > >
> > > Do you mean DMI type 3 structure? Here is something from dmidecode:
> > >
> > > Handle 0x0003, DMI type 3, 22 bytes
> > > Chassis Information
> > > Manufacturer: Dell Inc.
> > > Type: Laptop
> > > Lock: Not Present
> > > Version: Not Specified
> > > Serial Number: --REMOVED--
> > > Asset Tag: Not Specified
> > > Boot-up State: Safe
> > > Power Supply State: Safe
> > > Thermal State: Safe
> > > Security Status: None
> > > OEM Information: 0x00000000
> > > Height: Unspecified
> > > Number Of Power Cords: 1
> > > Contained Elements: 0
> > > SKU Number: To be filled by O.E.M.
> > >
> > > But probably you mean something different?
> >
> > Plug in your dock before you boot up and see if you have a second structure like
> > that type produced.
>
> I already started docked laptop via dock power button. And in dmidecode
> output is only one DMI type 3 block.
>
> > If not, then I guess this isn't a reliable way to find the dock
> > on that system and I'll have to see if there is another.
>
> Seems not. Also detection of dock should work also when you connect
> laptop at system runtime, not only when connected prior to booting.
>

The items that show up in this structure are supposed to be dynamic
values but static addresses. I was asking to check before bootup in
case this was a problem of Linux caching SMBIOS table information once.
The values I was referring to might be for older generation dock though,
I'll see if I can find anything else you can check.