The 26-year-old has won six caps for Scotland, but was left out of the 2015 World Cup squad and has not featured in this year's Six Nations.
Tonks joined Edinburgh from Northampton Saints in 2012, scoring six tries in 79 appearances for the Pro12 club.
The South-Africa born player, who can also play full-back, started his career at Leicester before joining Saints.
Tonks is reunited with London Irish head of rugby Glenn Delaney, having played on loan with Nottingham while the Exiles coach was director of rugby at the Green and Whites.
"I am delighted that we have secured the services of a player of Greig's calibre," Delaney told the club website.
"He brings a lot of experience to the team and we look forward to welcoming him to the club."
Premiership side London Irish have signed fly-half Greig Tonks from Edinburgh with immediate effect.