Skip to contentSkip to conversation

arm mach-types.h

U-Boot Michael Walle 2 participants 7 messages Nov 12, 2011 – Nov 13, 2011

lore
Share & tools
lore
#0 lore raw

Hi,

Does u-boot always follow the mach-types.h from upstream linux? Is there any policy?

If thats true, it means, that
- every supported board in u-boot has to be supported in mainline linux, too. because that is the basic requirement for an entry to stay in this file.
- a device with device tree bindings, won't have any mach-type entry at all, which means, that a distribution is not able to backport a device support from DT form to an old-fashioned setup code (eg. support for a board on older linux kernels, which doesn't have ARM device tree support).

IMHO u-boot should have its own mach-types.h (maybe autogenerated, like the linux kernel do), just with entries for boards which are supported by u-boot. This way, there won't be any problems with new board support patches.

Opinions?

Signature · 1 line
Michael
#1 lore raw
Quoted 4 lines

Hi,

Does u-boot always follow the mach-types.h from upstream linux? Is there any policy?

Yes it does follow it.

Quoted 5 lines

If thats true, it means, that
- every supported board in u-boot has to be supported in mainline linux, too. because that is the basic requirement for an entry to stay in this file.

No, you can define CONFIG_MACH_TYPE MACH_TYPE_SOMETHING and MACH_TYPE_SOMETHING nnn in your config file.

Quoted 4 lines

