Johnson, 24, is a former second-round pick of the Lions back in 2018. He was in the final year of his four-year, $6,503,698 rookie contract that included a $2,809,960 signing bonus when Detroit waived him last summer.
He was claimed by the Eagles but was waived with an injury designation and released with a settlement in August.
The 49ers signed Johnson to their practice squad but released him in October.
In 2020, Johnson appeared in all 16 games for the Lions and rushed for 181 yards on 52 carries (3.5 YPC) to go along with 19 receptions for 187 yards receiving and three total touchdowns.
We have him included in our Top 100 Available 2021 Free Agents list.