Walsh signed a minor-league contract with the White Sox on Tuesday, LaMond Pope of the Chicago Tribune reports.
Walsh elected free agency after being removed from the Rangers' 40-man roster earlier this month. The 30-year-old hit just .226/.317/.321 with one home run through 60 plate appearances with Texas. He'll go to extended spring training for now before eventually reporting to Triple-A Charlotte, where he'll give the White Sox some veteran protection at first base.