2019-04-18 09:26:47

by Jan Kiszka

[permalink] [raw]
Subject: [PATCH] stmmac: pci: Adjust IOT2000 matching

From: Su Bao Cheng <[email protected]>

Since there are more IOT2040 variants with identical hardware but
different asset tags, the asset tag matching should be adjusted to
support them.

For the board name "SIMATIC IOT2000", currently there are 2 types of
hardware, IOT2020 and IOT2040. The IOT2020 is identified by its unique
asset tag. Match on it first. If we then match on the board name only,
we will catch all IOT2040 variants. In the future there will be no other
devices with the "SIMATIC IOT2000" DMI board name but different
hardware.

Signed-off-by: Su Bao Cheng <[email protected]>
Reviewed-by: Jan Kiszka <[email protected]>
---
drivers/net/ethernet/stmicro/stmmac/stmmac_pci.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_pci.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_pci.c
index d819e8eaba12..cc1e887e47b5 100644
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_pci.c
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_pci.c
@@ -159,6 +159,12 @@ static const struct dmi_system_id quark_pci_dmi[] = {
},
.driver_data = (void *)&galileo_stmmac_dmi_data,
},
+ /*
+ * There are 2 types of SIMATIC IOT2000: IOT20202 and IOT2040.
+ * The asset tag "6ES7647-0AA00-0YA2" is only for IOT2020 which
+ * has only one pci network device while other asset tags are
+ * for IOT2040 which has two.
+ */
{
.matches = {
DMI_EXACT_MATCH(DMI_BOARD_NAME, "SIMATIC IOT2000"),
@@ -170,8 +176,6 @@ static const struct dmi_system_id quark_pci_dmi[] = {
{
.matches = {
DMI_EXACT_MATCH(DMI_BOARD_NAME, "SIMATIC IOT2000"),
- DMI_EXACT_MATCH(DMI_BOARD_ASSET_TAG,
- "6ES7647-0AA00-1YA2"),
},
.driver_data = (void *)&iot2040_stmmac_dmi_data,
},
--
2.16.4


2019-04-18 17:44:56

by David Miller

[permalink] [raw]
Subject: Re: [PATCH] stmmac: pci: Adjust IOT2000 matching

From: Jan Kiszka <[email protected]>
Date: Thu, 18 Apr 2019 11:14:56 +0200

> @@ -170,8 +176,6 @@ static const struct dmi_system_id quark_pci_dmi[] = {
> {
> .matches = {
> DMI_EXACT_MATCH(DMI_BOARD_NAME, "SIMATIC IOT2000"),
> - DMI_EXACT_MATCH(DMI_BOARD_ASSET_TAG,
> - "6ES7647-0AA00-1YA2"),
> },
> .driver_data = (void *)&iot2040_stmmac_dmi_data,

So really, every IOT2000 that doesn't have the IOT2020 asset tag will be
a 2040? Forever?

2019-04-18 18:26:21

by Jan Kiszka

[permalink] [raw]
Subject: Re: [PATCH] stmmac: pci: Adjust IOT2000 matching

On 18.04.19 19:43, David Miller wrote:
> From: Jan Kiszka <[email protected]>
> Date: Thu, 18 Apr 2019 11:14:56 +0200
>
>> @@ -170,8 +176,6 @@ static const struct dmi_system_id quark_pci_dmi[] = {
>> {
>> .matches = {
>> DMI_EXACT_MATCH(DMI_BOARD_NAME, "SIMATIC IOT2000"),
>> - DMI_EXACT_MATCH(DMI_BOARD_ASSET_TAG,
>> - "6ES7647-0AA00-1YA2"),
>> },
>> .driver_data = (void *)&iot2040_stmmac_dmi_data,
>
> So really, every IOT2000 that doesn't have the IOT2020 asset tag will be
> a 2040? Forever?
>

Yes, seriously. The next version won't have all that DMI and ACPI stuff. And if
there will ever be a version with that again, it will not be labeled "IOT2000"
via the board name entry. And it will have more robust hardware discovery as
well. Lesson(s) learned, in fact not only for this product series.

Jan

--
Siemens AG, Corporate Technology, CT RDA IOT SES-DE
Corporate Competence Center Embedded Linux

2019-04-18 18:49:29

by David Miller

[permalink] [raw]
Subject: Re: [PATCH] stmmac: pci: Adjust IOT2000 matching

From: Jan Kiszka <[email protected]>
Date: Thu, 18 Apr 2019 20:24:28 +0200

> On 18.04.19 19:43, David Miller wrote:
>> From: Jan Kiszka <[email protected]>
>> Date: Thu, 18 Apr 2019 11:14:56 +0200
>>
>>> @@ -170,8 +176,6 @@ static const struct dmi_system_id quark_pci_dmi[]
>>> = {
>>> {
>>> .matches = {
>>> DMI_EXACT_MATCH(DMI_BOARD_NAME, "SIMATIC IOT2000"),
>>> - DMI_EXACT_MATCH(DMI_BOARD_ASSET_TAG,
>>> - "6ES7647-0AA00-1YA2"),
>>> },
>>> .driver_data = (void *)&iot2040_stmmac_dmi_data,
>> So really, every IOT2000 that doesn't have the IOT2020 asset tag will
>> be
>> a 2040? Forever?
>>
>
> Yes, seriously. The next version won't have all that DMI and ACPI
> stuff. And if there will ever be a version with that again, it will
> not be labeled "IOT2000" via the board name entry. And it will have
> more robust hardware discovery as well. Lesson(s) learned, in fact not
> only for this product series.

Ok, applied, thanks.

2019-04-26 14:37:24

by Andy Shevchenko

[permalink] [raw]
Subject: Re: [PATCH] stmmac: pci: Adjust IOT2000 matching

On Thu, Apr 18, 2019 at 12:15 PM Jan Kiszka <[email protected]> wrote:
>
> From: Su Bao Cheng <[email protected]>
>
> Since there are more IOT2040 variants with identical hardware but
> different asset tags, the asset tag matching should be adjusted to
> support them.
>
> For the board name "SIMATIC IOT2000", currently there are 2 types of
> hardware, IOT2020 and IOT2040. The IOT2020 is identified by its unique
> asset tag. Match on it first. If we then match on the board name only,
> we will catch all IOT2040 variants. In the future there will be no other
> devices with the "SIMATIC IOT2000" DMI board name but different
> hardware.
>
> Signed-off-by: Su Bao Cheng <[email protected]>
> Reviewed-by: Jan Kiszka <[email protected]>

> + /*

> + * There are 2 types of SIMATIC IOT2000: IOT20202 and IOT2040.

20202 ?

> + * The asset tag "6ES7647-0AA00-0YA2" is only for IOT2020 which
> + * has only one pci network device while other asset tags are
> + * for IOT2040 which has two.
> + */



--
With Best Regards,
Andy Shevchenko

2019-04-26 15:38:01

by Jan Kiszka

[permalink] [raw]
Subject: Re: [PATCH] stmmac: pci: Adjust IOT2000 matching

On 26.04.19 16:34, Andy Shevchenko wrote:
> On Thu, Apr 18, 2019 at 12:15 PM Jan Kiszka <[email protected]> wrote:
>>
>> From: Su Bao Cheng <[email protected]>
>>
>> Since there are more IOT2040 variants with identical hardware but
>> different asset tags, the asset tag matching should be adjusted to
>> support them.
>>
>> For the board name "SIMATIC IOT2000", currently there are 2 types of
>> hardware, IOT2020 and IOT2040. The IOT2020 is identified by its unique
>> asset tag. Match on it first. If we then match on the board name only,
>> we will catch all IOT2040 variants. In the future there will be no other
>> devices with the "SIMATIC IOT2000" DMI board name but different
>> hardware.
>>
>> Signed-off-by: Su Bao Cheng <[email protected]>
>> Reviewed-by: Jan Kiszka <[email protected]>
>
>> + /*
>
>> + * There are 2 types of SIMATIC IOT2000: IOT20202 and IOT2040.
>
> 20202 ?

2020...

I can send a fix-up or v2, whatever is preferred.

Thanks,
Jan

>
>> + * The asset tag "6ES7647-0AA00-0YA2" is only for IOT2020 which
>> + * has only one pci network device while other asset tags are
>> + * for IOT2040 which has two.
>> + */
>
>
>

--
Siemens AG, Corporate Technology, CT RDA IOT SES-DE
Corporate Competence Center Embedded Linux

2019-04-26 17:15:34

by Andy Shevchenko

[permalink] [raw]
Subject: Re: [PATCH] stmmac: pci: Adjust IOT2000 matching

On Fri, Apr 26, 2019 at 6:36 PM Jan Kiszka <[email protected]> wrote:
> On 26.04.19 16:34, Andy Shevchenko wrote:
> > On Thu, Apr 18, 2019 at 12:15 PM Jan Kiszka <[email protected]> wrote:

> >> + /*
> >
> >> + * There are 2 types of SIMATIC IOT2000: IOT20202 and IOT2040.
> >
> > 20202 ?
>
> 2020...
>
> I can send a fix-up or v2, whatever is preferred.

My understanding that if Dave applied, you need to send a fixup.

--
With Best Regards,
Andy Shevchenko

2019-04-26 17:16:00

by Andy Shevchenko

[permalink] [raw]
Subject: Re: [PATCH] stmmac: pci: Adjust IOT2000 matching

On Fri, Apr 26, 2019 at 8:13 PM Andy Shevchenko
<[email protected]> wrote:
>
> On Fri, Apr 26, 2019 at 6:36 PM Jan Kiszka <[email protected]> wrote:
> > On 26.04.19 16:34, Andy Shevchenko wrote:
> > > On Thu, Apr 18, 2019 at 12:15 PM Jan Kiszka <[email protected]> wrote:
>
> > >> + /*
> > >
> > >> + * There are 2 types of SIMATIC IOT2000: IOT20202 and IOT2040.
> > >
> > > 20202 ?
> >
> > 2020...
> >
> > I can send a fix-up or v2, whatever is preferred.
>
> My understanding that if Dave applied, you need to send a fixup.

s/Dave/David/
Sorry.

--
With Best Regards,
Andy Shevchenko