This is a very good question, I'd like to offer my point of view in the matter.
Arm has designed their processor with the embedded world as target, so they thought about every thing with this target in mind:
- size
- energy consumption
- instructions
- ease of use
- scalability
I'm mostly working with Linux, and when you're developing product with Arm it's way easier than with x86. Every thing is in place and ready to make you gain some time. First their is a huge community, and you'll find plenty of resources to help you when you're stuck. And also the fact that it's the industry standard so you won't struggle with anything too exotic when working with arm, you'll have all the drivers and any kind of eval boards, SoCs and SoM that you would need. Add in top of all that that almost all embedded engineers know their ways with arm, so if you want to push with another architecture you'll have to really have a good technical reason.
Companies that use other architecture do so mostly in legacy of former product and because of the company engineer's knowledge.
To sum up, I think that arm is the easiest choice when developing a new product, but you can also have good reason to use other architectures (legacy or very specific needs for the product that are available only in a specific architecture).