* Device tree bindings for Aspeed Video Engine

The Video Engine (VE) embedded in the Aspeed AST2400 and AST2500 SOCs can
capture and compress video data from digital or analog sources.

Required properties:
 - compatible:		"aspeed,ast2400-video-engine" or
			"aspeed,ast2500-video-engine"
 - reg:			contains the offset and length of the VE memory region
 - clocks:		clock specifiers for the syscon clocks associated with
			the VE (ordering must match the clock-names property)
 - clock-names:		"vclk" and "eclk"
 - resets:		reset specifier for the syscon reset associated with
			the VE
 - interrupts:		the interrupt associated with the VE on this platform

Optional properties:
 - memory-region:
	phandle to a memory region to allocate from, as defined in
	Documentation/devicetree/bindings/reserved-memory/reserved-memory.txt

Example:

video-engine@1e700000 {
    compatible = "aspeed,ast2500-video-engine";
    reg = <0x1e700000 0x20000>;
    clocks = <&syscon ASPEED_CLK_GATE_VCLK>, <&syscon ASPEED_CLK_GATE_ECLK>;
    clock-names = "vclk", "eclk";
    resets = <&syscon ASPEED_RESET_VIDEO>;
    interrupts = <7>;
    memory-region = <&video_engine_memory>;
};
