From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from list by lists.gnu.org with archive (Exim 4.71) id 1UWNW0-0004MU-RT for mharc-grub-devel@gnu.org; Sun, 28 Apr 2013 05:03:24 -0400 Received: from eggs.gnu.org ([208.118.235.92]:52884) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UWNVv-0004Lc-5Z for grub-devel@gnu.org; Sun, 28 Apr 2013 05:03:22 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UWNVr-00071U-UT for grub-devel@gnu.org; Sun, 28 Apr 2013 05:03:19 -0400 Received: from mail.gw90.de ([188.40.100.199]:51917) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UWNVr-0006zM-Jj for grub-devel@gnu.org; Sun, 28 Apr 2013 05:03:15 -0400 Received: from e178072239.adsl.alicedsl.de ([85.178.72.239] helo=[192.168.2.49]) by mail.gw90.de with esmtpsa (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.72) (envelope-from ) id 1UWNVl-0006fD-PN for grub-devel@gnu.org; Sun, 28 Apr 2013 09:03:10 +0000 Message-ID: <1367139772.4598.14.camel@mattotaupa> Subject: GRUB as coreboot payload with *working* AHCI mode support From: Paul Menzel To: grub-devel@gnu.org Date: Sun, 28 Apr 2013 11:02:52 +0200 Content-Type: multipart/signed; micalg="pgp-sha1"; protocol="application/pgp-signature"; boundary="=-LkUX8zVbbRIGVYY74xuu" X-Mailer: Evolution 3.4.4-3 Mime-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 188.40.100.199 X-BeenThere: grub-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: The development of GNU GRUB List-Id: The development of GNU GRUB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 28 Apr 2013 09:03:22 -0000 --=-LkUX8zVbbRIGVYY74xuu Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Dear GRUB folks, just for your information, I successfully tested revision 4911 containing the AHCI support, Vladimir committed yesterday. Big thanks to Vladimir! Here is the serial log from running coreboot with the GRUB payload on the ASRock E350M1. [=E2=80=A6] 01.069: Adding CBMEM entry as no. 6 01.069: Writing table forward entry at 0x00000500 01.069: Wrote coreboot table at: 00000500, 0x10 bytes, checksum 57d= f 01.069: Table forward entry ends at 0x00000528. 01.069: ... aligned to 0x00001000 01.069: Writing coreboot table at 0xc7fee000 01.069: rom_table_end =3D 0xc7fee000 01.069: ... aligned to 0xc7ff0000 01.069: 0. 0000000000000000-0000000000000fff: CONFIGURATION TABLES 01.069: 1. 0000000000001000-000000000009ffff: RAM 01.069: 2. 00000000000c0000-00000000c7fdffff: RAM 01.069: 3. 00000000c7fe0000-00000000c7ffffff: CONFIGURATION TABLES 01.069: 4. 00000000c8000000-00000000dfffffff: RESERVED 01.069: 5. 00000000f8000000-00000000f8ffffff: RESERVED 01.070: 6. 0000000100000000-000000021effffff: RAM 01.069: Wrote coreboot table at: c7fee000, 0x200 bytes, checksum 73= d6 01.069: coreboot table: 536 bytes. 01.069: Multiboot Information structure has been written. 01.069: FREE SPACE 0. c7ff6000 0000a000 01.069: GDT 1. c7fe0200 00000200 01.070: IRQ TABLE 2. c7fe0400 00001000 01.070: SMP TABLE 3. c7fe1400 00001000 01.070: ACPI 4. c7fe2400 0000b400 01.070: SMBIOS 5. c7fed800 00000800 01.070: COREBOOT 6. c7fee000 00008000 01.070: CBFS: Looking for 'fallback/payload' starting from 0x0. 01.070: CBFS: (unmatched file @0x0: cmos_layout.bin) 01.070: CBFS: (unmatched file @0x740: pci1002,9802.rom) 01.070: CBFS: (unmatched file @0x10780: fallback/romstage) 01.070: CBFS: (unmatched file @0x65380: fallback/coreboot_ram) 01.070: CBFS: Found file (offset=3D0x979f8, len=3D198663). 01.070: Loading segment from rom address 0xffc979f8 01.070: code (compression=3D1) 01.070: New segment dstaddr 0x8200 memsize 0xe298 srcaddr 0xffc97= a4c filesize 0x4067 01.070: (cleaned up) New segment addr 0x8200 size 0xe298 offset 0= xffc97a4c filesize 0x4067 01.070: Loading segment from rom address 0xffc97a14 01.070: code (compression=3D1) 01.070: New segment dstaddr 0x100000 memsize 0x8cdec srcaddr 0xff= c9bab3 filesize 0x2c74c 01.070: (cleaned up) New segment addr 0x100000 size 0x8cdec offse= t 0xffc9bab3 filesize 0x2c74c 01.070: Loading segment from rom address 0xffc97a30 01.070: Entry Point 0x00008200 01.070: Loading Segment: addr: 0x0000000000008200 memsz: 0x00000000= 0000e298 filesz: 0x0000000000004067 01.070: lb: [0x0000000000200000, 0x0000000000370038) 01.070: Post relocation: addr: 0x0000000000008200 memsz: 0x00000000= 0000e298 filesz: 0x0000000000004067 01.070: using LZMA 01.077: [ 0x00008200, 0000eee7, 0x00016498) <- ffc97a4c 01.078: Clearing Segment: addr: 0x000000000000eee7 memsz: 0x0000000= 0000075b1 01.078: dest 00008200, end 00016498, bouncebuffer c7cfff90 01.078: Loading Segment: addr: 0x0000000000100000 memsz: 0x00000000= 0008cdec filesz: 0x000000000002c74c 01.078: lb: [0x0000000000200000, 0x0000000000370038) 01.078: Post relocation: addr: 0x0000000000100000 memsz: 0x00000000= 0008cdec filesz: 0x000000000002c74c 01.078: using LZMA 01.169: [ 0x00100000, 0018cdec, 0x0018cdec) <- ffc9bab3 01.169: dest 00100000, end 0018cdec, bouncebuffer c7cfff90 01.169: Loaded segments 01.169: Jumping to boot code at 8200 01.170: CPU0: stack: 002a0000 - 002b0000, lowest used address 002af= 77c, stack used: 2180 bytes 01.170: entry =3D 0x00008200 01.170: lb_start =3D 0x00200000 01.170: lb_size =3D 0x00170038 01.170: adjust =3D 0xc7c6ffc8 01.170: buffer =3D 0xc7cfff90 01.170: elf_boot_notes =3D 0x0027fca0 01.170: adjusted_boot_notes =3D 0xc7eefc68 02.316: <1b>[H<1b>[J<1b>[1;1Hdisk/ahci.c:211: dev: 0:11.0 Here the debug messages start as there is `set debug=3D"ahci"` in `grub.cfg` in the memdisk. (Not sure where the strange characters in the beginning come from though.) 02.317: disk/ahci.c:214: tfd[0]: 80 02.317: disk/ahci.c:216: cmd[0]: 2006 02.317: disk/ahci.c:218: st[0]: 123 02.317: disk/ahci.c:220: err[0]: 0 02.317: disk/ahci.c:223: tfd[1]: 7f 02.317: disk/ahci.c:225: cmd[1]: 2006 02.317: disk/ahci.c:227: st[1]: 0 02.317: disk/ahci.c:229: err[1]: 0 02.317: disk/ahci.c:234: err[1]: 0 02.317: disk/ahci.c:236: BH:0 02.317: disk/ahci.c:242: Requesting AHCI ownership 02.317: disk/ahci.c:245: Waiting for BIOS to give up ownership 02.317: disk/ahci.c:256: AHCI ownership obtained 02.317: disk/ahci.c:261: GLC:0 02.317: disk/ahci.c:264: err[1]: 0 02.317: disk/ahci.c:267: AHCI is in compat mode. Switching I have to read about that and figure out, if and where I can configure that mode in coreboot. Vladimir, could you please add to the error message, to what mode the mode is switched to? 02.317: disk/ahci.c:272: err[1]: 0 02.317: disk/ahci.c:274: GLC:0 02.317: disk/ahci.c:288: GLC:0 02.317: disk/ahci.c:291: err[1]: 0 02.320: disk/ahci.c:306: GLC:80000000 02.322: disk/ahci.c:309: err[1]: 0 02.325: disk/ahci.c:312: err[1]: 0 02.328: disk/ahci.c:314: GLC:80000000 02.329: disk/ahci.c:330: err[1]: 0 02.331: disk/ahci.c:332: GLC:80000000 02.334: disk/ahci.c:337: 6 AHCI ports, PI =3D 0x3f 02.335: disk/ahci.c:368: err: 0 02.337: disk/ahci.c:393: found device ahci0 (port 0), command_table= =3D 0xc7eba000, 02.339: command_list =3D 0xc7eba800 02.339: disk/ahci.c:368: err: 0 02.344: disk/ahci.c:393: found device ahci1 (port 1), command_table= =3D 0xc7eb9000, 02.345: command_list =3D 0xc7eb9800 02.345: disk/ahci.c:368: err: 0 02.350: disk/ahci.c:393: found device ahci2 (port 2), command_table= =3D 0xc7eb8000, 02.351: command_list =3D 0xc7eb8800 02.352: disk/ahci.c:368: err: 0 02.356: disk/ahci.c:393: found device ahci3 (port 3), command_table= =3D 0xc7eb7000, 02.357: command_list =3D 0xc7eb7800 02.358: disk/ahci.c:368: err: 0 02.362: disk/ahci.c:393: found device ahci4 (port 4), command_table= =3D 0xc7e6e000, 02.363: command_list =3D 0xc7e6e800 02.364: disk/ahci.c:368: err: 0 02.368: disk/ahci.c:393: found device ahci5 (port 5), command_table= =3D 0xc7e6b000, 02.369: command_list =3D 0xc7e6d800 02.370: disk/ahci.c:447: err: 0 02.375: disk/ahci.c:447: err: 0 02.376: disk/ahci.c:447: err: 0 02.378: disk/ahci.c:447: err: 0 02.380: disk/ahci.c:447: err: 0 02.382: disk/ahci.c:447: err: 0 02.384: disk/ahci.c:486: err: 0 02.386: disk/ahci.c:494: err: 0 02.388: disk/ahci.c:486: err: 0 02.390: disk/ahci.c:494: err: 0 02.392: disk/ahci.c:486: err: 0 02.394: disk/ahci.c:494: err: 0 02.396: disk/ahci.c:486: err: 0 02.398: disk/ahci.c:494: err: 0 02.401: disk/ahci.c:486: err: 0 02.402: disk/ahci.c:494: err: 0 02.404: disk/ahci.c:486: err: 0 02.406: disk/ahci.c:494: err: 0 02.408: disk/ahci.c:512: couldn't detect device on port 1 02.509: disk/ahci.c:512: couldn't detect device on port 2 02.511: disk/ahci.c:512: couldn't detect device on port 3 02.513: disk/ahci.c:512: couldn't detect device on port 4 02.515: disk/ahci.c:512: couldn't detect device on port 5 02.518: disk/ahci.c:521: err: 0 02.520: disk/ahci.c:527: err: 0 02.521: disk/ahci.c:531: err: 0 02.523: disk/ahci.c:537: offset: 120, tfd:80, CMD: 6016 02.525: disk/ahci.c:540: err: 0 02.528: disk/ahci.c:551: offset: 120, tfd:80, CMD: 6016 02.529: disk/ahci.c:554: err: 0 02.531: <1b>[?25l<1b>[m<1b>[H<1b>[J<1b>[1;1H<1b>[2;30HGNU GRUB ver= sion 2.00 10.269:=20 10.269: <1b>[m<1b>[4;2H+-------------------------------------------= ---------------------------------+<1b>[5;2H|<1b>[5;79H|<1b>[6;2H|<1b>[6;79H= |<1b>[7;2H|<1b>[7;79H|<1b>[8;2H|<1b>[8;79H|<1b>[9;2H|<1b>[9;79H|<1b>[10;2H|= <1b>[10;79H|<1b>[11;2H|<1b>[11;79H|<1b>[12;2H|<1b>[12;79H|<1b>[13;2H|<1b>[1= 3;79H|<1b>[14;2H|<1b>[14;79H|<1b>[15;2H|<1b>[15;79H|<1b>[16;2H|<1b>[16;79H|= <1b>[17;2H+----------------------------------------------------------------= ------------+<1b>[m<1b>[18;2H<1b>[m 10.269: Use the ^ and v keys to select which entry is highlig= hted. 10.269: Press enter to boot the selected OS, `e' to edit the = commands 10.269: before booting or `c' for a command-line. [=E2=80=A6] So my Western Digital WD20EARS seems to take about ten seconds to start up. (Under SeaBIOS it has the same behavior.) Thanks, Paul --=-LkUX8zVbbRIGVYY74xuu Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.12 (GNU/Linux) iEYEABECAAYFAlF85b0ACgkQPX1aK2wOHViDngCgjD/+624ypDP9qPp0B9dSpICw O4AAn1Y9xzAKOxiMBl8zkYmrsGxABBvd =L3K7 -----END PGP SIGNATURE----- --=-LkUX8zVbbRIGVYY74xuu--