Lines Matching defs:smc
19 #include "h/smc.h"
64 #define OEMID(smc,i) oem_id[ID_BYTE0 + i]
70 #define OEMID(smc,i) smc->hw.oem_id->oi_id[i]
80 static void smt_stop_watchdog(struct s_smc *smc);
85 static void card_start(struct s_smc *smc)
93 smt_stop_watchdog(smc) ;
101 hwt_wait_time(smc,hwt_quick_read(smc),MS2BCLK(10)) ;
133 smc->hw.hw_is_64bit = TRUE ;
135 smc->hw.hw_is_64bit = FALSE ;
141 if (!smc->hw.hw_is_64bit) {
154 smc->hw.is_imask = ISR_MASK ;
155 smc->hw.hw_state = STOPPED ;
160 void card_stop(struct s_smc *smc)
162 smt_stop_watchdog(smc) ;
163 smc->hw.mac_ring_is_up = 0 ; /* ring down */
171 hwt_wait_time(smc,hwt_quick_read(smc),MS2BCLK(10)) ;
178 smc->hw.hw_state = STOPPED ;
183 void mac1_irq(struct s_smc *smc, u_short stu, u_short stl)
194 SMT_PANIC(smc,SMT_E0134, SMT_E0134_MSG) ;
202 SMT_PANIC(smc,SMT_E0133, SMT_E0133_MSG) ;
210 formac_tx_restart(smc) ; /* init tx */
225 llc_restart_tx(smc) ;
232 void plc1_irq(struct s_smc *smc)
236 plc_irq(smc,PB,st) ;
243 void plc2_irq(struct s_smc *smc)
247 plc_irq(smc,PA,st) ;
254 void timer_irq(struct s_smc *smc)
256 hwt_restart(smc);
257 smc->hw.t_stop = smc->hw.t_start;
258 smt_timer_done(smc) ;
264 int pcm_get_s_port(struct s_smc *smc)
266 SK_UNUSED(smc) ;
281 void read_address(struct s_smc *smc, u_char *mac_addr)
289 smc->hw.fddi_phys_addr.a[i] =
297 smc->y[PA].pmd_type[PMD_SK_CONN] =
298 smc->y[PB].pmd_type[PMD_SK_CONN] = ConnectorType ;
299 smc->y[PA].pmd_type[PMD_SK_PMD ] =
300 smc->y[PB].pmd_type[PMD_SK_PMD ] = PmdType ;
304 smc->hw.fddi_canon_addr.a[i] = mac_addr[i] ;
305 smc->hw.fddi_home_addr.a[i] = bitrev8(mac_addr[i]);
309 smc->hw.fddi_home_addr = smc->hw.fddi_phys_addr ;
312 smc->hw.fddi_canon_addr.a[i] =
313 bitrev8(smc->hw.fddi_phys_addr.a[i]);
320 void init_board(struct s_smc *smc, u_char *mac_addr)
322 card_start(smc) ;
323 read_address(smc,mac_addr) ;
326 smc->s.sas = SMT_SAS ; /* Single att. station */
328 smc->s.sas = SMT_DAS ; /* Dual att. station */
331 smc->mib.fddiSMTBypassPresent = 0 ;
334 smc->mib.fddiSMTBypassPresent = 1 ;
341 void sm_pm_bypass_req(struct s_smc *smc, int mode)
346 if (smc->s.sas != SMT_DAS)
364 int sm_pm_bypass_present(struct s_smc *smc)
369 void plc_clear_irq(struct s_smc *smc, int p)
373 SK_UNUSED(smc) ;
382 * smc: SMT context
388 static void led_indication(struct s_smc *smc, int led_event)
390 /* use smc->hw.mac_ring_is_up == TRUE
398 phy = &smc->y[PA] ;
400 phy = &smc->y[PB] ;
437 void pcm_state_change(struct s_smc *smc, int plc, int p_state)
444 DRV_PCM_STATE_CHANGE(smc,plc,p_state) ;
446 led_indication(smc,0) ;
450 void rmt_indication(struct s_smc *smc, int i)
453 DRV_RMT_INDICATION(smc,i) ;
455 led_indication(smc, i ? LED_Y_OFF : LED_Y_ON) ;
462 void llc_recover_tx(struct s_smc *smc)
470 smc->hw.n_a_send= 0 ;
472 SK_UNUSED(smc) ;
498 int set_oi_id_def(struct s_smc *smc)
507 smc->hw.oem_id = 0 ;
508 smc->hw.oem_min_status = OI_STAT_ACTIVE ;
532 smc->hw.oem_id = (struct s_oem_ids *) &oem_ids[sel_id] ;
537 void driver_get_bia(struct s_smc *smc, struct fddi_addr *bia_addr)
542 bia_addr->a[i] = bitrev8(smc->hw.fddi_phys_addr.a[i]);
545 void smt_start_watchdog(struct s_smc *smc)
547 SK_UNUSED(smc) ; /* Make LINT happy. */
552 if (smc->hw.wdog_used) {
560 static void smt_stop_watchdog(struct s_smc *smc)
562 SK_UNUSED(smc) ; /* Make LINT happy. */
566 if (smc->hw.wdog_used) {
576 void mac_do_pci_fix(struct s_smc *smc)
578 SK_UNUSED(smc) ;