* [U-Boot] Exynos 5800/5422 CPU ID inconsistency.
@ 2015-08-26 13:09 Przemyslaw Marczak
2015-08-26 13:37 ` Simon Glass
0 siblings, 1 reply; 4+ messages in thread
From: Przemyslaw Marczak @ 2015-08-26 13:09 UTC (permalink / raw)
To: u-boot
Hello,
The s5p_cpu_id variable is set in here:
arch/arm/mach-exynos/include/mach/cpu.h
For value 0x422, found in pro id register, the s5p_cpu_id is set as
0x5800. I think, that hiding the real info is wrong and misleading.
I don't have documentation for E5800, but maybe there is some additional
register like package id to recognise the SoC variant.
I'm pointing this issue, because for older boards, we used this
information to set the $fdtfile environment variable name, to next load
proper fdt from partition before boot the kernel.
Now, I would like use the s5p_cpu_id to set the fdtfile name for Odroid
XU3/4, but the value is bad.
I would like fix this value to the real one, but then, the CPU name will
change on Chromebooks.
To fix this we could add "cpu-name" property to device tree, and then
print it.
What do you think about this?
Best regards,
--
Przemyslaw Marczak
Samsung R&D Institute Poland
Samsung Electronics
p.marczak at samsung.com
^ permalink raw reply [flat|nested] 4+ messages in thread
* [U-Boot] Exynos 5800/5422 CPU ID inconsistency.
2015-08-26 13:09 [U-Boot] Exynos 5800/5422 CPU ID inconsistency Przemyslaw Marczak
@ 2015-08-26 13:37 ` Simon Glass
2015-08-26 20:56 ` Sjoerd Simons
0 siblings, 1 reply; 4+ messages in thread
From: Simon Glass @ 2015-08-26 13:37 UTC (permalink / raw)
To: u-boot
Hi Przemyslaw,
On 26 August 2015 at 06:09, Przemyslaw Marczak <p.marczak@samsung.com> wrote:
> Hello,
>
> The s5p_cpu_id variable is set in here:
> arch/arm/mach-exynos/include/mach/cpu.h
>
> For value 0x422, found in pro id register, the s5p_cpu_id is set as 0x5800.
> I think, that hiding the real info is wrong and misleading.
>
> I don't have documentation for E5800, but maybe there is some additional
> register like package id to recognise the SoC variant.
>
> I'm pointing this issue, because for older boards, we used this information
> to set the $fdtfile environment variable name, to next load proper fdt from
> partition before boot the kernel.
>
> Now, I would like use the s5p_cpu_id to set the fdtfile name for Odroid
> XU3/4, but the value is bad.
>
> I would like fix this value to the real one, but then, the CPU name will
> change on Chromebooks.
>
> To fix this we could add "cpu-name" property to device tree, and then print
> it.
>
> What do you think about this?
That seems fine to me.
Regards,
Simon
^ permalink raw reply [flat|nested] 4+ messages in thread
* [U-Boot] Exynos 5800/5422 CPU ID inconsistency.
2015-08-26 13:37 ` Simon Glass
@ 2015-08-26 20:56 ` Sjoerd Simons
2015-08-27 10:23 ` Przemyslaw Marczak
0 siblings, 1 reply; 4+ messages in thread
From: Sjoerd Simons @ 2015-08-26 20:56 UTC (permalink / raw)
To: u-boot
On Wed, 2015-08-26 at 06:37 -0700, Simon Glass wrote:
> Hi Przemyslaw,
>
> On 26 August 2015 at 06:09, Przemyslaw Marczak <p.marczak@samsung.com
> > wrote:
> > Hello,
> >
> > The s5p_cpu_id variable is set in here:
> > arch/arm/mach-exynos/include/mach/cpu.h
> >
> > For value 0x422, found in pro id register, the s5p_cpu_id is set as
> > 0x5800.
> > I think, that hiding the real info is wrong and misleading.
> >
> > I don't have documentation for E5800, but maybe there is some
> > additional
> > register like package id to recognise the SoC variant.
> >
> > I'm pointing this issue, because for older boards, we used this
> > information
> > to set the $fdtfile environment variable name, to next load proper
> > fdt from
> > partition before boot the kernel.
> >
> > Now, I would like use the s5p_cpu_id to set the fdtfile name for
> > Odroid
> > XU3/4, but the value is bad.
> >
> > I would like fix this value to the real one, but then, the CPU name
> > will
> > change on Chromebooks.
> >
> > To fix this we could add "cpu-name" property to device tree, and
> > then print
> > it.
I was wondering recently whether there shouldn't simply be a device
-tree property with the name of the fdt file as used by linux such
there is no need for putting this dynamically together which can be a
tad error-prone (as this example shows). (Unfortunately not all boards
in linux use the <cpu name>-<board name> convention :/)
--
Sjoerd Simons
Collabora Ltd.
^ permalink raw reply [flat|nested] 4+ messages in thread
* [U-Boot] Exynos 5800/5422 CPU ID inconsistency.
2015-08-26 20:56 ` Sjoerd Simons
@ 2015-08-27 10:23 ` Przemyslaw Marczak
0 siblings, 0 replies; 4+ messages in thread
From: Przemyslaw Marczak @ 2015-08-27 10:23 UTC (permalink / raw)
To: u-boot
Hello Sjoerd,
On 08/26/2015 10:56 PM, Sjoerd Simons wrote:
> On Wed, 2015-08-26 at 06:37 -0700, Simon Glass wrote:
>> Hi Przemyslaw,
>>
>> On 26 August 2015 at 06:09, Przemyslaw Marczak <p.marczak@samsung.com
>>> wrote:
>>> Hello,
>>>
>>> The s5p_cpu_id variable is set in here:
>>> arch/arm/mach-exynos/include/mach/cpu.h
>>>
>>> For value 0x422, found in pro id register, the s5p_cpu_id is set as
>>> 0x5800.
>>> I think, that hiding the real info is wrong and misleading.
>>>
>>> I don't have documentation for E5800, but maybe there is some
>>> additional
>>> register like package id to recognise the SoC variant.
>>>
>>> I'm pointing this issue, because for older boards, we used this
>>> information
>>> to set the $fdtfile environment variable name, to next load proper
>>> fdt from
>>> partition before boot the kernel.
>>>
>>> Now, I would like use the s5p_cpu_id to set the fdtfile name for
>>> Odroid
>>> XU3/4, but the value is bad.
>>>
>>> I would like fix this value to the real one, but then, the CPU name
>>> will
>>> change on Chromebooks.
>>>
>>> To fix this we could add "cpu-name" property to device tree, and
>>> then print
>>> it.
>
> I was wondering recently whether there shouldn't simply be a device
> -tree property with the name of the fdt file as used by linux such
> there is no need for putting this dynamically together which can be a
> tad error-prone (as this example shows). (Unfortunately not all boards
> in linux use the <cpu name>-<board name> convention :/)
>
>
This could be good for the boards with only one kernel compatible fdt file.
But for Exynos, there can be more than one kernel compatible fdt for a
single U-Boot binary like for Odroid XU3/3L/4 or Odroid U3/X2.
There are also other platforms with this issue, like imx6 wandboard.
Adding common feature for board detection, may be complicated.
After some quick research, I think that adding "cpu-name" to fdt will
look not pretty. Change the name of "cpus" node to the SoC name would be
nice, but will break the compatibility with the kernel and U-Boot's
UCLASS_CPU driver.
In this case, adding a line:
#define CONFIG_CPU_NAME "Exynos5800"
only to the peach-pi.h seem to be reasonable, because for other Exynos
platforms the CPU name is proper.
Best regards,
--
Przemyslaw Marczak
Samsung R&D Institute Poland
Samsung Electronics
p.marczak at samsung.com
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2015-08-27 10:23 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-08-26 13:09 [U-Boot] Exynos 5800/5422 CPU ID inconsistency Przemyslaw Marczak
2015-08-26 13:37 ` Simon Glass
2015-08-26 20:56 ` Sjoerd Simons
2015-08-27 10:23 ` Przemyslaw Marczak
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox