Free-agent forward James Johnson has agreed to a two-year, $5 million contract with the Toronto Raptors, league sources told Yahoo Sports.

Memphis had interest in re-signing Johnson, but he left for a return to Toronto. Utah and Houston had expressed interest too, sources said. Johnson averaged 7.4 points and 3.2 rebounds for the Grizzlies last season.

The Raptors have re-signed three of their own free agents: Kyle Lowry, Greivis Vasquez and Patrick Patterson.

Johnson played parts of 2010-12 with the Raptors.

Johnson was the 16th overall pick by the Chicago Bulls out of Wake Forest in 2009.