On Mon, Jan 11, 2016 at 3:39 PM, Laura Abbott <la...@labbott.name> wrote:
>
> This adds a base set of devicetree bindings for the Ion memory
> manager. This supports setting up the generic set of heaps and
> their properties.
>
> Signed-off-by: Laura Abbott <la...@labbott.name>
> ---
>  drivers/staging/android/ion/devicetree.txt | 50 
> ++++++++++++++++++++++++++++++
>  1 file changed, 50 insertions(+)
>  create mode 100644 drivers/staging/android/ion/devicetree.txt
>
> diff --git a/drivers/staging/android/ion/devicetree.txt 
> b/drivers/staging/android/ion/devicetree.txt
> new file mode 100644
> index 0000000..e1ea537
> --- /dev/null
> +++ b/drivers/staging/android/ion/devicetree.txt
> @@ -0,0 +1,50 @@
> +Ion Memory Manager
> +
> +Ion is a memory manager that allows for sharing of buffers via dma-buf.
> +Ion allows for different types of allocation via an abstraction called
> +a 'heap'. A heap represents a specific type of memory. Each heap has
> +a different type. There can be multiple instances of the same heap
> +type.
> +
> +Required properties for Ion
> +
> +- compatible: "linux,ion" PLUS a compatible property for the device
> +
> +All child nodes of a linux,ion node are interpreted as heaps
> +
> +required properties for heaps
> +
> +- compatible: compatible string for a heap type PLUS a compatible property
> +for the specific instance of the heap. Current heap types
> +-- linux,ion-heap-system
> +-- linux,ion-heap-system-contig
> +-- linux,ion-heap-carveout
> +-- linux,ion-heap-chunk
> +-- linux,ion-heap-dma
> +-- linux,ion-heap-custom
> +
> +Optional properties
> +- memory-region: A phandle to a memory region. Required for DMA heap type
> +(see reserved-memory.txt for details on the reservation)

Why would all of them not require a memory region other than system heap?

> +
> +Example:
> +
> +       ion {
> +               compatbile = "qcom,msm8916-ion", "linux,ion";
> +               #address-cells = <1>;
> +               #size-cells = <0>;
> +
> +               ion-system-heap {
> +                       compatbile = "qcom,system-heap", 
> "linux,ion-heap-system"
> +               };

What is the purpose of this in DT? Don't we always want/need a system
heap? How does it vary by platform?

> +               ion-camera-region {
> +                       compatible = "qcom,camera-heap", "linux,ion-heap-dma"
> +                       memory-region = <&camera_region>;

Why not just add a property (or properties) to the camera_region node
that ION drivers can search for?

Rob
_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to