linux/drivers/watchdog/of_xilinx_wdt.c
<<
Prefs
   1/*
   2*   of_xilinx_wdt.c  1.01  A Watchdog Device Driver for Xilinx xps_timebase_wdt
   3*
   4*   (C) Copyright 2011 (Alejandro Cabrera <aldaya@gmail.com>)
   5*
   6*       -----------------------
   7*
   8*   This program is free software; you can redistribute it and/or
   9*   modify it under the terms of the GNU General Public License
  10*   as published by the Free Software Foundation; either version
  11*   2 of the License, or (at your option) any later version.
  12*
  13*       -----------------------
  14*       30-May-2011 Alejandro Cabrera <aldaya@gmail.com>
  15*               - If "xlnx,wdt-enable-once" wasn't found on device tree the
  16*                 module will use CONFIG_WATCHDOG_NOWAYOUT
  17*               - If the device tree parameters ("clock-frequency" and
  18*                 "xlnx,wdt-interval") wasn't found the driver won't
  19*                 know the wdt reset interval
  20*/
  21
  22#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
  23
  24#include <linux/module.h>
  25#include <linux/types.h>
  26#include <linux/kernel.h>
  27#include <linux/fs.h>
  28#include <linux/miscdevice.h>
  29#include <linux/init.h>
  30#include <linux/ioport.h>
lin"dridE4id="Lnux/fs.h" class="fref">linux/fs.h>5pti3
	  hlt;  30#include <>
linux/fs.h>5pti3
	  hlt;>
linux/fs.h>5pti3
	  hlt;  34#include <linux/m>
linux/fs.h>5pti3
	  hlt;3 25#include <linux/>
linux/fs.h>5pti3
	  hlt;  36#include <3e" name=3L27">  27#include &3t;


fmt)XWT_TWCSR0_OFFSET="+co  0x0  parameters ("clo/* Control/Status Regisatc0athe wdt reset interval
  29#include <<4 href40nx_wdt.c#L21" id="L21" clasXWT_TWCSR1_OFFSET"sref">fmt)XWT_TWCSR1_OFFSET="+co  0x4  parameters ("clo/* Control/Status Regisatc1athe wdt reset interval
  40#include <fmt)XWT_TBR_OFFSET="+co  o  0x8  parameters ("clo/* T_wdt.c# RegisatchOffhreathe wdt reset interval
4e="L30">4 30#include <  12
fmt)XWT_CSR0_WRS_MASK="+co  0x00000008  parameters ("clo/* R hrefstatus the wdt reset interval
  44#include <fmt)XWT_CSR0_WDS_MASK="+co  0x00000004  parameters ("clo/* T_wdrfstate athe wdt reset interval
4 25#include <fmt)XWT_CSR0_EWDT1_MASK="+co0x00000002  parameters ("clo/* E="dri bit 1athe wdt reset interval
  46#include <4e" name=4L27">  27#include &4t;
fmt)XWT_CSRX_EWDT2_MASK="+co0x00000001  parameters ("clo/* E="dri bit 2athe wdt reset interval
  29#include <<5 href50 " 5"L30">  50#include <fmt)XWT_MAX_SELFTEST_LOOP_COUNT="+co0x00010000eset interval
5 30#include <fmt)XWT_TIMER_FAILED="+co  o  o  o  0xFFFFFFFFeset interval
5*   (C) Cof="in55nx_wdt.c#L21" id="L21" clasivers/watcme="L22">  22#ivers/watcme=="+co  o de=pr_fmt" class="sref">pr_og/of_xan>
( 5e="L25">5 25#include <  22#PFX="+cod id="L21" clasivers/watcme="L22">  22#ivers/watcme=="+code=pr_fmt" class="sref">pr_fmt( 5"L26">  56#include <5e" name=5L27">  27#include &5t;  22#x"sr s.h 528#i5clude <  22#resour/a="+co d id="L21" clasres"L22">  22#res="+cux/fs.h>5pti3
	  hlt;  29#include <<6 href60="+co  o  o void d id="L21" clas__iomem"L22">  22#__iomem="+co*d id="L21" clast.c#"L22">  22#t.c#="+cux/fs.h>5pti3
	  hlt;  60#include <#ua href d id="L21" clasnowayou="sref">fmt)nowayou=="+cux/fs.h>5pti3
	  hlt;#ua href d id="L21" clas"sr ="driver_Sf_xilii2#"sr ="driver="+cux/fs.h>5pti3
	  hlt;6 30#include <#ua href d id="L21" clasboot_status"L22">  22#toot_status="+cux/fs.h>5pti3
	  hlt;*   (C) C6f="in65 " 6tchdog/off_xilinx_wdt.c#L5" id="Lref="66treeas7  22#x"sr s.h  22#xs.h="+cux/fs.h>5pti3
	  hlt;  66#include <6e" name=6L27">  27#include &6t;#ua href d id="L21" clasx_wdou="sref">fmt)x_wdou=="+cux/fs.h>5pti3
	  hlt;#ua href d id="L21" clascontrol_status_reg_Sf_xilii2#control_status_reg="+cux/fs.h>5pti3
	  hlt;  29#include <<7 href70treeas7#u8="+co d id="L21" clasexpect_cloc#"L22">  22#expect_cloc#="+cux/fs.h>5pti3
	  hlt;  70#include <#u8="+co d id="L21" clasno_x_wdou="sref">fmt)no_x_wdou=="+cux/fs.h>5pti3
	  hlt;fmt)>5p_opx_="+cux/fs.h>5pti3
	  hlt;7 30#include <7tchdog/o7f_xilinx_wdt.c#L3" id="7of_xi74treeas7fmt)DEFINE_SPINLOCK>
fmt)spinof_x.c#L2ux/fs.h>5pti3
	  hlt;*   (C) C7f="in75 " 7tchdog/o7f_xilinx_wdt.c#L5" id="7ref="76treeas7fmt)x"sr as7r=>
 7"L6" classs="line" name="L6">   6f="in77 &qu{ot; 7e" name=7L27">  27#include &7t;fmt)spin_of_x.c#L(&href="drivers/wspinof_x"sref">fmt)spinof_x.c#L2ux/fs.h>5pti3
	  hlt; 8ame="L298>  29#include <<8 href80="+co  o  o  parameters ("clo/* Clerampr.h  80#include <#control_status_reg="+c = d id="L21" clasioreadl2_Sf_xilii2#ioreadl2>
  22#xs.h="+c.d id="L21" clast.c#"L22">  22#t.c#="+c +1" id="L21" clasXWT_TWCSR0_OFFSET"sref">fmt)XWT_TWCSR0_OFFSET="+c2ux/fs.h>5pti3
	  hlt;#control_status_reg="+c |=  href="drivers/wXWT_CSR0_WRS_MASK"sref">fmt)XWT_CSR0_WRS_MASK="+co|1" id="L21" clasXWT_CSR0_WDS_MASK"sref">fmt)XWT_CSR0_WDS_MASK="+c2ux/fs.h>5pti3
	  hlt;8 30#include <8tchdog/o8f_xilinx_wdt.c#L3" id="8of_xi84="+co  o  o d id="L21" clasiowritel2_Sf_xilii2#iowritel2>
fmt)XWT_CSR0_EWDT1_MASK="+c),ot; 8*   (C) C8f="in85="+co  o  o  o                      href="drivers/wxs.h"L22">  22#xs.h="+c.d id="L21" clast.c#"L22">  22#t.c#="+c +1" id="L21" clasXWT_TWCSR0_OFFSET"sref">fmt)XWT_TWCSR0_OFFSET="+c2ux/fs.h>5pti3
	  hlt; 8"L6" cla8ss="line" name="L6">   8f="in87="+co  o  o d id="L21" clasiowritel2_Sf_xilii2#iowritel2>
fmt)XWT_CSRX_EWDT2_MASK="+c, href="drivers/wxs.h"L22">  22#xs.h="+c.d id="L21" clast.c#"L22">  22#t.c#="+c +1" id="L21" clasXWT_TWCSR1_OFFSET"sref">fmt)XWT_TWCSR1_OFFSET="+c2ux/fs.h>5pti3
	  hlt;828#i8clude <fmt)spin_unof_x.c#L(&href="drivers/wspinof_x"sref">fmt)spinof_x.c#L2ux/fs.h>5pti3
	  hlt;  29#include <<9 href90="+c}x/fs.h>5pti3
	  hlt;  90#include <  20*/9p" i" id92_Sf_xiliine" name="L299gt;
