These polynomials (i.e those for which either $0$ or $1$ is a root) are the only such polynomials.
There exists some $c\in\mathbb R$ for which every root $z$ of $f$ satisfies $|z|\leq c$, and so every root $z_k$ of $f(x^k)$ satisfies $|z|\leq c^{1/k}$. Suppose $g(x)=\sum_{i=0}^d a_ix^i$ is an irreducible factor of some $f(x^k)$, with $a_d\neq 0$. Then $g$ has $d$ roots $\lambda_1,\dots,\lambda_d$ in $\mathbb C$, and for every $0\leq j\leq d$
$$\left|\frac{a_j}{a_d}\right|=\left|\sum_{\substack{S\subset\{1,2,\dots,d\}\\|S|=j}}\prod_{i\in S}\lambda_i\right|\leq \binom djc^{j/k}.$$
Note that $a_d$ divides the leading coefficient $C$ of $f$, since $g\in\mathbb Z[x]$ is a factor, so
$$|a_j|\leq \binom djc^{j/k}|a_d|\leq C2^dc^{d/k}.$$
Now, suppose that $f$ satisfies the condition, and let $g_k\mid f(x^k)$ be a factor of degree at most $k$. Every coefficient of $g_k$ is at most
$$C2^{\deg g_k}c^{\frac{\deg g_k}k}\leq C2^Mc^{M/k}\leq Cc2^M$$
in magnitude. So, there are only finitely many possible polynomials $g$ of degree at most $M$ which may divide $f(x^k)$ for any $k$. In particular, there exists some $g$ which divides $f(x^k)$ for infinitely many $k$.
Fix such a $g$ irreducible, and let $z$ be any root of $g$. If $g(x)$ divides $f(x^k)$, then $z$ is a root of $f(x^k)$, and so $z^k$ is a root of $f$. Since there are finitely many roots of $f$, one must have $z^k=z^\ell$ for some $k<\ell$ (as there are infinitely many $k$ for which $z^k$ is a root of $f$). This means that $z$ is either $0$ or a root of unity. This implies that $g(x)$ is either $x$ (in which case $x\mid f(x)$ and we are done) or some cyclotomic polynomial $\Phi_n(x)$. This means that for all sufficiently large $k$, some cyclotomic polynomial of degree at most $M$ divides $f(x^k)$.
Let $N$ be the largest integer such that $\deg \Phi_N\leq M$, and consider $f(x^{N!})$. For every root $z$ of $f(x^{N!})$, $z^{N!}$ is a root of $f$. If some $\Phi_n(x)$ with $n\leq N$ divides $f(x^{N!})$, then $z^{N!}$ is a root of $f$ for every $n$th root of unity, but $z^{N!}=1$ for these roots. So, $1$ must be a root of $f$, as desired.