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.
signature.asc
Description: This is a digitally signed message part
