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

Commit 64bef763 authored by Krzysztof Hałasa's avatar Krzysztof Hałasa
Browse files

WAN: Port LMC driver to generic HDLC



Signed-off-by: default avatarKrzysztof Hałasa <khc@pm.waw.pl>
parent 52e8a6a2
Loading
Loading
Loading
Loading
+3 −4
Original line number Diff line number Diff line
@@ -61,7 +61,7 @@ config COSA
#
config LANMEDIA
	tristate "LanMedia Corp. SSI/V.35, T1/E1, HSSI, T3 boards"
	depends on PCI && VIRT_TO_BUS
	depends on PCI && VIRT_TO_BUS && HDLC
	---help---
	  Driver for the following Lan Media family of serial boards:

@@ -78,9 +78,8 @@ config LANMEDIA
	  - LMC 5245 board connects directly to a T3 circuit saving the
	  additional external hardware.

	  To change setting such as syncPPP vs Cisco HDLC or clock source you
	  will need lmcctl.  It is available at <ftp://ftp.lanmedia.com/>
	  (broken link).
	  To change setting such as clock source you will need lmcctl.
	  It is available at <ftp://ftp.lanmedia.com/> (broken link).

	  To compile this driver as a module, choose M here: the
	  module will be called lmc.
+0 −1
Original line number Diff line number Diff line
@@ -26,7 +26,6 @@ obj-$(CONFIG_SEALEVEL_4021) += z85230.o sealevel.o
obj-$(CONFIG_COSA)		+= cosa.o
obj-$(CONFIG_FARSYNC)		+= farsync.o
obj-$(CONFIG_DSCC4)             += dscc4.o
obj-$(CONFIG_LANMEDIA)		+=		syncppp.o
obj-$(CONFIG_X25_ASY)		+= x25_asy.o

obj-$(CONFIG_LANMEDIA)		+= lmc/
+1 −1
Original line number Diff line number Diff line
@@ -61,7 +61,7 @@
/*
 * IFTYPE defines
 */
#define LMC_PPP         1               /* use sppp interface */
#define LMC_PPP         1               /* use generic HDLC interface */
#define LMC_NET         2               /* use direct net interface */
#define LMC_RAW         3               /* use direct net interface */

+286 −371

File changed.

Preview size limit exceeded, changes collapsed.

+24 −31
Original line number Diff line number Diff line
@@ -425,7 +425,7 @@ lmc_ds3_set_scram (lmc_softc_t * const sc, int ie)
static int
lmc_ds3_get_link_status (lmc_softc_t * const sc)
{
    u_int16_t link_status, link_status_11;
    u16 link_status, link_status_11;
    int ret = 1;

    lmc_mii_writereg (sc, 0, 17, 7);
@@ -538,10 +538,9 @@ lmc_ds3_watchdog (lmc_softc_t * const sc)
 *  SSI methods
 */

static void
lmc_ssi_init (lmc_softc_t * const sc)
static void lmc_ssi_init(lmc_softc_t * const sc)
{
  u_int16_t mii17;
	u16 mii17;
	int cable;

	sc->ictl.cardtype = LMC_CTL_CARDTYPE_LMC1000;
@@ -679,7 +678,7 @@ lmc_ssi_set_speed (lmc_softc_t * const sc, lmc_ctl_t * ctl)
static int
lmc_ssi_get_link_status (lmc_softc_t * const sc)
{
  u_int16_t link_status;
  u16 link_status;
  u_int32_t ticks;
  int ret = 1;
  int hw_hdsk = 1;
@@ -719,7 +718,7 @@ lmc_ssi_get_link_status (lmc_softc_t * const sc)
  else if (ticks == 0 ) {				/* no clock found ? */
      ret = 0;
      if (sc->last_led_err[3] != 1) {
          sc->stats.tx_lossOfClockCnt++;
	      sc->extra_stats.tx_lossOfClockCnt++;
	      printk(KERN_WARNING "%s: Lost Clock, Link Down\n", sc->name);
      }
      sc->last_led_err[3] = 1;
@@ -885,21 +884,15 @@ write_av9110 (lmc_softc_t * sc, u_int32_t n, u_int32_t m, u_int32_t v,
		     | LMC_GEP_SSI_GENERATOR));
}

static void
lmc_ssi_watchdog (lmc_softc_t * const sc)
static void lmc_ssi_watchdog(lmc_softc_t * const sc)
{
  u_int16_t mii17 = lmc_mii_readreg (sc, 0, 17);
	u16 mii17 = lmc_mii_readreg(sc, 0, 17);
	if (((mii17 >> 3) & 7) == 7)
    {
		lmc_led_off(sc, LMC_MII16_LED2);
    }
	else
    {
		lmc_led_on(sc, LMC_MII16_LED2);
}

}

/*
 *  T1 methods
 */
@@ -927,7 +920,7 @@ lmc_t1_read (lmc_softc_t * const sc, int a)
static void
lmc_t1_init (lmc_softc_t * const sc)
{
  u_int16_t mii16;
  u16 mii16;
  int i;

  sc->ictl.cardtype = LMC_CTL_CARDTYPE_LMC1200;
@@ -1026,7 +1019,7 @@ lmc_t1_set_status (lmc_softc_t * const sc, lmc_ctl_t * ctl)
 */ static int
lmc_t1_get_link_status (lmc_softc_t * const sc)
{
    u_int16_t link_status;
    u16 link_status;
    int ret = 1;

  /* LMC5245 (DS3) & LMC1200 (DS1) LED definitions
Loading