The defenseman's new pact carries an average annual value of $1.2 million, according to Sportsnet's Elliotte Friedman.
Larsson was a pending restricted free agent. The 23-year-old collected 11 points in 60 NHL games during the regular season, logging 16:09 of average ice time. He added a goal and an assist in five contests with the AHL's San Diego Gulls in 2019-20.
The Swedish blue-liner spent the majority of the last two campaigns with Anaheim. He came to North America to play in the Ducks organization in 2016-17 after the team drafted him 27th overall in 2015.