Skip to contentSkip to conversation

ARM: dts: mvebu: add ethernet to the cm-a510 board

PATCH New Sebastian Hesselbarth 5 participants 20 messages Jan 30, 2015 – Feb 6, 2015 1 message not in the archive

lore
Share & tools
lore

A message that is not in the archive (sent off-list or not yet received): [email protected]

#1 lore raw

[added MVEBU maintainers and Gabriel to Cc]

Quoted 5 lines · Jean-Francois Moine

This patch enables the ethernet device by default, permitting CM-A510 boards to access the network when an ethernet connector is present.

Jean-Francois,

great you are helping out Gabriel to get his CM-A510 up and running!

I had a closer look on the Compulab website of the SoM [1] and think that we'll have to convert it to dove-cm-a510.dtsi and the baseboard Gabriel is using (maybe SBC-A510 [2]).

The dove-cm-a510.dts was a blind port of what was in mach-dove when we started with DT, so most of it is probably bogus.

For the ethernet port this patch is about, the PHY (RTL8211) is part of the SoM, the jack is not. So, we cannot really tell, if that port can ever be used on a specific baseboard. I suggest to put the corresponding nodes into the dtsi, but leave them status = "disabled".

The baseboard dts should enable them like your patch does, if the ethernet jack is available. The same is true for the sdio0 and sata0 nodes you can see below. However, sdio1 is connected to a USI WiFi module with Marvel 8686 on the SoM.

Can you take over and prepare the necessary patches? That would be great!

BTW, I wouldn't mind if the cm510 related dts files you are touching move over to dual-license [3] now :)

Sebastian

[1] http://www.compulab.co.il/products/computer-on-modules/cm-a510/#diagram
[2] www.compulab.co.il/products/sbcs/sbc-a510/
[3] http://permalink.gmane.org/gmane.linux.ports.arm.kernel/389206

Quoted 18 lines
---
  arch/arm/boot/dts/dove-cm-a510.dts | 2 ++
  1 file changed, 2 insertions(+)
arch/arm/boot/dts/dove-cm-a510.dts +2 -0
index 50c0d69..404e983 100644
@@ -21,6 +21,8 @@
  &sdio0 { status = "okay"; };
  &sdio1 { status = "okay"; };
  &sata0 { status = "okay"; };
