On Tue, Aug 5, 2014 at 7:58 AM, Simos Xenitellis
<[email protected]> wrote:
>
> On Mon, Aug 4, 2014 at 11:12 PM, Maxime Ripard
> <[email protected]> wrote:
>>
>> On Mon, Aug 04, 2014 at 02:14:13AM +0300, Simos Xenitellis wrote:
>> > Hi All,
>> >
>> > Nicolas (from ARMDevices.net) has conducted quite a few interviews with
>> > Chinese hardware companies around Shenzhen.
>> > There are several videos with Allwinner, such as
>> >
>> > http://armdevices.net/2014/07/23/allwinner-64bit-armv8-processor-announced/
>> >
>> > I think it would be a good opportunity to interview Allwinner about
>> > issues
>> > with source code development. At
>> > https://plus.google.com/u/0/+charbax/posts/6uqUutxjQiw (see comments) he
>> > is
>> > OK to either mail Allwinner or arrange to visit them for a video
>> > interview.
>> > My preference would be an interview on camera and I believe it should be
>> > feasible.
>> > There may not be immediate results out of this, however it would be
>> > great
>> > to have some official response.
>> >
>> > What's needed is to describe to Nicolas what questions to ask.
>> > I am not familiar with all important questions that can be asked so it
>> > would be good to help add to the list, and explain to Nicolas so that he
>> > can discuss them at ease.
>> >
>> > Here is my attempt with a question. Feel free to correct me.
>> >
>> > 1. The Linux kernel holds now the hardware description of SoCs in a data
>> > format called Device Tree (DT). There are more details about DT at
>> >
>> > http://events.linuxfoundation.org/sites/events/files/slides/petazzoni-device-tree-dummies.pdf
>> > For example, here is the DT file for the Rockchip 3188,
>> >
>> > https://github.com/torvalds/linux/blob/master/arch/arm/boot/dts/rk3188.dtsi
>> >
>> > While many manufacturers have provided DT files for their products,
>> > there
>> > are none yet from Allwinner.
>> > Here we can ask for Allwinner to provide them for all SoCs, or we can
>> > ask
>> > specific details that will help to produce those files. Do we have a
>> > preference?
>>
>> The only thing we need to write those are a good technical
>> documentation and board schematics. Allwinner is only really involved
>> in the former.
>
>
> For the A20, there is this document for EVB schematics,
> https://github.com/OLIMEX/OLINUXINO/blob/master/HARDWARE/A20-PDFs/A20_PAD_STD_V1_1.rar?raw=true
> and http://dl.linux-sunxi.org/A20/A20%20User%20Manual%202013-03-22.pdf for
> technical documentation.
> Are these what you are referring to?
>
> If we want to make a proper question/request, we need a table with the SoCs
> and what's missing for each one of them.
> Can someone make such a table?

You can find what docs we have by looking through the wiki.
For instance, we are missing user manuals for A10s and A31.

And the manuals we do have, have typos and/or are missing stuff for
vital hardware components, such as USB OTG, GMAC. Not to mention
undocumented registers for various stuff.

Last, most of the manual is just register dumps. There is little
information regarding the actual operation of the hardware.

>> > 2. Source code in mainline Linux. We explain why it is important, etc.
>> >
>> > There is a list of items (mainly drivers) at
>> > http://linux-sunxi.org/Linux_mainlining_effort
>> > Are these drivers without any released source code? Has the source code
>> > been released but it needs lots of work to add to mainline? What should
>> > we
>> > ask Allwinner to do?
>>
>> I'm not sure to get what you mean, but the drivers that got merged
>> were either:
>>   - rewritten from scratch (GPIO, clocks, SPI, etc.)
>>   - an adaptation to the Allwinner SoCs of already existing drivers
>>     (GMAC, I2C, SATA, USB, etc.)
>>   - Allwinner source code cleaned up (EMAC, MMC, etc.)
>
>
> This is very specific and useful.
>
>>
>>
>> As for the things Allwinner should do, they should move to using
>> standard Linux API. They improved a lot that aspect when developping
>> the A23 BSP, and hopefully will continue to do so.
>>
>
> With Linux API you mean that Allwinner should use much as possible from what
> is offered at
> https://www.kernel.org/doc/htmldocs/kernel-api/
> like the available data manipulation functions rather than re-implementing
> them?
> Can you give some specific examples and perhaps somewhat quantify the extent
> of the issue?
> What went well with the A23 BSP?

Older kernels by Allwinner were based on 3.0 or 3.3, with a whole bunch
of Allwinner created APIs. With the A23 BSP, they moved to 3.4, and backported
a lot of new frameworks from 3.8+, such as pinctrl, common clk framework,
dmaengine, ASoC. They even used Maxime's pinctrl driver as a base.

Basing their code on newer kernel versions and common APIs makes them
easier to understand, clean up and port to mainline.


Cheers
ChenYu

-- 
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.

Reply via email to