Ronald C. Modra/Sports Imagery/Getty Images

It wasn't long ago that Chris Johnson was arguably the most electrifying player in the NFL. He had just rushed for over 2,000 yards in 2009. Three times that season, Johnson scored on runs of at least 85 yards.

He took the ball, hit the hole and buh-bye.

In 2015, however, the only thing that looked buh-bye was Johnson's NFL career. Here it was mid-August, and the 29-year-old was still looking for work. That search has ended, with Johnson inking a one-year, $2 million contract with the Arizona Cardinals.

That may have settled the matter of whether Johnson's done playing, but it raises another question...

Is Chris Johnson done?

To be clear, Darren Urban of the team's website wrote that head coach Bruce Arians is waiting for Johnson to prove himself:

And as ESPN's Ed Werder pointed out, that $2 million figure is something of a misnomer:

If Johnson's declining play hadn't already hammered home the point, the structure of his contract certainly does: The days of CJ2K are done.

More or less since that magical 2009 season, it's been downhill for Johnson. Not his running so much as his production. Maybe it was his 2011 holdout. The nagging lower-body injuries. Maybe he just got older.

Chris Johnson Career Stats Year Games Att. Yds. Avg. TD Rec. Yards TD 2008 15 251 1,228 4.9 9 43 260 1 2009 16 358 2,006 5.6 14 50 503 2 2010 16 316 1,364 4.3 11 44 245 1 2011 16 262 1,047 4.0 4 57 418 0 2012 16 276 1,243 4.5 6 36 232 0 2013 16 279 1,077 3.9 6 42 345 4 2014 16 155 663 4.3 1 24 151 1 Per NFL.com

Whatever the reason, Johnson lost a step—or two. He also became more hesitant as a runner, forever looking for the "home run." Rather than hit a hole with authority that would net him six yards, Johnson would stretch the play or kick outside, searching for the one that would net 60.

The low-water mark came last year, when Johnson wound up playing second fiddle to Chris Ivory with the New York Jets. For the first time in his seven NFL seasons, Johnson failed to eclipse 1,000 yards on the ground.

And just like that, Johnson was out of work.

Make no mistake, Johnson will be playing second fiddle in the desert as well—a complement to third-year pro Andre Ellington.

However, Urban sees a role for Johnson with the Redbirds:

Ellington figures to remain the starter in the backfield, but the addition of Johnson changes the running back dynamic as the Cards begun their third week of training camp. Johnson, who was with the team Monday and is expected to be on the field Tuesday after signing his one-year deal, is a fast back who can catch – properties coach Bruce Arians has shown he likes most.

And, of course, there's always the possibility Ellington gets hurt—again.

As explosive as Ellington has shown to be with the football, he's proved equally prone to getting nicked up. He is, in many respects, a slightly smaller version of Johnson, one who has demonstrated little capability to handle a feature-back role.

With rookie David Johnson still on the shelf, the Cardinals needed backfield depth. And Chris Johnson's and Ellington's skill sets are similar enough that when the former enters the game, a plan scripted around the latter wouldn't have to be thrown out the window.

And for what it's worth, Chris Johnson did manage 4.3 yards per carry in 2014—a full yard more than Ellington.

No, CJ2K isn't coming back. But the Cardinals needed help and were not only able to get it but get it in the form of a veteran player with the right skill set and at least a little upside at a relatively modest price.

If he's serious about reviving his career, quits dancing around and stays healthy, the Cardinals will at the very least have some insurance, and possibly a more effective and consistent ground game after ranking dead last in the NFC a year ago.

For a team with aspirations of making a deep playoff run in 2015, it doesn't get a whole lot better than that.

Gary Davenport is an NFL analyst at Bleacher Report and a member of the Fantasy Sports Writers Association and the Pro Football Writers of America. You can follow Gary on Twitter at @IDPSharks.