Reliever Jason Motte and the St. Louis Cardinals have agreed to a $12 million, two-year contract, avoiding salary arbitration.

The 30-year-old right-hander had a career-high 42 saves in 49 chances last year, when he was 4-5 with a 2.75 ERA. He made $2 million US.

Motte is 17-13 with a 2.87 ERA and 54 saves since his major league debut in 2008. He will be eligible for free agency after the 2014 season.

He gets a $1 million signing bonus, payable within 30 days of the contract's approval by Major League Baseball, and salaries of $4 million this year and $7 million in 2014. For 2014 only, Motte can earn $500,000 in performance bonuses: $250,000 each for 50 and 60 games finished.

St. Louis announced the deal on Tuesday.

Two Cardinals remain in arbitration: third baseman David Freese and left hander Marc Rzepczynski. If they fail to reach agreements, hearings would be held next month in Phoenix before three-arbitrator panels.

Diamondbacks reach 2-year deal with Pennington

A person with knowledge of the situation says the Arizona Diamondbacks and shortstop Cliff Pennington have avoided an arbitration hearing by reaching a two-year, $5 million contract agreement.

The person spoke to The Associated Press on Wednesday on condition of anonymity because there has been no official announcement.

In arbitration filings, Pennington had sought $2.8 million for one year and Arizona had offered $1.8 million.

The deal first was reported by ESPN.

The Diamondbacks sent centre fielder Chris Young to Oakland for Pennington last October.

The agreement leaves only outfielder Gerardo Parra in arbitration with the Diamondbacks.