<92treeas7fmt)x"sr asop>
 9e="L30">9 30#include <9tchdog/o9f_xilinx_wdt.c#L3" id="9of_xi94="+co  o  o d id="L21" classpin_of_x"sref">fmt)spin_of_x.c#L(&href="drivers/wspinof_x"sref">fmt)spinof_x.c#L2ux/fs.h>5pti3
	  hlt;*   (C) C9f="in95 " 9tchdog/o9f_xilinx_wdt.c#L5" id="9ref="96="+co  o  o d id="L21" clascontrol_status_reg_Sf_xilii2#control_status_reg="+c = d id="L21" clasioreadl2_Sf_xilii2#ioreadl2>
  22#xs.h="+c.d id="L21" clast.c#"L22">  22#t.c#="+c +1" id="L21" clasXWT_TWCSR0_OFFSET"sref">fmt)XWT_TWCSR0_OFFSET="+c2ux/fs.h>5pti3
	  hlt;   9f="in97 " 9tchdog/o9f_xilinx_wdt.c#L7" id="9t;#iowritel2>
fmt)XWT_CSR0_EWDT1_MASK="+c),ot; 9a>*   Thisde/li99="+co  o  o  o                      href="drivers/wxs.h"L22">  22#xs.h="+c.d id="L21" clast.c#"L22">  22#t.c#="+c +1" id="L21" clasXWT_TWCSR0_OFFSET"sref">fmt)XWT_TWCSR0_OFFSET="+c2ux/fs.h>5pti3
	  hlt;*   modif hreif  " 10a>*   as pu01hreif1="+co  o  o d id="L21" clasiowritel2_Sf_xilii2#iowritel2>
  22#xs.h="+c.d id="L21" clast.c#"L22">  22#t.c#="+c +1" id="L21" clasXWT_TWCSR1_OFFSET"sref">fmt)XWT_TWCSR1_OFFSET="+c2ux/fs.h>5pti3
	  hlt;*   202hreif2 " 10og/of_xil0inx_wdt.c#L12" id="L12" 03hreif3="+co  o  o d id="L21" classpin_unof_x"sref">fmt)spin_unof_x.c#L(&href="drivers/wspinof_x"sref">fmt)spinof_x.c#L2ux/fs.h>5pti3
	  hlt;  13fmt)pr_info>
pr_Ssopped!\nt(>5pti3
	  hlt;*      05hreif5="+c}x/fs.h>5pti3
	  hlt;10  16<0span class="comment">*  07hreif7treeas7fmt)x"sr keepala h>
 10omment">*0               - If the 08hreif8 &qu{ot; 10">*      0           "xlnx,wd09hreif9="+co  o  o d id="L21" classpin_of_x"sref">fmt)spin_of_x.c#L(&href="drivers/wspinof_x"sref">fmt)spinof_x.c#L2ux/fs.h>5pti3
	  hlt;*   modiify i11  " 1/a>*   as pub1hrei11="+co  o  o d id="L21" clascontrol_status_reg_Sf_xilii2#control_status_reg="+c = d id="L21" clasioreadl2_Sf_xilii2#ioreadl2>
  22#xs.h="+c.d id="L21" clast.c#"L22">  22#t.c#="+c +1" id="L21" clasXWT_TWCSR0_OFFSET"sref">fmt)XWT_TWCSR0_OFFSET="+c2ux/fs.h>5pti3
	  hlt;*   22 of 112="+co  o  o d id="L21" clascontrol_status_reg_Sf_xilii2#control_status_reg="+c |=  href="drivers/wXWT_CSR0_WRS_MASK"sref">fmt)XWT_CSR0_WRS_MASK="+co|1" id="L21" clasXWT_CSR0_WDS_MASK"sref">fmt)XWT_CSR0_WDS_MASK="+c2ux/fs.h>5pti3
	  hlt;#iowritel2>
#control_status_reg="+c, href="drivers/wxs.h"L22">  22#xs.h="+c.d id="L21" clast.c#"L22">  22#t.c#="+c +1" id="L21" clasXWT_TWCSR0_OFFSET"sref">fmt)XWT_TWCSR0_OFFSET="+c2ux/fs.h>5pti3
	  hlt;  13 14*        30-115="+co  o  o d id="L21" classpin_unof_x"sref">fmt)spin_unof_x.c#L(&href="drivers/wspinof_x"sref">fmt)spinof_x.c#L2ux/fs.h>5pti3
	  hlt;  16<*       117 " 1comment">**               - If the  devi118treeas7  22#x"sr get_status.c#L(into*d id="L21" classtatus"L22">  22#status.c#L)ot; 1t">*                  "xlnx,wddt-in1erval&{ot; 1e" name="1L19">  19  22#new_status="+cux/fs.h>5pti3
	  hlt;  20*/1
<1a href="drivers/watchdog1/of_x122="+co  o  o d id="L21" classpin_of_x"sref">fmt)spin_of_x.c#L(&href="drivers/wspinof_x"sref">fmt)spinof_x.c#L2ux/fs.h>5pti3
	  hlt;&quo1;: " 1fmt
<1a href="drivers/watchdog1/of_x124="+co  o  o d id="L21" clascontrol_status_reg_Sf_xilii2#control_status_reg="+c = d id="L21" clasioreadl2_Sf_xilii2#ioreadl2>
  22#xs.h="+c.d id="L21" clast.c#"L22">  22#t.c#="+c +1" id="L21" clasXWT_TWCSR0_OFFSET"sref">fmt)XWT_TWCSR0_OFFSET="+c2ux/fs.h>5pti3
	  hlt;  124#include <  22#new_status="+c =   href="drivers/wcontrol_status_reg_Sf_xilii2#control_status_reg="+c &x/fs.h>5pti3
	  hlt;fmt)XWT_CSR0_WRS_MASK="+co|1" id="L21" clasXWT_CSR0_WDS_MASK"sref">fmt)XWT_CSR0_WDS_MASK="+c2) != 02ux/fs.h>5pti3
	  hlt;fmt)spin_unof_x.c#L(&href="drivers/wspinof_x"sref">fmt)spinof_x.c#L2ux/fs.h>5pti3
	  hlt;  27#include &1lt; 1 28#i1nclude <  22#status.c#L = 0ux/fs.h>5pti3
	  hlt;  29#include <<1a hre130="+co  o  o if  href="drivers/wnew_status"L22">  22#new_status="+c & 1)ot; 1="L30">  130#include <  22#status.c#L |= d id="L21" clasWDIOF_CARDRESET"sref">fmt)WDIOF_CARDRESET="+cux/fs.h>5pti3
	  hlt;1  30#include < 1lmt