+&eth { status = "okay"; };
+&mdio { status ="okay";};
 
  &spi0 {
  	status = "okay";
#2 lore raw
Quoted 3 lines · On Fri, 30 Jan 2015 10:44:07 +0100 Sebastian Hesselbarth…

I had a closer look on the Compulab website of the SoM [1] and think that we'll have to convert it to dove-cm-a510.dtsi and the baseboard Gabriel is using (maybe SBC-A510 [2]).

Sebastian,

I don't understand why the A510 contained in the cm-a510 should be different from the one of the other boards (I just noticed a second ethernet and a WiFi device - but, is the Compulab document up to date?).

If it is the same, the dove.dtsi should work (and it seems to work for Gabriel).

The only difference with the cm-a510 is the presence or not of the connectors. So, all the Dove devices could be enabled in the DT, and, if some room is needed in the board, the .config could be adapted removing the useless drivers and have a minimal kernel.

Signature · 2 lines
Ken ar c'hentañ	|	      ** Breizh ha Linux atav! **
Jef		|		http://moinejf.free.fr/
#3 lore raw
Quoted 9 lines · Jean-Francois Moine
Quoted 3 lines · On Fri, 30 Jan 2015 10:44:07 +0100 Sebastian Hesselbarth…

I had a closer look on the Compulab website of the SoM [1] and think that we'll have to convert it to dove-cm-a510.dtsi and the baseboard Gabriel is using (maybe SBC-A510 [2]).

I don't understand why the A510 contained in the cm-a510 should be different from the one of the other boards (I just noticed a second ethernet and a WiFi device - but, is the Compulab document up to date?).

It is not the SoM that is different, but the baseboard it is attached to. So, the SoM makes a second layer of dtsi around the SoC but is not sufficient for a board dts.

Regarding the on-SoM WiFi, that will be available on _any_ cm-a510 equipped to _any_ baseboard, so it can be enabled in the som.dtsi.

The second ethernet comes from a PCIe attached NIC, and as you already said, we simply don't know (yet) if it is actually wired-up on Gabriel's baseboard. If it is not wired-up on the baseboard, we definitely want it disabled in DT, too.

Quoted 2 lines

If it is the same, the dove.dtsi should work (and it seems to work for Gabriel).

Of course it does work for Gabriel but we don't want to exclusively mainline Gabriel's setup. In the best case, we want to provide a dove-cm-a510.dtsi that can be included in any baseboard somebody is using.

Quoted 4 lines

The only difference with the cm-a510 is the presence or not of the connectors. So, all the Dove devices could be enabled in the DT, and, if some room is needed in the board, the .config could be adapted removing the useless drivers and have a minimal kernel.

Adapting the .config and removing drivers is actually not an option. IMHO, introducing DT was meant for a single multi-arch kernel that can be shipped with common Linux distros. Therefore, DT is the place you enable/disable available resources. You leave most of the SoC (and SoM) nodes disabled as long as you cannot tell if there is a corresponding connector available.

Sebastian

#4 lore raw
Quoted 6 lines · On Fri, 30 Jan 2015 12:00:16 +0100 Sebastian Hesselbarth…

Adapting the .config and removing drivers is actually not an option. IMHO, introducing DT was meant for a single multi-arch kernel that can be shipped with common Linux distros. Therefore, DT is the place you enable/disable available resources. You leave most of the SoC (and SoM) nodes disabled as long as you cannot tell if there is a corresponding connector available.

Well, I don't know too much about the hardware, and less about the hardware modules (SoM?).

As seen in the Compulab documents, there are a lot of hardware modules. For the DT, do you mean that there would be as many .dts's as the whole number of connection possibilities?

I'd have better seen the inverted case as the actual empty cm-board dts:
enable every option in the (generic) .dts and let the vendor/user create a specific .dts from this one for the board according to the installed modules.

In any case, any real cm-a510 board should work with the generic/full .dts even if some hardware modules are lacking. No?

Signature · 2 lines
Ken ar c'hentañ	|	      ** Breizh ha Linux atav! **
Jef		|		http://moinejf.free.fr/
#5 lore raw
Quoted 11 lines · Jean-Francois Moine
Quoted 6 lines · On Fri, 30 Jan 2015 12:00:16 +0100 Sebastian Hesselbarth…

Adapting the .config and removing drivers is actually not an option. IMHO, introducing DT was meant for a single multi-arch kernel that can be shipped with common Linux distros. Therefore, DT is the place you enable/disable available resources. You leave most of the SoC (and SoM) nodes disabled as long as you cannot tell if there is a corresponding connector available.

Well, I don't know too much about the hardware, and less about the hardware modules (SoM?).

Sorry, SoM is for System-on-Module, i.e. the CM-A510 itself.

You can see from the block diagram that it comprises the Dove SoC, power circuitry, touch-screen controller, WiFi, GbE PHY for GbE-0, GbE controller on PCIe for GbE-1, I2S audio codec, RS232 Level Shifter for UART0, an USB2 Hub, SPI flash, NAND and RAM.

That basically is what will be represented in the som.dtsi. If any of the functions above and the SoC will be _accessible_ on the baseboard is another story.

Quoted 3 lines

As seen in the Compulab documents, there are a lot of hardware modules. For the DT, do you mean that there would be as many .dts's as the whole number of connection possibilities?

Nope. One dove.dtsi, one dove-cm-a510.dtsi, and one baseboard.dts including dove-cm-a510.dtsi for every baseboard we stumble upon.

Quoted 4 lines

I'd have better seen the inverted case as the actual empty cm-board dts:
enable every option in the (generic) .dts and let the vendor/user create a specific .dts from this one for the board according to the installed modules.

That what dtsi's are made for with one exception: the dtsi cannot "run" on its own but needs at least one baseboard.dts that includes it. We could create a "bare"-baseboard that represents what is (easily) accessible on the SoM itself. Given the fact that even UART0 needs a baseboard that grabs it from the SoM connector, I see no value in that.

Quoted 2 lines

In any case, any real cm-a510 board should work with the generic/full .dts even if some hardware modules are lacking. No?

Nope. The cm-a510 is just an add-on for a baseboard, it does not make a working board. Just think of it as a feature-improved SoC.

Sebastian

#6 lore raw
Quoted 2 lines · On Fri, 30 Jan 2015 13:03:59 +0100 Sebastian Hesselbarth…

Nope. The cm-a510 is just an add-on for a baseboard, it does not make a working board. Just think of it as a feature-improved SoC.

Well, I understand a bit, but I don't see clearly the physical system, nor how each part gets its configuration for booting.

As you know better than I, it seems that you are the right person to create the .dtsi/.dts's :) and to explain Gabriel how to use them!

Signature · 2 lines
Ken ar c'hentañ	|	      ** Breizh ha Linux atav! **
Jef		|		http://moinejf.free.fr/
#7 lore raw
Quoted 7 lines · Jean-Francois Moine
Quoted 2 lines · On Fri, 30 Jan 2015 13:03:59 +0100 Sebastian Hesselbarth…

Nope. The cm-a510 is just an add-on for a baseboard, it does not make a working board. Just think of it as a feature-improved SoC.

Well, I understand a bit, but I don't see clearly the physical system, nor how each part gets its configuration for booting.

TBH, I completely missed that the cm-a510 can come in different configurations, e.g. with or without WiFi. Nevertheless, considering that there are only a handful of configurations available, IMHO the right thing would be a dtsi with all possible options described by corresponding but disabled nodes.

The actual physical system has to be determined at runtime in any way and it should be done by the bootloader. However, even the bootloader would be happy to find the right nodes to enable instead of creating them from scratch.

Quoted 2 lines

As you know better than I, it seems that you are the right person to create the .dtsi/.dts's :) and to explain Gabriel how to use them!

Well, nothing that should stop you from improving your skills :)

