Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1277760 > unrolled thread

[PATCH v2 1/1] platform: goldfish: pipe: add devicetree bindings

Started byJin Qian <jinqian@android.com>
First post2015-11-25 21:10 +0100
Last post2015-11-27 21:20 +0100
Articles 5 — 4 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH v2 1/1] platform: goldfish: pipe: add devicetree bindings Jin Qian <jinqian@android.com> - 2015-11-25 21:10 +0100
    Re: [PATCH v2 1/1] platform: goldfish: pipe: add devicetree bindings Rob Herring <robh@kernel.org> - 2015-11-25 21:30 +0100
      Re: [PATCH v2 1/1] platform: goldfish: pipe: add devicetree bindings Christoffer Dall <christoffer.dall@linaro.org> - 2015-11-26 09:40 +0100
        Re: [PATCH v2 1/1] platform: goldfish: pipe: add devicetree bindings Greg Hackmann <ghackmann@google.com> - 2015-11-27 19:20 +0100
          Re: [PATCH v2 1/1] platform: goldfish: pipe: add devicetree bindings Rob Herring <robh@kernel.org> - 2015-11-27 21:20 +0100

#1277760 — [PATCH v2 1/1] platform: goldfish: pipe: add devicetree bindings

FromJin Qian <jinqian@android.com>
Date2015-11-25 21:10 +0100
Subject[PATCH v2 1/1] platform: goldfish: pipe: add devicetree bindings
Message-ID<qyOy6-2xe-3@gated-at.bofh.it>
From: Greg Hackmann <ghackmann@google.com>

Signed-off-by: Greg Hackmann <ghackmann@google.com>
(cherry picked from commit 3c56d07eb796066530e93a40e74dea3bc59bf4cf)
Signed-off-by: Jin Qian <jinqian@android.com>
---
 Documentation/devicetree/bindings/goldfish/pipe.txt | 17 +++++++++++++++++
 drivers/platform/goldfish/goldfish_pipe.c           | 10 +++++++++-
 2 files changed, 26 insertions(+), 1 deletion(-)
 create mode 100644 Documentation/devicetree/bindings/goldfish/pipe.txt

diff --git a/Documentation/devicetree/bindings/goldfish/pipe.txt b/Documentation/devicetree/bindings/goldfish/pipe.txt
new file mode 100644
index 0000000..6d3801e
--- /dev/null
+++ b/Documentation/devicetree/bindings/goldfish/pipe.txt
@@ -0,0 +1,17 @@
+Android Goldfish QEMU Pipe
+
+Andorid pipe virtual device generated by android emulator.
+
+Required properties:
+
+- compatible : should contain "generic,android-pipe" to match emulator
+- reg        : <registers mapping>
+- interrupts : <interrupt mapping>
+
+Example:
+
+	android_pipe@a010000 {
+		compatible = "generic,android-pipe";
+		reg = <ff018000 0x2000>;
+		interrupts = <0x12>;
+	};
diff --git a/drivers/platform/goldfish/goldfish_pipe.c b/drivers/platform/goldfish/goldfish_pipe.c
index 20a9337..86cc57f 100644
--- a/drivers/platform/goldfish/goldfish_pipe.c
+++ b/drivers/platform/goldfish/goldfish_pipe.c
@@ -624,11 +624,19 @@ static int goldfish_pipe_remove(struct platform_device *pdev)
 	return 0;
 }
 
+static const struct of_device_id goldfish_pipe_of_match[] = {
+	{ .compatible = "generic,android-pipe", },
+	{},
+};
+MODULE_DEVICE_TABLE(of, goldfish_pipe_of_match);
+
 static struct platform_driver goldfish_pipe = {
 	.probe = goldfish_pipe_probe,
 	.remove = goldfish_pipe_remove,
 	.driver = {
-		.name = "goldfish_pipe"
+		.name = "goldfish_pipe",
+		.owner = THIS_MODULE,
+		.of_match_table = goldfish_pipe_of_match,
 	}
 };
 
-- 
2.6.0.rc2.230.g3dd15c0

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [next] | [standalone]


#1277781