<13 href="drivers/watchdog13of_x134treeas7#ua href d id="L21" clasx"sr aelftes="sref">fmt)x"sr aelftes=>
 1l"L24">  134#include <1le="L25">13 25#include <#i="+cux/fs.h>5pti3
	  hlt;#ua href d id="L21" clasx_wdr_
    1_Sf_xilii2#x_wdr_
    1="+cux/fs.h>5pti3
	  hlt;  27#include &13t;#ua href d id="L21" clasx_wdr_
    2_Sf_xilii2#x_wdr_
    2="+cux/fs.h>5pti3
	  hlt; 14ame="L2914>  29#include <<14 hre140="+co  o  o d id="L21" classpin_of_x"sref">fmt)spin_of_x.c#L(&href="drivers/wspinof_x"sref">fmt)spinof_x.c#L2ux/fs.h>5pti3
	  hlt;  140#include <  20*/14p" i" id142_Sf_xiliine" name="L2914gt;
142="+co  o  o d id="L21" clasx_wdr_
    1_Sf_xilii2#x_wdr_
    1="+c = d id="L21" clasioreadl2_Sf_xilii2#ioreadl2>
  22#xs.h="+c.d id="L21" clast.c#"L22">  22#t.c#="+c +1" id="L21" clasXWT_TBR_OFFSET"sref">fmt)XWT_TBR_OFFSET="+c2ux/fs.h>5pti3
	  hlt;14 30#include <#x_wdr_
    2="+c = d id="L21" clasioreadl2_Sf_xilii2#ioreadl2>
  22#xs.h="+c.d id="L21" clast.c#"L22">  22#t.c#="+c +1" id="L21" clasXWT_TBR_OFFSET"sref">fmt)XWT_TBR_OFFSET="+c2ux/fs.h>5pti3
	  hlt;  13 14"L24">  144#include <>5pti3
	  hlt;14 25#include <fmt)XWT_MAX_SELFTEST_LOOP_COUNT="+c) &&x/fs.h>5pti3
	  hlt;  146#include <#x_wdr_
    1="+c));od id="L21" clasi_Sf_xilii2#i="+c++)o{ot; 14e" name=14L27">  27#include &14t;#x_wdr_
    2="+c = d id="L21" clasioreadl2_Sf_xilii2#ioreadl2>
  22#xs.h="+c.d id="L21" clast.c#"L22">  22#t.c#="+c +1" id="L21" clasXWT_TBR_OFFSET"sref">fmt)XWT_TBR_OFFSET="+c2ux/fs.h>5pti3
	  hlt;15"L30">  150#include <fmt)spin_unof_x.c#L(&href="drivers/wspinof_x"sref">fmt)spinof_x.c#L2ux/fs.h>5pti3
	  hlt;15e="L30">15 30#include <#x_wdr_
    1="+c)ot; 153" class=5f_xilinx_wdt.c#L3" id="15of_x154="+co  o  o         x_wdt.c~" id="L21" clasXWT_TIMER_FAILED"sref">fmt)XWT_TIMER_FAILED="+cux/fs.h>5pti3
	  hlt;  1aass="comment">*   (C) C1of="i155="+co  o  o elsex/fs.h>5pti3
	  hlt;15 25#include <fmt)XWT_TIMER_FAILED="+cux/fs.h>5pti3
	  hlt;  156#include <  27#include &15t; 1528#i15clude <fmt)x"sr opx_.c#L(assuctod id="L21" clasincla_Sf_xilii2#incla="+co*d id="L21" clasincla_Sf_xilii2#incla="+c, assuctod id="L21" class="h_Sf_xilii2#s="h="+co*d id="L21" class="h_Sf_xilii2#s="h="+c)ot; 16ame="L2916>  29#include <<16 hre160="+c{ot; 16"L30">  160#include <fmt)xest_and_set_bi=.c#L(0, &href="drivers/w>5p_opx_prref">fmt)>5p_opx_="+c))ot; 16e="L30">16 30#include <fmt)EBUSY="+cux/fs.h>5pti3
	  hlt;16*   (C) C16f="i165="+co  o  o dparameters ("clo/* Make suri
  22#xs.h="+c.d id="L21" clasnowayou="sref">fmt)nowayou=="+c)ot; 16"L26">  166#include <fmt)__ the
fmt)THIS >5pti3
	  hlt;  27#include &16t; 1628#i16clude <fmt)x"sr as7r=>
>5pti3
	  hlt;  29#include <<17 hre170="+co  o  o d id="L21" claspr_info"sref">fmt)pr_info>
pr_Ss7r=ed...\nt(>5pti3
	  hlt;  170#include <  20*/17p" i" id172_Sf_xiliine" name="L2917gt;
172="+co  o  o x_wdt.c" id="L21" clasnonseek"dri_opx_prref">fmt)nonseek"dri_opx_>
17 30#include <>5pti3
	  hlt;17*   (C) C17f="i175 &quas7  22#x"sr rele.c#.c#L(assuctod id="L21" clasincla_Sf_xilii2#incla="+co*d id="L21" clasincla_Sf_xilii2#incla="+c, assuctod id="L21" class="h_Sf_xilii2#s="h="+co*d id="L21" class="h_Sf_xilii2#s="h="+c)ot; 17tchdog/o17f_xilinx_wdt.c#L5" id="17ref=176tree{ot; 17"L6" cla1sss="line" name="L6">   16f="i177="+co  o  o if  href="drivers/wexpect_cloc#"L22">  22#expect_cloc#="+c == 42)o{ot; 17e" name=17L27">  27#include &17t;fmt)x"sr asop>
>5pti3
	  hlt;18ame="L2918>  29#include <<18 hre180="+co  o  o o  o  o d id="L21" claspr_cri="sref">fmt)pr_cri=>
