Kaizer Chiefs 3-1 Swallows
Kaizer Chiefs reached the semi-finals with a match to spare at the top of Stream 2 after thrashing Swallows 3-1 in the Soweto derby on Sunday afternoon at FNB Stadium.
Anele Gule gave the Birds the lead in the 19th minute but Kamohelo Hoala got the equaliser for Amakhosi just before the break.
Jordan Sampson gave the hosts a 2-1 lead in the 67th minute before Tshepo Mohlala secured the three points and the semi-final spot with the third goal in stoppage time.
Orlando Pirates 4-1 Baroka
Orlando Pirates have the destiny of qualifying for the semi-finals in their own hands after hammering Baroka 4-1 to remain second in Stream 2 on Sunday morning at Rand Stadium.
Keegan Mitchel, Thabiso Monyame and an own goal by Mothiba gave Pirates a commanding 3-0 lead heading to the break.
Baroka pulled a goal back on the hour-mark but only for Sifiso Luthuli to make it 4-1 for the Buccaneers six minutes later.
Tshakhuma Tsha Madzivhandila 0-6 Mamelodi Sundowns
Mamelodi Sundowns kept their hopes of reaching the semi-finals in Stream 2 alive after trouncing Tshakhuma Tsha Madzivhandila 6-0 on Sunday morning at the Old Peter Mokaba Stadium.
The Brazilians remained in third place in Stream 2, two points behind second-placed Orlando Pirates after a resounding win.
Masandawana will face Pirates in their last match, where they will need victory to go through.
Maritzburg United 1-2 Cape Town City
Cape Town City qualified for the semi-finals at the top of Stream 1 after edging Maritzburg United 2-1 on Sunday morning at Sugar Ray Xulu Stadium.
Thobeka Zondi had a goal disallowed for United in the first stanza that ended goalless. The Team of Choice eventually broke the deadlock seven minutes from the break but they conceded a penalty four minutes later which was converted by City.
Diego Appollis snatched the winner for Matt Haywood's charges on the hour-mark.
Other Results:
AmaZulu 2-1 Stellenbosch
Bloemfontein Celtic 2-0 Black Leopards
Chippa United 3-2 SuperSport United
Golden Arrows 1-2 TS Galaxy