I'd be happy to take over, but I admit that my current lack of spare time would only allow me to support Gabriel and you.

Let's wait for Gabriel's response on how he can help improving Dove mainline with his cm-a510 and baseboard.

Sebastian

#8 lore raw
Quoted 7 lines

I'd be happy to take over, but I admit that my current lack of spare time would only allow me to support Gabriel and you.

Let's wait for Gabriel's response on how he can help improving Dove mainline with his cm-a510 and baseboard.

Sebastian

Hello all,

First of all, I would like to give thanks all people like you for all your help and support. I really appreciate it.

DT is new for me, I have never worked using this kind of hardware description, so I am involving in many issues due to my lack of skills in this kind of structure.

At this moment, I am focusing in the update of the version of the kernel on the CM-A510 board (from 2.6 to 3.1x)in order to give more features to the system, but as I said before, I have lots of problems.

Thanks to the help and support of Jean-Francois Moine, I have achieved to boot the kernel completely and to mount the rootfs via NFS. I have a prompt, what has been a very big step for me.

Quoted 1 line

Nope. One dove.dtsi, one dove-cm-a510.dtsi, and one baseboard.dts including dove-cm-a510.dtsi for every baseboard we stumble upon.

In reference to the structure of .dts and .dtsi files, I agree with this kind of structure, of course, nobody as you can consider it better. I think the idea of make a dove-cm-a510.dtsi file and different baseboards.dts depending of the peripherals used is great. But as I say, maybe I am not the right person to decide it, Jean-Froncois Moine and you have better criteria.So, whatever you decide I would very happy to help.

