TAMPA — Jameis Winston isn’t here. Ryan Fitzpatrick is.

And in place of the suspended Winston, Fitzpatrick passed for 402 yards and four touchdowns Sunday and led the Buccaneers to a stunning 27-21 upset over the defending Super Bowl champion Eagles.

For the second time in as many weeks, he played the game of his life. He leads the NFL in that category, according to the Elias Sports Bureau.

In a season that seemed doomed before it started, the Bucs are 2-0, not 0-2. They’re in sole possession of first place in the NFC South, not last place.

Games at Raymond James Stadium haven’t looked this good since your college senior started kindergarten. The skies look bluer, the seats redder, the grass greener. Even the jerseys look … well, not as ugly.

You know what this means: We have a quarterback controversy, Tampa Bay.

It might be one of the more backward ones we’ve ever seen — the journeyman veteran challenging the promising up-and-comer instead of the promising up-and-comer challenging the journeyman veteran — but make no mistake: It’s a bonafide quarterback controversy.

Sure, there are some people who will say it isn’t so. (Looking at you, Florida Staters.) That’s fine. They’ll catch on eventually.

Consider what Fitzpatrick has done:

• He is the first quarterback in NFL history to start a season with consecutive 400-yard, four-touchdown games. No Bucs quarterback had gained 400 passing yards in back-to-back games ever.

• He is the first quarterback in Bucs history to throw eight touchdowns in the team’s first two games of a season. Peyton Manning is the only other NFL quarterback age 35 or older to do that.

• He has thrown four touchdown passes of at least 50 yards. Joe Namath is the only other quarterback to do that in his team’s first two games of a season.

So how did we get here? When did we know we had a controversy? What was the turning point? When did temporary become indefinite?

Not after the season-opening win against the Saints. Too early. Any given Sunday and all that stuff. Way back then, Fitzpatrick 400-yard, four-touchdown games weren’t weekly occurrences.

What about the first play from scrimmage, the 75-yard touchdown pass to former Eagles receiver DeSean Jackson? What, Philly? You thought Fitzmagic-to-DJax connection would take the week off? The Bucs, it seems, aren’t just executing explosive plays. Now, they’re trolling teams. Who are these guys? I recognize them, but perhaps I don’t know them.

There were bells on a hill

But I never heard them ringing

No, I never heard them at all

Till there was you

What about the touchdown pass to tight end O.J. Howard late in the second quarter? Howard, crossing over the middle, caught Fitzpatrick’s pass at the Tampa Bay 38-yard line and took it 62 yards up the left sideline for a go-ahead score. The Eagles had just taken six minutes to go 78 yards to tie the game at 7-7. The Bucs took 12 seconds to go 75 yards.

By the way, anyone still want to argue that Tampa Bay shouldn’t have drafted Howard in the first round in 2017? Think they should have taken a running back? Incidentally, Howard gained 96 yards Sunday; Bucs running backs gained 74. At 6-foot-6, 251 pounds, he’s a matchup nightmare, and soon we’re going to talk about him the way we’ve been talking about Patriots tight end Rob Gronkowski.

There were birds in the sky

But I never saw them winging

No, I never saw them at all

Till there was you

What about the two-minute drive at the end of the first half? Pass, pass, pass, pass, run, pass, touchdown. Oooooooh, welcome to the pass-first NFL, guys. Better late than never.

Then there was music and wonderful roses

They tell me in sweet fragrant meadows

Of dawn and dew

RELATED STORY: Analysis: Dirk Koetter’s play calls have the Bucs running in place

That sequence is a fine point to declare the arrival of a quarterback controversy. I held out a bit longer — 271 yards and three touchdowns in the first half wasn’t enough. I mean, that’s only a 133.2 passer rating, and Fitzpatrick had a perfect 158.3 a week ago. I was on regression watch.

Here’s the play that did it for me: 2:36 left in the fourth quarter. Seconds earlier, the Eagles made it a one-score game. The Bucs lost 3 yards on a first-and-10 run to bring up second and 13 from the Tampa Bay 12. The Eagles still had two timeouts plus the two-minute warning.