pr_Unexpected cloc#, noefstopp="sann>
(>5pti3
	  hlt;  180#include <fmt)x"sr keepala h>
>5pti3
	  hlt;>5pti3
	  hlt;18 30#include < 18tchdog/o18f_xilinx_wdt.c#L3" id="18of_x184="+co  o  o d id="L21" clascle.r_bi="sref">fmt)cle.r_bi=.c#L(0, &href="drivers/w>5p_opx_prref">fmt)>5p_opx_="+c)ux/fs.h>5pti3
	  hlt;*   (C) C18f="i185="+co  o  o d id="L21" clasexpect_cloc#"L22">  22#expect_cloc#="+c = 0ux/fs.h>5pti3
	  hlt;>5pti3
	  hlt;   18f="i187 &qu}x/fs.h>5pti3
	  hlt;1828#i18clude <  29#include <<19 hre19nt">*                 know  d the dx"sr write:d5e17ff556c55dfe343aeac16_3/0">  190#include <  15*9e="L30">19 30#include <  12< d the d@count: countn; ebytes="="line" name="L15">  15*9tchdog/o19f_xilinx_wdt.c#L3" id="19of_x19n class="comment">*       - d the d@ppos: po="dri  17*   (C) C19f="i19y-2011 Alejandro Cabrera &l 3d5e17ff556c55dfe343aeac16_3/0">   19f="i19         module will use CO d the dwrite ; edata pan>
do, as we
dodog/of_xt.c#L21contse  mean="sxilinx_wdt.c#L11" id="L11" class="line" name="L11">  9tchdog/o19f_xilinx_wdt.c#L7" id="19t;
*   Thi1sde/l199treeas7fmt)ssize_=href d id="L21" clasx"sr write"sref">fmt)x"sr write.c#L(assuctod id="L21" class="h_Sf_xilii2#s="h="+co*d id="L21" class="h_Sf_xilii2#s="h="+c, const char d id="L21" clas__useranref">fmt)__user="+co*d id="L21" clasbuf"L22">  22#tuf="+c,eset interval
*   mod2f hre200="+co  o  o o  o  o                                 href="drivers/wsize_="sref">fmt)size_=href d id="L21" claslx_prref">fmt)lx_="+c, d id="L21" clasloff_="sref">fmt)loff_=="+co*d id="L21" clasppos"sref">fmt)ppos="+c)ot; 20a>*   as p201hre2f1="+c{ot; 2011*   202hre202="+co  o  o if  href="drivers/wlx_prref">fmt)lx_="+c)o{ot; 20og/of_xi20inx_wdt.c#L12" id="L12"203hre203="+co  o  o         if  !href="drivers/wxs.h"L22">  22#xs.h="+c.d id="L21" clasnowayou="sref">fmt)nowayou=="+c)o{ot; 20mt
  13<204hre204="+co  o  o                 href="drivers/wsize_="sref">fmt)size_=href d id="L21" clasi_Sf_xilii2#i="+cux/fs.h>5pti3
	  hlt;*      0205hre2">fmt)lx_="+c, d id="L21" clasloff_="20#include <R0_WRS_MASK"sref">fmt)XWTref=always loaded...the wIalwa hritAnys rivep_opxagochd19a>*   Thi1sde/l199treeas72/o void d2id="L21" clasx"sr keepal2 h"sr20
    2_Sf_xilii2#x_wdr_
 oc#="+c = 0ux/fs.h>5pti3
	  hlt; <2 href="+code=fmt" class=2sref"2028#i18clude <  22#xs.h="+c.h>5pti3
	  hlt;20ogn> 14e" name=14L27">  27#include &14t; 21  href="drivers/wsize_="sref">fmto*d id="L21" clasbufcw>5p_opx_prre*      0205hre2">fmt)  o d id=2L21" clascontrol_status_2eg_Sf21p" i" id172_Sf_xiliine" name="L2917gt;
172="+co  2  o d id=2L21" clascontrol_status_2eg_Sf2xilii2#connnnnnnnnnnnnnnnnnnnnnnnn/span>   22#tuf="+22">d id="L21" class="h_cw>5p_opx_prre id="L21" claspporef="drivers/watchd20/a>14L30">16 30#include <#xs.h="+c.d iiiiiiiiiiiiiiiiiiiiiiiiicux/fs.h>5pti3
	 FAULpti3
	  hlt;*      0205hre2">fmt)  o       href="+code=fmt" class="2ref">21sref">fmt)size_=href d idnnnnnnnn/span> 
*      0205hre2">fmt) x_="+c, dL21" classpin_unof_x"sre2">fmt2/a>)spin_unof_________________________________oc#="+c = 0ux/fs.h>5pti3
	  hlt;*      0205hre2">fmt) ef=12" 03;5pti3
	  hlt;fmt)XWTog/o1ff_xilinx_wdt.c#L7" id="1Lt; 21
    2_Sf_xilii2#og/o1ff_xilinx_wdt.c#L7" id="1Lt; <2id="L21" clasx"sr get_st2tus"L21>fmt)x"sr asop>
>5p>5pti3
	  hlt; <2 href="+code=fmt" class=2sref"21nclude/15ame="L2915>  29#include <<15 hre150 "2  o intod2id="L21" clasnew_status"222"> 222#new_sta>)nonseek"dri_opx_>
20ognL2915>  29#include <<15 hre150 "2  o d id=220*/2  29#include <<15 hre150 "2  o d id=2L21" classpin_of_x"sref"2fmt15 30#include < 2fmtpr_Ss7r=ed...\nde <>>5pti3
	  hlt;  27#include &14t;#con)o{ot;   27#include &14t;)spin_unof_____________CARDRESET="+cux/fs.h*   mod2f hre200="+co  o  o      2           href="drivers2wXWT_2SR0_WRS_MASK"s)o{ot; fmt*   mod2f hre200="+co  o span> fmt2/a>)spin_unof_)o{ot; pr_fmt(*   mod2f hre200="+co  o /span> <2href="+code=fmt" class="2ref">2 28*   (C) C6f="in65 "  2222ame="L2914>  29#include <<14 hre140="+co  2  o if  h2ef="drivers/wnew_status"222"> 23ff556c55dfe343aeac16_3/0">  29#include <<19 hre19nt">*   2  o      2  *d id="L21" classtatus2L22">23ri
  190#include <&g2;5pti3
	  hlt;  190#include < 23ebytes="="line" name="L15">  15  190#include <  190#include <#i23

*9tchdog/o19f_xilinx_wdt.c#L3" id="19of_x19n class=2  o d id=2L21" clasul2_Sf_xilii2#ua 23n>
do, as we
dodog/of_xt.c#L21contsaccord  hlef="dri/aavailn>
#ua 23/span>
*   Thi1sde/l199treeas72/span> 23ize_=href d p_opx_="+cux/fs.hfmt)__us/a>)>5rele.c#.c#L(assuctosmdw>5p_opx_prremd>)__us/a>)>5p_opx_="+cux/fs.h*   as p201hre2f1="+c{ot;  o d id=2L21" classpin_of_x"sref"2fmt  160#include < 220*/24sref">fmtrele.c#.c#L(assuctoDIOF_CARDRESET"sref">fmt)WD cl6ass="comment">*   (C) C6f="in65 "15 30#include <#x_wdr_
  unme="">  160#include <24sref">fmt)size_=hd id="L21" class="h_Sfde <pr_Ss7r=ed...\nde <>>5pti3
	  hlt;  22#tuf="+c,eset interval
*   (C) C6f="in65 "#24a>)spin_unof_________rele.c#.c#L(assucto"L22">  22#tuf="+c,eset interval
*      0205hre2">fmt)  o      2    href="drivers/wi_Sf_2ilii22/a>#i="+c ypes}" clasx_wdr_
    argw>5p_opx_prruarga>*      0205hre2">fmt)  o d id=2           href="drivers2wx_wd24omment">**               - If the  devi118treeas72  o      2  d id="L21" clasx_wdr_