At this moment, I am trying to configure the framebuffer, but as Moine told me,it seems there is not video driver support for this board in DT... :( .

Best regards, and thank you again...

G.D

#9 lore raw
In reply to Sebastian Hesselbarth
Quoted 7 lines

I'd be happy to take over, but I admit that my current lack of spare time would only allow me to support Gabriel and you.

Let's wait for Gabriel's response on how he can help improving Dove mainline with his cm-a510 and baseboard.

Sebastian

Hello all,

First of all, I would like to give thanks all people like you for all your help and support. I really appreciate it.

DT is new for me, I have never worked using this kind of hardware description, so I am involving in many issues due to my lack of skills in this kind of structure.

At this moment, I am focusing in the update of the version of the kernel on the CM-A510 board (from 2.6 to 3.1x)in order to give more features to the system, but as I said before, I have lots of problems.

Thanks to the help and support of Jean-Francois Moine, I have achieved to boot the kernel completely and to mount the rootfs via NFS. I have a prompt, what has been a very big step for me.

Quoted 1 line

Nope. One dove.dtsi, one dove-cm-a510.dtsi, and one baseboard.dts including dove-cm-a510.dtsi for every baseboard we stumble upon.

In reference to the structure of .dts and .dtsi files, I agree with this kind of structure, of course, nobody as you can consider it better. I think the idea of make a dove-cm-a510.dtsi file and different baseboards.dts depending of the peripherals used is great. But as I say, maybe I am not the right person to decide it, Jean-Froncois Moine and you have better criteria.So, whatever you decide I would very happy to help.

At this moment, I am trying to configure the framebuffer, but as Moine told me,it seems there is not video driver support for this board in DT... :( .

Best regards, and thank you again...

G.D

#10 lore raw
Quoted 13 lines · Gabriel Dobato
Quoted 5 lines

I'd be happy to take over, but I admit that my current lack of spare time would only allow me to support Gabriel and you.

Let's wait for Gabriel's response on how he can help improving Dove mainline with his cm-a510 and baseboard.

First of all, I would like to give thanks all people like you for all your help and support. I really appreciate it.

DT is new for me, I have never worked using this kind of hardware description, so I am involving in many issues due to my lack of skills in this kind of structure.

Quoted 7 lines

At this moment, I am focusing in the update of the version of the kernel on the CM-A510 board (from 2.6 to 3.1x)in order to give more features to the system, but as I said before, I have lots of problems.

Thanks to the help and support of Jean-Francois Moine, I have achieved to boot the kernel completely and to mount the rootfs via NFS. I have a prompt, what has been a very big step for me.

Gabriel,

great you can boot a recent kernel. I guess you had to quite heavily modify current dove-cm-a510.dts? Can you upload the one you use now to any pastebin and send the link?

Quoted 9 lines
Quoted 2 lines

Nope. One dove.dtsi, one dove-cm-a510.dtsi, and one baseboard.dts including dove-cm-a510.dtsi for every baseboard we stumble upon.

In reference to the structure of .dts and .dtsi files, I agree with this kind of structure, of course, nobody as you can consider it better. I think the idea of make a dove-cm-a510.dtsi file and different baseboards.dts depending of the peripherals used is great. But as I say, maybe I am not the right person to decide it, Jean-Froncois Moine and you have better criteria.So, whatever you decide I would very happy to help.

You didn't mention if you really use the sb-a510, i.e. the Compulab reference baseboard. Is it what you are using with your cm-a510?

Quoted 3 lines

At this moment, I am trying to configure the framebuffer, but as Moine told me,it seems there is not video driver support for this board in DT... :( .

Not quite true. Video is made up of at least 4 different devices:
Framebuffer, GPU, Decode engine, and usually DVI/HDMI transmitter or VGA.

We do have a driver for the framebuffer (armada_drm) and there is great work from Russell King and others on the GPU and Decode engine (IIRC).

If you are using the sb-a510, I can see from the manual, that DVI transmitter is SIL164.. AFAIS there is a driver for it, that maybe needs some polishing. Nobody ever tested VGA, but it shouldn't be too hard to add support for it as it is directly supported by the framebuffer HW.

One quite important driver at least for Dove is a clock source for video. Internal clock generators for video are way to limited with respect to frequencies to allow any useful resolution.

I'll see if I can have a look at the dts stuff this weekend.. that way we'll have at least the basic done before moving to the other devices.

Sebastian

#11 lore raw
Quoted 10 lines · On Thu, 05 Feb 2015 23:13:58 +0100 Sebastian Hesselbarth…
Quoted 3 lines

At this moment, I am trying to configure the framebuffer, but as Moine told me,it seems there is not video driver support for this board in DT... :( .

Not quite true. Video is made up of at least 4 different devices:
Framebuffer, GPU, Decode engine, and usually DVI/HDMI transmitter or VGA.

We do have a driver for the framebuffer (armada_drm) and there is great work from Russell King and others on the GPU and Decode engine (IIRC).

Yes, but it has no DT support. Mine has.

Quoted 5 lines

If you are using the sb-a510, I can see from the manual, that DVI transmitter is SIL164.. AFAIS there is a driver for it, that maybe needs some polishing. Nobody ever tested VGA, but it shouldn't be too hard to add support for it as it is directly supported by the framebuffer HW.

This asks for some VGA encoder/connector module.

Actually, as Gabriel told me that his screen is directly connected to the RGB LCD output, I wrote a simple panel for him. This module just gets the display timings from the DT.

Quoted 5 lines

One quite important driver at least for Dove is a clock source for video. Internal clock generators for video are way to limited with respect to frequencies to allow any useful resolution.

From my previous tests with the si5351 in the Cubox, most video modes

should work without external clocks.

Quoted 3 lines

I'll see if I can have a look at the dts stuff this weekend.. that way we'll have at least the basic done before moving to the other devices.

Signature · 2 lines
Ken ar c'hentañ	|	      ** Breizh ha Linux atav! **
Jef		|		http://moinejf.free.fr/
#12 lore raw
Quoted 6 lines · Jean-Francois Moine
Quoted 4 lines · On Thu, 05 Feb 2015 23:13:58 +0100 Sebastian Hesselbarth…
Quoted 3 lines

At this moment, I am trying to configure the framebuffer, but as Moine told me,it seems there is not video driver support for this board in DT... :( .

Quoted 8 lines
Quoted 6 lines

Not quite true. Video is made up of at least 4 different devices:
Framebuffer, GPU, Decode engine, and usually DVI/HDMI transmitter or VGA.

We do have a driver for the framebuffer (armada_drm) and there is great work from Russell King and others on the GPU and Decode engine (IIRC).

Yes, but it has no DT support. Mine has.

Yeah, it would be nice if you two stick together once again and work that out for mainline?

Quoted 7 lines
Quoted 5 lines

If you are using the sb-a510, I can see from the manual, that DVI transmitter is SIL164.. AFAIS there is a driver for it, that maybe needs some polishing. Nobody ever tested VGA, but it shouldn't be too hard to add support for it as it is directly supported by the framebuffer HW.

This asks for some VGA encoder/connector module.

Hmm, maybe it is just enough to tell the DRM driver to switch to VGA and what i2c to use for DDC. I'll have to catch up with DRM and DT.

Quoted 3 lines

Actually, as Gabriel told me that his screen is directly connected to the RGB LCD output, I wrote a simple panel for him. This module just gets the display timings from the DT.

Ok. That makes it less complicated as there already should be support for dumb RGB anyway.

Quoted 6 lines
Quoted 3 lines

One quite important driver at least for Dove is a clock source for video. Internal clock generators for video are way to limited with respect to frequencies to allow any useful resolution.

From my previous tests with the si5351 in the Cubox, most video modes
should work without external clocks.

Well, this is not about a working corner case.. video modes are (more or less) standardized and so is the clock frequency. Monitors are allowed to reject any non-standard modes and it gets worse with TVs.

Ergo, we do want to hit the frequency as close as possible and Dove's internal PLL simply cannot.

Sebastian

#13 lore raw
Quoted 7 lines · On Fri, 06 Feb 2015 11:05:39 +0100 Sebastian Hesselbarth…
Quoted 4 lines
Quoted 2 lines

We do have a driver for the framebuffer (armada_drm) and there is great work from Russell King and others on the GPU and Decode engine (IIRC).

Yes, but it has no DT support. Mine has.

Yeah, it would be nice if you two stick together once again and work that out for mainline?

It is not important for me to have something in the mainline: my driver works fine enough for program development, and I don't need video streaming. On the other hand, Russell said that his system does not work well in a DT context...

Quoted 6 lines
Quoted 3 lines

Actually, as Gabriel told me that his screen is directly connected to the RGB LCD output, I wrote a simple panel for him. This module just gets the display timings from the DT.

Ok. That makes it less complicated as there already should be support for dumb RGB anyway.

I could not find such a module, and, more, these LCD / VGA modules have to be componentized to work with the armada DRM driver, and same for mine.

Signature · 2 lines
Ken ar c'hentañ	|	      ** Breizh ha Linux atav! **
Jef		|		http://moinejf.free.fr/
#14 lore raw
In reply to Sebastian Hesselbarth
Quoted 2 lines · Sebastian Hesselbarth

Yeah, it would be nice if you two stick together once again and work that out for mainline?

I don't see that happening, ever.

While I will (and have) taken patches from Jean which are technically good (for things which I look after like the TDA998x) I see no reciprocal good will - all I get is this "my driver is better than yours" crap all the time.

Signature · 2 lines
FTTC broadband for 0.8mile line: currently at 10.5Mbps down 400kbps up
according to speedtest.net.
#15 lore raw
In reply to Jean-Francois Moine
Quoted 7 lines · Jean-Francois Moine
Quoted 4 lines · On Thu, 05 Feb 2015 23:13:58 +0100 Sebastian Hesselbarth…
Quoted 3 lines

At this moment, I am trying to configure the framebuffer, but as Moine told me,it seems there is not video driver support for this board in DT... :( .

Quoted 8 lines
Quoted 6 lines

Not quite true. Video is made up of at least 4 different devices:
Framebuffer, GPU, Decode engine, and usually DVI/HDMI transmitter or VGA.

We do have a driver for the framebuffer (armada_drm) and there is great work from Russell King and others on the GPU and Decode engine (IIRC).

Yes, but it has no DT support. Mine has.

It has partial DT support. I'm currently waiting for a production Cubox from SolidRun (Jon Nettleton recently went to Israel, and he and Rabeeh located one - it's currently with Jon, waiting for him to be well enough to dispatch it to me.) Maybe that will put an end to my HDMI problems with DT kernels.

Until then, I've no interest in DT kernels on Dove hardware; they're basically not functional for me.

Quoted 2 lines

From my previous tests with the si5351 in the Cubox, most video modes should work without external clocks.

Jean, let's put this into perspective.

Different HDMI sinks have different tolerances on the video timing parameters. Some HDMI sinks (such as monitors) accept almost any timing. Other sinks (such as TVs) are much stricter.

Just because it works for you without using the SI5351 does not make it a correct implementation. It probably means that you have a HDMI sink that will accept wildly wrong timing but still display the image. Other HDMI sinks may decide to ignore such a wrong signal (and many seem to.)

You've more or less proved that by your investigations into what your HDMI sink will accept for audio (which is basically anything) which, again, is not the general rule.

Taking your case and trying to make believe that it applies everywhere is wholely wrong.

Signature · 2 lines
FTTC broadband for 0.8mile line: currently at 10.5Mbps down 400kbps up
according to speedtest.net.
#16 lore raw
In reply to Sebastian Hesselbarth
Quoted 5 lines · Sebastian Hesselbarth

Gabriel,

great you can boot a recent kernel. I guess you had to quite heavily modify current dove-cm-a510.dts? Can you upload the one you use now to any pastebin and send the link?

Hello Sebsatian,

Not, I only had to include eth (as Mr. Moine told me) and mdio because I mount rootfs via NFS.

Quoted 2 lines

You didn't mention if you really use the sb-a510, i.e. the Compulab reference baseboard. Is it what you are using with your cm-a510?

Yes, sorry for that, I am using SB-A510.

At this moment, thanks to the help of Moine, I am trying to get video output using the driver he made.

But I think it is only the beginning....

I wonder if it will there be driver support for the second ethernet (PCIE attached NIC), and the rest of features remained, for DT...

Before using DT, I tried to boot a simple uImage (without DT), but it did not boot

the last ouput in the kernel trade was:
...
/uncompressing linux... done, booting the kernel./

nothing else.... I wonder if there is a problem with the ID machine, I don't know... The U-Boot used was the one provided by Compulab (Maybe the problem is on Uboot...)

G.D

#17 lore raw
Quoted 7 lines · Gabriel Dobato
Quoted 3 lines · Sebastian Hesselbarth

great you can boot a recent kernel. I guess you had to quite heavily modify current dove-cm-a510.dts? Can you upload the one you use now to any pastebin and send the link?

Not, I only had to include eth (as Mr. Moine told me) and mdio because I mount rootfs via NFS.

Ok, I think we can work out the most obvious stuff (mmc, pcie), too.

Quoted 4 lines
Quoted 2 lines

You didn't mention if you really use the sb-a510, i.e. the Compulab reference baseboard. Is it what you are using with your cm-a510?

Yes, sorry for that, I am using SB-A510.

Ok. Then for the first some versions, I'll stick with the manual. That should be sufficient to create a working sb-a510 dts.

FWIW, is there any Compulab kernel or u-boot source available online? It would help to figure out the GPIO pins and undocumented connections.

Quoted 2 lines

I wonder if it will there be driver support for the second ethernet (PCIE attached NIC), and the rest of features remained, for DT...

AFAIR it was some realtek PCIe NIC.. we have PCIe working on Dove, so I guess it shouldn't be a real problem.

Quoted 9 lines

Before using DT, I tried to boot a simple uImage (without DT), but it did not boot

the last ouput in the kernel trade was:
...
/uncompressing linux... done, booting the kernel./

nothing else.... I wonder if there is a problem with the ID machine, I don't know...

Hard to tell. Could be anything.

Quoted 2 lines

The U-Boot used was the one provided by Compulab (Maybe the problem is on Uboot...)

If you know how to append the dtb to the zImage it should work on any u-boot. If it doesn't support bootz, you'll have to make a uImage of the dtb-appended zImage or simply try to "go" to the zImage address.

Sebastian

#18 lore raw

PATCH 1/1 ARM: dts: mvebu: add ethernet to the cm-a510 board

In reply to Sebastian Hesselbarth
Quoted 43 lines · On Friday 30 January 2015 13:03:59 Sebastian Hesselbarth wrote:
Quoted 10 lines · Jean-Francois Moine

On Fri, 30 Jan 2015 12:00:16 +0100

Quoted 6 lines · Sebastian Hesselbarth

Adapting the .config and removing drivers is actually not an option. IMHO, introducing DT was meant for a single multi-arch kernel that can be shipped with common Linux distros. Therefore, DT is the place you enable/disable available resources. You leave most of the SoC (and SoM) nodes disabled as long as you cannot tell if there is a corresponding connector available.

Quoted 2 lines

Well, I don't know too much about the hardware, and less about the hardware modules (SoM?).

Sorry, SoM is for System-on-Module, i.e. the CM-A510 itself.

You can see from the block diagram that it comprises the Dove SoC, power circuitry, touch-screen controller, WiFi, GbE PHY for GbE-0, GbE controller on PCIe for GbE-1, I2S audio codec, RS232 Level Shifter for UART0, an USB2 Hub, SPI flash, NAND and RAM.

That basically is what will be represented in the som.dtsi. If any of the functions above and the SoC will be _accessible_ on the baseboard is another story.

Quoted 3 lines

As seen in the Compulab documents, there are a lot of hardware modules. For the DT, do you mean that there would be as many .dts's as the whole number of connection possibilities?

Nope. One dove.dtsi, one dove-cm-a510.dtsi, and one baseboard.dts including dove-cm-a510.dtsi for every baseboard we stumble upon.

Quoted 4 lines

I'd have better seen the inverted case as the actual empty cm-board dts:
enable every option in the (generic) .dts and let the vendor/user create a specific .dts from this one for the board according to the installed modules.

That what dtsi's are made for with one exception: the dtsi cannot "run" on its own but needs at least one baseboard.dts that includes it. We could create a "bare"-baseboard that represents what is (easily) accessible on the SoM itself. Given the fact that even UART0 needs a baseboard that grabs it from the SoM connector, I see no value in that.

Quoted 5 lines
Quoted 2 lines

In any case, any real cm-a510 board should work with the generic/full .dts even if some hardware modules are lacking. No?

Nope. The cm-a510 is just an add-on for a baseboard, it does not make a working board. Just think of it as a feature-improved SoC.

This sounds like capes on the BeagleBoard. Are these extension boards self-identifying? If so then the approach used with the capes might work here too.

David

Quoted 7 lines

Sebastian

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel at lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

#19 lore raw

PATCH 1/1 ARM: dts: mvebu: add ethernet to the cm-a510 board

[Re-adding the most obvious People to Cc]

Quoted 13 lines · David Goodenough
Quoted 12 lines · On Friday 30 January 2015 13:03:59 Sebastian Hesselbarth wrote:
Quoted 2 lines · Jean-Francois Moine

On Fri, 30 Jan 2015 12:00:16 +0100
Sebastian Hesselbarth <[email protected]> wrote:

That what dtsi's are made for with one exception: the dtsi cannot "run" on its own but needs at least one baseboard.dts that includes it. We could create a "bare"-baseboard that represents what is (easily) accessible on the SoM itself. Given the fact that even UART0 needs a baseboard that grabs it from the SoM connector, I see no value in that.

Quoted 2 lines

In any case, any real cm-a510 board should work with the generic/full .dts even if some hardware modules are lacking. No?

Quoted 6 lines
Quoted 2 lines

Nope. The cm-a510 is just an add-on for a baseboard, it does not make a working board. Just think of it as a feature-improved SoC.

This sounds like capes on the BeagleBoard. Are these extension boards self-identifying? If so then the approach used with the capes might work here too.

David,

IMHO capes are a different thing. The BB can run just fine without any cape installed, the cm-a510 cannot run without a baseboard. Also, once you have your SoM installed it cannot change over runtime, there is no need for any dynamic overlays and such.

You can build some 5 or 10 different configurations given the SoM and a specific baseboard but not hundreds of possible combinations. Besides, Gabriel is the first in almost 2 years that actually has an cm-a510 - so, I doubt we'll have to mainline dozens of baseboards using the cm-a510 in the near future.

Regarding the self-identification, it would be great if the actual SoM configuration would be stored in the (always available) SPI flash, but from my experience with the boards I have seen so far, I have a bad feeling about it ;) A quick look at the sb-a510 (the compulab baseboard for cm-a510) suggests that there is more configuration available but by jumpers that (hopefully) can be read out by GPIOs at least.

The best similar board available in mainline I can remember is the SolidRun Hummingboard, i.e. one baseboard that can be equipped with 3-4 different SoMs.

Sebastian

#20 lore raw

PATCH 1/1 ARM: dts: mvebu: add ethernet to the cm-a510 board

Quoted 44 lines · On Friday 30 January 2015 14:07:55 Sebastian Hesselbarth wrote:

[Re-adding the most obvious People to Cc]

Quoted 14 lines · David Goodenough
Quoted 13 lines · On Friday 30 January 2015 13:03:59 Sebastian Hesselbarth wrote:
Quoted 3 lines · Jean-Francois Moine

On Fri, 30 Jan 2015 12:00:16 +0100

Sebastian Hesselbarth <[email protected]> wrote:

That what dtsi's are made for with one exception: the dtsi cannot "run" on its own but needs at least one baseboard.dts that includes it. We could create a "bare"-baseboard that represents what is (easily) accessible on the SoM itself. Given the fact that even UART0 needs a baseboard that grabs it from the SoM connector, I see no value in that.

Quoted 2 lines

In any case, any real cm-a510 board should work with the generic/full .dts even if some hardware modules are lacking. No?

Quoted 6 lines
Quoted 2 lines

Nope. The cm-a510 is just an add-on for a baseboard, it does not make a working board. Just think of it as a feature-improved SoC.

This sounds like capes on the BeagleBoard. Are these extension boards self-identifying? If so then the approach used with the capes might work here too.

David,

IMHO capes are a different thing. The BB can run just fine without any cape installed, the cm-a510 cannot run without a baseboard. Also, once you have your SoM installed it cannot change over runtime, there is no need for any dynamic overlays and such.

You can build some 5 or 10 different configurations given the SoM and a specific baseboard but not hundreds of possible combinations. Besides, Gabriel is the first in almost 2 years that actually has an cm-a510 - so, I doubt we'll have to mainline dozens of baseboards using the cm-a510 in the near future.

Regarding the self-identification, it would be great if the actual SoM configuration would be stored in the (always available) SPI flash, but from my experience with the boards I have seen so far, I have a bad feeling about it ;) A quick look at the sb-a510 (the compulab baseboard for cm-a510) suggests that there is more configuration available but by jumpers that (hopefully) can be read out by GPIOs at least.

Quoted 3 lines

The best similar board available in mainline I can remember is the SolidRun Hummingboard, i.e. one baseboard that can be equipped with 3-4 different SoMs.

Ah this sounds like history repeating itself. I have some old PC-104 Compulab boards which had pluggable CPUs.

They were x86 based, so DTS was not a question. I guess that the only approach is to start with the plugin, and then add the baseboard as a standard include.

David

Quoted 7 lines

Sebastian

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel at lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel