Hallberg vant en olympisk bronsemedalje under OL 1928 i Amsterdam. Han var med på det svenske laget som kom på tredjeplass i lagkonkurransen i sprangridning bak Spania og Polen. Laget besto av Karl Hansén på hesten «Gerold», Carl Björnstjerna på «Kornett» og Hallberg på hesten «Loke». Hallberg kom på tjuefemteplass i den individuelle konkurransen i sprangridning med hesten «Loke».