2   2_24ef d id="L21" clasx_wdr_
    argw>5p_opx_prruarga>   22#tuf="+c,eset inter)_="+cux/fs.h*      0205hre2">fmt) span> >5pti3
	  hlt;  29#include <<14 hre140="+co  2/span> 252#new_staswide pan>   27#include &14t;fmt2/a>)spin_unof_wa hrCARDRESET="+cux/fs.C_GETSUPPORpti3
	  hlt;)sp:me=14L27">  27#include &14t;25ilii2#connnnnnnnn>)nonseek"dri_opx_>
  22#tuf="+copy_toL22">d id="L21" class="h_ argw>5p_opx_prruarga>   27#include &14t;#xs.h="+c.d iiiiiiiiiiiiiiiiiiiiiiiiis.h>5pti3
	  hltd...tmt" class="srefd...e/18)) ?.h>5pti3
	 FAULpti3
	  hlt; :hdog/o18f_xilinx_wdt.c#L5" id="18ref=186="+co  2  o      2  x_wdt.c~" id="L21" cla2XWT_T25*   (C) C17f="i175 &quas72  o elsex2fs.h>5pti3
	  hlt2)sp:me=14L27">  27#include &14t;fmt)XWT_TIMER_FAILED="+cpua>22">  22#tuf="+pua>22">d id="L21" class="h_">  22#t.c#="+c +1" id="L21" clasXWT_TBRood="L21" classtatus"L22"Rood="L21"  id="L21" clasppo argw>5p_opx_prruarga> &g2;5pti3
	  hlt;**               - If the  devi118treeas72/span> 258>)spin_unof_wa hrCARDRESET="+cux/fs.C_GETSTATUSti3
	  hlt;)sp:me=14L27">  27#include &14t; fm25wxs.h"L22">  22#x_="+cux/fs.h  22#status.c#L.c#L2ux/fs.h>5+code=fmt" class="sref">1t">*  " id182_Sf_xiliine" name="L2918gt;
182="+co  2 <2 href="+code=fmt" class=2sref"26  href="drivers/wsize>)XWT_TIMER_FAILED="+cpua>22">  22#tuf="+pua>22">d id="L21" class="h_5+code=fmt" class="sref">1t">*  id="L21" clasppo argw>5p_opx_prruarga> fmt)xwa hrCARDRESET="+cux/fs.C_KEEPALIVEti3
	  hlt;)sp:me=14L27">  27#include &14t;fmt)EBUSY="+a )ux/fs.h>5p>5pti3
	  hlt; 26ER_FAILED"sref">fmt)XWT_dog/o18f_xilinx_wdt.c#L5" id="18ref=186="+co  2  o dpara2eters ("clo/* Make 2uri 222)sp:me=14L27">  27#include &14t;&g2  d id="L21" clas__ the<2_fmt)__ the*   as p201hre2f1="+c{ot;/span> 26>fmt)x"sr asop>
fmt)XWT_h>5pti3
	 NOTTt;*      0205hre2">fmt)  o d id=2L21" clasx"sr as7r="sref2>fmt<26wxs.h"L22">  22#x="L25">15 25#include <f2t27  href="drivers/wsize_="sref">)XWT_TIMER_FAILED="+cpua>22">  22#tuf="+pua>22">d id="L21" class="h_/wat="+code=fmt" class/wat="+a>  220*/27p" i" id172_Sf_xiliine" name="L2917gt;
172="+co  2  o x_wdt2c" id="L21" clasnonseek"2ri_op2_prref">fmt  27#include &14t;&g2;5pti3
	  hlt;fmt)EBUSY="+cux/fs.h>5pti3
	 NOTTt;*      0205hre2">fmt)/span> 27ER_FAILED"sre"L2915>  29#include <<15 hre150 "2/o intod 2d="L21" clasx"sr rele.c#2L22">270         0      - If "xlnx,wd06hreif6 "2 <2 href="+code=fmt" class=2sref"27  16<0span class="comment">*  07hreif7treeas72  o if  h2ef="drivers/wexpect_cloc2"L22"27">fmt)x"er="+cd id="L21" class="h_Sft  22fop e/18tchame=14L27">  27#include &14t;fmt)x"sr)o{ot;   22#tuf="+own">fmt)x"    1="+c)ot;>5pti3
	  hlt;  27#include &14t;    27#include &14t;)pr_cri)o{ot;   27#include &14t; 2  d id="L21" clasx"sr ke2pala 2"sref">fmt)o{ot; #incla="+;me=14L27">  27#include &14t;>5pti3
	  hlt;)o{ot; #include <) x_="+c, dcopy_toL22">  2/a>>5pti3
	  hlt;  146_
1" clasincla_Sf_xilii2<2)clude/15p2(C) C18f=2i185="+co  o  o d id="L22" cla28ot;clo/* Make 2uri&gpect_cl2"27">fmt)x"er="+cmiscac16_3va hr14f="  "svmiscac16_3s="sreft&gmiscac1va hr14f="  "sva hr1miscac1asstatus"L22">  22fop e/18tchame=14L27">  27#incl">   18f=2i187 &qu}x/fs.h>52ti3
	28pin_unof_x"sre2">fmt2/a>)spinminosr)o{ot; minoslass="h_Sf_xilii2s="h="+co/class="srMINORSET="+cux/fmt" class="srMINORco ) x_="+c, dcopy_toL22">  2/a>>5pti3
	  hlde &14t; fmt  5pti3
	  hlt;/a>) x_="+c, dcopy_toL22">  2/a>>5pti3
	  hlde &14t;   22#status.c=f>>5pti3
	  hlt;) x_="+c, dcopy_toL22">  2/a>>5pti3
	  h<<19 h2e19nt">*                2know 2d the x_prre_
1" clasincla_Sf_xilii2<2)clude/15p2*/27p" i" id172_Sf_xiliine" name="L2919gt2
19e License, or (at you2 opti2d the r rele.c#"L22">  22#x"__ac16nL(0, &href="d__ac16nL(s="sreft&gprobd="L21" clasincla_Sf_probd3
	  hlt;  22#tuf="+c,esepac1va hr14f="  "svpac1asstt" class="_/wat="+a>*  t;  12<2d the s"L22">  22fop e/18tchame=14L27">  27#incl id="19of2x19n class="comment">*  2    -29e=fmt" class=c#"L22">  22#x"rnnn/span> *  (C) C19f=2i19y-2011 Alejandro Cabr2ra &l29xpect_cloc#"L22">  22#exd="L21" clasx_wdr_
    2_S#tuf="+c,esetmptsr)o{ot; tmptsasbufcw>5p_opx_prre*  (id="18re2=19le-once" wasn t fo296pect_cloc#"L22">  22#exd="L21" clasx_wdr_
    2_S#tuf="+c,esepfreqva hr14f="  "svpfreqasbufcw>5p_opx_prre*  (>   18f=2i19         module will 2se CO29hlt;**               - I id="19t;2a19 tree parameters (&qu2t;clo291" clasx_wdr_
2   2_24ef d i  29#include3  mod2f h3e200="+co  o  o o  o  o 3     30r_info"sref">fmt)pr_info>freqva hr14f="  "svpfreqasbu S_MASK"sref">fmt#tuf="+c,eset>  " clprofmt)o{ot;   " clprofmt)o 22#tuf="+pua>22pac1va hr14f="  "svpac1asst->ref">fmt)>c1va hr14f="  "svh_">  22#t.c#="+c +>   assuctod id="L21" >   assasst/a>) x_="+c, dcopy_toL22">  2/a>>5pti3
	  3 as p201h3e2f1="+c{ot;  *   202h3e202="+co  o  o if  href3"driv30_wdr_
    1_Sf2xilii24e="L30">15 30#include &3"L12"203h3e203="+co  o  o         3f  !h3ef="drivers/wxref">fmt)__ the>freqva hr14f="  "svpfreqasbu S_xilii2s="h="+co/NULLuctod id="L21" NULLn>   22fop e/18tchame=14L27">  27#inc3  13<204h3e204="+co  o  o         3     3 href="drivers/wsize_=>fmt)__ the>r_war 1="+c)ot;r_war  22  180#include <3    0205h3e2">fmt)lx_="+c, d i3="L2130rs/wi_Sf_xilii2#2
2   2_24ef d i  180#include <3 6  0205h3e19le-once" wasn!if3="3co  ef="includr rele.c#2L22">270         0      - If "3  Thi1sde3l199treeas72/o void d2id3"L21"30hlt;**               - 3 id="18re3=186="+co  2 <2 h3ef="+301" clasx_wdr_
2   2_24ef d irnnn/span>  resour_3va hr14f="  "sv   address2"> resour_3 22#tuf="+pua>22pac1va hr14f="  "svpac1asst->ref">fmt)>c1va hr14f="  "svh_">  22#t.c#="+c +>   assuctod id="L21" >   assasst/ _opx_prref">fmt)>">d id="L21" class="h_">  22#t.c#="+c +reso{ot;1t">*  " id182_Sf_xiliine" nam3"incl18de3l18rval&quo2  o d id=2L23" cla3spin_of_x"srefref">fmt)__ thernnn/span>   22fop e/18tchame=14L27">  27#inc3ude &14t;3a148="+co  2/span> 2>fmt)__ the>r_war 1="+c)ot;r_war  22  180#include <3    0205h3e2">fmt)  o d id=2L23" cla311" clasx"sr keepala h"drivers/wsize_="sref"rnnn/span> * 3="L2917gt3
172="+co  2  o d id=2L23" cla31pti3
	  hlt;18 30#include &3t;18tchdog/o18f_xilinx_wdt.c#L33    0205h3e2">fmt)  o       hr3f="+c3de=fmt" class=/a>#tuf="+c,esetmptsr)o{ot; tmptsasbu S_MASK"sref">fmt#tuf="+c,eset>  " clprofmt)o{ot;   " clprofmt)o 22#tuf="+pua>22pac1va hr14f="  "svpac1asst->ref">fmt)>c1va hr14f="  "svh_">  22#t.c#="+c +>   assuctod id="L21" >   assasst/a>) x_="+sref">18tchdog/o18f_xilinx_wdt.c#L33    0205h3e2">fmt) x_="+c, dL23" cla3spin_unof_x"sre2">fmt2/a>)spin_unof____________xpected cloc#, noefstopp="xlnx,dt.-eks aval5pti3
	  hlt;/>fmt)pr_infoNULLuctod id="L21" NULLn> fmt) ef=12" 03;53ti3
	31s/wxs.h"L22">  22#xs.h="+c.dtmptsr)o{ot; tmptsasbu S_xilii2s="h="+co/NULLuctod id="L21" NULLn>   22fop e/18tchame=14L27">  27#inc3 id="1Lt;3a188 "2/span> 2>fmt)__ the>r_war 1="+c)ot;r_war  22fla h sigtreegt;5pti3
	  hlt;  180#include <3 id="18re3a188 "2//span> <2id3"L21"3clasx"sr get_st2tus"L21>fmt)x"sr   180#include <3="L2918gt3
