After working a bit on sunxi recently, I found myself somewhat puzzled
with the ways sunxi devices are named in mainstream U-Boot, mainstream
Linux (device-tree), sunxi-boards and the linux-sunxi wiki. What bothers
me particularly is the lack of consistency across those projects and
among devices. This is clearly not a technical topic of interest, but
all that disparity and lack of consistency is starting to annoy me a
lot. 

Currently, there are apparently no guidelines (or nobody cares to
respect or enforce them) on most of those projects. I would like to
discuss this problem with the maintainers of each of those so that we
could find a common and consistent way of naming sunxi devices, convert
the already supported devices to comply with the new naming scheme and
stick to it in the future. I know that a fair share of people just don't
care about it, but I hope that the maintainers for those projects will
see some interest in it.

First off, such a change will probably mess up a few hand-written build
scripts and bother a few people at first, but I think it's better to do
it now instead of waiting or not doing anything about it.

To summarize, the current situation varies a bit depending on each
project:

U-Boot:
* Defconfig targets allow the use of upper-case, lower-case, dashes and
underscores
* Most targets follow the following scheme: [Vendor]_[Model]_defconfig
* Some targets do not respect the vendor or model typography
(A20-Olinuxino-Lime2 is not correct for the model part, it should be
A20-Olinuxino-LIME2)
* Some targets use dashes to mark spaces in either the vendor or model
part
* Some devices add prefixes to the configs

Linux:
* Device-tree sources have a clear naming scheme,
a[xx]-sun[x]i-[device].dts, that only allows lower-case and dashes
* However, what [device] is is unclear and sometimes includes the vendor
name, sometimes not

sunxi-boards:
* FEX files are all lower-case and allow dashes and underscores
* There is no clear scheme for the naming of devices, some files include
the vendor name, some don't
* Some files use dashes to mark spaces in either the vendor or model
part

linux-sunxi wiki:
* The scheme to follow should be [Vendor]_[Model] and upper-case,
lower-case, dashes and underscores are allowed
* Some pages may not respect that convention
* Some targets do not respect the vendor or model typography
(A20-Olinuxino-Lime2 is not correct for the model part, it should be
A20-Olinuxino-LIME2)
* Some targets use dashes to mark spaces in either the vendor or model
part

My proposal to unify all this is the following:
* linux-sunxi wiki: use the [Vendor]_[Model] convention while respecting
the correct typography for the vendor and model names (as defined by the
vendor) and using underscores for spaces
* Use exactly the same name for the U-Boot configs, except in the case
mediawiki automatically adds an upper case at the beginning of the page
name (iNet becomes INet but we should still use iNet in the U-Boot
config)
* Use that name with all underscores replaced by dashes and all caps
changed to lower-case in the Linux device-tree names
* Use that name with all caps changed to lower-case in sunxi-boards

I am willing to submit patches for each projects and update the wiki
pages for each concerned device following this convention. Especially, I
would need Maxime's approval for the Linux part, Hans and/or Ian's
approval for U-Boot and an overal feeling of approval for the wiki and
sunxi-boards parts.

Please let me know what you think about all this!

-- 
Paul Kocialkowski, Replicant developer

Replicant is a fully free Android distribution running on several
devices, a free software mobile operating system putting the emphasis on
freedom and privacy/security.

Website: http://www.replicant.us/
Blog: http://blog.replicant.us/
Wiki/tracker/forums: http://redmine.replicant.us/

-- 
You received this message because you are subscribed to the Google Groups 
"linux-sunxi" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to