- a device with device tree bindings, won't have any mach-type entry at
all, which means, that a distribution is not able to backport a device support from DT form to an old-fashioned setup code (eg. support for a board on older linux kernels, which doesn't have ARM device tree support).

Use new kernel or use the stuff above.

Quoted 5 lines

IMHO u-boot should have its own mach-types.h (maybe autogenerated, like the linux kernel do), just with entries for boards which are supported by u-boot. This way, there won't be any problems with new board support patches.

That would be insane due to colisions in the number assignment. See above how to handle such trouble.

Quoted 2 lines

Opinions?

I explained it twice, once in LAKML and once here.

M

#2 lore raw

Am Sonntag 13 November 2011, 01:32:03 schrieb Marek Vasut:

Quoted 7 lines
Quoted 4 lines

- every supported board in u-boot has to be supported in mainline linux,

too. because that is the basic requirement for an entry to stay in this file.

No, you can define CONFIG_MACH_TYPE MACH_TYPE_SOMETHING and MACH_TYPE_SOMETHING nnn in your config file.

well, according to this argumentation, there would be no need for mach-types.h at all. because if you rely on a mach-types.h definition and it is removed from linux, you have to switch to define it yourself anyway.

Quoted 7 lines
Quoted 4 lines

IMHO u-boot should have its own mach-types.h (maybe autogenerated, like the linux kernel do), just with entries for boards which are supported by u-boot. This way, there won't be any problems with new board support patches.

That would be insane due to colisions in the number assignment. See above how to handle such trouble.

of course with the same ids... (same source as the kernel mach-types, which is
http://www.arm.linux.org.uk/developer/machines/download.php)

Signature · 1 line
Michael
#3 lore raw
Quoted 7 lines

Am Sonntag 13 November 2011, 01:32:03 schrieb Marek Vasut:

Quoted 6 lines
Quoted 5 lines

- every supported board in u-boot has to be supported in mainline linux,

too. because that is the basic requirement for an entry to stay in this file.

Quoted 6 lines
Quoted 2 lines

No, you can define CONFIG_MACH_TYPE MACH_TYPE_SOMETHING and MACH_TYPE_SOMETHING nnn in your config file.

well, according to this argumentation, there would be no need for mach-types.h at all. because if you rely on a mach-types.h definition and it is removed from linux, you have to switch to define it yourself anyway.

Not really, if you don't use it to boot linux, you don't need the mach id. Or if you use dtree.

Quoted 11 lines
Quoted 8 lines
Quoted 5 lines

IMHO u-boot should have its own mach-types.h (maybe autogenerated, like the linux kernel do), just with entries for boards which are supported by u-boot. This way, there won't be any problems with new board support patches.

That would be insane due to colisions in the number assignment. See above how to handle such trouble.

of course with the same ids... (same source as the kernel mach-types, which is http://www.arm.linux.org.uk/developer/machines/download.php)

#4 lore raw

Am Sonntag 13 November 2011, 17:18:27 schrieb Marek Vasut:

Quoted 10 lines
Quoted 10 lines

Am Sonntag 13 November 2011, 01:32:03 schrieb Marek Vasut:

Quoted 8 lines
Quoted 5 lines

- every supported board in u-boot has to be supported in mainline linux,

too. because that is the basic requirement for an entry to stay in this file.

No, you can define CONFIG_MACH_TYPE MACH_TYPE_SOMETHING and MACH_TYPE_SOMETHING nnn in your config file.

Quoted 7 lines
Quoted 4 lines

well, according to this argumentation, there would be no need for mach-types.h at all. because if you rely on a mach-types.h definition and it is removed from linux, you have to switch to define it yourself anyway.

Not really, if you don't use it to boot linux, you don't need the mach id. Or if you use dtree.

so why should i use the mach-type.h anyway? instead i could just define the id in the config.

either there is a database, where the ids come from (and this database must not follow the linux policies) or there is no database and every board defines the numerical id (of couse they must match the linux mach ids.)

what about boards which switch from mach-ids to DT in linux? Just don't support mach-ids for these anymore and not being able to boot older kernels?

Signature · 1 line
Michael
#5 lore raw
Quoted 22 lines

Am Sonntag 13 November 2011, 17:18:27 schrieb Marek Vasut:

Quoted 10 lines
Quoted 10 lines

Am Sonntag 13 November 2011, 01:32:03 schrieb Marek Vasut:

Quoted 8 lines
Quoted 5 lines

- every supported board in u-boot has to be supported in mainline linux,

too. because that is the basic requirement for an entry to stay in this file.

No, you can define CONFIG_MACH_TYPE MACH_TYPE_SOMETHING and MACH_TYPE_SOMETHING nnn in your config file.

Quoted 7 lines
Quoted 4 lines

well, according to this argumentation, there would be no need for mach-types.h at all. because if you rely on a mach-types.h definition and it is removed from linux, you have to switch to define it yourself anyway.

Not really, if you don't use it to boot linux, you don't need the mach id. Or if you use dtree.

so why should i use the mach-type.h anyway? instead i could just define the id in the config.

Quoted 7 lines

either there is a database, where the ids come from (and this database must not follow the linux policies) or there is no database and every board defines the numerical id (of couse they must match the linux mach ids.)

what about boards which switch from mach-ids to DT in linux? Just don't support mach-ids for these anymore and not being able to boot older kernels?

Why would the machine ID be removed from mach-types.h is the machine switched to DT ?

#6 lore raw

Am Sonntag 13 November 2011, 18:14:16 schrieb Marek Vasut:

Quoted 27 lines
Quoted 27 lines

Am Sonntag 13 November 2011, 17:18:27 schrieb Marek Vasut:

Quoted 10 lines
Quoted 10 lines

Am Sonntag 13 November 2011, 01:32:03 schrieb Marek Vasut:

Quoted 8 lines
Quoted 5 lines

- every supported board in u-boot has to be supported in mainline linux,

too. because that is the basic requirement for an entry to stay in this file.

No, you can define CONFIG_MACH_TYPE MACH_TYPE_SOMETHING and MACH_TYPE_SOMETHING nnn in your config file.

Quoted 7 lines
Quoted 4 lines

well, according to this argumentation, there would be no need for mach-types.h at all. because if you rely on a mach-types.h definition and it is removed from linux, you have to switch to define it yourself anyway.

Not really, if you don't use it to boot linux, you don't need the mach id. Or if you use dtree.

so why should i use the mach-type.h anyway? instead i could just define the id in the config.

either there is a database, where the ids come from (and this database must not follow the linux policies) or there is no database and every board defines the numerical id (of couse they must match the linux mach ids.)

Quoted 6 lines
Quoted 3 lines

what about boards which switch from mach-ids to DT in linux? Just don't support mach-ids for these anymore and not being able to boot older kernels?

Why would the machine ID be removed from mach-types.h is the machine switched to DT ?

linux policy