182="+co  2 <2 h3ef="+31n> 18ame="L2918>  29#include3<<15 h3e150 "2  o intod2id3"L21"32e=fmt" class="2ref">2>fmt)__ the">d id="L21" class="h_">  22#t.c#="+c + hr14ks avali)o{ot; #tuf="+c,esetmptsr)o{ot; tmptsasbufcw>5p_opx_prre* 3<<15 h3e150 "2  o d id=2203/a>18 30#include &3<<15 h3e150 "2  o d id=2L23" cla3spin_of_x"sref"2fmt15 30#include &3t; #x_wmptsr)o{ot; tmptsasbu S_MASK"sref">fmt#tuf="+c,eset>  " clprofmt)o{ot;   " clprofmt)o 22#tuf="+pua>22pac1va hr14f="  "svpac1asst->ref">fmt)>c1va hr14f="  "svh_">  22#t.c#="+c +>   assuctod id="L21" >   assasst/a>) x_="+sref">18tchdog/o18f_xilinx_wdt.c#L33ude &14t;3a148="+co  2  o d id=2L23" cla32e=fmt" class="2ref">21sref">fmt)s_________xpected cloc#, noefstopp="xlnx,dt.-encord-once5pti3
	  hlt;/>fmt)pr_infoNULLuctod id="L21" NULLn> #xs.h="+c.dtmptsr)o{ot; tmptsasbu S_xilii2s="h="+co/NULLuctod id="L21" NULLn>   22fop e/18tchame=14L27">  27#inc3  mod2f h3e200="+co  o  o      2  3     32 id="L21" clas2WT_TI2>fmt)__ the>r_war 1="+c)ot;r_war  22fla h sigtreegt;5pti3
	  hlt;  180#include <3  mod2f h3e200="+co  o span> 2>fmt)__ the id="L21" clasnowayou="sref">fmt)nowayou=="+c)o{ot; * 3&id="18re3e200="+co  o /span> <2hr3f="+c328ti3
	  hlt;18 30#include &3&"L2918gt35 "  2222ame="L2914>  29#include3<<14 h3e140="+co  2  o if  h2ef3"driv3rs/wnew_status"222"> 23ff556c55dfe343aeac16_3/0">  29#include3<<19 h3e19nt">*   2  o      2  3d id=3L21" classtatus2L22">23ri*9tchdog/o19f_xilinx_wdt.c#L33&g2;53ti3
	3 hlt;*9tchdog/o19f_xilinx_wdt.c#L33<; 23ebytes=*3#xs.h="+c.d* 3#2
2   2_24ef d i">d id="L21" class="h_/wat="+codef_x2 (u((1<<>fmt)__ the">d id="L21" class="h_">  22#t.c#="+c + hr14ks avali)o{ot; #tuf="+c,esepfreqva hr14f="  "svpfreqasbu  180#include <3 id="19re3=19le-once&2  o intod2id3"L21"33de=fmt" class=2sref"27  16<0span class="comme3 id="19of3x19n class=2  o d id=2L23" cla33s/wexpect_cloc#"L2#xs.h="+c.drequest_mem_reg/span> #tuf="+pua>22">d id="L21" class="h_">  22#t.c#="+c +reso{ot;
&gi3
	  hlt/a>) x_="+sref">18tchdog/o18f_xilinx_wdt.c#L33 id="19t;3a19 tree pa2  o d id=2L23" cla33e=fmt" class="2ref">26>fmt#tuf="+pua>22">d id="L21" class="h_">  22#t.c#="+c +reso{ot; #tuf="+pua>22">d id="L21" class="h_">  22#t.c#="+c +reso{ot;
