Message ID | 20210730144922.29111-1-semen.protsenko@linaro.org (mailing list archive) |
---|---|
Headers | show |
Series | Add minimal support for Exynos850 SoC | expand |
On 30/07/2021 16:49, Sam Protsenko wrote: > This patch series adds initial platform support for Samsung Exynos850 > SoC [1]. With this patchset it's possible to run the kernel with BusyBox > rootfs as a RAM disk. More advanced platform support (like MMC driver > additions) will be added later. The idea is to keep the first submission > minimal to ease the review, and then build up on top of that. > > [1] https://www.samsung.com/semiconductor/minisite/exynos/products/mobileprocessor/exynos-850/ > Great work! What's the SoC revision number (should be accessible via /sys/bus/soc/devices/soc0/)? Recent wrap in numbering of Exynos chips might bring confusion... Best regards, Krzysztof
On 30/07/2021 17:18, Krzysztof Kozlowski wrote: > On 30/07/2021 16:49, Sam Protsenko wrote: >> This patch series adds initial platform support for Samsung Exynos850 >> SoC [1]. With this patchset it's possible to run the kernel with BusyBox >> rootfs as a RAM disk. More advanced platform support (like MMC driver >> additions) will be added later. The idea is to keep the first submission >> minimal to ease the review, and then build up on top of that. >> >> [1] https://www.samsung.com/semiconductor/minisite/exynos/products/mobileprocessor/exynos-850/ >> > > Great work! > > What's the SoC revision number (should be accessible via > /sys/bus/soc/devices/soc0/)? Recent wrap in numbering of Exynos chips > might bring confusion... Judging by vendor's sources it is quite confusing. It looks mostly like Exynos3830 but in few other cases it uses Exynos9 compatibles (Exynos9, Exynos9820). Only in few places there is Exynos850. Marketing department made it so confusing... The revision embedded in SoC would be very interesting. Anyway, judging by current versioning, there is a risk Samsung will come with a new chipset name conflicting with existing ones. It already overflowed. It's even worse with a thingy called "Exynos9 auto" which hides numbering even more. Best regards, Krzysztof
Hi Krzysztof, On Fri, 30 Jul 2021 at 20:21, Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com> wrote: > > On 30/07/2021 17:18, Krzysztof Kozlowski wrote: > > On 30/07/2021 16:49, Sam Protsenko wrote: > >> This patch series adds initial platform support for Samsung Exynos850 > >> SoC [1]. With this patchset it's possible to run the kernel with BusyBox > >> rootfs as a RAM disk. More advanced platform support (like MMC driver > >> additions) will be added later. The idea is to keep the first submission > >> minimal to ease the review, and then build up on top of that. > >> > >> [1] https://www.samsung.com/semiconductor/minisite/exynos/products/mobileprocessor/exynos-850/ > >> > > > > Great work! > > Thanks, Krzysztof! And thank you for reviewing the whole series. > > What's the SoC revision number (should be accessible via > > /sys/bus/soc/devices/soc0/)? Recent wrap in numbering of Exynos chips > > might bring confusion... # cat /sys/devices/soc0/revision 0 > > Judging by vendor's sources it is quite confusing. It looks mostly like > Exynos3830 but in few other cases it uses Exynos9 compatibles (Exynos9, > Exynos9820). Only in few places there is Exynos850. Marketing department > made it so confusing... The revision embedded in SoC would be very > interesting. > As I understand, this SoC is called Exynos850 everywhere now. Exynos3830 is its old name, not used anymore. As you noticed from patch #2, it shares some definitions with Exynos9 SoC, so I guess some software is similar for both architectures. Not sure about hardware though, never worked with Exynos9 CPUs. Anyway, I asked Samsung representatives about naming, and it seems like we should stick to "Exynos850" name, even in code. > Anyway, judging by current versioning, there is a risk Samsung will come > with a new chipset name conflicting with existing ones. It already > overflowed. > > It's even worse with a thingy called "Exynos9 auto" which hides > numbering even more. > > > Best regards, > Krzysztof
On 30/07/2021 21:02, Sam Protsenko wrote: > Hi Krzysztof, > > On Fri, 30 Jul 2021 at 20:21, Krzysztof Kozlowski > <krzysztof.kozlowski@canonical.com> wrote: >> >> On 30/07/2021 17:18, Krzysztof Kozlowski wrote: >>> On 30/07/2021 16:49, Sam Protsenko wrote: >>>> This patch series adds initial platform support for Samsung Exynos850 >>>> SoC [1]. With this patchset it's possible to run the kernel with BusyBox >>>> rootfs as a RAM disk. More advanced platform support (like MMC driver >>>> additions) will be added later. The idea is to keep the first submission >>>> minimal to ease the review, and then build up on top of that. >>>> >>>> [1] https://www.samsung.com/semiconductor/minisite/exynos/products/mobileprocessor/exynos-850/ >>>> >>> >>> Great work! >>> > > Thanks, Krzysztof! And thank you for reviewing the whole series. > >>> What's the SoC revision number (should be accessible via >>> /sys/bus/soc/devices/soc0/)? Recent wrap in numbering of Exynos chips >>> might bring confusion... > > # cat /sys/devices/soc0/revision > 0 soc_id but you're right it won't be set for unknown SoCs. You need to extend drivers/soc/samsung/exynos-chipid.c to parse new values (E3830000 for product ID) and maybe new register offsets (previous offset is 0x0, for 3830 is 0x10 I think). Also revision mask might change. >> Judging by vendor's sources it is quite confusing. It looks mostly like >> Exynos3830 but in few other cases it uses Exynos9 compatibles (Exynos9, >> Exynos9820). Only in few places there is Exynos850. Marketing department >> made it so confusing... The revision embedded in SoC would be very >> interesting. >> > > As I understand, this SoC is called Exynos850 everywhere now. > Exynos3830 is its old name, not used anymore. As you noticed from > patch #2, it shares some definitions with Exynos9 SoC, so I guess some > software is similar for both architectures. Not sure about hardware > though, never worked with Exynos9 CPUs. Anyway, I asked Samsung > representatives about naming, and it seems like we should stick to > "Exynos850" name, even in code. Since the chip identifies itself as E3830000, I would prefer naming matching real product ID instead of what is pushed by marketing or sales representatives. The marketing names don't have to follow any engineering rules, they can be changed and renamed. Sales follows rather money and corporate rules, not consistency for upstream project. Best regards, Krzysztof
On 31/07/2021 09:29, Krzysztof Kozlowski wrote: > On 30/07/2021 21:02, Sam Protsenko wrote: >> Hi Krzysztof, >> >> On Fri, 30 Jul 2021 at 20:21, Krzysztof Kozlowski >> <krzysztof.kozlowski@canonical.com> wrote: >>> >>> On 30/07/2021 17:18, Krzysztof Kozlowski wrote: >>>> On 30/07/2021 16:49, Sam Protsenko wrote: >>>>> This patch series adds initial platform support for Samsung Exynos850 >>>>> SoC [1]. With this patchset it's possible to run the kernel with BusyBox >>>>> rootfs as a RAM disk. More advanced platform support (like MMC driver >>>>> additions) will be added later. The idea is to keep the first submission >>>>> minimal to ease the review, and then build up on top of that. >>>>> >>>>> [1] https://www.samsung.com/semiconductor/minisite/exynos/products/mobileprocessor/exynos-850/ >>>>> >>>> >>>> Great work! >>>> >> >> Thanks, Krzysztof! And thank you for reviewing the whole series. >> >>>> What's the SoC revision number (should be accessible via >>>> /sys/bus/soc/devices/soc0/)? Recent wrap in numbering of Exynos chips >>>> might bring confusion... >> >> # cat /sys/devices/soc0/revision >> 0 > > soc_id but you're right it won't be set for unknown SoCs. You need to > extend drivers/soc/samsung/exynos-chipid.c to parse new values (E3830000 > for product ID) and maybe new register offsets (previous offset is 0x0, > for 3830 is 0x10 I think). Also revision mask might change. > >>> Judging by vendor's sources it is quite confusing. It looks mostly like >>> Exynos3830 but in few other cases it uses Exynos9 compatibles (Exynos9, >>> Exynos9820). Only in few places there is Exynos850. Marketing department >>> made it so confusing... The revision embedded in SoC would be very >>> interesting. >>> >> >> As I understand, this SoC is called Exynos850 everywhere now. >> Exynos3830 is its old name, not used anymore. As you noticed from >> patch #2, it shares some definitions with Exynos9 SoC, so I guess some >> software is similar for both architectures. Not sure about hardware >> though, never worked with Exynos9 CPUs. Anyway, I asked Samsung >> representatives about naming, and it seems like we should stick to >> "Exynos850" name, even in code. > > > Since the chip identifies itself as E3830000, I would prefer naming > matching real product ID instead of what is pushed by marketing or sales > representatives. The marketing names don't have to follow any > engineering rules, they can be changed and renamed. Sales follows rather > money and corporate rules, not consistency for upstream project. On the other hand we have already two exceptions for naming inconsistency - Exynos3250 identifies itself as 3472 (which is confusing because 3250 is two core and there is a separate quad-core Exyons3472...) and Exynos5800 is actually marketing name for a revision of Exynos5422. Maybe indeed will be easier to go with the branded name 850... Best regards, Krzysztof
On Sat, 31 Jul 2021 at 11:12, Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com> wrote: > > On 31/07/2021 09:29, Krzysztof Kozlowski wrote: > > On 30/07/2021 21:02, Sam Protsenko wrote: > >> Hi Krzysztof, > >> > >> On Fri, 30 Jul 2021 at 20:21, Krzysztof Kozlowski > >> <krzysztof.kozlowski@canonical.com> wrote: > >>> > >>> On 30/07/2021 17:18, Krzysztof Kozlowski wrote: > >>>> On 30/07/2021 16:49, Sam Protsenko wrote: > >>>>> This patch series adds initial platform support for Samsung Exynos850 > >>>>> SoC [1]. With this patchset it's possible to run the kernel with BusyBox > >>>>> rootfs as a RAM disk. More advanced platform support (like MMC driver > >>>>> additions) will be added later. The idea is to keep the first submission > >>>>> minimal to ease the review, and then build up on top of that. > >>>>> > >>>>> [1] https://www.samsung.com/semiconductor/minisite/exynos/products/mobileprocessor/exynos-850/ > >>>>> > >>>> > >>>> Great work! > >>>> > >> > >> Thanks, Krzysztof! And thank you for reviewing the whole series. > >> > >>>> What's the SoC revision number (should be accessible via > >>>> /sys/bus/soc/devices/soc0/)? Recent wrap in numbering of Exynos chips > >>>> might bring confusion... > >> > >> # cat /sys/devices/soc0/revision > >> 0 > > > > soc_id but you're right it won't be set for unknown SoCs. You need to > > extend drivers/soc/samsung/exynos-chipid.c to parse new values (E3830000 > > for product ID) and maybe new register offsets (previous offset is 0x0, > > for 3830 is 0x10 I think). Also revision mask might change. > > > >>> Judging by vendor's sources it is quite confusing. It looks mostly like > >>> Exynos3830 but in few other cases it uses Exynos9 compatibles (Exynos9, > >>> Exynos9820). Only in few places there is Exynos850. Marketing department > >>> made it so confusing... The revision embedded in SoC would be very > >>> interesting. > >>> > >> > >> As I understand, this SoC is called Exynos850 everywhere now. > >> Exynos3830 is its old name, not used anymore. As you noticed from > >> patch #2, it shares some definitions with Exynos9 SoC, so I guess some > >> software is similar for both architectures. Not sure about hardware > >> though, never worked with Exynos9 CPUs. Anyway, I asked Samsung > >> representatives about naming, and it seems like we should stick to > >> "Exynos850" name, even in code. > > > > > > Since the chip identifies itself as E3830000, I would prefer naming > > matching real product ID instead of what is pushed by marketing or sales > > representatives. The marketing names don't have to follow any > > engineering rules, they can be changed and renamed. Sales follows rather > > money and corporate rules, not consistency for upstream project. > > On the other hand we have already two exceptions for naming > inconsistency - Exynos3250 identifies itself as 3472 (which is confusing > because 3250 is two core and there is a separate quad-core > Exyons3472...) and Exynos5800 is actually marketing name for a revision > of Exynos5422. Maybe indeed will be easier to go with the branded name > 850... > Well, chip engraving says "3830", but I was specifically told to stick to "850" in upstream kernel. I can presume there was some mix ups with this naming, and it might be the case it's better to stick to "850" exactly to avoid further confusion. Yes, I can see that EXYNOS3830_SOC_ID = 0xE3830000 in chipid driver, but we can return "EXYNOS850" string for that const, right? If you google "Exynos850" and "Exynos3830", it's obvious everybody uses the former, so I'd appreciate if we can stick to "850" in the end. > > Best regards, > Krzysztof
On 03/08/2021 01:27, Sam Protsenko wrote: > On Sat, 31 Jul 2021 at 11:12, Krzysztof Kozlowski > <krzysztof.kozlowski@canonical.com> wrote: >> >> On 31/07/2021 09:29, Krzysztof Kozlowski wrote: >>> On 30/07/2021 21:02, Sam Protsenko wrote: >>>> Hi Krzysztof, >>>> >>>> On Fri, 30 Jul 2021 at 20:21, Krzysztof Kozlowski >>>> <krzysztof.kozlowski@canonical.com> wrote: >>>>> >>>>> On 30/07/2021 17:18, Krzysztof Kozlowski wrote: >>>>>> On 30/07/2021 16:49, Sam Protsenko wrote: >>>>>>> This patch series adds initial platform support for Samsung Exynos850 >>>>>>> SoC [1]. With this patchset it's possible to run the kernel with BusyBox >>>>>>> rootfs as a RAM disk. More advanced platform support (like MMC driver >>>>>>> additions) will be added later. The idea is to keep the first submission >>>>>>> minimal to ease the review, and then build up on top of that. >>>>>>> >>>>>>> [1] https://www.samsung.com/semiconductor/minisite/exynos/products/mobileprocessor/exynos-850/ >>>>>>> >>>>>> >>>>>> Great work! >>>>>> >>>> >>>> Thanks, Krzysztof! And thank you for reviewing the whole series. >>>> >>>>>> What's the SoC revision number (should be accessible via >>>>>> /sys/bus/soc/devices/soc0/)? Recent wrap in numbering of Exynos chips >>>>>> might bring confusion... >>>> >>>> # cat /sys/devices/soc0/revision >>>> 0 >>> >>> soc_id but you're right it won't be set for unknown SoCs. You need to >>> extend drivers/soc/samsung/exynos-chipid.c to parse new values (E3830000 >>> for product ID) and maybe new register offsets (previous offset is 0x0, >>> for 3830 is 0x10 I think). Also revision mask might change. >>> >>>>> Judging by vendor's sources it is quite confusing. It looks mostly like >>>>> Exynos3830 but in few other cases it uses Exynos9 compatibles (Exynos9, >>>>> Exynos9820). Only in few places there is Exynos850. Marketing department >>>>> made it so confusing... The revision embedded in SoC would be very >>>>> interesting. >>>>> >>>> >>>> As I understand, this SoC is called Exynos850 everywhere now. >>>> Exynos3830 is its old name, not used anymore. As you noticed from >>>> patch #2, it shares some definitions with Exynos9 SoC, so I guess some >>>> software is similar for both architectures. Not sure about hardware >>>> though, never worked with Exynos9 CPUs. Anyway, I asked Samsung >>>> representatives about naming, and it seems like we should stick to >>>> "Exynos850" name, even in code. >>> >>> >>> Since the chip identifies itself as E3830000, I would prefer naming >>> matching real product ID instead of what is pushed by marketing or sales >>> representatives. The marketing names don't have to follow any >>> engineering rules, they can be changed and renamed. Sales follows rather >>> money and corporate rules, not consistency for upstream project. >> >> On the other hand we have already two exceptions for naming >> inconsistency - Exynos3250 identifies itself as 3472 (which is confusing >> because 3250 is two core and there is a separate quad-core >> Exyons3472...) and Exynos5800 is actually marketing name for a revision >> of Exynos5422. Maybe indeed will be easier to go with the branded name >> 850... >> > > Well, chip engraving says "3830", but I was specifically told to stick > to "850" in upstream kernel. I can presume there was some mix ups with > this naming, and it might be the case it's better to stick to "850" > exactly to avoid further confusion. Yes, I can see that > EXYNOS3830_SOC_ID = 0xE3830000 in chipid driver, but we can return > "EXYNOS850" string for that const, right? If you google "Exynos850" > and "Exynos3830", it's obvious everybody uses the former, so I'd > appreciate if we can stick to "850" in the end. Yeah, let it be. If you have some pushback from some company representatives about naming, encourage them to speak up here. Otherwise you will be the guy in the middle bringing arguments between different parties. :) Best regards, Krzysztof