The deal is worth $40 million, a source told ESPN's Adam Caplan.
Brooks played in 50 games for the Texans, starting 44 of them on his rookie deal.
Health was rarely a problem for Brooks, who missed four games during his three seasons as a starter. Two of those missed games were the result of an illness that flared up the morning of the game. In 2015, Brooks missed the Texans' loss to the Buffalo Bills, instead spending the game and the night in a Buffalo hospital.
ESPN Texans reporter Tania Ganguli contributed to this report.