tis 2014-09-02 klockan 21:37 +0800 skrev Sugar:
> Sorry, I do not have the relevant code. I will tell these things to
> my colleagues. They will discuss and decide whether to open source code
> about DRAM or not.
At this stage I think it's more relevant to try to get the DRAM
controller reasonably documented. Even just a list of registers and
their bits is helps greatly. We can fill in some blanks, and ask for
clarification on specific details when there is doubt. At least the
A10/A13/A20 DRAM controllers.
I am not asking that Allwinner provide perfect documentation or drivers,
only that we work together to collect the information the community
(where Allwinner is one part) needs for developing and maintaining
support for the range Allwinner SoCs in mainline u-boot and kernel.
Source code helps somewhat, but source code like what is in boot0/boot1
is only of limited help. While such source code gets us over the initial
hurdle of at all booting the CPU, it still leaves too many unknowns for
maintaining and unifying code. These bits of code needs to be maintained
by the community for years to come and unified across different
generations based on mostly the same DRAM controller with modifications.
Regarding NANDC my request is mostly the same. I do not request that
your NAND FTL like block driver is fully open sourced, or even that
Allwinner writes another driver which can be open sourced if it can't.
But we do need to have reasonable register descriptions to make use of
the NAND controller no matter if the driver is written by Allwinner or
other members of community. But luckily at the moment I think we have
learnt most bits of the NAND controller in A10/A13/A20 etc and main
culpit is now to get Linux and u-boot main NAND framework up to level
for using it proper. Note that I haven't looked at all at what the NAND
controller looks like in the later SoC generations.
And one little detail to keep in mind for business side of things. Every
kernel or u-boot piece that includes binary-only components is a problem
for the Open Source community as these those components can not be used
without violating the license of u-boot or kernel.
Both kernel and u-boot are GPLv2 licensed, which in essense means you
are allowed to use the code almost as you wish without restrictions as
long as you provide the source code of any additions or modifications
you make to the code. That's really all the license is about.
Binary-only additions is not allowed.