Re: [PATCH 28/28] media: atomisp: gmin_platform: Add Lenovo Ideapad Miix 310 gmin_vars

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, Apr 1, 2023 at 5:00 PM Hans de Goede <hdegoede@xxxxxxxxxx> wrote:
>
> The _DSM used to get sensor variables like CsiPort returns the wrong
> csi-port for the front OV2680 sensor on the Lenovo Ideapad Miix 310
> add a gmin_vars DMI quirk / override setting the right CsiPort.
>
> Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx>
> ---
>  .../media/atomisp/pci/atomisp_gmin_platform.c | 19 +++++++++++++++++++
>  1 file changed, 19 insertions(+)
>
> diff --git a/drivers/staging/media/atomisp/pci/atomisp_gmin_platform.c b/drivers/staging/media/atomisp/pci/atomisp_gmin_platform.c
> index f83de0ffaf16..efcfc133311f 100644
> --- a/drivers/staging/media/atomisp/pci/atomisp_gmin_platform.c
> +++ b/drivers/staging/media/atomisp/pci/atomisp_gmin_platform.c
> @@ -304,7 +304,17 @@ static struct gmin_cfg_var surface3_vars[] = {
>         {},
>  };
>
> +static struct gmin_cfg_var lenovo_ideapad_miix_310_vars[] = {
> +       /* _DSM contains the wrong CsiPort! */
> +       { "OVTI2680:01_CsiPort", "0" },
> +       {}
> +};
> +
>  static const struct dmi_system_id gmin_vars[] = {
> +       /*
> +        * These DMI ids where present when the atomisp driver was merged into

IDs
were ?

> +        * drivers/staging and it is unclear if they are really necessary.
> +        */

MRD7 and FFD8 are the reference designs. At least MRD7 is what we have
in the lab and we can run some tests there. That's, for example, one
which I used to run atomisp before it got removed from the kernel a
few years ago.

>         {
>                 .ident = "BYT-T FFD8",
>                 .matches = {
> @@ -341,6 +351,7 @@ static const struct dmi_system_id gmin_vars[] = {
>                 },
>                 .driver_data = i8880_vars,
>         },
> +       /* Later added DMI ids, these are confirmed to really be necessary! */
>         {
>                 .ident = "Surface 3",
>                 .matches = {
> @@ -348,6 +359,14 @@ static const struct dmi_system_id gmin_vars[] = {
>                 },
>                 .driver_data = surface3_vars,
>         },
> +       {
> +               .ident = "Lenovo Ideapad Miix 310",
> +               .matches = {
> +                       DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
> +                       DMI_MATCH(DMI_PRODUCT_VERSION, "MIIX 310-10"),
> +               },
> +               .driver_data = lenovo_ideapad_miix_310_vars,
> +       },
>         {}
>  };
>
> --
> 2.39.1
>


-- 
With Best Regards,
Andy Shevchenko





[Index of Archives]     [Linux Driver Development]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux