Balotelli, who was born in Sicily but adopted and raised just outside the northern city, is set to sign a three-year deal with the Serie B champions after being released by Marseille in June, Gazzetta della Sport and Sky Sport Italia reported.
Gazzetta said the deal was worth roughly of three million euros ($3.3 million) including bonuses a season to the Italian international.
The 29-year-old has reportedly rejected a move to Brazilian club Flamengo as he pushes for a place in the national team as Euro 2020 approaches.
Balotelli, who has 36 caps for Italy, has not featured on the international stage since last September as Italy coach Roberto Mancini said he was not playing at a high enough standard.
Brescia have been promoted back to the top flight for the first time since being relegated in 2011.
Balotelli last played in Serie A with AC Milan on loan from Liverpool in the 2015-2016 season.
It was his second spell at AC Milan after 2013-2014. He was part of the Inter Milan side coached by Jose Mourinho that won the Serie A, Coppa Italia and Champions League treble in 2010.
He won three Serie A titles with Inter before switching to Manchester City and helping them claim the Premier League crown in 2012.
For more news your way, download The Citizen’s app for iOS and Android.
Download our app and read this and other great stories on the move. Available for Android and iOS.