Consider a polynomial in one variable $p(x)$ with $p(0)>0$, and that is not a polynomial in $x^m$ for any $m>1$ (that is, the $gcd$ of the exponents appearing in $p(x)$ is 1). I would like to find necessary and sufficient conditions so that a power of $p$ has no negative coefficients. I know of a sufficient condition: if the degree is $d$, then some power of $p$ will have no negative coefficients if the coefficients of $x, x^d$ and $x^{d-1}$ are all positive, AND the inequality $|p(z)|<p(|z|)$ holds for all complex numbers $z$ other than positive real numbers. This condition is obviously not necessary because $p(x)=1+x^2+x^3$ does not satisfy it, yet its first power has no negative coefficients. On the other hand the condition $|p(z)|<p(|z|)$ for non-real and positive $z$ by itself is surely necessary (because it is satisfied by polynomials without negative coefficients, so if $p^n$ satisfies it, $p$ itself must satisfy it, by taking the $n$-th root), but not sufficient, as simple examples will show. Other necessary conditions can be obtained by identifying some crucial coefficients towards the beginning and the end of $p(x)$ that must be positive (see my article On the inequality $|p(z)|\leq p(|z|)$ for polynomials). But there are examples that show that even if all these crucial coefficients are positive and the $|p(z)|<p(|z|)$ condition holds, the polynomial may still have some negative coefficients in all of its powers. So except for the rather special case when the coefficients of $x,x^d, x^{d-1}$ are positive, I do not know how to predict when a power of a polynomial will have no negative coefficients. Obviously my list of "crucial coefficients" that must be positive is not enough but I do not know how to enlarge it.

As a related note, David Handelman has proved that in the (much more difficult) context of polynomials in several variables, if one power of $p$ has no negative coefficients, then $p^n$ will have no negative coefficients for all sufficiently large $n$.