From mboxrd@z Thu Jan 1 00:00:00 1970 From: erik quanstrom Date: Tue, 6 Oct 2009 14:06:52 -0400 To: 9fans@9fans.net Message-ID: <0868ffccbf093ea38926848da39b9145@ladd.quanstro.net> In-Reply-To: <<13426df10910061021g3b033abbia134769baee934d3@mail.gmail.com>> References: <<13426df10910061021g3b033abbia134769baee934d3@mail.gmail.com>> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit Subject: Re: [9fans] /sys/include/ip.h 5c(1) Topicbox-Message-UUID: 8155afbe-ead5-11e9-9d60-3106f5b1d025 > as bad as the ARM may be, it can't hold a candle to what the pentium has become: > 1. RISC CPU (undocumented) in the northbridge (MCH) running ThreadX > 2. RISC CPU in the Ethernet part running ThreadX > 3. Simple CPU in the southbridge (ICH) running, well, who knows. But > the entire system won't come up without that CPU coming up, and the > code for that CPU is (of course!) never going to be available in any > general sense. the difference is that intel have hidden their µarch changes behind a fixed instruction set. this means that even the bios engineer does not care what µarch the cpu is actually running. i would think that's a feature. i have never heard of threadx in the ethernet part, though i have spent more than my fair share of hours paging through yellow books. (perhaps you're speaking of non-intel parts?) do you have some references? is there some reason you care what the ethernet part is doing to provide a normal register or preboot interface? the southbridge does run some hairy junk. both ahci and ide interfaces require special firmware. i would consider the fact that you can't introspect it to be a feature. the one that you didn't mention is the one that bothers me: smm mode. this has been around for a very long time. smm mode takes a special interrupt and takes over the cpu and runs some real-mode code. things like ps/2 emulation for usb mice and keyboards rely on smm mode. this can really blow up your timing, if you have timing constraints. > can't write code for (1) and (2) because the code in the FLASH has to > be signed with Intel's private key, public version of which is *burned > into the chip in read-only registers*. it's a fine line between hardware and software. or maybe there is no line. - erik