Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1fcca1a5 authored by Amit S. Kale's avatar Amit S. Kale Committed by Jeff Garzik
Browse files

NetXen: Firmware crb init changes.



NetXen: firmware crb init changes.

Signed-off-by: default avatarAmit S. Kale <amitkale@netxen.com>
Signed-off-by: default avatarJeff Garzik <jeff@garzik.org>
parent 8d5ca6ec
Loading
Loading
Loading
Loading
+9 −3
Original line number Diff line number Diff line
@@ -110,6 +110,7 @@ static void crb_addr_transform_setup(void)
	crb_addr_transform(CAM);
	crb_addr_transform(C2C1);
	crb_addr_transform(C2C0);
	crb_addr_transform(SMB);
}

int netxen_init_firmware(struct netxen_adapter *adapter)
@@ -543,9 +544,13 @@ int netxen_pinit_from_rom(struct netxen_adapter *adapter, int verbose)
		}
		for (i = 0; i < n; i++) {

			off =
			    netxen_decode_crb_addr((unsigned long)buf[i].addr) +
			    NETXEN_PCI_CRBSPACE;
			off = netxen_decode_crb_addr((unsigned long)buf[i].addr);
			if (off == NETXEN_ADDR_ERROR) {
				printk(KERN_ERR"CRB init value out of range %lx\n",
					buf[i].addr);
				continue;
			}
			off += NETXEN_PCI_CRBSPACE;
			/* skipping cold reboot MAGIC */
			if (off == NETXEN_CAM_RAM(0x1fc))
				continue;
@@ -662,6 +667,7 @@ void netxen_phantom_init(struct netxen_adapter *adapter, int pegtune_val)
	int loops = 0;

	if (!pegtune_val) {
		val = readl(NETXEN_CRB_NORMALIZE(adapter, CRB_CMDPEG_STATE));
		while (val != PHAN_INITIALIZE_COMPLETE && loops < 200000) {
			udelay(100);
			schedule();