From: Hans de Goede <hdegoede@redhat.com>
To: Tsuchiya Yuto <kitakar@gmail.com>
Cc: Patrik Gfeller <patrik.gfeller@gmail.com>,
Mauro Carvalho Chehab <mchehab@kernel.org>,
Sakari Ailus <sakari.ailus@linux.intel.com>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Aniket Bhattacharyea <aniketmail669@gmail.com>,
Aline Santana Cordeiro <alinesantanacordeiro@gmail.com>,
Yang Yingliang <yangyingliang@huawei.com>,
Hans Verkuil <hverkuil-cisco@xs4all.nl>,
Alan <alan@linux.intel.com>, Dinghao Liu <dinghao.liu@zju.edu.cn>,
linux-media@vger.kernel.org, linux-staging@lists.linux.dev,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH 16/17] [NOT-FOR-MERGE] media: atomsip: pci: add DMI match for Microsoft Surface 3 with broken DMI (OEMB)
Date: Thu, 21 Oct 2021 20:46:30 +0200 [thread overview]
Message-ID: <a2aa76c3-a8bb-99ef-9f5a-e62cc503a1e2@redhat.com> (raw)
In-Reply-To: <ace1264d7254f7159865602614d70caf7ff4b609.camel@gmail.com>
Hi,
On 10/21/21 11:46, Tsuchiya Yuto wrote:
> On Mon, 2021-10-18 at 09:56 +0200, Hans de Goede wrote:
>> Hi,
>>
>> On 10/17/21 18:19, Tsuchiya Yuto wrote:
>>> This commit is added for Surface 3 with broken DMI table. HACK-ish.
>>> Not intended for upstreaming. Thus, NOT-FOR-MERGE. But, if someone
>>> knows a nicer way to address this, comments are welcome...
>>>
>>>> 8-----------------------------------------------------------------8<
>>>
>>> On some Microsoft Surface 3, the DMI table gets corrupted for unknown
>>> reasons and breaks existing DMI matching used for device-specific quirks.
>>>
>>> This commit adds the (broken) DMI data into dmi_system_id tables used
>>> for quirks so that the driver can enable quirks even on the affected
>>> systems.
>>>
>>> On affected systems, the DMI data will look like this:
>>>
>>> $ grep . /sys/devices/virtual/dmi/id/{bios_vendor,board_name,board_vendor,\
>>> chassis_vendor,product_name,sys_vendor}
>>> /sys/devices/virtual/dmi/id/bios_vendor:American Megatrends Inc.
>>> /sys/devices/virtual/dmi/id/board_name:OEMB
>>> /sys/devices/virtual/dmi/id/board_vendor:OEMB
>>> /sys/devices/virtual/dmi/id/chassis_vendor:OEMB
>>> /sys/devices/virtual/dmi/id/product_name:OEMB
>>> /sys/devices/virtual/dmi/id/sys_vendor:OEMB
>>
>> I wonder what the bios_date field contains ? Typically when the DMI strings
>> are no good (e.g. often they contain "Default String" or "To be filled by OEM")
>> we add a check on the bios-date, which together with the broken strings is
>> considered unique enough to still allow a match with broken strings in the
>> kernel.
>
> Thank you so much for the comment :-)
>
> Here is the full output of "/sys/devices/virtual/dmi/id/*" (not showing
> files that need root permission to read):
>
> $ grep . /sys/devices/virtual/dmi/id/*
> /sys/devices/virtual/dmi/id/bios_date:03/09/2015
> /sys/devices/virtual/dmi/id/bios_release:5.6
> /sys/devices/virtual/dmi/id/bios_vendor:American Megatrends Inc.
> /sys/devices/virtual/dmi/id/bios_version:1.51116.238
Interesting, this is the latest BIOS from july 2019 according to:
https://support.microsoft.com/en-us/surface/surface-3-update-history-5d86a7bc-03f7-2d27-d858-e90ce637fb52
yet the date is still set to 03/09/2015.
I just checked and the BIOS with not corrupted DMI strings also keeps
the date at 03/09/2015 in BIOS updates.
So the date is correct, and together with matching a coupleof the OEMB-s
(which I've never seen anywhere else either) this should be plenty
unique.
So this not only allows adding this mathc to atomisp, but also to fix
sound + wmi on bad DMI data OEMB Surface 3-s, by updating this patch:
https://github.com/linux-surface/linux-surface/blob/2fb7e9ae91350098db9a280277f424272816a9ab/patches/5.5/0003-surface3-oemb.patch
To include the BIOS-date match and then submitting this upstream
(as 2 separate patches please).
Tsuchiya, I take it that your Surface 3 has the OEMB issue, so you
can actually test this ?
If you can prepare 2 patches for the sound + wmi then; and submit
them upstream that would be great. Please Cc me on both patches.
Regards,
Hans
> /sys/devices/virtual/dmi/id/board_name:OEMB
> grep: /sys/devices/virtual/dmi/id/board_serial: Permission denied
> /sys/devices/virtual/dmi/id/board_vendor:OEMB
> /sys/devices/virtual/dmi/id/board_version:00
> grep: /sys/devices/virtual/dmi/id/chassis_serial: Permission denied
> /sys/devices/virtual/dmi/id/chassis_type:9
> /sys/devices/virtual/dmi/id/chassis_vendor:OEMB
> /sys/devices/virtual/dmi/id/modalias:dmi:bvnAmericanMegatrendsInc.:bvr1.51116.238:bd03/09/2015:br5.6:svnOEMB:pnOEMB:pvrB16D0SM1C4G1X1:rvnOEMB:rnOEMB:rvr00:cvnOEMB:ct9:cvr:sku:
> grep: /sys/devices/virtual/dmi/id/power: Is a directory
> /sys/devices/virtual/dmi/id/product_name:OEMB
> grep: /sys/devices/virtual/dmi/id/product_serial: Permission denied
> grep: /sys/devices/virtual/dmi/id/product_uuid: Permission denied
> /sys/devices/virtual/dmi/id/product_version:B16D0SM1C4G1X1
> grep: /sys/devices/virtual/dmi/id/subsystem: Is a directory
> /sys/devices/virtual/dmi/id/sys_vendor:OEMB
> /sys/devices/virtual/dmi/id/uevent:MODALIAS=dmi:bvnAmericanMegatrendsInc.:bvr1.51116.238:bd03/09/2015:br5.6:svnOEMB:pnOEMB:pvrB16D0SM1C4G1X1:rvnOEMB:rnOEMB:rvr00:cvnOEMB:ct9:cvr:sku:
>
> The "bios_date" ("03/09/2015") looks not broken.
>
> I also noticed when writing this mail, regarding the ones that need root
> permission to read, "board_serial" and "chassis_serial" are now empty.
> "product_serial" now shows "OEM":
>
> $ sudo cat /sys/devices/virtual/dmi/id/product_serial
> OEM
>
> "product_uuid" looks not broken.
>
>> Also have you tried doing something like "load bios/setup defaults" in
>> the BIOS setup ? Maybe that helps ?
>
> Unfortunately, there is no option like this...
>
> Regards,
> Tsuchiya Yuto
>
next prev parent reply other threads:[~2021-10-21 18:46 UTC|newest]
Thread overview: 79+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-10-17 16:19 [PATCH 00/17] various fixes for atomisp to make it work Tsuchiya Yuto
2021-10-17 16:19 ` [PATCH 01/17] media: atomisp: pci: add missing media_device_cleanup() in atomisp_unregister_entities() Tsuchiya Yuto
2021-10-17 16:19 ` [PATCH 02/17] media: atomisp: pci: fix punit_ddr_dvfs_enable() argument for mrfld_power up case Tsuchiya Yuto
2021-10-18 11:07 ` Andy Shevchenko
2021-10-20 13:25 ` Tsuchiya Yuto
2021-12-01 12:07 ` Tsuchiya Yuto
2021-11-02 11:26 ` Dan Carpenter
2021-11-08 14:48 ` Tsuchiya Yuto
2021-11-08 15:10 ` Dan Carpenter
2021-10-17 16:19 ` [PATCH 03/17] media: atomisp: pci: fix inverted logic in buffers_needed() Tsuchiya Yuto
2021-10-17 16:19 ` [PATCH 04/17] media: atomisp: pci: do not use err var when checking port validity for ISP2400 Tsuchiya Yuto
[not found] ` <20211026092637.196447aa@sal.lan>
2021-10-28 4:12 ` Tsuchiya Yuto
2021-10-28 6:52 ` Mauro Carvalho Chehab
2021-10-28 11:39 ` Mauro Carvalho Chehab
2021-11-01 13:38 ` Tsuchiya Yuto
2021-11-01 14:10 ` Mauro Carvalho Chehab
2021-11-01 19:06 ` Hans de Goede
2021-11-01 19:27 ` Andy Shevchenko
2021-11-01 19:52 ` Hans de Goede
2021-11-01 20:03 ` Mauro Carvalho Chehab
2021-11-01 21:06 ` Hans de Goede
2021-11-01 21:33 ` Mauro Carvalho Chehab
2021-11-11 14:34 ` Tsuchiya Yuto
2021-11-11 16:09 ` Andy Shevchenko
2021-11-11 19:37 ` Mauro Carvalho Chehab
2021-11-11 20:39 ` Andy Shevchenko
2021-11-11 18:38 ` Mauro Carvalho Chehab
2021-11-17 22:24 ` Mauro Carvalho Chehab
2021-12-01 11:30 ` Tsuchiya Yuto
2021-12-01 11:35 ` Tsuchiya Yuto
2021-12-01 12:00 ` Tsuchiya Yuto
2021-10-17 16:19 ` [PATCH 05/17] media: atomisp: pci: fix inverted error check for ia_css_mipi_is_source_port_valid() Tsuchiya Yuto
2021-11-02 11:33 ` Dan Carpenter
2021-11-08 15:00 ` Tsuchiya Yuto
2021-11-08 15:14 ` Dan Carpenter
2021-11-08 15:25 ` Tsuchiya Yuto
2021-11-08 15:33 ` Dan Carpenter
2021-11-08 16:35 ` Mauro Carvalho Chehab
2021-12-01 12:15 ` Tsuchiya Yuto
2021-10-17 16:19 ` [PATCH 06/17] media: atomisp: pci: use IA_CSS_ERROR() for error messages in sh_css_mipi.c Tsuchiya Yuto
2021-11-02 11:35 ` Dan Carpenter
2021-11-08 15:39 ` Tsuchiya Yuto
2021-11-08 16:39 ` Mauro Carvalho Chehab
2021-10-17 16:19 ` [PATCH 07/17] media: atomisp: pci: fix ifdefs in sh_css.c Tsuchiya Yuto
2021-10-17 16:19 ` [PATCH 08/17] media: atomisp: pci: make fw ver irci_stable_candrpv_0415_20150521_0458 work - 1/5 Tsuchiya Yuto
2021-10-17 16:19 ` [PATCH 09/17] media: atomisp: pci: make fw ver irci_stable_candrpv_0415_20150521_0458 work - 2/5 Tsuchiya Yuto
2021-10-17 16:19 ` [PATCH 10/17] media: atomisp: pci: make fw ver irci_stable_candrpv_0415_20150521_0458 work - 3/5 Tsuchiya Yuto
2021-10-17 16:19 ` [PATCH 11/17] media: atomisp: pci: make fw ver irci_stable_candrpv_0415_20150521_0458 work - 4/5 Tsuchiya Yuto
2021-10-17 16:19 ` [PATCH 12/17] media: atomisp: pci: make fw ver irci_stable_candrpv_0415_20150521_0458 work - 5/5 Tsuchiya Yuto
2021-10-17 16:19 ` [PATCH 13/17] media: atomisp: pci: release_version is now irci_stable_candrpv_0415_20150521_0458 Tsuchiya Yuto
2021-10-17 16:19 ` [PATCH 14/17] media: atomisp: pci: Remove remaining instance of call to trace_printk Tsuchiya Yuto
[not found] ` <20211026093224.6c7f7fbf@sal.lan>
2021-10-28 9:34 ` Tsuchiya Yuto
2021-10-28 11:42 ` Mauro Carvalho Chehab
2021-11-01 14:22 ` Tsuchiya Yuto
2021-10-17 16:19 ` [PATCH 15/17] media: atomsip: pci: add Microsoft Surface 3 ACPI vars Tsuchiya Yuto
2021-10-17 16:19 ` [PATCH 16/17] [NOT-FOR-MERGE] media: atomsip: pci: add DMI match for Microsoft Surface 3 with broken DMI (OEMB) Tsuchiya Yuto
2021-10-18 7:56 ` Hans de Goede
2021-10-21 9:46 ` Tsuchiya Yuto
2021-10-21 18:46 ` Hans de Goede [this message]
2021-10-27 14:47 ` Tsuchiya Yuto
2021-10-27 15:30 ` Hans de Goede
2021-10-18 7:56 ` Hans de Goede
2021-10-17 16:19 ` [PATCH 17/17] [NOT-FOR-MERGE] atomisp: Fix up the open v load race Tsuchiya Yuto
2021-10-18 7:48 ` [PATCH 00/17] various fixes for atomisp to make it work Hans de Goede
2021-10-19 13:50 ` Tsuchiya Yuto
2021-10-19 16:36 ` Andy Shevchenko
2021-10-20 13:17 ` Tsuchiya Yuto
2021-10-18 7:56 ` Andy Shevchenko
2021-10-20 6:50 ` Mauro Carvalho Chehab
2021-10-20 12:44 ` Tsuchiya Yuto
2021-10-18 11:04 ` Andy Shevchenko
2021-10-20 12:48 ` Tsuchiya Yuto
2021-10-28 4:32 ` Tsuchiya Yuto
2021-10-28 10:58 ` Mauro Carvalho Chehab
2021-10-30 9:50 ` Tsuchiya Yuto
2021-10-30 10:49 ` Mauro Carvalho Chehab
2021-10-30 11:01 ` Andy Shevchenko
2021-10-30 18:30 ` Mauro Carvalho Chehab
2021-10-28 12:51 ` Mauro Carvalho Chehab
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=a2aa76c3-a8bb-99ef-9f5a-e62cc503a1e2@redhat.com \
--to=hdegoede@redhat.com \
--cc=alan@linux.intel.com \
--cc=alinesantanacordeiro@gmail.com \
--cc=aniketmail669@gmail.com \
--cc=dinghao.liu@zju.edu.cn \
--cc=gregkh@linuxfoundation.org \
--cc=hverkuil-cisco@xs4all.nl \
--cc=kitakar@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=linux-staging@lists.linux.dev \
--cc=mchehab@kernel.org \
--cc=patrik.gfeller@gmail.com \
--cc=sakari.ailus@linux.intel.com \
--cc=yangyingliang@huawei.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox