public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Stefan Roese <sr@denx.de>
To: u-boot@lists.denx.de
Subject: [U-Boot] DM ethernet driver with multiple interfaces per device
Date: Mon, 1 Feb 2016 14:27:39 +0100	[thread overview]
Message-ID: <56AF5D4B.1050707@denx.de> (raw)

Hi!

I'm currently porting the Marvell mvpp2 driver for the Armada 375
to U-Boot. This controller is a bit different, as it exposes 
multiple interfaces per controller. In this specific case its
2 interfaces. Here the current dts node:

	/* Network controller */
	ethernet at f0000 {
		compatible = "marvell,armada-375-pp2";
		reg = <0xf0000 0xa000>, /* Packet Processor regs */
		      <0xc0000 0x3060>, /* LMS regs */
		      <0xc4000 0x100>,  /* eth0 regs */
		      <0xc5000 0x100>;  /* eth1 regs */
		clocks = <&gateclk 3>, <&gateclk 19>;
		clock-names = "pp_clk", "gop_clk";
		status = "disabled";

		eth0: eth0 at c4000 {
			interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
			port-id = <0>;
			status = "disabled";
		};

		eth1: eth1 at c5000 {
			interrupts = <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>;
			port-id = <1>;
			status = "disabled";
		};
	};

Now I'm unsure, how to support those multiple network interfaces
with DM. As the driver will only get called once. And I can't
instantiate 2 network interfaces from the one probe function
call.

I could work around this problem, by restructuring the DT node
into 2 separate DT nodes, each referencing the shared resources.
But this would be a ugly, since it results in a different DT
source between Linux and U-Boot.

So my question is, is this something that is supported by the
current DM networking infrastructure? And if not, if you have
some hints on how to best support such a constellation with
multiple network interfaces via one ethernet controller.

Thanks,
Stefan

             reply	other threads:[~2016-02-01 13:27 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-02-01 13:27 Stefan Roese [this message]
2016-02-01 16:20 ` [U-Boot] DM ethernet driver with multiple interfaces per device Simon Glass

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=56AF5D4B.1050707@denx.de \
    --to=sr@denx.de \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox