• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/linux/linux-2.6/drivers/staging/tidspbridge/include/dspbridge/
1/*
2 * wdt.h
3 *
4 * DSP-BIOS Bridge driver support functions for TI OMAP processors.
5 *
6 * IO dispatcher for a shared memory channel driver.
7 *
8 * Copyright (C) 2010 Texas Instruments, Inc.
9 *
10 * This package is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
13 *
14 * THIS PACKAGE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
15 * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
16 * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
17 */
18#ifndef __DSP_WDT3_H_
19#define __DSP_WDT3_H_
20
21/* WDT defines */
22#define OMAP3_WDT3_ISR_OFFSET	0x0018
23
24
25/**
26 * struct dsp_wdt_setting - the basic dsp_wdt_setting structure
27 * @reg_base:	pointer to the base of the wdt registers
28 * @sm_wdt:	pointer to flags in shared memory
29 * @wdt3_tasklet	tasklet to manage wdt event
30 * @fclk		handle to wdt3 functional clock
31 * @iclk		handle to wdt3 interface clock
32 *
33 * This struct is used in the function to manage wdt3.
34 */
35
36struct dsp_wdt_setting {
37	void __iomem *reg_base;
38	struct shm *sm_wdt;
39	struct tasklet_struct wdt3_tasklet;
40	struct clk *fclk;
41	struct clk *iclk;
42};
43
44/**
45 * dsp_wdt_init() - initialize wdt3 module.
46 *
47 * This function initilize to wdt3 module, so that
48 * other wdt3 function can be used.
49 */
50int dsp_wdt_init(void);
51
52/**
53 * dsp_wdt_exit() - initialize wdt3 module.
54 *
55 * This function frees all resources allocated for wdt3 module.
56 */
57void dsp_wdt_exit(void);
58
59/**
60 * dsp_wdt_enable() - enable/disable wdt3
61 * @enable:	bool value to enable/disable wdt3
62 *
63 * This function enables or disables wdt3 base on @enable value.
64 *
65 */
66void dsp_wdt_enable(bool enable);
67
68/**
69 * dsp_wdt_sm_set() - store pointer to the share memory
70 * @data:		pointer to dspbridge share memory
71 *
72 * This function is used to pass a valid pointer to share memory,
73 * so that the flags can be set in order DSP side can read them.
74 *
75 */
76void dsp_wdt_sm_set(void *data);
77
78#endif
79