Lines Matching defs:smc
19 #include "h/smc.h"
60 #define OEMID(smc,i) oem_id[ID_BYTE0 + i]
66 #define OEMID(smc,i) smc->hw.oem_id->oi_id[i]
76 static void smt_stop_watchdog(struct s_smc *smc);
81 static void card_start(struct s_smc *smc)
89 smt_stop_watchdog(smc) ;
97 hwt_wait_time(smc,hwt_quick_read(smc),MS2BCLK(10)) ;
129 smc->hw.hw_is_64bit = TRUE ;
131 smc->hw.hw_is_64bit = FALSE ;
137 if (!smc->hw.hw_is_64bit) {
150 smc->hw.is_imask = ISR_MASK ;
151 smc->hw.hw_state = STOPPED ;
156 void card_stop(struct s_smc *smc)
158 smt_stop_watchdog(smc) ;
159 smc->hw.mac_ring_is_up = 0 ; /* ring down */
167 hwt_wait_time(smc,hwt_quick_read(smc),MS2BCLK(10)) ;
174 smc->hw.hw_state = STOPPED ;
179 void mac1_irq(struct s_smc *smc, u_short stu, u_short stl)
190 SMT_PANIC(smc,SMT_E0134, SMT_E0134_MSG) ;
198 SMT_PANIC(smc,SMT_E0133, SMT_E0133_MSG) ;
206 formac_tx_restart(smc) ; /* init tx */
221 llc_restart_tx(smc) ;
228 void plc1_irq(struct s_smc *smc)
232 plc_irq(smc,PB,st) ;
239 void plc2_irq(struct s_smc *smc)
243 plc_irq(smc,PA,st) ;
250 void timer_irq(struct s_smc *smc)
252 hwt_restart(smc);
253 smc->hw.t_stop = smc->hw.t_start;
254 smt_timer_done(smc) ;
260 int pcm_get_s_port(struct s_smc *smc)
262 SK_UNUSED(smc) ;
277 void read_address(struct s_smc *smc, u_char *mac_addr)
285 smc->hw.fddi_phys_addr.a[i] =
293 smc->y[PA].pmd_type[PMD_SK_CONN] =
294 smc->y[PB].pmd_type[PMD_SK_CONN] = ConnectorType ;
295 smc->y[PA].pmd_type[PMD_SK_PMD ] =
296 smc->y[PB].pmd_type[PMD_SK_PMD ] = PmdType ;
300 smc->hw.fddi_canon_addr.a[i] = mac_addr[i] ;
301 smc->hw.fddi_home_addr.a[i] = bitrev8(mac_addr[i]);
305 smc->hw.fddi_home_addr = smc->hw.fddi_phys_addr ;
308 smc->hw.fddi_canon_addr.a[i] =
309 bitrev8(smc->hw.fddi_phys_addr.a[i]);
316 void init_board(struct s_smc *smc, u_char *mac_addr)
318 card_start(smc) ;
319 read_address(smc,mac_addr) ;
322 smc->s.sas = SMT_SAS ; /* Single att. station */
324 smc->s.sas = SMT_DAS ; /* Dual att. station */
327 smc->mib.fddiSMTBypassPresent = 0 ;
330 smc->mib.fddiSMTBypassPresent = 1 ;
337 void sm_pm_bypass_req(struct s_smc *smc, int mode)
342 if (smc->s.sas != SMT_DAS)
360 int sm_pm_bypass_present(struct s_smc *smc)
365 void plc_clear_irq(struct s_smc *smc, int p)
369 SK_UNUSED(smc) ;
378 * smc: SMT context
384 static void led_indication(struct s_smc *smc, int led_event)
386 /* use smc->hw.mac_ring_is_up == TRUE
394 phy = &smc->y[PA] ;
396 phy = &smc->y[PB] ;
433 void pcm_state_change(struct s_smc *smc, int plc, int p_state)
440 DRV_PCM_STATE_CHANGE(smc,plc,p_state) ;
442 led_indication(smc,0) ;
446 void rmt_indication(struct s_smc *smc, int i)
449 DRV_RMT_INDICATION(smc,i) ;
451 led_indication(smc, i ? LED_Y_OFF : LED_Y_ON) ;
458 void llc_recover_tx(struct s_smc *smc)
466 smc->hw.n_a_send= 0 ;
468 SK_UNUSED(smc) ;
494 int set_oi_id_def(struct s_smc *smc)
503 smc->hw.oem_id = 0 ;
504 smc->hw.oem_min_status = OI_STAT_ACTIVE ;
528 smc->hw.oem_id = (struct s_oem_ids *) &oem_ids[sel_id] ;
533 void driver_get_bia(struct s_smc *smc, struct fddi_addr *bia_addr)
538 bia_addr->a[i] = bitrev8(smc->hw.fddi_phys_addr.a[i]);
541 void smt_start_watchdog(struct s_smc *smc)
543 SK_UNUSED(smc) ; /* Make LINT happy. */
548 if (smc->hw.wdog_used) {
556 static void smt_stop_watchdog(struct s_smc *smc)
558 SK_UNUSED(smc) ; /* Make LINT happy. */
562 if (smc->hw.wdog_used) {
572 void mac_do_pci_fix(struct s_smc *smc)
574 SK_UNUSED(smc) ;