]>
Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | // Routine to trigger Finisar GTA analyzer. Runs of GPIO2 |
2 | // NOTE: DEBUG ONLY! Could interfere with FCMNGR/Miniport operation | |
3 | // since it writes directly to the Tachyon board. This function | |
4 | // developed for Compaq HBA Tachyon TS v1.2 (Rev X5 PCB) | |
5 | ||
6 | #include "cpqfcTStrigger.h" | |
7 | #if TRIGGERABLE_HBA | |
8 | ||
9 | #include <linux/kernel.h> | |
10 | #include <linux/ioport.h> | |
11 | #include <linux/types.h> | |
12 | #include <linux/pci.h> | |
13 | #include <asm/io.h> | |
14 | ||
15 | void TriggerHBA( void* IOBaseUpper, int Print) | |
16 | { | |
17 | __u32 long value; | |
18 | ||
19 | // get initial value in hopes of not modifying any other GPIO line | |
20 | IOBaseUpper += 0x188; // TachTL/TS Control reg | |
21 | ||
22 | value = readl( IOBaseUpper); | |
23 | // set HIGH to trigger external analyzer (tested on Dolche Finisar 1Gb GTA) | |
24 | // The Finisar anaylzer triggers on low-to-high TTL transition | |
25 | value |= 0x01; // set bit 0 | |
26 | ||
27 | writel( value, IOBaseUpper); | |
28 | ||
29 | if( Print) | |
30 | printk( " -GPIO0 set- "); | |
31 | } | |
32 | ||
33 | #endif |