There is so much time, effort, and physical waste that is generated by slightly redesigning phones every year purely for the sake of making sales (as opposed to meaningful improvement upon the existing design or introduction of a new hardware feature). Think not only of people upgrading for the sake of it, but all of the cases, screen protectors, and other assorted accessories cast in plastic for previous models that are garbage now.
It would be nice if we could just space these things out to 5 years or so now, because that's probably how long it takes for anything to change enough to justify a new model.
With yearly, incremental releases, people will evaluate what's new from their phone and most people will update on their own cycle, probably every few or several years.
Meanwhile, with gaming console "generational" releases every few years, that is a strong incentive for everyone to upgrade.
If I have a 3 year old phone which I'm on the fence about updating, then I might pass on this year's model and go for next year's. But if there won't be another phone for 3 more years I guess I might as well get this one.
(And don't many plans come with some sort of discount, if you don't upgrade your phone?)
We could look at the total amount of years any phone is used and abstract away from who uses it. Slightly stylised, if we have four people, Alice, Bob, Charles and Dave, and Alice gets a new phone every year, Bob buys Alice's old phone, Charles buys Bob's old phone, and Dave gets Charles' old phone, then everyone changes phones every year, but each phone is still used for a full four years.