The 36-year-old missed the defeat to Bangladesh after taking the blow in the World Cup opener against England
Hashim Amla will return for South Africa in their crunch World Cup clash with India after recovering from a head injury.
The 36-year-old retired during the opening loss to England and though he resumed his innings missed the 21-run loss to Bangladesh as a precaution.
Amla has continued to be assessed since being rattled by Jofra Archer, with no concussion understood to have been suffered, and took part in practise on Tuesday.
Seamer Lungi Ngidi is definitely out having suffered a grade one hamstring strain against Bangladesh which will keep him out for between seven and 10 days.
WORLD CUP PORTAL: Your one-stop shop for the summer spectacular
Initially, there were high hopes he would be fit to face the West Indies on June 10 but those expectations could now be scaled back.
After Anrich Nortje was replaced by Chris Morris before the tournament, Dale Steyn has been forced to withdraw after suffering a second shoulder problem.
The 35-year-old didn't feature in either of The Proteas' opening games due to a shoulder issue he suffered during the Indian Premier League.
But a fresh injury to the area has led to a premature end to his tournament before it has even begun.
Left-arm bowler Beuran Hendricks has been called up as his replacement.
Our coverage of the ICC Cricket World Cup 2019 is brought to you in association with Cricket 19, the official video game of the Ashes. Order your copy now at Amazon.co.uk