add wmb and loop count in polling loops
add safe return with error while axi doens't respond for a while
fix a bug that may lead to inconsistency of prod pointer
Merge branch 'axi_safe' into axi_debug