aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/input/keyboard/cypressbln/issp_delays.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/input/keyboard/cypressbln/issp_delays.h')
-rw-r--r--drivers/input/keyboard/cypressbln/issp_delays.h87
1 files changed, 87 insertions, 0 deletions
diff --git a/drivers/input/keyboard/cypressbln/issp_delays.h b/drivers/input/keyboard/cypressbln/issp_delays.h
new file mode 100644
index 0000000..e727310
--- /dev/null
+++ b/drivers/input/keyboard/cypressbln/issp_delays.h
@@ -0,0 +1,87 @@
+// filename: ISSP_Delays.h
+#include "issp_revision.h"
+#ifdef PROJECT_REV_304
+/* Copyright 2006-2007, Cypress Semiconductor Corporation.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
+CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
+INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS
+BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
+OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+LIABILITY, WHETHER IN CONRTACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ Disclaimer: CYPRESS MAKES NO WARRANTY OF ANY KIND,EXPRESS OR IMPLIED,
+ WITH REGARD TO THIS MATERIAL, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
+ Cypress reserves the right to make changes without further notice to the
+ materials described herein. Cypress does not assume any liability arising
+ out of the application or use of any product or circuit described herein.
+ Cypress does not authorize its products for use as critical components in
+ life-support systems where a malfunction or failure may reasonably be
+ expected to result in significant injury to the user. The inclusion of
+ Cypress� product in a life-support systems application implies that the
+ manufacturer assumes all risk of such use and in doing so indemnifies
+ Cypress against all charges.
+
+ Use may be limited by and subject to the applicable Cypress software
+ license agreement.
+
+-----------------------------------------------------------------------------*/
+#ifndef INC_ISSP_DELAYS
+#define INC_ISSP_DELAYS
+
+// The Delay() routine, in ISSP_Driver_Routines.c, has a delay of n+3 usec,
+// where n is the value passed to the routine. This is true for the m8c micro-
+// processor in the PSoC when it is running at a CPU clock of 24MHz.
+//
+// PROCESSOR_SPECIFIC
+// If another processor is used, or if the m8c is running at a slower clock
+// speed, then the delay parameters will be different. This file makes changing
+// the delays simpiler when porting the program to other processors.
+
+// DELAY_M is the slope of the Delay = Mx + B equation
+#define DELAY_M 1
+// DELAY_B is the offset of the delay in Delay = Mx + B.
+#define DELAY_B 3
+
+///////////////////////////////////////////////////////////////////////////////
+// CAUTION:
+// For the above parameters the minimum delay value is 3 (this would result in
+// 0 being passed for a minimum delay. A value less than 3 would actually
+// create a negative number, causing a very long delay
+///////////////////////////////////////////////////////////////////////////////
+
+// TRANSITION_TIMEOUT is a loop counter for a 100msec timeout when waiting for
+// a high-to-low transition. This is used in the polling loop of
+// fDetectHiLoTransition(). Each pass through the loop takes approximately 15
+// usec. 100 msec is about 6740 loops. 13480
+#define TRANSITION_TIMEOUT 0x100000 //6740
+
+// XRES_DELAY is the time duration for which XRES is asserted. This defines
+// a 63 usec delay.
+// The minimum Xres time (from the device datasheet) is 10 usec.
+//mhsong #define XRES_CLK_DELAY ((63 - DELAY_B) / DELAY_M)
+#define XRES_CLK_DELAY 63
+
+// POWER_CYCLE_DELAY is the time required when power is cycled to the target
+// device to create a power reset after programming has been completed. The
+// actual time of this delay will vary from system to system depending on the
+// bypass capacitor size. A delay of 150 usec is used here.
+//mhsong #define POWER_CYCLE_DELAY ((150 - DELAY_B) / DELAY_M)
+#define POWER_CYCLE_DELAY 150
+
+// DELAY_100us delays 100 usec. This is used in fXRESInitializeTargetForISSP to
+// time the wait for Vdd to become stable after a power up. A loop runs 10 of
+// these for a total delay of 1 msec.
+//mhsong #define DELAY100us ((100 - DELAY_B) / DELAY_M)
+#define DELAY100us 100
+
+#endif //(INC_ISSP_DELAYS)
+#endif //(PROJECT_REV_)
+//end of file ISSP_Delays.h