The iPhone model is not terribly detrimental to software innovation. Of course there's a lack of transparency, long approval waits just to release bugfixes, occasional bizarre app refusals... But mostly it doesn't matter because the open web provides an increasibly viable secondary outlet for software.
Hardware is an entirely different beast. Apple brashly requires hardware vendors to engineer their products specifically for the iPhone platform, and you can't work around these limitations in software.
For a glaring example, there's no open Bluetooth stack on iPhone OS. Most probably the underlying implementation is essentially identical to IOBluetooth.framework on Mac OS X, but instead of giving software developers the degree of freedom that's taken for granted on computer platforms, Apple has chosen to restrict iPhone OS to a much more limited API which can only connect to devices that contain an Apple-licensed chip.
Apple doesn't seem to mind suffocating independent hardware innovation in order to extract licensing fees. What a long way they've come from Steve Wozniak's days...