FromRob Herring <robh@kernel.org>
Date2015-11-25 21:30 +0100
Message-ID<qyORt-2F7-47@gated-at.bofh.it>
In reply to#1277760
On Wed, Nov 25, 2015 at 11:59:37AM -0800, Jin Qian wrote:
> From: Greg Hackmann <ghackmann@google.com>
> 
> Signed-off-by: Greg Hackmann <ghackmann@google.com>
> (cherry picked from commit 3c56d07eb796066530e93a40e74dea3bc59bf4cf)
> Signed-off-by: Jin Qian <jinqian@android.com>
> ---
>  Documentation/devicetree/bindings/goldfish/pipe.txt | 17 +++++++++++++++++
>  drivers/platform/goldfish/goldfish_pipe.c           | 10 +++++++++-
>  2 files changed, 26 insertions(+), 1 deletion(-)
>  create mode 100644 Documentation/devicetree/bindings/goldfish/pipe.txt
> 
> diff --git a/Documentation/devicetree/bindings/goldfish/pipe.txt b/Documentation/devicetree/bindings/goldfish/pipe.txt
> new file mode 100644
> index 0000000..6d3801e
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/goldfish/pipe.txt
> @@ -0,0 +1,17 @@
> +Android Goldfish QEMU Pipe
> +
> +Andorid pipe virtual device generated by android emulator.

The binding may be trivial, but there's a bigger question of whether 
this is the right long term direction. For example is upstream QEMU 
going to take all the Android pipe stuff? Couldn't virtio be used here 
as the transport?

Rob

> +
> +Required properties:
> +
> +- compatible : should contain "generic,android-pipe" to match emulator
> +- reg        : <registers mapping>
> +- interrupts : <interrupt mapping>
> +
> +Example:
> +
> +	android_pipe@a010000 {
> +		compatible = "generic,android-pipe";
> +		reg = <ff018000 0x2000>;
> +		interrupts = <0x12>;
> +	};
> diff --git a/drivers/platform/goldfish/goldfish_pipe.c b/drivers/platform/goldfish/goldfish_pipe.c
> index 20a9337..86cc57f 100644
> --- a/drivers/platform/goldfish/goldfish_pipe.c
> +++ b/drivers/platform/goldfish/goldfish_pipe.c
> @@ -624,11 +624,19 @@ static int goldfish_pipe_remove(struct platform_device *pdev)
>  	return 0;
>  }
>  
> +static const struct of_device_id goldfish_pipe_of_match[] = {
> +	{ .compatible = "generic,android-pipe", },
> +	{},
> +};
> +MODULE_DEVICE_TABLE(of, goldfish_pipe_of_match);
> +
>  static struct platform_driver goldfish_pipe = {
>  	.probe = goldfish_pipe_probe,
>  	.remove = goldfish_pipe_remove,
>  	.driver = {
> -		.name = "goldfish_pipe"
> +		.name = "goldfish_pipe",
> +		.owner = THIS_MODULE,
> +		.of_match_table = goldfish_pipe_of_match,
>  	}
>  };
>  
> -- 
> 2.6.0.rc2.230.g3dd15c0
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [next] | [standalone]


#1278079

