gpu: ion: Add support for specifying a default prefetch size

Some heaps now support prefetching memory before allocation occurs.
This currently requires a size to be given to prefetch a given size.
Clients may not know what size they need to prefetch for a given
heap. Since the optimal size may change with the target, add an option
into devicetree to specify what size should be prefetched by default.
Clients may specify a size of 0 to prefetch a the default size.

Change-Id: If15e4051d53fe284129c309101c41ee423f890f9
Signed-off-by: Laura Abbott <lauraa@codeaurora.org>
gpu: ion: Don't recursively take secure chunk lock

During allocation, the chunk_lock is taken to protect the chunk
list. dma_alloc_coherent may invoke the shrinker which also tries
to take the chunk_lock. This leads to a deadlock. If the mutex is
already locked in the shrinker, just return -1 as specifed by the
shrinker API to signal this condition.

Change-Id: I5525ecfcdc6deea61024f0008c62026103728571
Signed-off-by: Laura Abbott <lauraa@codeaurora.org>