Dear coreboot folks, I admire the coreboot project because it's a fast and up-to-date open source alternative to the proprietary bios crap provided by many vendors. For this reason I am thinking about using coreboot on my Toshiba A100-151 laptop system since it is not supported anymore by Toshiba and even they discontinued to provide all the old drivers for this model in the support section on their homepage (Thank you, you customer-unfriendly profiteers!). How ridiculous that this company has received the German environmental label "Blue Angel" for some of their products in the past (just a little side note). And even with their locked and constricted Firmware updates I feel somehow as if I should be artificially hindered to use the full potentials of hardware features of my laptop. Just to mention some examples: - I cannot use the AHCI mode of the SATA controller although the mainboard should be able to switch to this mode. There is no option in the bios and it's always locked to IDE mode. Therefore, the performance of my new SSD is artificially limited to a low level. - Even Toshiba showes on their homepage that 4GB RAM memory are supported by the mainboard, I could only use 3GB at maximum, even after installing diverse 64bit OS such as Ubuntu Linux 12.04 and Windows 7. I guess that some of the missing 1GB RAM will be addressed to the OS and to my ATI video graphic card in particular, although it was shipped with 128MB of dedicated RAM. But again there is no option in the bios settings to manage the VGA Shared Memory. - Few time ago, I couldn't enable the Intel VT feature of my CPU. However, I found a workaround by flashing a modded custom bios from another forum which enabled some great features. But unfortunately, there is still no ahci support :-( In short, after reading a lot of tutorials in the internet and trying different solutions in Linux and Windows OS (e.g. using registry modifications, pre-boot parameters in grub2 mainly with the command "setpci" as well as trying a MBR mod at the end), I wasn't successful to enable ahci mode and I recognized in general that the bios restrictions by Toshiba obviously represent the biggest problem. But now to coreboot: So far, I made some first experimental steps by testing coreboot in a qemu environment. At least, in qemu I succeeded! The documentation on the coreboot homepage was of great help. However, I am still unsure if coreboot could work on my machine under real conditions after flashing. And because of my very limmited technical knowledge, I would appreciate some help and advices very much in order to avoid making mistakes or to brick my laptop at the end. Therefore, I hope to meet here some friendly persons who are willing to help. In view of the fact, that my model hasn't been supported yet by coreboot I would like to provide all needed information I could get in the following part (with my personal comments marked by "###“): ------ A very brief description of my system: board vendor: Toshiba board name: Satellite A100-151 ### please, don't get confused because later you will also see the product name "Satellite M110". This is due to the modded bios with advanced features which I have flashed. The right name is "Satellite A100-151". CPU: Intel Core2Duo T7200 ### I have upgraded the CPU. Maybe following output from "dmidecode" could be usefull as well: Handle 0x0004, DMI type 4, 35 bytes Processor Information Socket Designation: U2E1 Type: Central Processor Family: Other Manufacturer: Intel ID: F6 06 00 00 FF FB EB BF Signature: Type 0, Family 6, Model 15, Stepping 6 Flags: FPU (Floating-point unit on-chip) VME (Virtual mode extension) DE (Debugging extension) PSE (Page size extension) TSC (Time stamp counter) MSR (Model specific registers) PAE (Physical address extension) MCE (Machine check exception) CX8 (CMPXCHG8 instruction supported) APIC (On-chip APIC hardware supported) SEP (Fast system call) MTRR (Memory type range registers) PGE (Page global enable) MCA (Machine check architecture) CMOV (Conditional move instruction supported) PAT (Page attribute table) PSE-36 (36-bit page size extension) CLFSH (CLFLUSH instruction supported) DS (Debug store) ACPI (ACPI supported) MMX (MMX technology supported) FXSR (FXSAVE and FXSTOR instructions supported) SSE (Streaming SIMD extensions) SSE2 (Streaming SIMD extensions 2) SS (Self-snoop) HTT (Multi-threading) TM (Thermal monitor supported) PBE (Pending break enabled) Version: Intel(R) Core(TM)2 CPU T7200 Voltage: 3.3 V External Clock: Unknown Max Speed: 2048 MHz Current Speed: 2000 MHz Status: Populated, Enabled Upgrade: ZIF Socket L1 Cache Handle: 0x0005 L2 Cache Handle: 0x0006 L3 Cache Handle: Not Provided Serial Number: Not Specified Asset Tag: Not Specified Part Number: Not Specified northbridge: 8086:27a0 (i945GM) ### Here is some further information extraced by using the program "PC Wizard 2012" in Windows. However, I am not sure if this will be usefull. Furthermore, this application reports "Intel i945PM" as northbridge in contrast to the Linux output. Codename : Calistoga Revision : Stepping : A3 Bus Speed : .24 M FSB Frequenz : MHz (QDR) FSB max. Support : MHz RAM max. Support : DDR2 (667) southbridge: SouthBridge : 8086:27b9 (ICH7-M) ### Here is what the Windows program "PC Wizard 2012" reports: GBM (ICH7-M/U) LPC Interface Controller Revision : ------ output of "lspci -tvnn" -[0000:00]-+-00.0 Intel Corporation Mobile 945GM/PM/GMS, 943/940GML and 945GT Express Memory Controller Hub [8086:27a0] +-01.0-[01]----00.0 Advanced Micro Devices [AMD] nee ATI M56P [Radeon Mobility X1600] [1002:71c5] +-1b.0 Intel Corporation N10/ICH 7 Family High Definition Audio Controller [8086:27d8] +-1c.0-[02]-- +-1c.1-[03-04]-- +-1c.2-[05-06]----00.0 Intel Corporation PRO/Wireless 3945ABG [Golan] Network Connection [8086:4222] +-1d.0 Intel Corporation N10/ICH 7 Family USB UHCI Controller #1 [8086:27c8] +-1d.1 Intel Corporation N10/ICH 7 Family USB UHCI Controller #2 [8086:27c9] +-1d.2 Intel Corporation N10/ICH 7 Family USB UHCI Controller #3 [8086:27ca] +-1d.3 Intel Corporation N10/ICH 7 Family USB UHCI Controller #4 [8086:27cb] +-1d.7 Intel Corporation N10/ICH 7 Family USB2 EHCI Controller [8086:27cc] +-1e.0-[07-0b]--+-06.0 Texas Instruments PCIxx12 Cardbus Controller [104c:8039] | +-06.1 Texas Instruments PCIxx12 OHCI Compliant IEEE 1394 Host Controller [104c:803a] | +-06.2 Texas Instruments 5-in-1 Multimedia Card Reader (SD/MMC/MS/MS PRO/xD) [104c:803b] | +-06.3 Texas Instruments PCIxx12 SDA Standard Compliant SD Host Controller [104c:803c] | -08.0 Intel Corporation PRO/100 VE Network Connection [8086:1092] +-1f.0 Intel Corporation 82801GBM (ICH7-M) LPC Interface Bridge [8086:27b9] +-1f.2 Intel Corporation 82801GBM/GHM (ICH7-M Family) SATA Controller [IDE mode] [8086:27c4] -1f.3 Intel Corporation N10/ICH 7 Family SMBus Controller [8086:27da] ------ output of "superiotool -dV" superiotool r6637 Probing for ALi Super I/O at 0x3f0... Failed. Returned data: id=0xffff, rev=0xff Probing for ALi Super I/O at 0x370... Failed. Returned data: id=0xffff, rev=0xff Probing for Fintek Super I/O at 0x2e... Failed. Returned data: vid=0xffff, id=0xffff Probing for Fintek Super I/O at 0x4e... Failed. Returned data: vid=0xffff, id=0xffff Probing for Fintek Super I/O at 0x2e... Failed. Returned data: vid=0xffff, id=0xffff Probing for Fintek Super I/O at 0x4e... Failed. Returned data: vid=0xffff, id=0xffff Probing for ITE Super I/O (init=standard) at 0x25e... Failed. Returned data: id=0xffff, rev=0xf Probing for ITE Super I/O (init=it8502e) at 0x25e... Failed. Returned data: id=0xffff, rev=0xf Probing for ITE Super I/O (init=it8761e) at 0x25e... Failed. Returned data: id=0xffff, rev=0xf Probing for ITE Super I/O (init=it8228e) at 0x25e... Failed. Returned data: id=0xffff, rev=0xf Probing for ITE Super I/O (init=0x87,0x87) at 0x25e... Failed. Returned data: id=0xffff, rev=0xf Probing for ITE Super I/O (init=standard) at 0x2e... Failed. Returned data: id=0x3503, rev=0x0 Probing for ITE Super I/O (init=it8502e) at 0x2e... Failed. Returned data: id=0x3503, rev=0x0 Probing for ITE Super I/O (init=it8761e) at 0x2e... Failed. Returned data: id=0x3503, rev=0x0 Probing for ITE Super I/O (init=it8228e) at 0x2e... Failed. Returned data: id=0x3503, rev=0x0 Probing for ITE Super I/O (init=0x87,0x87) at 0x2e... Failed. Returned data: id=0x3503, rev=0x0 Probing for ITE Super I/O (init=standard) at 0x4e... Failed. Returned data: id=0xffff, rev=0xf Probing for ITE Super I/O (init=it8502e) at 0x4e... Failed. Returned data: id=0xffff, rev=0xf Probing for ITE Super I/O (init=it8761e) at 0x4e... Failed. Returned data: id=0xffff, rev=0xf Probing for ITE Super I/O (init=it8228e) at 0x4e... Failed. Returned data: id=0xffff, rev=0xf Probing for ITE Super I/O (init=0x87,0x87) at 0x4e... Failed. Returned data: id=0xffff, rev=0xf Probing for ITE Super I/O (init=legacy/it8661f) at 0x370... Failed. Returned data: id=0xffff, rev=0xf Probing for ITE Super I/O (init=legacy/it8671f) at 0x370... Failed. Returned data: id=0xffff, rev=0xf Probing for NSC Super I/O at 0x2e... Failed. Returned data: port=0xff, port+1=0xff Probing for NSC Super I/O at 0x4e... Failed. Returned data: port=0xff, port+1=0xff Probing for NSC Super I/O at 0x15c... Failed. Returned data: port=0xff, port+1=0xff Probing for NSC Super I/O at 0x164e... Failed. Returned data: port=0xff, port+1=0xff Probing for Nuvoton Super I/O at 0x164e... Failed. Returned data: chip_id=0xffff Probing for Nuvoton Super I/O (sid=0xfc) at 0x164e... Failed. Returned data: sid=0xff, id=0xffff, rev=0x00 Probing for Nuvoton Super I/O at 0x2e... Failed. Returned data: chip_id=0xffff Probing for Nuvoton Super I/O (sid=0xfc) at 0x2e... Failed. Returned data: sid=0xff, id=0xffff, rev=0x00 Probing for Nuvoton Super I/O at 0x4e... Failed. Returned data: chip_id=0xffff Probing for Nuvoton Super I/O (sid=0xfc) at 0x4e... Failed. Returned data: sid=0xff, id=0xffff, rev=0x00 Probing for SMSC Super I/O (idregs=0x20/0x21) at 0x2e... Failed. Returned data: id=0x35, rev=0x03 Probing for SMSC Super I/O (idregs=0x0d/0x0e) at 0x2e... Failed. Returned data: id=0x00, rev=0x00 Probing for SMSC Super I/O (idregs=0x20/0x21) at 0x4e... Failed. Returned data: id=0xff, rev=0xff Probing for SMSC Super I/O (idregs=0x0d/0x0e) at 0x4e... Failed. Returned data: id=0xff, rev=0xff Probing for SMSC Super I/O (idregs=0x20/0x21) at 0x162e... Failed. Returned data: id=0xff, rev=0xff Probing for SMSC Super I/O (idregs=0x0d/0x0e) at 0x162e... Failed. Returned data: id=0xff, rev=0xff Probing for SMSC Super I/O (idregs=0x20/0x21) at 0x164e... Failed. Returned data: id=0xff, rev=0xff Probing for SMSC Super I/O (idregs=0x0d/0x0e) at 0x164e... Failed. Returned data: id=0xff, rev=0xff Probing for SMSC Super I/O (idregs=0x20/0x21) at 0x3f0... Failed. Returned data: id=0xff, rev=0xff Probing for SMSC Super I/O (idregs=0x0d/0x0e) at 0x3f0... Failed. Returned data: id=0xff, rev=0xff Probing for SMSC Super I/O (idregs=0x20/0x21) at 0x370... Failed. Returned data: id=0xff, rev=0xff Probing for SMSC Super I/O (idregs=0x0d/0x0e) at 0x370... Failed. Returned data: id=0xff, rev=0xff Probing for Winbond Super I/O (init=0x88) at 0x2e... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x89) at 0x2e... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x86,0x86) at 0x2e... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x87,0x87) at 0x2e... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x88) at 0x4e... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x89) at 0x4e... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x86,0x86) at 0x4e... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x87,0x87) at 0x4e... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x88) at 0x3f0... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x89) at 0x3f0... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x86,0x86) at 0x3f0... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x87,0x87) at 0x3f0... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x88) at 0x370... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x89) at 0x370... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x86,0x86) at 0x370... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x87,0x87) at 0x370... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x88) at 0x250... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x89) at 0x250... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x86,0x86) at 0x250... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x87,0x87) at 0x250... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for VIA Super I/O at 0x3f0... PCI device 1106:0686 not found. Probing for Server Engines Super I/O at 0x2e... Failed. Returned data: id=0xffff, rev=0xff No Super I/O found ### The Windows program "HWiNFO64" also showes that the Super-IO/LPC Chip is unknown. ------ output of "ectool" EC RAM: : 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 : 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 : 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 : 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 : 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 : 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 : 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 : 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 : 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 : 00 00 08 1b 00 00 00 00 00 0a 02 00 23 00 7f 68 a0: 00 00 01 07 00 00 03 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 c0: 00 62 67 2d 41 00 00 00 ff 03 00 41 01 00 00 36 d0: 00 00 00 00 00 00 00 00 01 06 00 00 31 00 00 00 e0: 7e 00 00 00 00 00 1e 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 Not dumping EC IDX RAM. ### Concerning the Embedded Controller (EC) I could get some little information by the Windows tool "Rw version 1.6" which might be usefull for an advanced technician. According to the information it's an EC6662. ------ output of "flashrom -V" flashrom v0.9.5.2-r1517 on Linux 3.7.0-7-generic (x86_64), built with libpci 3.1.8, GCC 4.6.3, little endian flashrom is free software, get the source code at http://www.flashrom.org Calibrating delay loop... OS timer resolution is 1 usecs, 1989M loops per second, 10 myus = 10 us, 100 myus = 101 us, 1000 myus = 998 us, 10000 myus = 10162 us, 4 myus = 6 us, OK. Initializing internal programmer No coreboot table found. DMI string system-manufacturer: "TOSHIBA" DMI string system-product-name: "Satellite M110" DMI string system-version: "PSMB0U-1234567" DMI string baseboard-manufacturer: "Intel Corporation" DMI string baseboard-product-name: "CAPELL VALLEY(NAPA) CRB" DMI string baseboard-version: "Not Applicable" DMI string chassis-type: "Other" DMI chassis-type is not specific enough. ### I add here some part of the output from "dmidecode" as well with extracted information only about relevant bios parameters. By "dmidecode" I could figure out that ROM Size is only 1024 kB: Handle 0x0000, DMI type 0, 24 bytes BIOS Information Vendor: Phoenix Technologies LTD Version: 6.00 Release Date: 07/12/2007 Address: 0xE4480 Runtime Size: 113536 bytes ROM Size: 1024 kB Characteristics: ISA is supported PCI is supported PC Card (PCMCIA) is supported PNP is supported APM is supported BIOS is upgradeable BIOS shadowing is allowed ESCD support is available Boot from CD is supported ACPI is supported USB legacy is supported AGP is supported BIOS boot specification is supported Targeted content distribution is supported ------ URL to the mainboard specifications page: http://www.toshiba.de/discontinued-products/satellite-a100-151/?PRODUCT_ID=1... ### Unfortunately, I could only find this German website. But I have access to the manual. However, it does not provide much additional information which would be usefull here. ------ Any other relevant information: As I have mentioned before, I have upgraded my system including a new CPU (Intel Core2Duo T7200), more RAM (2 x 2GB, identical and from the same vendor) and a SSD. Furthermore I have flashed a modded custom bios which has enabled some more features and seems to work perfectly untill now. However, after the bios mod the model name has been changed. To end with, I would like to say thank you for your commitment concerning this great open source projet and especially for reading my long message! As I explained I am still a beginner, comming from a completely different working field, but having some ambition to use open source software. I would appreciate your support so that coreboot might natively run on my system. -- With best regards, Daniel