The Cardinals also placed DL Clinton McDonald on injured reserve.
Brown, 29, is a former second-round pick of the Titans back in 2012. He finished his four-year rookie contract with Tennessee before signing a one-year, $1,250,000 contract with the Bills as an unrestricted free agent in 2016.
He agreed to a one-year, $2.3 million contract with the Redskins in 2017 and returned to Washington this last year on a three-year contract worth up to $24 million.
Washington released Brown back in March and he later signed a one-year, $3 million deal with the Eagles. Philadelphia elected to release him a few weeks ago.
In 2019, Brown has appeared in six games for the Eagles and recorded 30 tackles, no sacks or interceptions and two pass defenses.
Garcia, 27, is a former fourth-round pick of the Broncos back in 2015. He played out the final year of his four-year, $2.63 million contract and made a base salary of $705,000 for the 2018 season.
Garcia signed with the Cardinals this offseason on a one-year deal.
In 2018, Garcia appeared in nine games for the Broncos.
McDonald, 32, is a former seventh-round pick of the Bengals back in 2009. He lasted just a few years in Cincinnati before catching on with the Seahawks for the 2011 season.
After three years in Seattle, the Buccaneers signed him to a contract and he went on to spend four years in Tampa Bay. He later caught on with the Broncos before signing a one-year deal with the Raiders last year.
McDonald signed a one-year deal with the Cardinals this August.
In 2019, McDonald appeared in nine games for the Cardinals and recorded eight total tackles.