Johnson spent the past two seasons with the Cards, but he was limited to just four games in 2016 due to a groin injury that landed him on injured reserve.
The 31-year-old finished last season with 95 rushing yards and one touchdown on 25 carries on the heels of a far more successful 2015 campaign.
In his first year with the Cardinals, Johnson appeared in 11 games, started nine and registered 814 rushing yards and three touchdowns.
While injury had plenty to do with Johnson's regression in 2016, the fact that David Johnson emerged as one of the NFL's elite running backs likely would have cut significantly into his production regardless.
Johnson was once one of the league's premier backs in his own right, as he made the Pro Bowl in each of his first three NFL seasons after the Tennessee Titans selected him No. 24 overall out of East Carolina in the 2008 NFL draft.
In 2009, Johnson became just the sixth player in NFL history to rush for more than 2,000 yards in a single season, which is a group that was later joined by Adrian Peterson.
Johnson rushed for at least 1,000 yards in each of his six seasons with the Titans before joining the New York Jets for one year and then moving to Arizona.
While Johnson once looked like a sure bet to make the team after the Cardinals brought him back for 2017, red flags started to fly when head coach Bruce Arians aborted the initial plan to move Andre Ellington from running back to wide receiver.
With David Johnson, Kerwynn Williams, Ellington, Elijhaa Penny and rookie fifth-round pick T.J. Logan in place, Johnson became expendable.
During the preseason, Johnson rushed for 41 yards on 13 carries and made three receptions for five yards.
If another team opts to add Johnson for depth, it will land a player who is third among active NFL running backs with 9,537 career rushing yards.