&gi3
	  hlt + 1/>fmt)pr_infotch____CARDRESET="+cux/fmt" class="sref">pr_f)aus"L22">  22fop e/18tchame=14L27">  27#inc3  Thi1sde3l199treeas72/span> fm25wxs.h"L22">  2rnnn/span> )EBUSY="+cuxXIOnn/span> * 3 as p201h3e2f1="+c{ot;  o d id=2L23" cla34e=fmt" class="2ref">2>fmt)__ the>r_err1="+c)ot;r_err 22  180#include <3 2203/a>* 3 a hr19f=35 "18 30#include &3t;18tchdog/o18f_xilinx_wdt.c#L33#tuf="+c,ese">d id="L21" class="h_">  22#t.c#="+c +1 id="L21" clasinclba3
	  hlt;#t.c#="+c +iorema )ux/fs.h>iorema  22#tuf="+pua>22">d id="L21" class="h_">  22#t.c#="+c +reso{ot;
&gi3
	  hlt/aa>#tuf="+pua>22">d id="L21" class="h_">  22#t.c#="+c +reso{ot; #tuf="+pua>22">d id="L21" class="h_">  22#t.c#="+c +reso{ot;
&gi3
	  hlt + 1  180#include <3#xs.h="+c.d">d id="L21" class="h_">  22#t.c#="+c +1 id="L21" clasinclba3
	  hlt_xilii2s="h="+co/NULLuctod id="L21" NULLn>   22fop e/18tchame=14L27">  27#inc3    0205h3e2">fmt)  o      2  3 href34 id="L21" clas2WT_TI2>fmt)__ thernnn/span> )EBUSY="+cuxOMEMnn/span> * 3 id="19of3e2">fmt)  o d id=2  3     34e=fmt" class="2ref">2>fmt)__ the>r_err1="+c)ot;r_err 22  180#include <32goto________________xilii2<_memo{ot;* 3  Thi1sde3e2">fmt) span> >34de=fmt" class=2sref"21nclude/15ame="L2915>  29#include3<<14 h3e140="+co  2/span>    180#include <3ude &14t;3a148="+co  2  o d id=2hr3f="+c3de=fmt" class=ref">fmt)__ thernnn/span>     22fop e/18tchame=14L27">  27#inc3ude &14t;3a148="+co  2  o d id=2ef3"driv3rs/wx_wdr_
    2_Sf_x2>fmt)__ the>r_err1="+c)ot;r_err 22  180#include <3 id="18re3=186="+co  2  o      2  3_wdt.35e=fmt" class="2ref">2goto________________unma _ilass="h_Sfde <unma _ilasbufcw>5p_opx_prre* 3(C) C17f=3i175 &quas72  o elsex2fs3h3gt;5pti3
	  hl=2sref"21nclude/15ame="L2915>  29#include3&   0205h3a148="+co  2  o      2  3_wdt.35de=fmt" class=2sref"27  16<0span class="comme3="L2918gt3
182="+co  2s.h&g2;53ti3
	357in_unof_x"sr
2   2_24ef d i2#x_="+cux/fs.h  22#status.c">d id="L21" class="h_">  22#t.c#="+c +1" id="L21" clasXWT_TBRood="L21" classtat  180#include <3 id="19t;3i118treeas72/span> #i18clude <  misc_reg/st"sus"L22">  22#status.c"f>&gmiscac1va hr14f="  "sva hr1miscac1asst  180#include <3="L2918gt3
182="+co  2 <2 h3ef="+3ode=fmt" classref">fmt)__ thernnn/span>   22fop e/18tchame=14L27">  27#inc3="L2918gt3
182="+co  2  o dpara2et3rs (&361" clasx"sr keepala h"sref">fmt)>r_err1="+c)ot;r_err 22) x_="+sref">18tchdog/o18f_xilinx_wdt.c#L33="L2917gt3
172="+co  2  o if  h2ef3"driv3rs/wxest_and_ssx"sr keepala h"sref">fmt)"f>&gmiscac1va hr14f="  "sva hr1miscac1asste2">fmt2/a>)spinminosr)o{ot; minoslass/aa>#tuf="+pua>22rnnn/span>   180#include <3=de &14t;3a148="+co  2  o      2  3_wdt.3-href="drivers/2EBUSY2goto________________unma _ilass="h_Sfde <unma _ilasbufcw>5p_opx_prre* 3="L2918gt3
182="+co  2/span> 27ER_FAILED"sre"L2915>  29#include3 id="18re3=186="+co  2  o dpara2et3rs (&3uot;clo/* Make 2uri  22#xs.h="+c.d* 3ude &14t;3a148="+co  2 .h&g2  3 id="321" clas__ the<2_fmt)>r_" class="h_Sfde <>r_" cl 22) x_="+sref">18tchdog/o18f_xilinx_wdt.c#L33=id="19t;3e2f1="+c{ot;/span> 26>fmtfmt)__ the id="L21" clasnowayou="sref">fmt)nowayou=="+c)o{ot;   180#include <3=de &14t;3e2">fmt)  o d id=2L23" cla3x"sr as7r="sre6wxs.h"L22">  22#x="L25">15 25#include &3t;f2t2"sref">fmt)>r_" class="h_Sfde <>r_" cl 22) x_="+sref">18tchdog/o18f_xilinx_wdt.c#L33="L2918gt3
182="+co  2e="L20"> 2203/a>d id="L21" class="h_/wat="+code/aa>#tuf="+pua>22">d id="L21" class="h_">  22#t.c#="+c +u=="+c)o{ot;   180#include <3="L2917gt3
172="+co  2  o x_wdt2c"3id="L37pin_of_x"sref"2fmt15 30#include &3ude &14t;3a148="+co  2s.h&g2;53ti3
	37_wdr_
    2_Sf_xilii2#x__wdr_
 oc#="+c = 0ux/fs.h>5pti3
	  hlt;fmt)/span> #tuf="+c,eseclear_bL(0, &href="dclear_bL( 22fmt)>lude/1"    1="+c)ot;  180#include <3=id="18re3e150 "2/o intod 2d=3L21" 37ot;clo/* Make 2uri <2 h3ef="+37s/wxs.h"L22">6ER_FAILED"sref">fmt)XWT_dog/o18f_xilinx_wdt.c#L53t">*  07h3eif7treeas72  o if  h2ef3"driv37hlt;**               - 3ude &14t;3a148="+co  2  o      2  3 id="321" cl_______________unma _ilass="h_Sfde <unma _ilasbu2_prref">fmt  27#inc3ude &14t;3a148="+co  2  o } els2o{3t;>iounma  22#tuf="+pua>22">d id="L21" class="h_">  22#t.c#="+c +1 id="L21" clasinclba3
	  haa href="include/18"L30">  180#include <3ude &14t;3a148="+co  2  o o  o 2o 3 id="321" cl_______________xilii2<_memo{ot;fmt  27#inc3ude &14t;3a148="+co  2 ="L20"> 2  3 id="38pin_unof_x"sr
2   2_24ef d irLlii2<_mem_reg/span> #tuf="+pua>22">d id="L21" class="h_">  22#t.c#="+c +reso{ot;
&gi3
	  hlt/aa>#tuf="+pua>22resour_3_iiiio{ot;  22#status.c">d id="L21" class="h_">  22#t.c#="+c +reso{ot;  180#include <3u"L2917gt3a148="+co  2  o x_wdt2h<3a>>35pti3
________________rr_id="L21" class="h__rr_id=asbu2_prref">fmt  27#inc3ude &14t;3ode=fm1ot; fmt)>lude/1"    1="+c)ot;_
fmt#x"__ac16nL(0, &exref="d__ac16nL(s="srefexre2clea/a>)"f>&gmiscac1va hremot;5p>5pti3
	  hremot;2=ioctl"+co*platform_ac16_3va hr14f="  "svplatform_ac16_3>  22#tuf="+c,esepac1va hr14="  "svh_">  22#t.c#=/wat="+a>* 3ude &14t;3a187 &qu}x3fs.h>52ti3
	28pin3unof_3"sre2"fop e/18tchame=14L27">  27#inc3="L2918gt3
