[flashrom] [PATCH] Add board enable for Sun Ultra 40 M2

Joshua Roys roysjosh at gmail.com
Wed Nov 2 15:25:20 CET 2011


On 11/02/2011 10:15 AM, Stefan Tauner wrote:
> Success report:
> http://paste.flashrom.org/view.php?id=889
>

Signed-off-by: Joshua Roys <roysjosh at gmail.com>

Stefan, feel free to sign-off also, if you want.

> Acked-by: Stefan Tauner<stefan.tauner at student.tuwien.ac.at>
> ---
>   board_enable.c |   33 +++++++++++++++++++++++++++++++++
>   print.c        |    1 +
>   2 files changed, 34 insertions(+), 0 deletions(-)
>
> diff --git a/board_enable.c b/board_enable.c
> index 1874459..fe2f021 100644
> --- a/board_enable.c
> +++ b/board_enable.c
> @@ -1051,6 +1051,38 @@ static int nvidia_mcp_gpio3b_raise(void)
>
>   /*
>    * Suited for:
> + *  - Sun Ultra 40 M2: Dual Socket F (1207) + MCP55
> + */
> +static int board_sun_ultra_40_m2(void)
> +{
> +	int ret;
> +	uint8_t reg;
> +	uint16_t base;
> +	struct pci_dev *dev;
> +
> +	ret = nvidia_mcp_gpio4_lower();
> +	if (ret)
> +		return ret;
> +
> +	dev = pci_dev_find(0x10de, 0x0364); /* NVIDIA MCP55 LPC bridge */
> +	if (!dev) {
> +		msg_perr("\nERROR: NVIDIA MCP55 LPC bridge not found.\n");
> +		return -1;
> +	}
> +
> +	base = pci_read_word(dev, 0xb4); /* some IO BAR? */
> +	if (!base)
> +		return -1;
> +
> +	reg = INB(base + 0x4b);
> +	reg |= 0x10;
> +	OUTB(reg, base + 0x4b);
> +
> +	return 0;
> +}
> +
> +/*
> + * Suited for:
>    *  - Artec Group DBE61 and DBE62
>    */
>   static int board_artecgroup_dbe6x(void)
> @@ -2109,6 +2141,7 @@ const struct board_match board_matches[] = {
>   	{0x1106, 0x3104, 0x1297, 0xa238,  0x1106, 0x3059, 0x1297, 0xc063, NULL,         NULL, NULL,           P3, "Shuttle",     "AK38N",                 256, OK, NULL},
>   	{0x10DE, 0x0050, 0x1297, 0x5036,  0x1412, 0x1724, 0x1297, 0x5036, NULL,         NULL, NULL,           P3, "Shuttle",     "FN25",                  0,   OK, board_shuttle_fn25},
>   	{0x1106, 0x3038, 0x0925, 0x1234,  0x1106, 0x3058, 0x15DD, 0x7609, NULL,         NULL, NULL,           P3, "Soyo",        "SY-7VCA",               0,   OK, via_apollo_gpo0_lower},
> +	{0x10de, 0x0364, 0x108e, 0x6676,  0x10de, 0x0369, 0x108e, 0x6676, "^Sun Ultra 40 M2", NULL, NULL,     P3, "Sun",         "Ultra 40 M2",           0,   OK, board_sun_ultra_40_m2},
>   	{0x1106, 0x3038, 0x0925, 0x1234,  0x1106, 0x0596, 0x1106,      0, NULL,         NULL, NULL,           P3, "Tekram",      "P6Pro-A5",              256, OK, NULL},
>   	{0x1106, 0x3123, 0x1106, 0x3123,  0x1106, 0x3059, 0x1106, 0x4161, NULL,         NULL, NULL,           P3, "Termtek",     "TK-3370 (Rev:2.5B)",    0,   OK, w836xx_memw_enable_4e},
>   	{0x8086, 0x1076, 0x8086, 0x1176,  0x1106, 0x3059, 0x10f1, 0x2498, NULL,         NULL, NULL,           P3, "Tyan",        "S2498 (Tomcat K7M)",    0,   OK, w836xx_memw_enable_2e},
> diff --git a/print.c b/print.c
> index 05eee9f..91288ee 100644
> --- a/print.c
> +++ b/print.c
> @@ -846,6 +846,7 @@ const struct board_info boards_known[] = {
>   	B("Sun",	"Fire x4200",		0, "http://www.sun.com/servers/entry/x4200/", "No public report found. May work now."),
>   	B("Sun",	"Fire x4540",		0, "http://www.sun.com/servers/x64/x4540/", "No public report found. May work now."),
>   	B("Sun",	"Fire x4600",		0, "http://www.sun.com/servers/x64/x4600/", "No public report found. May work now."),
> +	B("Sun",	"Ultra 40 M2",		1, NULL, NULL),
>   	B("Supermicro",	"H8QC8",		1, "http://www.supermicro.com/Aplus/motherboard/Opteron/nforce/H8QC8.cfm", NULL),
>   	B("Supermicro", "X5DP8-G2",		1, "http://www.supermicro.com/products/motherboard/Xeon/E7501/X5DP8-G2.cfm", NULL),
>   	B("Supermicro", "X7DBT-INF",		1, "http://www.supermicro.com/products/motherboard/Xeon1333/5000P/X7DBT-INF.cfm", NULL),





More information about the flashrom mailing list