1
0
mirror of git://projects.qi-hardware.com/openwrt-xburst.git synced 2024-11-24 10:11:33 +02:00
openwrt-xburst/package/broadcom-57xx/src/5701rls.c
nbd 128434cb23 (6/6) bcm57xx: package
This is the bcm57xx package.  I have tested default vlan functions,
but I dont have the equipment to test more advanced setups.  The default
vlan setup seems to be working fine.  I also added the activate_gpio
parameter which will make the driver activate the switch via gpio before
probing for it.

I'm not sure which method is best for autoload.  For the wrt350n, I
need the activate_gpio parameter.  But its probably not a good idea
to add that to the autoload file.  On a system without a bcm57xx switch,
isn't it a bad idea to mess with the gpios looking for the switch? Ideally,
wouldn't it be best to load the bcm57xx module from broadcom-diag, after
it has determined which router its on?  I tried using 'request_module' from
there, but had no success.  For now, I am relying on preinit to load
the bcm57xx module with activate_gpio param, after it has failed to load
switch_robo and switch_adm.

Signed-off-by: Ben Pfountz <netprince (at) vt (dot) edu>


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@11471 3c298f89-4303-0410-b956-a3cf2f4a3e73
2008-06-15 11:11:28 +00:00

47 lines
1.9 KiB
C

/******************************************************************************/
/* */
/* Broadcom BCM5700 Linux Network Driver, Copyright (c) 2000 - 2004 Broadcom */
/* Corporation. */
/* All rights reserved. */
/* */
/* 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, located in the file LICENSE. */
/* */
/* History: */
/* */
/******************************************************************************/
#ifdef INCLUDE_5701_AX_FIX
#include "mm.h"
#include "5701rls.h"
LM_STATUS LM_LoadRlsFirmware(PLM_DEVICE_BLOCK pDevice)
{
T3_FWIMG_INFO FwImgInfo;
FwImgInfo.StartAddress = t3FwStartAddr;
FwImgInfo.Text.Buffer = (PLM_UINT8)t3FwText;
FwImgInfo.Text.Offset = t3FwTextAddr;
FwImgInfo.Text.Length = t3FwTextLen;
FwImgInfo.ROnlyData.Buffer = (PLM_UINT8)t3FwRodata;
FwImgInfo.ROnlyData.Offset = t3FwRodataAddr;
FwImgInfo.ROnlyData.Length = t3FwRodataLen;
FwImgInfo.Data.Buffer = (PLM_UINT8)t3FwData;
FwImgInfo.Data.Offset = t3FwDataAddr;
FwImgInfo.Data.Length = t3FwDataLen;
if (LM_LoadFirmware(pDevice,
&FwImgInfo,
T3_RX_CPU_ID | T3_TX_CPU_ID,
T3_RX_CPU_ID) != LM_STATUS_SUCCESS)
{
return LM_STATUS_FAILURE;
}
return LM_STATUS_SUCCESS;
}
#endif /* INCLUDE_5701_AX_FIX */