Terms weren't disclosed but sources told ESPN that Charles received a two-year deal that will keep Charles in Kansas City through the 2017 season.
Charles was absent from camp at Missouri Western State University at 4 p.m. ET Wednesday, when players were required to report. But the sides reached an agreement shortly afterward and Charles was en route to camp from his home in Kansas City.
The six-year NFL veteran tweeted on Wednesday afternoon before the Chiefs officially announced his contract agreement, referring to his earlier reporting status.
I had no intention on holding out...I just ran out of gas on the way to camp and my cell phone battery died. It was a long walk I tell ya.
- Jamaal Charles (@jcharles25) July 23, 2014
His previous contract, signed in 2010, had two years remaining.
The new deal, which runs through 2017, will pay Charles $18.1 million for the additional two years. He will make an extra $5.1 million over the next two seasons, including a $4.4 million raise this year, according to sources. He was scheduled to make $3.9 million this year, including a base salary of $2.65 million.
Charles, 27, has been one of the NFL's top running backs for several seasons and had perhaps his best all-around season in 2013. He ran for 1,287 yards and 12 touchdowns last year as the Chiefs reached the playoffs.
Charles also provided a league-high 35.3 percent of the team's yards from scrimmage, leading the Chiefs in rushing and receiving. He also led the league with 19 total touchdowns.
ESPN NFL Insider Adam Schefter and The Associated Press contributed to this report.