(CNN) -- Army Sgt. Bowe Bergdahl, the last American prisoner of war, returned home early Friday morning, his hero's welcome supplanted by a controversial prisoner swap and his reputation tarnished by accusations he was a deserter.
He arrived in San Antonio, from a military hospital in Landstuhl, Germany, where he'd been recuperating since his release May 31 in exchange for five Taliban figures held at Guantanamo Bay, Cuba.
The 28-year-old Bergdahl, the longest held American soldier since the Vietnam War, was taken to the San Antonio Military Medical Center.
Official: Bergdahl returning to the US
"The Army will continue to ensure that Sgt. Bergdahl receives the care, time and space he needs to complete his recovery and reintegration," Pentagon spokesman Rear Adm. John Kirby said.
Bergdahl's full physical recovery may take months; his public rehabilitation will likely take longer.
The swap that freed Bergdahl has stirred up a political storm in Washington. And almost-daily revelations about Bergdahl's time in Afghanistan have not helped matters.
"Everybody has a piece of the story, and very few people have the whole story," a Defense Department psychologist told reporters.
The backlash has gotten so bad that a public celebration in his hometown of Hailey, Idaho -- one that the 8,000 residents there had waited five years for -- has been scrapped for fear of protests.
"It isn't over for us," Bergdahl's father, Bob, told reporters last week. "In many ways, it's just beginning for Jani and I, and our family. There's a long process here."
Bergdahl went missing on June 30, 2009, in Afghanistan's Paktika province, where he was deployed with the 1st Battalion, 501st Infantry Regiment, 4th Brigade Combat Team, 25th Infantry Division.