Dynamic AML involves parsing/packing of AML opcode and data into AML byte streams. The AML stream interface provides safe buffer management as well as supports forward and reverse streams. It provides functions to create, read, write, clone and compare AML streams. Co-authored-by: Pierre Gondois <pierre.gondois@arm.com> Signed-off-by: Sami Mujawar <sami.mujawar@arm.com> Reviewed-by: Alexei Fedorov <Alexei.Fedorov@arm.com>