FromChristoffer Dall <christoffer.dall@linaro.org>
Date2015-11-26 09:40 +0100
Message-ID<qz0fT-2yX-13@gated-at.bofh.it>
In reply to#1277781
On Wed, Nov 25, 2015 at 02:24:16PM -0600, Rob Herring wrote:
> On Wed, Nov 25, 2015 at 11:59:37AM -0800, Jin Qian wrote:
> > From: Greg Hackmann <ghackmann@google.com>
> > 
> > Signed-off-by: Greg Hackmann <ghackmann@google.com>
> > (cherry picked from commit 3c56d07eb796066530e93a40e74dea3bc59bf4cf)
> > Signed-off-by: Jin Qian <jinqian@android.com>
> > ---
> >  Documentation/devicetree/bindings/goldfish/pipe.txt | 17 +++++++++++++++++
> >  drivers/platform/goldfish/goldfish_pipe.c           | 10 +++++++++-
> >  2 files changed, 26 insertions(+), 1 deletion(-)
> >  create mode 100644 Documentation/devicetree/bindings/goldfish/pipe.txt
> > 
> > diff --git a/Documentation/devicetree/bindings/goldfish/pipe.txt b/Documentation/devicetree/bindings/goldfish/pipe.txt
> > new file mode 100644
> > index 0000000..6d3801e
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/goldfish/pipe.txt
> > @@ -0,0 +1,17 @@
> > +Android Goldfish QEMU Pipe
> > +
> > +Andorid pipe virtual device generated by android emulator.
> 
> The binding may be trivial, but there's a bigger question of whether 
> this is the right long term direction. For example is upstream QEMU 
> going to take all the Android pipe stuff? Couldn't virtio be used here 
> as the transport?
> 
The Android Pipe is not a very likely candidate for upstream QEMU, no.
We are working on a TCG implementation of virtio-vsock
(http://qemu-project.org/Features/VirtioVsock) which we think should be
a suitable drop-in replacement for the Android pipe.  We have yet to
measure performance differences between the two, especially in the
context of 3D graphics, though.

But I wonder if that should really block this from being merged?  The
support may not be in QEMU but it's in the Android emulator and it would
be a less broken implementation with these patches in the kernel than
without, I think.

-Christoffer
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [next] | [standalone]


#1278917

FromGreg Hackmann <ghackmann@google.com>
Date2015-11-27 19:20 +0100
Message-ID<qzvMJ-6nx-3@gated-at.bofh.it>
In reply to#1278079
On 11/26/15 12:34 AM, Christoffer Dall wrote:
> On Wed, Nov 25, 2015 at 02:24:16PM -0600, Rob Herring wrote:
>>
>> The binding may be trivial, but there's a bigger question of whether
>> this is the right long term direction. For example is upstream QEMU
>> going to take all the Android pipe stuff? Couldn't virtio be used here
>> as the transport?
>>
>
> But I wonder if that should really block this from being merged?  The
> support may not be in QEMU but it's in the Android emulator and it would
> be a less broken implementation with these patches in the kernel than
> without, I think.
>
> -Christoffer
>

To add to Christoffer's point, we added these bindings so we don't need 
to rely on the goldfish virtual bus for probing anymore.

Switching from the goldfish virtual bus to Device-Tree already 
eliminates one big piece where the Android emulator has diverged from 
upstream qemu.  And on the kernel side, it means we don't need ARM and 
MIPS goldfish board code to instantiate the bus.

In the long term I'm happy to push the SDK team towards replacing the 
Android pipe with a virtio alternative.  (We've already been switching 
over to virtio for things like storage.)  But in the short term, we 
still need it.  And I don't think it benefits the mainline kernel if we 
have to maintain cleanup patches like this out-of-tree.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [next] | [standalone]


#1278945

FromRob Herring <robh@kernel.org>
Date2015-11-27 21:20 +0100
Message-ID<qzxER-7w1-9@gated-at.bofh.it>
In reply to#1278917
On Fri, Nov 27, 2015 at 12:17 PM, Greg Hackmann <ghackmann@google.com> wrote:
> On 11/26/15 12:34 AM, Christoffer Dall wrote:
>>
>> On Wed, Nov 25, 2015 at 02:24:16PM -0600, Rob Herring wrote:
>>>
>>>
>>> The binding may be trivial, but there's a bigger question of whether
>>> this is the right long term direction. For example is upstream QEMU
>>> going to take all the Android pipe stuff? Couldn't virtio be used here
>>> as the transport?
>>>
>>
>> But I wonder if that should really block this from being merged?  The
>> support may not be in QEMU but it's in the Android emulator and it would
>> be a less broken implementation with these patches in the kernel than
>> without, I think.
>>
>> -Christoffer
>>
>
> To add to Christoffer's point, we added these bindings so we don't need to
> rely on the goldfish virtual bus for probing anymore.
>
> Switching from the goldfish virtual bus to Device-Tree already eliminates
> one big piece where the Android emulator has diverged from upstream qemu.
> And on the kernel side, it means we don't need ARM and MIPS goldfish board
> code to instantiate the bus.

Okay, fair enough. That's not evident from the patch.

Rob
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web