The Bucs lined up in the I-formation with a fullback, tight end and two receivers. All signs pointed to a run. But that’s something the old Bucs would have done. These Bucs aren’t the old Bucs.

Fitzpatrick faked the handoff and dropped back to pass.

There was love all around

But I never heard it singing

With an Eagles defender at his feet, Fitzpatrick hit Jackson on an out route 18 yards downfield. First down. Ballgame.

No, I never heard it at all

Till there was you

That’s trust. That’s coach Dirk Koetter trusting offensive coordinator Todd Monken to make that call. That’s Monken trusting Fitzpatrick to make that throw. And that’s Fitzpatrick trusting Jackson to make that catch.

If the Bucs run the ball there, everything changes. The Eagles call a timeout and likely get the ball back with two minutes left and good field position. We’re talking about Chandler Catanzaro’s missed extra point and how kickers continue to cost the Bucs wins. We’re talking about curses, not magic.

Instead, we have a quarterback controversy.

Next: the Steelers and Monday Night Football. The Bucs in prime time, in front of a national audience.

Winston won’t be there. Fitzpatrick will be.

Say Fitzpatrick plays at least competent football — and there’s every reason to think that he will based not only on what he has done to this point but also on what the Steelers defense looked like Sunday (six touchdown passes allowed).

You benching that guy when Winston is eligible to return in Week 4 against the Bears? You going to tell the team touchdowns are nice and all but this is Winston’s team?

You’re going to say that to DeSean Jackson? He’s catching every pass thrown in his direction.

You’re going to say that to Vinny Curry and Beau Allen? They haven’t lost a game since early December.

You’re going to say that to Gerald McCoy and Lavonte David? They have been here a combined 14 seasons and have never been to the playoffs.

You benching Fitzpatrick? No way. Not a chance.

Eventually, Winston will be back under center. But it won’t be for a while. It can’t be. And it shouldn’t be.

Storylines

• Fitzpatrick threw a touchdown pass to four different receivers Sunday. Jackson, Howard, Mike Evans and Chris Godwin each caught one. Godwin, who caught five of six targets for 56 yards, has scored a touchdown in three straight games (dating back to last season’s finale).

• Tight end Cameron Brate signed a contract extension in March that guaranteed him $18 million but has been used sparingly so far. Brate, whose 77 targets last season were fourth most on the team, has seen two targets through two games. He played 24 of the offense’s 66 snaps in Week 1 and 14 of the offense’s 58 snaps Sunday.

• The Bucs averaged 1.9 yards per carry. It didn’t matter. In the first half, they dropped back to pass 20 times and averaged 14.3 yards per attempt; they ran the ball eight times. Balance, schmalance. That ratio was good enough for a 20-7 lead.

• Rookie running back Ronald Jones II, whom the Bucs selected in the second round of April’s draft, was a healthy scratch again Sunday. Meanwhile in Denver, running back Phillip Lindsay became the first undrafted player in NFL history to record at least 100 yards from scrimmage in each of his first two career games.

• The Bucs defense has allowed more than 400 yards in both games. Tampa Bay allowed 400 yards in nine games last season and lost eight of those games.

• Cornerback Ryan Smith had a solid afternoon in pass coverage. He received credit for two pass breakups.

What I got right

That the Bucs would attack Eagles cornerback Jalen Mills in pass coverage. Jackson beat Mills on his 75-yard touchdown as well as on the 17-yard catch on second and 13 mentioned above.

What I got wrong

That Sunday would be a reality check for the Bucs. Well, actually, it was a reality check … for me.

Links

• Rick Stroud: Ryan Fitzpatrick, teammates are not who we thought they were

• Tom Jones: Welcome to Tampa Bay, DeSean Jackson

• Martin Fennelly: If 2-0 start is a dream, we don’t want to wake up

Contact Thomas Bassinger at tbassinger@tampabay.com. Follow @tometrics.