DETROIT -- This is what Rick Porcello had been trying to find all season.

When Tigers manager Jim Leyland went to the mound to check on his 21-year-old starter after Nick Swisher's line drive bounced off his shoulder, Leyland had to have a little bit of fear. Porcello, by contrast, had a smile on his face.

"It's amazing, really, because when I went out to check on his shoulder, the first pitch he threw to see if he was all right just sunk like crazy," Leyland said after Porcello's seven scoreless innings helped the Tigers to a 2-0 win over the Yankees.

Nothing could get Porcello off of his sinker -- not the vaunted Yankees lineup, not a couple of line-drive hits, not even a line drive off his shoulder. Once Porcello got rolling, nothing could get the Yankees going against him.

As a result, he couldn't have helped his team much more. A Detroit squad that had been struggling a bit heading into a huge homestand guaranteed no worse than a four-game series split against the defending World Series champions. At the same time, a team with an exhausted bullpen started off a day-night doubleheader with a deep, effective outing to pull out a pitching duel.

"My past couple starts have been those types of games, too, where our bullpen has been pretty depleted," Porcello said, "and I haven't been able to pitch deep in those games. It was nice to be able to go out there today and give our relievers a little bit of a break, especially with two games today."

The struggles with the sinker had really gone on for much of the season. They were the main reason behind Porcello's 7.50 ERA and 46 hits allowed over 30 innings heading into the day, including 36 hits over a four-start stretch in April.

Bring on the Yankees and their vaunted lineup that included five switch-hitters, two left-handed batters and Derek Jeter and Alex Rodriguez. It seemed like the last place for a pitcher to recover.

But Porcello and the Tigers felt in his previous two starts, including last Wednesday at Minnesota, that his sinker was coming around, even if the results weren't. He and pitching coach Rick Knapp worked on his mechanics between outings for the past couple weeks, and he could see the movement returning, even if his control wasn't there yet.

Once he warmed up in the bullpen before the game Wednesday, everyone from Porcello to Knapp to catcher Gerald Laird could tell he had it.

"It felt a lot better," Porcello said. "It felt more comfortable. It felt like I was getting good extension [on his delivery] and I was able to keep the ball down, even in the 'pen. I knew I felt good. It was a matter of going out there and performing and making the pitches that I need to make."

He made them from the outset. He needed just 10 pitches to retire Jeter, Brett Gardner and Mark Teixeira in order, all on groundouts to his middle infielders. Rodriguez grounded out leading off the second, and though Robinson Cano followed with a single, it was on a ground ball through the middle.

They were going to pound the Yankees with sinkers until they hit them.

"I wanted to come in today and establish the sinker," Laird said. "If we were getting the sinker working early, it would open up some pitches away."

Once Nick Swisher's two-out single and and a four-pitch walk to Randy Winn loaded the bases in that second inning, Porcello worked the outside corner to his advantage, getting ahead of ninth hitter Ramiro Pena to induce a fly out and escape the jam.

Brennan Boesch's jumping catch at the right-field fence stranded Gardner on third base to end the third, then Porcello went to work on his power arsenal after Jorge Posada's double in the fourth. Swisher and Pena both went down chasing high fastballs.

That was New York's last real threat. Porcello (3-3) not only sent down nine of the final 10 Yankees he faced, he needed precious few pitches doing it. He got through the seventh with just 90 pitches and probably could've gotten into the eighth. Leyland was able to go to his bullpen because he wanted to, not because to had to.

"He was good today," said Jeter, who went 0-for-3 against Porcello and 0-for-4 on the game. "He was ahead of us. He was throwing strikes. He really didn't have too much trouble. He put a couple of guys on with two outs, but he pitched well."

Even Swisher's liner off Porcello's shoulder went for a groundout, deflecting to shortstop Adam Everett for one of 13 ground ball outs for the game. That wasn't why Porcello smiled, though.

"I didn't really feel it when they came out," Porcello said. "I threw my two pitches and it almost started to get a little more sore. I still felt good. I was cruising at that point. I just wanted them to get off the field so I could get going."

Porcello traded scoreless innings with Yankees starter Javier Vazquez (1-4) until back-to-back singles from former Yankees Austin Jackson and Johnny Damon set up a two-run sixth. Damon's line drive over first baseman Teixeira on a well-placed hit-and-run play put runners at the corners with nobody out, leading to an easy RBI for Magglio Ordonez on a fielder's choice groundout.

From there, Miguel Cabrera and Brennan Boesch put up consecutive ground-ball singles to drive in Ordonez and notch a big insurance run. Ryan Perry retired the side in order in the eighth before Jose Valverde earned his 10th save of the season.