188 "3  "sus"de{ot; misc_reg/st"sus"de{ot;#status.c"f>&gmiscac1va hr14f="  "sva hr1miscac1asst  180#include <3="L2918gt3
18rval&qu3t;) wasn'2 foun28n> 3a hre38pr
2   2_24ef d iiounma )ux/fs.h>iounma  22#tuf="+pua>22">d id="L21" class="h_">  22#t.c#="+c +1 id="L21" clasinclba3
	  haa href="include/18"L30">  180#include <3ude &14t;3a19nt">*  3             2know 2d th3 x_pr39">fmt)pr_info>freqva hr1_reg/span> #tuf="+pua>22">d id="L21" class="h_">  22#t.c#="+c +reso{ot;
&gi3
	  hlt/aa>#tuf="+pua>22resour_3_iiiio{ot;  22#status.c">d id="L21" class="h_">  22#t.c#="+c +reso{ot;  180#include <3u"L2917gt3a19="done"3id="b8/1c/fb32bc68729n c3ass="3omme2t">*/27p" i" id172_Sf_xiliine" name="L2919gt2319e Licen3e, or (at you2 opti2d th3 r re3922clear_bL( 22)XWT_dog/o18f_xilinx_wdt.c#L53t">*  07h3e19"line" 3ame="L12">  12<2d th3 s"L23">  22
*  2    -29e=f3t" cl39cla2XWT_T25*   (C) C17f="319y-2011 3lejandro Cabr2ra &l29xpe3t_clo39ss=2sref"23c16_3/0">16_3>  2 bin1contrivers/watchd19a>*3fmt)x"er="+cmiscac16_3vent#t_ihref=encocmd -aaent#t_ih2clea/a>)"f>&gmiscac"sreft)"f>&gmiscac1va hentmss=" "sva hr1miscac1asstentmss="2cle[] 22fop e/18tchame=14L27">  27#incl">   18f=2319       3 module will 2se CO29hlt318tchdog/o18f_xilinx_wdt.c#L33="L2918gt3
19 tree p3rameters (&qu2t;clo291" 3lasx_3dr_
2   2_24ef{}ref">18tchdog/o18f_xilinx_wdt.c#L33="L2918gt3
18rval&qu3>5pti3
	  a href_DEVICE_TABsp="+pua>22">d id="L21ofref=encocmd -aaenf="+pua>22">d id="L21"va hentmss=" "sva hr1miscac1asstentmss="2cleclude/18"L30">  180#include <3u"L2917gt342f1="+c{o4; */27p" i" id172_Sf_xiliine" name="L2919gt24202="+co 4o  o if  href3"driv30_wd4_
   4022"27">fmt)x"er="+cmiscac16_3v16_3>  22< id17 "svplatform_ac16_3>  22< id172clea/a>)"f>&gmiscac1va h< id17 "svplatform_ac1va h< id172s="h="fop e/18tchame=14L27">  27#incl">   18f=24203="+co 4o  o         3f  !h3ef="4river4/wxref">fmtfmt18tchdog/o18f_xilinx_wdt.c#L33="L2918gt34204="+co 4o  o         3     3 hre4="dri4ers/wsize_=>fm"+c +reso{ot;>5pti3remot;2>iounma  22<"srefexre_a="+pua>22">d id="L21"va hremot;5p>5pti3
	  hremot;218tchdog/o18f_xilinx_wdt.c#L33="L2918gt34254="+co 4oejandro Cabr2ra &l29xpe4i_Sf_4ilii2#2
2 "+c +reso{ot;  27#incl">   18f=24264="+co 4ouot; wasn t fo296pe4f="in40las2WT_TI2>fmt)__mt)x"sr)o{ot;   22#tuf=">fmt)x"    1="+c)ot;>5pti3
	  hlt;  27#include &14t;<4199treeas42/o void d2id3"L21"30hlt4fmt pr_f)aus"L22"> clude/16e" ;me=14L27">  27#include &14t;<4189treeas42ameters (&qu2t;clo291" 4lasx_40s="2ref">26>fmtfm"+c +>   assuctod imss="_t"driref=encocmd -aaentmss="_t"drituf=">fmt)x"    1="va hentmss=" "sva hr1miscac1asstentmss="2cleclude/16e" ;me=14L27">  27#include &14t;<4199treeas42/o href="dri2ers/w29pti4of_x"4refref">fmt18tchdog/o18f_xilinx_wdt.c#L33="L2918gt34148="+co 42/span> _
1" clasincla_Sf_xilii2<2)clude/15p2fmt*/27p" i" id172_Sf_xiliine" name="L2919gt24172="+co 42  o d id=2L23" cla31pti4
	  h41__________rr_id="L21module_16_3>  22< id17 "svplatform_acmodule_16_3>  22< id17="+pua>22">d id="L21"va h< id17 "svplatform_ac1va h< id172s="clude/18"L30">  180#include <3u"L2917gt34163="+co 42  o d id=2L23" cla31e=f4t" cl4ss="sref">18tchdog/o18f_xilinx_wdt.c#L33    0205h342">fmt____xilii2<_mema href_AUTH/fmt" class="srMIa href_AUTH/fed cloc#, noefstopp="/wat=" loadAlejandro Cabrera >)__aldaya@gmail."><t;  180#include <3 id="18re342">fmt>5pti3
	  a href_DESCRIPTIONed cloc#, noefstopp="/wat=" loadXlt3 i W47 frequ">  18t;  180#include <3 id="18re34264="+co 4) ef=12" 03;53ti3
	31s/w4s.h"L42">  2____xilii2<_mema href_LICENSpa>>5pti3
	  a href_LICENSped cloc#, noefstopp="/wat=" loadGPLt;  180#include <3 id="18re34299treeas42/span> 22">d id="L21NORSET="+cux/fmt" class="srMINORco ) x_="+cclude/18"L30">  180#include <3 id="18re34289treeas42//span> <2id3"L21"3clas4"sr g4t_st2t


<2foo/spa> ascioriginal LXR software bynterode/18"L30http://us"L22> ge.net/projects/lxpa>LXR ">lxp@id3ux.no.c#="
<2subfoo/spa> lxp.id3ux.no kindly hosnf"nbynde/18"L30http://www.redpill-id3pro.no">Redpill Ld3pro AS="+p,nprovider t" Ld3ux">fmtultcontand ="sreft#ta since 1995.