Page 1 of 1

Anyone with Intel Integrated Graphics T60, 14.1" or 15.1" - Small Request.

Posted: Sun Feb 07, 2016 9:30 pm
by DiagonalArg
I have a small libreboot project, described on this board, which could be furthered with a piece of data from someone running a 14.1" or 15.1" Intel Integrated Graphics T60. If anyone out there is wiling to do a favor of reading a single memory register for me and returning the result, I would certainly be very grateful. The code to read the register is in the main coreboot repository, but does require linux, perhaps via a live USB/DVD.

Download files in this directory. Most easily, by downloading the zip linked at the main page. In the next post is a modifed version of util/inteltool/gfx.c, which changes one line to read only a single register. Use that to replace coreboot/util/inteltool/gfx.c (Otherwise, on my machine the tool crashes because some registers don't like to be read.) Then run, while in the inteltool directory:

Code: Select all

apt-get install pciutils-dev  # That's assuming you have a debian based distro
make
./inteltool -f

Re: Anyone with Intel Integrated Graphics T60, 14.1" or 15.1" - Small Request.

Posted: Sun Feb 07, 2016 9:31 pm
by DiagonalArg

Code: Select all

/* *****
 * gfx.c, line 41 modified to just read one register
 * 
 * The change is from: 
 *    for (i = 0; i < MMIO_SIZE; i += 4) { 
 * to: 
 *    for (i = 0x061254; i == 0x061254; i += 4) {
***** */

/*
 * inteltool - dump all registers on an Intel CPU + chipset based system.
 *
 * Copyright (C) 2008-2010 by coresystems GmbH
 * Copyright (C) 2012 Anton Kochkov
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; version 2 of the License.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 */

#include <stdio.h>
#include <stdlib.h>
#include <inttypes.h>
#include "inteltool.h"

#define MMIO_SIZE 0x100000

int print_gfx(struct pci_dev *gfx)
{
	uint64_t mmio_phys;
	uint8_t *mmio;
	uint32_t i;
	if (!gfx) {
		printf ("No IGD found\n");
		return 0;
	}
	printf("\n============= IGD ==============\n\n");
	mmio_phys = gfx->base_addr[0] & ~0x7ULL;
	printf("IGD MMIO = 0x%08llx (MEM)\n\n", (unsigned long long)mmio_phys);
	mmio = map_physical(mmio_phys, MMIO_SIZE);
	if (mmio == NULL) {
		perror("Error mapping MMIO");
		exit(1);
	}
	for (i = 0x061254; i == 0x061254; i += 4) {
		if (*(uint32_t *)(mmio + i))
			printf("0x%06x: 0x%08x\n", i, *(uint32_t *)(mmio + i));
	}
	unmap_physical((void *)mmio, MMIO_SIZE);
	return 0;

}

Re: Anyone with Intel Integrated Graphics T60, 14.1" or 15.1" - Small Request.

Posted: Mon Feb 08, 2016 2:53 am
by dr_st
So essentially you want to read address 0x61254 in the memory space (BAR0) of the integrated GPU?

Re: Anyone with Intel Integrated Graphics T60, 14.1" or 15.1" - Small Request.

Posted: Mon Feb 08, 2016 3:28 pm
by FryPpy
I've got this output:
-----------------------------
CPU: ID 0x6f6, Processor Type 0x0, Family 0x6, Model 0xf, Stepping 0x6
Northbridge: 8086:27a0 (945GM)
Southbridge: 8086:27b9 (ICH7-M)
IGD: 8086:27a2 (unknown)

============= IGD ==============

IGD MMIO = 0xee100000 (MEM)

0x061254: 0x58bf58be
-----------------------------
@T60 1952-AP2 with T7200 and 1.5Gb ram + Ubuntu 12.4 live CD.
I'll be happy if it can help you.

Re: Anyone with Intel Integrated Graphics T60, 14.1" or 15.1" - Small Request.

Posted: Mon Feb 08, 2016 9:34 pm
by DiagonalArg
@dr_st - yes, that's right.

@FryPpy - Fantastic! Thank you. Any chance you know your LCD make/model? That'd be in the EDID info, which you could access using one of these techniques. It can be a little hard to find using that first method (looking in /var/log/Xorg.0.log), but the second using edid-decode (in the repos) worked well.

(Your nik is apropos. I'm trying not to fry/brick my machine. It's a rare 15.4" Intel Graphics T60, and I <<think>> the problem people have had with libreboot on this model is with the power modulation settings. Trying to confirm. If yours is listed as a screen that didn't work, that could help confirm it for me.)

Edit: I missed that you used a live CD. Thanks! :) If you need to read the EDID, I understand this will do it in Windows.

Re: Anyone with Intel Integrated Graphics T60, 14.1" or 15.1" - Small Request.

Posted: Mon Feb 08, 2016 9:49 pm
by DiagonalArg
@FryPpy - I checked with the parts lookup, by the way, but oddly though the machine is found, the LCD's not there.

Re: Anyone with Intel Integrated Graphics T60, 14.1" or 15.1" - Small Request.

Posted: Tue Feb 09, 2016 1:39 pm
by dr_st
Mine reads 0x58C758C6.

According to DumpEDID, this is the display:

Code: Select all

Registry Key             : DISPLAY\LEN4022\4&1c2b67d8&0&00000400&00&02

Manufacture Week         : 13 / 2008

ManufacturerID           : 44592 (0xAE30)

ProductID                : 16418 (0x4022)

Serial Number (Numeric)  : 0 (0x00000000)

EDID Version             : 1.3

Display Gamma            : 2.20