From my experience, in mid to large size software companies, agile most often grows out of the eningeering organization. Either grass roots up, from the team level, or exec sponsored from the engineering senior management. It means the development organization is often using agile well before the rest of the company.
The challenge is the product management organization is still operating in their traditional model. This can lead to a major roadblock to agile driven project adoption. The dev organization is trying to operate in an iterative style but requirements are still delivered in the old style requirements documents and all detailed up front. Resistence to going to the agile model can often be high. "I don't care how engineering builds it, just build what I want." Product management orgs also rarely want to make the time commitment that a Product Owner needs to make. They are too busy running off to the next customer meeting.
I've know of two models for trying to get the product management org involved.
Project Manager/Scrum Master acts as a PO interface: Works with the PM org to coach them and translate their requirements. Fills in for the PM as the PO in regular meetings. I've personally worked with this model and I don't think it works well.
Create a Product Owner office: I've heard of a mid-size company where the VP of Eng created a Product Owner office. This office is in engineering and is staffed by technical people with business knowledge. Product management delivers their requirements to this office and the normal agile process goes from there. No information on how successful (or not) this is.
Any suggestions?