I've done a fair amount of embedded programming. (I was the most experienced C programmer at various places and was asked to help out with hardware projects, including Space Shuttle payloads, tools for a new chip design and Vegas slot games.)
What I have noticed is that job postings for dedicated embedded/firmware programmers paid about half what I was already making, so I never put that on my resume.
So I think you're misguided: nobody's going to give you a job as a junior embedded engineer (since they would have to supervise you and debug your code, or face a failed $$$$ hw project), and even if they did, you'd earn half what a CRUD developer can make.
But if you're going down that road, learn the linux tool chain, including how linux boots.
You can find the IBM DOS era BIOS listing manual on ebay.