STANFORD, Calif. -- Stanford running back Tyler Gaffney rushed for 189 yards and the No. 8 Cardinal held off No. 25 Notre Dame 27-20 on Saturday at Stanford Stadium.
Stanford cornerback Wayne Lyons intercepted two passes in the final six minutes, and the second one thwarted the Fighting Irish's final chance.
Notre Dame trailed 27-20 when Lyons picked off a pass from Notre Dame quarterback Tommy Rees at the Cardinal 30-yard line with 2:24 remaining.
The Cardinal got one first down after that and was able to run out the clock.
Stanford (10-2) will play Arizona State next Saturday in the Pac-12 title game.
Notre Dame (8-4) wrapped up its regular season and will play in a postseason game, although the bowl game and the opponent have yet to be determined.
Stanford quarterback Kevin Hogan was 12-for-18 for 158 yards, one touchdown and two interceptions. Rees was 16-for-34 for 199 yards, two scores and two interceptions.
Gaffney carried 33 times while rushing for more than 100 yards for the eighth time this season.
Stanford increased an eight-point halftime lead to 21-6 by scoring on its first possession of the third quarter. Anthony Wilkerson finished off the 76-yard drive with a 20-yard touchdown run on a third-and-9 play.
Notre Dame cut the deficit to 21-13 on Rees' 4-yard touchdown pass to T.J. Jones, which completed a 61-yard scoring drive.
Gaffney's apparent touchdown run was nullified by a holding penalty on Stanford's ensuing possession, and the Cardinal had to settle for a 27-yard Jordan Williamson field goal to increase their lead to 24-13.
Notre Dame closed the gap to 24-20 on Rees' 14-yard touchdown pass to wide receiver DaVaris Daniels with 1:37 left in the third quarter.
Williamson's 28-yard field goal put the Cardinal ahead 27-20.
Lyons then intercepted a pass with 5:15 left, then intercepted another less than three minutes later.
Hogan was 9-for-12 with one touchdown and one interception in the first half, which ended with Stanford leading 14-6.
Rees completed five of his first seven passes but was just 3-for-10 the rest of the first half.
Notre Dame scored first, driving 65 yards to the Stanford 4-yard line before Kyle Brindza kicked a 21-yard field goal to give the Irish a 3-0 lead.
Stanford went ahead 7-3 by scoring a touchdown on its first possession. Hogan finished the 75-yard drive with a 16-yard touchdown pass to wide receiver Devon Cajuste.
Stanford increased its lead to 14-3 by scoring the second time it had the ball. A 56-yard drive ended with Gaffney's 1-yard touchdown run early in the second quarter.
Brindza added a 27-yard field with 2:07 left in the second quarter to cut the Cardinal lead to eight points at halftime.
NOTES: If Arizona beats Arizona State on Saturday night, Stanford will host Arizona State in the Pac-12 title game next Saturday. If Arizona State beats Arizona, the Sun Devils will host Stanford in that game. ... Notre Dame's S Eilar Hardy and S Elijah Shumate did not travel with the team for Saturday's game because of violations of team rules. One of the two was scheduled to start at safety. ... Stanford entered the game on a 15-game home winning streak, the second longest active streak in the country. South Carolina had won 17 in a row at home before hosting Clemson on Saturday evening. ... Irish C Nick Martin (knee) and DT Louis Nix III (knee) did not play Saturday and will miss Notre Dame's bowl game. ... Notre Dame is the fifth ranked team that Stanford faced this season at Stanford Stadium. The Cardinal beat the previous four. ... Notre Dame beat Stanford 17-10 in overtime last season in a game that ended in controversy. Cardinal RB Stepfan Taylor was ruled to have been stopped short of the end zone on a fourth-down run that would have tied the score in overtime. Stanford thought Taylor crossed the goal line. Officials ruled the whistle had blown earlier.