platform: goldfish: pipe: add devicetree bindings
authorGreg Hackmann <ghackmann@google.com>
Wed, 6 Jan 2016 14:05:36 +0000 (14:05 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 29 Jan 2016 07:34:36 +0000 (23:34 -0800)
Add bindings so we don't need to rely on goldfish virtual bus for
probing any more, which means we don't need ARM and MIPS goldfish
board code for instantiating the bus.

In the long term we would like to move towards replacing the Android
pipe with virtio-vsock that is currently under development.

Signed-off-by: Greg Hackmann <ghackmann@google.com>
Signed-off-by: Jin Qian <jinqian@android.com>
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Documentation/devicetree/bindings/goldfish/pipe.txt [new file with mode: 0644]
drivers/platform/goldfish/goldfish_pipe.c

diff --git a/Documentation/devicetree/bindings/goldfish/pipe.txt b/Documentation/devicetree/bindings/goldfish/pipe.txt
new file mode 100644 (file)
index 0000000..e417a31
--- /dev/null
@@ -0,0 +1,17 @@
+Android Goldfish QEMU Pipe
+
+Andorid pipe virtual device generated by android emulator.
+
+Required properties:
+
+- compatible : should contain "google,android-pipe" to match emulator
+- reg        : <registers mapping>
+- interrupts : <interrupt mapping>
+
+Example:
+
+       android_pipe@a010000 {
+               compatible = "google,android-pipe";
+               reg = <ff018000 0x2000>;
+               interrupts = <0x12>;
+       };
index 20a933726ac154b2095c8487131d8bd621f8b30d..0b187ff7a35bc4e58508ebceccdc27fa733c48dc 100644 (file)
@@ -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 = "google,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,
        }
 };