Leeds United-bound Cameron Stewart has completed a permanent move to Ipswich Town after signing a three-year deal at Portman Road.
The 23-year-old had been scheduled to sign an identical contract with Leeds on July 1 after arriving on loan from Hull in January.
But the former Manchester United trainee failed to shine at Elland Road last season, making a total of 11 appearances under previous boss Brian McDermott.
Stewart failed to make the first-team breakthrough at Old Trafford and moved on to Hull in 2011 after an initial loan spell at the club.
He made more than 50 appearances in four years at the KC Stadium before joining Charlton on loan last September following Hull's promotion to the Barclays Premier League.
Cameron has represented England at Under-17, Under-19 and Under-20 level.