Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 31 Aug 2010 04:18:47 +0000 (UTC)
From:      "Jayachandran C." <jchandra@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r212045 - head/sys/mips/rmi
Message-ID:  <201008310418.o7V4IlsR017878@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: jchandra
Date: Tue Aug 31 04:18:47 2010
New Revision: 212045
URL: http://svn.freebsd.org/changeset/base/212045

Log:
  Add the workaround for 4xx lite boards after it was lost in the last
  board.c update.

Modified:
  head/sys/mips/rmi/board.c

Modified: head/sys/mips/rmi/board.c
==============================================================================
--- head/sys/mips/rmi/board.c	Tue Aug 31 02:07:13 2010	(r212044)
+++ head/sys/mips/rmi/board.c	Tue Aug 31 04:18:47 2010	(r212045)
@@ -188,6 +188,23 @@ xls_board_specific_overrides(struct xlr_
 		blk1->gmac_port[1].mdint_id = 0;
 		blk1->gmac_port[2].mdint_id = 0;
 		blk1->gmac_port[3].mdint_id = 0;
+
+		/* If we have a 4xx lite chip, don't enable the 
+		 * GMACs which are disabled in hardware */
+		if (xlr_is_xls4xx_lite()) {
+			xlr_reg_t *mmio = xlr_io_mmio(XLR_IO_GPIO_OFFSET);
+			uint32_t tmp;
+
+			/* Port 6 & 7 are not enabled on the condor 4xx, figure
+			 * this out from the GPIO fuse bank */
+			tmp = xlr_read_reg(mmio, 35);
+			if ((tmp & (3 << 28)) != 0) {
+				blk1->enabled = 0x3;
+				blk1->gmac_port[2].valid = 0;
+				blk1->gmac_port[3].valid = 0;
+				blk1->num_ports = 2;
+			}
+		}
 		break;
 
 	case RMI_XLR_BOARD_ARIZONA_VIII:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201008310418.o7V4IlsR017878>