linux/drivers/video/cg3.c
<<
lue=v3./spa > v3./form > v3.a lue=v3 href="../linux+v3.7.3/drivers/video/cg3.c">lue=v3.img src="../.static/gfx/right.png" alt=">>">lu./spa >lu.spa class="lxr_search">lue=lue=v3.input typn> hidden" namn> navtarget" ption> ">lue=v3.input typn> text" namn> search" id> search">lue=v3.butt submit">Search v3./form > ./spa >lu.spa class="lxr_prefs" > v3.a href="+prefs?return=drivers/video/cg3.c"lue=v3 onclick="return ajax_prefs();">lue=v3Prefs> v3./a>lu./spa >e=v3 3./div >e=v3 3.form ac" ="ajax+*" method="post" onsubmit="return false;">lu.input typn> hidden" namn> ajax_lookup" id> ajax_lookup" ption> ">le=v3 3./form >le=v3 3.div class="headingbott
e=v3
e=v3 v3 3.div id> search_results" class="search_results"> v >e=v3 3./div > .div id> content">> .div id> file_contents"
30/ca/7dcafc099bf3c964cea4a286b01bffe89409_3/0" 
L1" class="line" namn>
L1">3 31./a>.spa  class="comment">/* cg3.c: CGTHREE framn buffer driver./spa  >
L2" class="line" namn>
L2">3 32./a>.spa  class="comment"> *./spa  >
L3" class="line" namn>
L3">3 33./a>.spa  class="comment"> * Copyright (C) 2003, 2006 David S. Miller (davem@davemloft.net)./spa  >
L4" class="line" namn>
L4">3 34./a>.spa  class="comment"> * Copyright (C) 1996,1998 Jakub Jelinek (jj@ultra.linux.cz)./spa  >
L5" class="line" namn>
L5">3 35./a>.spa  class="comment"> * Copyright (C) 1996 Miguel de Icaza (miguel@nuclecu.unam.mx)./spa  >
L6" class="line" namn>
L6">3 36./a>.spa  class="comment"> * Copyright (C) 1997 Eddie C. Dost (ecd@skynet.be)./spa  >
L7" class="line" namn>
L7">3 37./a>.spa  class="comment"> *./spa  >
L8" class="line" namn>
L8">3 38./a>.spa  class="comment"> * Driver layout based loosely 
L9" class="line" namn>
L9">3 39./a>.spa  class="comment"> */./spa  >
L10" class="line" namn>
L10">3 3.8.a >
L11" class="line" namn>
L11">3 11./a>#include <linux/module.h./a>>>
L12" class="line" namn>
L12">3 12./a>#include <linux/kernel.h./a>>>
L13" class="line" namn>
L13">3 13./a>#include <linux/errno.h./a>>>
L14" class="line" namn>
L14">3 14./a>#include <linux/string.h./a>>>
L15" class="line" namn>
L15">3 15./a>#include <linux/delay.h./a>>>
L16" class="line" namn>
L16">3 16./a>#include <linux/init.h./a>>>
L17" class="line" namn>
L17">3 17./a>#include <linux/fb.h./a>>>
L18" class="line" namn>
L18">3 18./a>#include <linux/mm.h./a>>>
L19" class="line" namn>
L19">3 19./a>#include <linux/of_device.h./a>>>
L20" class="line" namn>
L20">3 2.8.a >
L21" class="line" namn>
L21">3 21./a>#include <asm/io.h./a>>>
L22" class="line" namn>
L22">3 22./a>#include <asm/fbio.h./a>>>
L23" class="line" namn>
L23">3 238.a >
L24" class="line" namn>
L24">3 24./a>#include "sbuslib.h./a>">
L25" class="line" namn>
L25">3 258.a >
L26" class="line" namn>
L26">3 26./a>.spa  class="comment">/*./spa  >
L27" class="line" namn>
L27">3 27./a>.spa  class="comment"> * Local func"
	 s../spa  >
L28" class="line" namn>
L28">3 28./a>.spa  class="comment"> */./spa  >
L29" class="line" namn>
L29">3 298.a >
L30" class="line" namn>
L30">3 3.8.a static int3.a href="+code=cg3_setcolreg" class="sref">cg3_setcolreg8.a (unsigned, unsigned, unsigned, unsigned,>
L31" class="line" namn>
L31">3 31./a>                         unsigned, struct3.a href="+code=fb_info" class="sref">fb_info./a> *);>
L32" class="line" namn>
L32">3 328.a static int3.a href="+code=cg3_blank" class="sref">cg3_blank8.a (int, struct3.a href="+code=fb_info" class="sref">fb_info./a> *);>
L33" class="line" namn>
L33">3 338.a >
L34" class="line" namn>
L34">3 348.a static int3.a href="+code=cg3_mmap" class="sref">cg3_mmap8.a (struct3.a href="+code=fb_info" class="sref">fb_info./a> *, struct3.a href="+code=vm_area_struct" class="sref">vm_area_struct./a> *);>
L35" class="line" namn>
L35">3 358.a static int3.a href="+code=cg3_ioctl" class="sref">cg3_ioctl8.a (struct3.a href="+code=fb_info" class="sref">fb_info./a> *, unsigned int, unsigned long);>
L36" class="line" namn>
L36">3 368.a >
L37" class="line" namn>
L37">3 37./a>.spa  class="comment">/*./spa  >
L38" class="line" namn>
L38">3 38./a>.spa  class="comment"> *  Framn buffer opera"
	 s./spa  >
L39" class="line" namn>
L39">3 39./a>.spa  class="comment"> */./spa  >
L40" class="line" namn>
L40">3 4.8.a >
L41" class="line" namn>
L41">3 418.a static struct3.a href="+code=fb_ops" class="sref">fb_ops./a> .a href="+code=cg3_ops" class="sref">cg3_ops./a> = {>
L42" class="line" namn>
L42">3 42./a>        ..a href="+code=owner" class="sref">owner./a>                  = .a href="+code=THIS_MODULE" class="sref">THIS_MODULE./a>,>
L43" class="line" namn>
L43">3 43./a>        ..a href="+code=fb_setcolreg" class="sref">fb_setcolreg./a>           = .a href="+code=cg3_setcolreg" class="sref">cg3_setcolreg8.a ,>
L44" class="line" namn>
L44">3 44./a>        ..a href="+code=fb_blank" class="sref">fb_blank./a>               = .a href="+code=cg3_blank" class="sref">cg3_blank8.a ,>
L45" class="line" namn>
L45">3 45./a>        ..a href="+code=fb_fillrect" class="sref">fb_fillrect./a>            = .a href="+code=cfb_fillrect" class="sref">cfb_fillrect./a>,>
L46" class="line" namn>
L46">3 46./a>        ..a href="+code=fb_copyarea" class="sref">fb_copyarea./a>            = .a href="+code=cfb_copyarea" class="sref">cfb_copyarea./a>,>
L47" class="line" namn>
L47">3 47./a>        ..a href="+code=fb_imageblit" class="sref">fb_imageblit./a>           = .a href="+code=cfb_imageblit" class="sref">cfb_imageblit./a>,>
L48" class="line" namn>
L48">3 48./a>        ..a href="+code=fb_mmap" class="sref">fb_mmap./a>                = .a href="+code=cg3_mmap" class="sref">cg3_mmap8.a ,>
L49" class="line" namn>
L49">3 49./a>        ..a href="+code=fb_ioctl" class="sref">fb_ioctl./a>               = .a href="+code=cg3_ioctl" class="sref">cg3_ioctl8.a ,>
L50" class="line" namn>
L50">3 50./a>#ifdef .a href="+code=CONFIG_COMPAT" class="sref">CONFIG_COMPAT8.a >
L51" class="line" namn>
L51">3 51./a>        ..a href="+code=fb_compat_ioctl" class="sref">fb_compat_ioctl./a>        = .a href="+code=sbusfb_compat_ioctl" class="sref">sbusfb_compat_ioctl8.a ,>
L52" class="line" namn>
L52">3 52./a>#endif>
L53" class="line" namn>
L53">3 53./a>};>
L54" class="line" namn>
L54">3 548.a >
L55" class="line" namn>
L55">3 558.a >
L56" class="line" namn>
L56">3 56./a>.spa  class="comment">/* Control Register Constants */./spa  >
L57" class="line" namn>
L57">3 57./a>#define .a href="+code=CG3_CR_ENABLE_INTS" class="sref">CG3_CR_ENABLE_INTS./a>      0x80>
L58" class="line" namn>
L58">3 58./a>#define .a href="+code=CG3_CR_ENABLE_VIDEO" class="sref">CG3_CR_ENABLE_VIDEO./a>     0x40>
L59" class="line" namn>
L59">3 59./a>#define .a href="+code=CG3_CR_ENABLE_TIMING" class="sref">CG3_CR_ENABLE_TIMING./a>    0x20>
L60" class="line" namn>
L60">3 60./a>#define .a href="+code=CG3_CR_ENABLE_CURCMP" class="sref">CG3_CR_ENABLE_CURCMP./a>    0x10>
L61" class="line" namn>
L61">3 61./a>#define .a href="+code=CG3_CR_XTAL_MASK" class="sref">CG3_CR_XTAL_MASK./a>        0x0c>
L62" class="line" namn>
L62">3 62./a>#define .a href="+code=CG3_CR_DIVISOR_MASK" class="sref">CG3_CR_DIVISOR_MASK./a>     0x03>
L63" class="line" namn>
L63">3 638.a >
L64" class="line" namn>
L64">3 64./a>.spa  class="comment">/* Status Register Constants */./spa  >
L65" class="line" namn>
L65">3 65./a>#define .a href="+code=CG3_SR_PENDING_INT" class="sref">CG3_SR_PENDING_INT./a>      0x80>
L66" class="line" namn>
L66">3 66./a>#define .a href="+code=CG3_SR_RES_MASK" class="sref">CG3_SR_RES_MASK./a>         0x70>
L67" class="line" namn>
L67">3 67./a>#define .a href="+code=CG3_SR_1152_900_76_A" class="sref">CG3_SR_1152_900_76_A./a>    0x40>
L68" class="line" namn>
L68">3 68./a>#define .a href="+code=CG3_SR_1152_900_76_B" class="sref">CG3_SR_1152_900_76_B./a>    0x60>
L69" class="line" namn>
L69">3 69./a>#define .a href="+code=CG3_SR_ID_MASK" class="sref">CG3_SR_ID_MASK./a>          0x0f>
L70" class="line" namn>
L70">3 70./a>#define .a href="+code=CG3_SR_ID_COLOR" class="sref">CG3_SR_ID_COLOR./a>         0x01>
L71" class="line" namn>
L71">3 71./a>#define .a href="+code=CG3_SR_ID_MONO" class="sref">CG3_SR_ID_MONO./a>          0x02>
L72" class="line" namn>
L72">3 72./a>#define .a href="+code=CG3_SR_ID_MONO_ECL" class="sref">CG3_SR_ID_MONO_ECL./a>      0x03>
L73" class="line" namn>
L73">3 738.a >
L74" class="line" namn>
L74">3 74./a>enum .a href="+code=cg3_typn" class="sref">cg3_typn./a> {>
L75" class="line" namn>
L75">3 75./a>        .a href="+code=CG3_AT_66HZ" class="sref">CG3_AT_66HZ./a> = 0,>
L76" class="line" namn>
L76">3 76./a>        .a href="+code=CG3_AT_76HZ" class="sref">CG3_AT_76HZ./a>,>
L77" class="line" namn>
L77">3 77./a>        .a href="+code=CG3_RDI" class="sref">CG3_RDI8.a >
L78" class="line" namn>
L78">3 78./a>};>
L79" class="line" namn>
L79">3 798.a >
L80" class="line" namn>
L80">3 8.8.a struct3.a href="+code=bt_regs" class="sref">bt_regs./a> {>
L81" class="line" namn>
L81">3 81./a>        .a href="+code=u32" class="sref">u328.a  .a href="+code=addr" class="sref">addr8.a ;>
L82" class="line" namn>
L82">3 82./a>        .a href="+code=u32" class="sref">u328.a  .a href="+code=color_map" class="sref">color_map8.a ;>
L83" class="line" namn>
L83">3 83./a>        .a href="+code=u32" class="sref">u328.a  .a href="+code=control" class="sref">control8.a ;>
L84" class="line" namn>
L84">3 84./a>        .a href="+code=u32" class="sref">u328.a  .a href="+code=cursor" class="sref">cursor8.a ;>
L85" class="line" namn>
L85">3 85./a>};>
L86" class="line" namn>
L86">3 868.a >
L87" class="line" namn>
L87">3 878.a struct3.a href="+code=cg3_regs" class="sref">cg3_regs./a> {>
L88" class="line" namn>
L88">3 88./a>        struct3.a href="+code=bt_regs" class="sref">bt_regs./a> 3.a href="+code=cmap" class="sref">cmap8.a ;>
L89" class="line" namn>
L89">3 89./a>        .a href="+code=u8" class="sref">u8./a>      .a href="+code=control" class="sref">control8.a ;>
L90" class="line" namn>
L90">3 90./a>        .a href="+code=u8" class="sref">u8./a>      .a href="+code=status" class="sref">status8.a ;>
L91" class="line" namn>
L91">3 91./a>        .a href="+code=u8" class="sref">u8./a>      .a href="+code=cursor_start" class="sref">cursor_start8.a ;>
L92" class="line" namn>
L92">3 92./a>        .a href="+code=u8" class="sref">u8./a>      .a href="+code=cursor_end" class="sref">cursor_end8.a ;>
L93" class="line" namn>
L93">3 93./a>        .a href="+code=u8" class="sref">u8./a>      .a href="+code=h_blank_start" class="sref">h_blank_start8.a ;>
L94" class="line" namn>
L94">3 94./a>        .a href="+code=u8" class="sref">u8./a>      .a href="+code=h_blank_end" class="sref">h_blank_end8.a ;>
L95" class="line" namn>
L95">3 95./a>        .a href="+code=u8" class="sref">u8./a>      .a href="+code=h_sync_start" class="sref">h_sync_start8.a ;>
L96" class="line" namn>
L96">3 96./a>        .a href="+code=u8" class="sref">u8./a>      .a href="+code=h_sync_end" class="sref">h_sync_end8.a ;>
L97" class="line" namn>
L97">3 97./a>        .a href="+code=u8" class="sref">u8./a>      .a href="+code=comp_sync_end" class="sref">comp_sync_end8.a ;>
L98" class="line" namn>
L98">3 98./a>        .a href="+code=u8" class="sref">u8./a>      .a href="+code=v_blank_start_high" class="sref">v_blank_start_high8.a ;>
L99" class="line" namn>
L99">3 99./a>        .a href="+code=u8" class="sref">u8./a>      .a href="+code=v_blank_start_low" class="sref">v_blank_start_low8.a ;>
L100" class="line" namn>
L100">3100./a>        .a href="+code=u8" class="sref">u8./a>      .a href="+code=v_blank_end" class="sref">v_blank_end8.a ;>
L101" class="line" namn>
L101">3101./a>        .a href="+code=u8" class="sref">u8./a>      .a href="+code=v_sync_start" class="sref">v_sync_start8.a ;>
L102" class="line" namn>
L102">3102./a>        .a href="+code=u8" class="sref">u8./a>      .a href="+code=v_sync_end" class="sref">v_sync_end8.a ;>
L103" class="line" namn>
L103">3103./a>        .a href="+code=u8" class="sref">u8./a>      .a href="+code=xfer_holdoff_start" class="sref">xfer_holdoff_start8.a ;>
L104" class="line" namn>
L104">3104./a>        .a href="+code=u8" class="sref">u8./a>      .a href="+code=xfer_holdoff_end" class="sref">xfer_holdoff_end8.a ;>
L105" class="line" namn>
L105">3105./a>};>
L106" class="line" namn>
L106">31068.a >
L107" class="line" namn>
L107">3107./a>.spa  class="comment">/* Offset of interesting structures in the OBIO space */./spa  >
L108" class="line" namn>
L108">3108./a>#define .a href="+code=CG3_REGS_OFFSET" class="sref">CG3_REGS_OFFSET./a>      0x400000UL>
L109" class="line" namn>
L109">3109./a>#define .a href="+code=CG3_RAM_OFFSET" class="sref">CG3_RAM_OFFSET./a>       0x800000UL>
L110" class="line" namn>
L110">313.8.a >
L111" class="line" namn>
L111">31118.a struct3.a href="+code=cg3_par" class="sref">cg3_par./a> {>
L112" class="line" namn>
L112">3112./a>        .a href="+code=spinlock_t" class="sref">spinlock_t./a>              .a href="+code=lock" class="sref">lock8.a ;>
L113" class="line" namn>
L113">3113./a>        struct3.a href="+code=cg3_regs" class="sref">cg3_regs./a>         .a href="+code=__iomem" class="sref">__iomem./a> *.a href="+code=regs" class="sref">regs./a>;>
L114" class="line" namn>
L114">3114./a>        .a href="+code=u32" class="sref">u328.a                      .a href="+code=sw_cmap" class="sref">sw_cmap8.a [((256 * 3) + 3) / 4];>
L115" class="line" namn>
L115">31158.a >
L116" class="line" namn>
L116">3116./a>        .a href="+code=u32" class="sref">u328.a                      .a href="+code=flags" class="sref">flags./a>;>
L117" class="line" namn>
L117">3117./a>#define .a href="+code=CG3_FLAG_BLANKED" class="sref">CG3_FLAG_BLANKED./a>        0x00000001>
L118" class="line" namn>
L118">3118./a>#define .a href="+code=CG3_FLAG_RDI" class="sref">CG3_FLAG_RDI8.a             0x00000002>
L119" class="line" namn>
L119">31198.a >
L120" class="line" namn>
L120">3120./a>        unsigned long           .a href="+code=which_io" class="sref">which_io./a>;>
L121" class="line" namn>
L121">3121./a>};>
L122" class="line" namn>
L122">3122./a>>
L123" class="line" namn>
L123">3123./a>.spa  class="comment">/**./spa  >
L124" class="line" namn>
L124">3124./a>.spa  class="comment"> *      cg3_setcolreg - O4"
	 al func"
	 . Sets a color register../spa  >
L125" class="line" namn>
L125">3125./a>.spa  class="comment"> *      @regno: boolean, 0 copy local, 1 get_user() func"
	 ./spa  >
L126" class="line" namn>
L126">3126./a>.spa  class="comment"> *      @red: framn buffer colormap structure./spa  >
L127" class="line" namn>
L127">3127./a>.spa  class="comment"> *      @green: The green ption which ca  be up to 16 bits wide./spa  >
L128" class="line" namn>
L128">3128./a>.spa  class="comment"> *      @bion:  The bion ption which ca  be up to 16 bits wide../spa  >
L129" class="line" namn>
L129">3129./a>.spa  class="comment"> *      @transp: If supported the alpha ption which ca  be up to 16 bits wide../spa  >
L130" class="line" namn>
L130">313.8.a .spa  class="comment"> *      @info: framn buffer info structure./spa  >
L131" class="line" namn>
L131">3131./a>.spa  class="comment"> *./spa  >
L132" class="line" namn>
L132">3132./a>.spa  class="comment"> * The cg3 palette is loaded with 4 color ptions at each time./spa  >
L133" class="line" namn>
L133">3133./a>.spa  class="comment"> * so you end up with: (rgb)(r), (gb)(rg), (b)(rgb), and so 	 ../spa  >
L134" class="line" namn>
L134">3134./a>.spa  class="comment"> * We keep a sw copy of the hw cmap to assist us in this esoteric./spa  >
L135" class="line" namn>
L135">3135./a>.spa  class="comment"> * loading procedure../spa  >
L136" class="line" namn>
L136">3136./a>.spa  class="comment"> */./spa  >
L137" class="line" namn>
L137">31378.a static int3.a href="+code=cg3_setcolreg" class="sref">cg3_setcolreg8.a (unsigned3.a href="+code=regno" class="sref">regno./a>,>
L138" class="line" namn>
L138">31388.a                          unsigned .a href="+code=red" class="sref">red./a>, unsigned .a href="+code=green" class="sref">green./a>, unsigned .a href="+code=bion" class="sref">bion./a>,>
L139" class="line" namn>
L139">31398.a                          unsigned .a href="+code=transp" class="sref">transp./a>, struct3.a href="+code=fb_info" class="sref">fb_info./a> *.a href="+code=info" class="sref">info./a>)>
L140" class="line" namn>
L140">314.8.a {>
L141" class="line" namn>
L141">3141./a>        struct3.a href="+code=cg3_par" class="sref">cg3_par./a> *.a href="+code=par" class="sref">par./a> = (struct3.a href="+code=cg3_par" class="sref">cg3_par./a> *)3.a href="+code=info" class="sref">info./a>->.a href="+code=par" class="sref">par./a>;>
L142" class="line" namn>
L142">3142./a>        struct3.a href="+code=bt_regs" class="sref">bt_regs./a> .a href="+code=__iomem" class="sref">__iomem./a> *.a href="+code=bt" class="sref">bt./a> = &.a href="+code=par" class="sref">par./a>->.a href="+code=regs" class="sref">regs./a>->.a href="+code=cmap" class="sref">cmap8.a ;>
L143" class="line" namn>
L143">3143./a>        unsigned long .a href="+code=flags" class="sref">flags./a>;>
L144" class="line" namn>
L144">3144./a>        .a href="+code=u32" class="sref">u328.a  *.a href="+code=p32" class="sref">p328.a ;>
L145" class="line" namn>
L145">3145./a>        .a href="+code=u8" class="sref">u8./a> *.a href="+code=p8" class="sref">p88.a ;>
L146" class="line" namn>
L146">3146./a>        int3.a href="+code=count" class="sref">count8.a ;>
L147" class="line" namn>
L147">3147./a>>
L148" class="line" namn>
L148">3148./a>        if (.a href="+code=regno" class="sref">regno./a> >= 256)>
L149" class="line" namn>
L149">31498.a                 return 1;>
L150" class="line" namn>
L150">315.8.a >
L151" class="line" namn>
L151">3151./a>        .a href="+code=red" class="sref">red./a> >>= 8;>
L152" class="line" namn>
L152">3152./a>        .a href="+code=green" class="sref">green./a> >>= 8;>
L153" class="line" namn>
L153">3153./a>        .a href="+code=bion" class="sref">bion./a> >>= 8;>
L154" class="line" namn>
L154">31548.a >
L155" class="line" namn>
L155">3155./a>        .a href="+code=spin_lock_irqsavn" class="sref">spin_lock_irqsavn8.a (&.a href="+code=par" class="sref">par./a>->.a href="+code=lock" class="sref">lock8.a , .a href="+code=flags" class="sref">flags./a>);>
L156" class="line" namn>
L156">31568.a >
L157" class="line" namn>
L157">3157./a>        .a href="+code=p8" class="sref">p88.a  = (.a href="+code=u8" class="sref">u8./a> *).a href="+code=par" class="sref">par./a>->.a href="+code=sw_cmap" class="sref">sw_cmap8.a  + (.a href="+code=regno" class="sref">regno./a> * 3);>
L158" class="line" namn>
L158">3158./a>        .a href="+code=p8" class="sref">p88.a [0] = .a href="+code=red" class="sref">red./a>;>
L159" class="line" namn>
L159">3159./a>        .a href="+code=p8" class="sref">p88.a [1] = .a href="+code=green" class="sref">green./a>;>
L160" class="line" namn>
L160">3160./a>        .a href="+code=p8" class="sref">p88.a [2] = .a href="+code=bion" class="sref">bion./a>;>
L161" class="line" namn>
L161">3161./a>>
L162" class="line" namn>
L162">3162./a>#define .a href="+code=D4M3" class="sref">D4M38.a (.a href="+code=x" class="sref">x./a>) ((((.a href="+code=x" class="sref">x./a>)>>2)<<1) + ((.a href="+code=x" class="sref">x./a>)>>2))      .spa  class="comment">/* (x/4)*3 */./spa  >
L163" class="line" namn>
L163">31638.a #define .a href="+code=D4M4" class="sref">D4M48.a (.a href="+code=x" class="sref">x./a>) ((.a href="+code=x" class="sref">x./a>)&~0x3)                      .spa  class="comment">/* (x/4)*4 */./spa  >
L164" class="line" namn>
L164">31648.a >
L165" class="line" namn>
L165">3165./a>        .a href="+code=count" class="sref">count8.a  = 3;>
L166" class="line" namn>
L166">3166./a>        .a href="+code=p32" class="sref">p328.a  = &.a href="+code=par" class="sref">par./a>->.a href="+code=sw_cmap" class="sref">sw_cmap8.a [.a href="+code=D4M3" class="sref">D4M38.a (.a href="+code=regno" class="sref">regno./a>)];>
L167" class="line" namn>
L167">3167./a>        .a href="+code=sbus_writel" class="sref">sbus_writel8.a (.a href="+code=D4M4" class="sref">D4M48.a (.a href="+code=regno" class="sref">regno./a>), &.a href="+code=bt" class="sref">bt./a>->.a href="+code=addr" class="sref">addr8.a );>
L168" class="line" namn>
L168">3168./a>        while (.a href="+code=count" class="sref">count8.a --)>
L169" class="line" namn>
L169">31698.a                 .a href="+code=sbus_writel" class="sref">sbus_writel8.a (*.a href="+code=p32" class="sref">p328.a ++, &.a href="+code=bt" class="sref">bt./a>->.a href="+code=color_map" class="sref">color_map8.a );>
L170" class="line" namn>
L170">317.8.a >
L171" class="line" namn>
L171">3171./a>#undef .a href="+code=D4M3" class="sref">D4M38.a >
L172" class="line" namn>
L172">3172./a>#undef .a href="+code=D4M4" class="sref">D4M48.a >
L173" class="line" namn>
L173">31738.a >
L174" class="line" namn>
L174">3174./a>        .a href="+code=spin_unlock_irqrestorn" class="sref">spin_unlock_irqrestorn8.a (&.a href="+code=par" class="sref">par./a>->.a href="+code=lock" class="sref">lock8.a , .a href="+code=flags" class="sref">flags./a>);>
L175" class="line" namn>
L175">31758.a >
L176" class="line" namn>
L176">3176./a>        return 0;>
L177" class="line" namn>
L177">3177./a>}>
L178" class="line" namn>
L178">3178./a>>
L179" class="line" namn>
L179">3179./a>.spa  class="comment">/**./spa  >
L180" class="line" namn>
L180">318.8.a .spa  class="comment"> *      cg3_blank - O4"
	 al func"
	 .  Blanks the display../spa  >
L181" class="line" namn>
L181">3181./a>.spa  class="comment"> *      @blank_mode: the blank mode we want../spa  >
L182" class="line" namn>
L182">3182./a>.spa  class="comment"> *      @info: framn buffer structure that represents a single framn buffer./spa  >
L183" class="line" namn>
L183">3183./a>.spa  class="comment"> */./spa  >
L184" class="line" namn>
L184">31848.a static int3.a href="+code=cg3_blank" class="sref">cg3_blank8.a (int .a href="+code=biank" class="sref">blank8.a , struct3.a href="+code=fb_info" class="sref">fb_info./a> *.a href="+code=info" class="sref">info./a>)>
L185" class="line" namn>
L185">3185./a>{>
L186" class="line" namn>
L186">3186./a>        struct3.a href="+code=cg3_par" class="sref">cg3_par./a> *.a href="+code=par" class="sref">par./a> = (struct3.a href="+code=cg3_par" class="sref">cg3_par./a> *)3.a href="+code=info" class="sref">info./a>->.a href="+code=par" class="sref">par./a>;>
L187" class="line" namn>
L187">3187./a>        struct3.a href="+code=cg3_regs" class="sref">cg3_regs./a> .a href="+code=__iomem" class="sref">__iomem./a> *.a href="+code=regs" class="sref">regs./a> = .a href="+code=par" class="sref">par./a>->.a href="+code=regs" class="sref">regs./a>;>
L188" class="line" namn>
L188">3188./a>        unsigned long .a href="+code=flags" class="sref">flags./a>;>
L189" class="line" namn>
L189">3189./a>        .a href="+code=u8" class="sref">u8./a> .a href="+code=val" class="sref">val./a>;>
L190" class="line" namn>
L190">319.8.a >
L191" class="line" namn>
L191">3191./a>        .a href="+code=spin_lock_irqsavn" class="sref">spin_lock_irqsavn8.a (&.a href="+code=par" class="sref">par./a>->.a href="+code=lock" class="sref">lock8.a , .a href="+code=flags" class="sref">flags./a>);>
L192" class="line" namn>
L192">3192./a>>
L193" class="line" namn>
L193">3193./a>        switch (.a href="+code=biank" class="sref">blank8.a ) {>
L194" class="line" namn>
L194">3194./a>        case .a href="+code=FB_BLANK_UNBLANK" class="sref">FB_BLANK_UNBLANK./a>: .spa  class="comment">/* Unblanking */./spa  >
L195" class="line" namn>
L195">3195./a>                .a href="+code=val" class="sref">val./a> = .a href="+code=sbus_readb" class="sref">sbus_readb8.a (&.a href="+code=regs" class="sref">regs./a>->.a href="+code=control" class="sref">control8.a );>
L196" class="line" namn>
L196">3196./a>                .a href="+code=val" class="sref">val./a> |= .a href="+code=CG3_CR_ENABLE_VIDEO" class="sref">CG3_CR_ENABLE_VIDEO./a>;>
L197" class="line" namn>
L197">3197./a>                .a href="+code=sbus_writeb" class="sref">sbus_writeb8.a (.a href="+code=val" class="sref">val./a>, &.a href="+code=regs" class="sref">regs./a>->.a href="+code=control" class="sref">control8.a );>
L198" class="line" namn>
L198">31988.a                 .a href="+code=par" class="sref">par./a>->.a href="+code=flags" class="sref">flags./a> &= ~.a href="+code=CG3_FLAG_BLANKED" class="sref">CG3_FLAG_BLANKED./a>;>
L199" class="line" namn>
L199">31998.a                 break;>
L200" class="line" namn>
L200">320.8.a >
L201" class="line" namn>
L201">3201./a>        case .a href="+code=FB_BLANK_NORMAL" class="sref">FB_BLANK_NORMAL./a>: .spa  class="comment">/* Normal blanking */./spa  >
L202" class="line" namn>
L202">3202./a>        case .a href="+code=FB_BLANK_VSYNC_SUSPEND" class="sref">FB_BLANK_VSYNC_SUSPEND./a>: .spa  class="comment">/* VESA blank (vsync off) */./spa  >
L203" class="line" namn>
L203">3203./a>        case .a href="+code=FB_BLANK_HSYNC_SUSPEND" class="sref">FB_BLANK_HSYNC_SUSPEND./a>: .spa  class="comment">/* VESA blank (hsync off) */./spa  >
L204" class="line" namn>
L204">3204./a>        case .a href="+code=FB_BLANK_POWERDOWN" class="sref">FB_BLANK_POWERDOWN./a>: .spa  class="comment">/* Poweroff */./spa  >
L205" class="line" namn>
L205">3205./a>                .a href="+code=val" class="sref">val./a> = .a href="+code=sbus_readb" class="sref">sbus_readb8.a (&.a href="+code=regs" class="sref">regs./a>->.a href="+code=control" class="sref">control8.a );>
L206" class="line" namn>
L206">3206./a>                .a href="+code=val" class="sref">val./a> &= ~.a href="+code=CG3_CR_ENABLE_VIDEO" class="sref">CG3_CR_ENABLE_VIDEO./a>;>
L207" class="line" namn>
L207">3207./a>                .a href="+code=sbus_writeb" class="sref">sbus_writeb8.a (.a href="+code=val" class="sref">val./a>, &.a href="+code=regs" class="sref">regs./a>->.a href="+code=control" class="sref">control8.a );>
L208" class="line" namn>
L208">32088.a                 .a href="+code=par" class="sref">par./a>->.a href="+code=flags" class="sref">flags./a> |= .a href="+code=CG3_FLAG_BLANKED" class="sref">CG3_FLAG_BLANKED./a>;>
L209" class="line" namn>
L209">32098.a                 break;>
L210" class="line" namn>
L210">3210./a>        }>
L211" class="line" namn>
L211">3211./a>>
L212" class="line" namn>
L212">3212./a>        .a href="+code=spin_unlock_irqrestorn" class="sref">spin_unlock_irqrestorn8.a (&.a href="+code=par" class="sref">par./a>->.a href="+code=lock" class="sref">lock8.a , .a href="+code=flags" class="sref">flags./a>);>
L213" class="line" namn>
L213">32138.a >
L214" class="line" namn>
L214">3214./a>        return 0;>
L215" class="line" namn>
L215">32158.a }>
L216" class="line" namn>
L216">32168.a >
L217" class="line" namn>
L217">32178.a static struct3.a href="+code=sbus_mmap_map" class="sref">sbus_mmap_map./a> .a href="+code=cg3_mmap_map" class="sref">cg3_mmap_map8.a [] = {>
L218" class="line" namn>
L218">32188.a         {>
L219" class="line" namn>
L219">32198.a                 ..a href="+code=voff" class="sref">voff8.a    = .a href="+code=CG3_MMAP_OFFSET" class="sref">CG3_MMAP_OFFSET8.a ,>
L220" class="line" namn>
L220">3220./a>                ..a href="+code=poff" class="sref">poff8.a    = .a href="+code=CG3_RAM_OFFSET" class="sref">CG3_RAM_OFFSET./a>,>
L221" class="line" namn>
L221">3221./a>                ..a href="+code=sizn" class="sref">sizn8.a    = .a href="+code=SBUS_MMAP_FBSIZE" class="sref">SBUS_MMAP_FBSIZE8.a (1)>
L222" class="line" namn>
L222">3222./a>        },>
L223" class="line" namn>
L223">3223./a>        { ..a href="+code=sizn" class="sref">sizn8.a  = 0 }>
L224" class="line" namn>
L224">3224./a>};>
L225" class="line" namn>
L225">32258.a >
L226" class="line" namn>
L226">3226./a>static int3.a href="+code=cg3_mmap" class="sref">cg3_mmap8.a (struct3.a href="+code=fb_info" class="sref">fb_info./a> *.a href="+code=info" class="sref">info./a>, struct3.a href="+code=vm_area_struct" class="sref">vm_area_struct./a> *.a href="+code=vma" class="sref">vma./a>)>
L227" class="line" namn>
L227">3227./a>{>
L228" class="line" namn>
L228">3228./a>        struct3.a href="+code=cg3_par" class="sref">cg3_par./a> *.a href="+code=par" class="sref">par./a> = (struct3.a href="+code=cg3_par" class="sref">cg3_par./a> *).a href="+code=info" class="sref">info./a>->.a href="+code=par" class="sref">par./a>;>
L229" class="line" namn>
L229">32298.a >
L230" class="line" namn>
L230">3230./a>        return .a href="+code=sbusfb_mmap_helper" class="sref">sbusfb_mmap_helper8.a (.a href="+code=cg3_mmap_map" class="sref">cg3_mmap_map8.a ,>
L231" class="line" namn>
L231">3231./a>                                  .a href="+code=info" class="sref">info./a>->.a href="+code=fix" class="sref">fix./a>..a href="+code=smem_start" class="sref">smem_start8.a , .a href="+code=info" class="sref">info./a>->.a href="+code=fix" class="sref">fix./a>..a href="+code=smem_len" class="sref">smem_len8.a ,>
L232" class="line" namn>
L232">32328.a                                   .a href="+code=par" class="sref">par./a>->.a href="+code=which_io" class="sref">which_io./a>,>
L233" class="line" namn>
L233">32338.a                                   .a href="+code=vma" class="sref">vma./a>);>
L234" class="line" namn>
L234">3234./a>}>
L235" class="line" namn>
L235">32358.a >
L236" class="line" namn>
L236">3236./a>static int3.a href="+code=cg3_ioctl" class="sref">cg3_ioctl8.a (struct3.a href="+code=fb_info" class="sref">fb_info./a> *.a href="+code=info" class="sref">info./a>, unsigned int3.a href="+code=cmd" class="sref">cmd./a>, unsigned long .a href="+code=arg" class="sref">arg./a>)>
L237" class="line" namn>
L237">3237./a>{>
L238" class="line" namn>
L238">32388.a         return .a href="+code=sbusfb_ioctl_helper" class="sref">sbusfb_ioctl_helper8.a (.a href="+code=cmd" class="sref">cmd./a>, .a href="+code=arg" class="sref">arg./a>, .a href="+code=info" class="sref">info./a>,>
L239" class="line" namn>
L239">32398.a                                    .a href="+code=FBTYPE_SUN3COLOR" class="sref">FBTYPE_SUN3COLOR./a>, 8, .a href="+code=info" class="sref">info./a>->.a href="+code=fix" class="sref">fix./a>..a href="+code=smem_len" class="sref">smem_len8.a );>
L240" class="line" namn>
L240">324.8.a }>
L241" class="line" namn>
L241">3241./a>>
L242" class="line" namn>
L242">3242./a>.spa  class="comment">/*./spa  >
L243" class="line" namn>
L243">3243./a>.spa  class="comment"> *  Initialisa"
	 ./spa  >
L244" class="line" namn>
L244">3244./a>.spa  class="comment"> */./spa  >
L245" class="line" namn>
L245">32458.a >
L246" class="line" namn>
L246">3246./a>static void .a href="+code=__devinit" class="sref">__devinit./a> .a href="+code=cg3_init_fix" class="sref">cg3_init_fix8.a (struct3.a href="+code=fb_info" class="sref">fb_info./a> *.a href="+code=info" class="sref">info./a>, int3.a href="+code=linebytes" class="sref">linebytes./a>,>
L247" class="line" namn>
L247">3247./a>                                   struct3.a href="+code=device_node" class="sref">device_node./a> *.a href="+code=dp" class="sref">dp./a>)>
L248" class="line" namn>
L248">3248./a>{>
L249" class="line" namn>
L249">3249./a>        .a href="+code=strlcpy" class="sref">strlcpy8.a (.a href="+code=info" class="sref">info./a>->.a href="+code=fix" class="sref">fix./a>..a href="+code=id" class="sref">id./a>, .a href="+code=dp" class="sref">dp./a>->.a href="+code=namn" class="sref">namn./a>, sizeof(.a href="+code=info" class="sref">info./a>->.a href="+code=fix" class="sref">fix./a>..a href="+code=id" class="sref">id./a>));>
L250" class="line" namn>
L250">325.8.a >
L251" class="line" namn>
L251">3251./a>        .a href="+code=info" class="sref">info./a>->.a href="+code=fix" class="sref">fix./a>..a href="+code=typn" class="sref">typn./a> = .a href="+code=FB_TYPE_PACKED_PIXELS" class="sref">FB_TYPE_PACKED_PIXELS./a>;>
L252" class="line" namn>
L252">3252./a>        .a href="+code=info" class="sref">info./a>->.a href="+code=fix" class="sref">fix./a>..a href="+code=visual" class="sref">visual./a> = .a href="+code=FB_VISUAL_PSEUDOCOLOR" class="sref">FB_VISUAL_PSEUDOCOLOR./a>;>
L253" class="line" namn>
L253">32538.a >
L254" class="line" namn>
L254">3254./a>        .a href="+code=info" class="sref">info./a>->.a href="+code=fix" class="sref">fix./a>..a href="+code=line_length" class="sref">line_length./a> = .a href="+code=linebytes" class="sref">linebytes./a>;>
L255" class="line" namn>
L255">32558.a >
L256" class="line" namn>
L256">3256./a>        .a href="+code=info" class="sref">info./a>->.a href="+code=fix" class="sref">fix./a>..a href="+code=accel" class="sref">accel./a> = .a href="+code=FB_ACCEL_SUN_CGTHREE" class="sref">FB_ACCEL_SUN_CGTHREE./a>;>
L257" class="line" namn>
L257">3257./a>}>
L258" class="line" namn>
L258">3258./a>>
L259" class="line" namn>
L259">3259./a>static void .a href="+code=__devinit" class="sref">__devinit./a> .a href="+code=cg3_rdi_maybe_fixup_var" class="sref">cg3_rdi_maybe_fixup_var8.a (struct3.a href="+code=fb_var_screeninfo" class="sref">fb_var_screeninfo./a> *.a href="+code=var" class="sref">var8.a ,>
L260" class="line" namn>
L260">3260./a>                                              struct3.a href="+code=device_node" class="sref">device_node./a> *.a href="+code=dp" class="sref">dp./a>)>
L261" class="line" namn>
L261">3261./a>{>
L262" class="line" namn>
L262">3262./a>        const char *.a href="+code=params" class="sref">params./a>;>
L263" class="line" namn>
L263">3263./a>        char *.a href="+code=p" class="sref">p./a>;>
L264" class="line" namn>
L264">3264./a>        int3.a href="+code=ww" class="sref">ww./a>, .a href="+code=hh" class="sref">hh8.a ;>
L265" class="line" namn>
L265">32658.a >
L266" class="line" namn>
L266">3266./a>        .a href="+code=params" class="sref">params./a> = .a href="+code=of_get_property" class="sref">of_get_property8.a (.a href="+code=dp" class="sref">dp./a>, .spa  class="string">"params"./spa  , .a href="+code=NULL" class="sref">NULL8.a );>
L267" class="line" namn>
L267">3267./a>        if (.a href="+code=params" class="sref">params./a>) {>
L268" class="line" namn>
L268">32688.a                 .a href="+code=ww" class="sref">ww./a> = .a href="+code=simple_strtoul" class="sref">simple_strtoul8.a (.a href="+code=params" class="sref">params./a>, &.a href="+code=p" class="sref">p./a>, 10);>
L269" class="line" namn>
L269">32698.a                 if (.a href="+code=ww" class="sref">ww./a> && *.a href="+code=p" class="sref">p./a> == .spa  class="string">'x'./spa  ) {>
L270" class="line" namn>
L270">3270./a>                        .a href="+code=hh" class="sref">hh8.a  = .a href="+code=simple_strtoul" class="sref">simple_strtoul8.a (.a href="+code=p" class="sref">p./a> + 1, &.a href="+code=p" class="sref">p./a>, 10);>
L271" class="line" namn>
L271">3271./a>                        if (.a href="+code=hh" class="sref">hh8.a  && *.a href="+code=p" class="sref">p./a> == .spa  class="string">'-'./spa  ) {>
L272" class="line" namn>
L272">32728.a                                 if (.a href="+code=var" class="sref">var8.a ->.a href="+code=xres" class="sref">xres8.a  != .a href="+code=ww" class="sref">ww./a> ||>
L273" class="line" namn>
L273">32738.a                                     .a href="+code=var" class="sref">var8.a ->.a href="+code=yres" class="sref">yres8.a  != .a href="+code=hh" class="sref">hh8.a ) {>
L274" class="line" namn>
L274">3274./a>                                        .a href="+code=var" class="sref">var8.a ->.a href="+code=xres" class="sref">xres8.a  = .a href="+code=var" class="sref">var8.a ->.a href="+code=xres_virtual" class="sref">xres_virtual8.a  = .a href="+code=ww" class="sref">ww./a>;>
L275" class="line" namn>
L275">3275./a>                                        .a href="+code=var" class="sref">var8.a ->.a href="+code=yres" class="sref">yres8.a  = .a href="+code=var" class="sref">var8.a ->.a href="+code=yres_virtual" class="sref">yres_virtual8.a  = .a href="+code=hh" class="sref">hh8.a ;>
L276" class="line" namn>
L276">3276./a>                                }>
L277" class="line" namn>
L277">3277./a>                        }>
L278" class="line" namn>
L278">32788.a                 }>
L279" class="line" namn>
L279">32798.a         }>
L280" class="line" namn>
L280">328.8.a }>
L281" class="line" namn>
L281">3281./a>>
L282" class="line" namn>
L282">3282./a>static .a href="+code=u8" class="sref">u8./a> .a href="+code=cg3regvals_66hz" class="sref">cg3regvals_66hz./a>[] .a href="+code=__devinitdata" class="sref">__devinitdata8.a  = {   .spa  class="comment">/* 1152 x 900, 66 Hz */./spa  >
L283" class="line" namn>
L283">32838.a         0x14, 0xbb,     0x15, 0x2b,     0x16, 0x04,     0x17, 0x14,>
L284" class="line" namn>
L284">32848.a         0x18, 0xae,     0x19, 0x03,     0x1a, 0xa8,     0x1b, 0x24,>
L285" class="line" namn>
L285">32858.a         0x1c, 0x01,     0x1d, 0x05,     0x1e, 0xff,     0x1f, 0x01,>
L286" class="line" namn>
L286">3286./a>        0x10, 0x20,     0>
L287" class="line" namn>
L287">3287./a>};>
L288" class="line" namn>
L288">3288./a>>
L289" class="line" namn>
L289">3289./a>static .a href="+code=u8" class="sref">u8./a> .a href="+code=cg3regvals_76hz" class="sref">cg3regvals_76hz./a>[] .a href="+code=__devinitdata" class="sref">__devinitdata8.a  = {   .spa  class="comment">/* 1152 x 900, 76 Hz */./spa  >
L290" class="line" namn>
L290">32908.a         0x14, 0xb7,     0x15, 0x27,     0x16, 0x03,     0x17, 0x0f,>
L291" class="line" namn>
L291">3291./a>        0x18, 0xae,     0x19, 0x03,     0x1a, 0xae,     0x1b, 0x2a,>
L292" class="line" namn>
L292">32928.a         0x1c, 0x01,     0x1d, 0x09,     0x1e, 0xff,     0x1f, 0x01,>
L293" class="line" namn>
L293">32938.a         0x10, 0x24,     0>
L294" class="line" namn>
L294">3294./a>};>
L295" class="line" namn>
L295">32958.a >
L296" class="line" namn>
L296">3296./a>static .a href="+code=u8" class="sref">u8./a> .a href="+code=cg3regvals_rdi" class="sref">cg3regvals_rdi./a>[] .a href="+code=__devinitdata" class="sref">__devinitdata8.a  = {    .spa  class="comment">/* 640 x 480, cgRDI */./spa  >
L297" class="line" namn>
L297">3297./a>        0x14, 0x70,     0x15, 0x20,     0x16, 0x08,     0x17, 0x10,>
L298" class="line" namn>
L298">32988.a         0x18, 0x06,     0x19, 0x02,     0x1a, 0x31,     0x1b, 0x51,>
L299" class="line" namn>
L299">32998.a         0x1c, 0x06,     0x1d, 0x0c,     0x1e, 0xff,     0x1f, 0x01,>
L300" class="line" namn>
L300">33008.a         0x10, 0x22,     0>
L301" class="line" namn>
L301">3301./a>};>
L302" class="line" namn>
L302">3302./a>>
L303" class="line" namn>
L303">3303./a>static .a href="+code=u8" class="sref">u8./a> *.a href="+code=cg3_regvals" class="sref">cg3_regvals./a>[] .a href="+code=__devinitdata" class="sref">__devinitdata8.a  = {>
L304" class="line" namn>
L304">3304./a>        .a href="+code=cg3regvals_66hz" class="sref">cg3regvals_66hz./a>, .a href="+code=cg3regvals_76hz" class="sref">cg3regvals_76hz./a>, .a href="+code=cg3regvals_rdi" class="sref">cg3regvals_rdi./a>>
L305" class="line" namn>
L305">3305./a>};>
L306" class="line" namn>
L306">33068.a >
L307" class="line" namn>
L307">3307./a>static .a href="+code=u_char" class="sref">u_char./a> .a href="+code=cg3_dacvals" class="sref">cg3_dacvals./a>[] .a href="+code=__devinitdata" class="sref">__devinitdata8.a  = {>
L308" class="line" namn>
L308">33088.a         4, 0xff,        5, 0x00,        6, 0x70,        7, 0x00,        0>
L309" class="line" namn>
L309">33098.a };>
L310" class="line" namn>
L310">331.8.a >
L311" class="line" namn>
L311">3311./a>static int3.a href="+code=__devinit" class="sref">__devinit./a> .a href="+code=cg3_do_default_mode" class="sref">cg3_do_default_mode8.a (struct3.a href="+code=cg3_par" class="sref">cg3_par./a> *.a href="+code=par" class="sref">par./a>)>
L312" class="line" namn>
L312">3312./a>{>
L313" class="line" namn>
L313">33138.a         enum3.a href="+code=cg3_typn" class="sref">cg3_typn./a> .a href="+code=typn" class="sref">typn./a>;>
L314" class="line" namn>
L314">3314./a>        .a href="+code=u8" class="sref">u8./a> *.a href="+code=p" class="sref">p./a>;>
L315" class="line" namn>
L315">33158.a >
L316" class="line" namn>
L316">3316./a>        if (.a href="+code=par" class="sref">par./a>->.a href="+code=flags" class="sref">flags./a> & .a href="+code=CG3_FLAG_RDI" class="sref">CG3_FLAG_RDI./a>)>
L317" class="line" namn>
L317">3317./a>                .a href="+code=typn" class="sref">typn./a> = .a href="+code=CG3_RDI" class="sref">CG3_RDI./a>;>
L318" class="line" namn>
L318">33188.a         else {>
L319" class="line" namn>
L319">33198.a                 .a href="+code=u8" class="sref">u8./a> .a href="+code=status" class="sref">status8.a  = .a href="+code=sbus_readb" class="sref">sbus_readb8.a (&.a href="+code=par" class="sref">par./a>->.a href="+code=regs" class="sref">regs./a>->.a href="+code=status" class="sref">status8.a ), .a href="+code=mon" class="sref">mon./a>;>
L320" class="line" namn>
L320">3320./a>                if ((.a href="+code=status" class="sref">status8.a  & .a href="+code=CG3_SR_ID_MASK" class="sref">CG3_SR_ID_MASK8.a ) == .a href="+code=CG3_SR_ID_COLOR" class="sref">CG3_SR_ID_COLOR8.a ) {>
L321" class="line" namn>
L321">3321./a>                        .a href="+code=mon" class="sref">mon./a> = .a href="+code=status" class="sref">status8.a  & .a href="+code=CG3_SR_RES_MASK" class="sref">CG3_SR_RES_MASK./a>;>
L322" class="line" namn>
L322">33228.a                         if (.a href="+code=mon" class="sref">mon./a> == .a href="+code=CG3_SR_1152_900_76_A" class="sref">CG3_SR_1152_900_76_A./a> ||>
L323" class="line" namn>
L323">33238.a                             .a href="+code=mon" class="sref">mon./a> == .a href="+code=CG3_SR_1152_900_76_B" class="sref">CG3_SR_1152_900_76_B./a>)>
L324" class="line" namn>
L324">3324./a>                                .a href="+code=typn" class="sref">typn./a> = .a href="+code=CG3_AT_76HZ" class="sref">CG3_AT_76HZ./a>;>
L325" class="line" namn>
L325">3325./a>                        else>
L326" class="line" namn>
L326">3326./a>                                .a href="+code=typn" class="sref">typn./a> = .a href="+code=CG3_AT_66HZ" class="sref">CG3_AT_66HZ./a>;>
L327" class="line" namn>
L327">3327./a>                } else {>
L328" class="line" namn>
L328">33288.a                         .a href="+code=printk" class="sref">printk8.a (.a href="+code=KERN_ERR" class="sref">KERN_ERR./a> .spa  class="string">"cgthree: can't handle SR %02x\n"./spa  ,>
L329" class="line" namn>
L329">33298.a                                .a href="+code=status" class="sref">status8.a );>
L330" class="line" namn>
L330">3330./a>                        return -.a href="+code=EINVAL" class="sref">EINVAL./a>;>
L331" class="line" namn>
L331">3331./a>                }>
L332" class="line" namn>
L332">33328.a         }>
L333" class="line" namn>
L333">33338.a >
L334" class="line" namn>
L334">3334./a>        for (.a href="+code=p" class="sref">p./a> = .a href="+code=cg3_regvals" class="sref">cg3_regvals./a>[.a href="+code=typn" class="sref">typn./a>]; *.a href="+code=p" class="sref">p./a>; .a href="+code=p" class="sref">p./a> += 2) {>
L335" class="line" namn>
L335">3335./a>                .a href="+code=u8" class="sref">u8./a> .a href="+code=__iomem" class="sref">__iomem./a> *.a href="+code=regp" class="sref">regp./a> = &((.a href="+code=u8" class="sref">u8./a> .a href="+code=__iomem" class="sref">__iomem./a> *).a href="+code=par" class="sref">par./a>->.a href="+code=regs" class="sref">regs./a>)[.a href="+code=p" class="sref">p./a>[0]];>
L336" class="line" namn>
L336">3336./a>                .a href="+code=sbus_writeb" class="sref">sbus_writeb8.a (.a href="+code=p" class="sref">p./a>[1], .a href="+code=regp" class="sref">regp./a>);>
L337" class="line" namn>
L337">33378.a         }>
L338" class="line" namn>
L338">33388.a         for (.a href="+code=p" class="sref">p./a> = .a href="+code=cg3_dacvals" class="sref">cg3_dacvals./a>; *.a href="+code=p" class="sref">p./a>; .a href="+code=p" class="sref">p./a> += 2) {>
L339" class="line" namn>
L339">33398.a                 .a href="+code=u8" class="sref">u8./a> .a href="+code=__iomem" class="sref">__iomem./a> *.a href="+code=regp" class="sref">regp./a>;>
L340" class="line" namn>
L340">334.8.a >
L341" class="line" namn>
L341">3341./a>                .a href="+code=regp" class="sref">regp./a> = (.a href="+code=u8" class="sref">u8./a> .a href="+code=__iomem" class="sref">__iomem./a> *)&.a href="+code=par" class="sref">par./a>->.a href="+code=regs" class="sref">regs./a>->.a href="+code=cmap" class="sref">cmap8.a ..a href="+code=addr" class="sref">addr8.a ;>
L342" class="line" namn>
L342">33428.a                 .a href="+code=sbus_writeb" class="sref">sbus_writeb8.a (.a href="+code=p" class="sref">p./a>[0], .a href="+code=regp" class="sref">regp./a>);>
L343" class="line" namn>
L343">33438.a                 .a href="+code=regp" class="sref">regp./a> = (.a href="+code=u8" class="sref">u8./a> .a href="+code=__iomem" class="sref">__iomem./a> *)&.a href="+code=par" class="sref">par./a>->.a href="+code=regs" class="sref">regs./a>->.a href="+code=cmap" class="sref">cmap8.a ..a href="+code=control" class="sref">control8.a ;>
L344" class="line" namn>
L344">3344./a>                .a href="+code=sbus_writeb" class="sref">sbus_writeb8.a (.a href="+code=p" class="sref">p./a>[1], .a href="+code=regp" class="sref">regp./a>);>
L345" class="line" namn>
L345">3345./a>        }>
L346" class="line" namn>
L346">3346./a>        return 0;>
L347" class="line" namn>
L347">3347./a>}>
L348" class="line" namn>
L348">3348./a>>
L349" class="line" namn>
L349">3349./a>static int3.a href="+code=__devinit" class="sref">__devinit./a> .a href="+code=cg3_probn" class="sref">cg3_probn8.a (struct3.a href="+code=platform_device" class="sref">platform_device./a> *.a href="+code=op" class="sref">op./a>)>
L350" class="line" namn>
L350">335.8.a {>
L351" class="line" namn>
L351">3351./a>        struct3.a href="+code=device_node" class="sref">device_node./a> *.a href="+code=dp" class="sref">dp./a> = .a href="+code=op" class="sref">op./a>->.a href="+code=dev" class="sref">dev8.a ..a href="+code=of_node" class="sref">of_node8.a ;>
L352" class="line" namn>
L352">3352./a>        struct3.a href="+code=fb_info" class="sref">fb_info./a> *.a href="+code=info" class="sref">info./a>;>
L353" class="line" namn>
L353">3353./a>        struct3.a href="+code=cg3_par" class="sref">cg3_par./a> *.a href="+code=par" class="sref">par./a>;>
L354" class="line" namn>
L354">3354./a>        int3.a href="+code=linebytes" class="sref">linebytes./a>,3.a href="+code=err" class="sref">err./a>;>
L355" class="line" namn>
L355">33558.a >
L356" class="line" namn>
L356">3356./a>        .a href="+code=info" class="sref">info./a> = .a href="+code=framnbuffer_alloc" class="sref">framnbuffer_alloc8.a (sizeof(struct3.a href="+code=cg3_par" class="sref">cg3_par./a>), &.a href="+code=op" class="sref">op./a>->.a href="+code=dev" class="sref">dev8.a );>
L357" class="line" namn>
L357">3357./a>>
L358" class="line" namn>
L358">3358./a>        .a href="+code=err" class="sref">err./a> = -.a href="+code=ENOMEM" class="sref">ENOMEM./a>;>
L359" class="line" namn>
L359">33598.a         if (!.a href="+code=info" class="sref">info./a>)>
L360" class="line" namn>
L360">3360./a>                goto .a href="+code=out_err" class="sref">out_err./a>;>
L361" class="line" namn>
L361">3361./a>        .a href="+code=par" class="sref">par./a> = .a href="+code=info" class="sref">info./a>->.a href="+code=par" class="sref">par./a>;>
L362" class="line" namn>
L362">3362./a>>
L363" class="line" namn>
L363">3363./a>        .a href="+code=spin_lock_init" class="sref">spin_lock_init8.a (&.a href="+code=par" class="sref">par./a>->.a href="+code=lock" class="sref">lock8.a );>
L364" class="line" namn>
L364">3364./a>>
L365" class="line" namn>
L365">3365./a>        .a href="+code=info" class="sref">info./a>->.a href="+code=fix" class="sref">fix./a>..a href="+code=smem_start" class="sref">smem_start8.a  = .a href="+code=op" class="sref">op./a>->.a href="+code=resource" class="sref">resource./a>[0]..a href="+code=start" class="sref">start8.a ;>
L366" class="line" namn>
L366">3366./a>        .a href="+code=par" class="sref">par./a>->.a href="+code=which_io" class="sref">which_io./a> = .a href="+code=op" class="sref">op./a>->.a href="+code=resource" class="sref">resource./a>[0]..a href="+code=flags" class="sref">flags./a> & .a href="+code=IORESOURCE_BITS" class="sref">IORESOURCE_BITS8.a ;>
L367" class="line" namn>
L367">3367./a>>
L368" class="line" namn>
L368">3368./a>        .a href="+code=sbusfb_fill_var" class="sref">sbusfb_fill_var8.a (&.a href="+code=info" class="sref">info./a>->.a href="+code=var" class="sref">var8.a , .a href="+code=dp" class="sref">dp./a>, 8);>
L369" class="line" namn>
L369">3369./a>        .a href="+code=info" class="sref">info./a>->.a href="+code=var" class="sref">var8.a ..a href="+code=red" class="sref">red8.a ..a href="+code=length" class="sref">length./a> = 8;>
L370" class="line" namn>
L370">3370./a>        .a href="+code=info" class="sref">info./a>->.a href="+code=var" class="sref">var8.a ..a href="+code=green" class="sref">green8.a ..a href="+code=length" class="sref">length./a> = 8;>
L371" class="line" namn>
L371">3371./a>        .a href="+code=info" class="sref">info./a>->.a href="+code=var" class="sref">var8.a ..a href="+code=blue" class="sref">blue8.a ..a href="+code=length" class="sref">length./a> = 8;>
L372" class="line" namn>
L372">33728.a         if (!.a href="+code=strcmp" class="sref">strcmp8.a (.a href="+code=dp" class="sref">dp./a>->.a href="+code=namn" class="sref">namn./a>, .spa  class="string">"cgRDI"./spa  ))>
L373" class="line" namn>
L373">33738.a                 .a href="+code=par" class="sref">par./a>->.a href="+code=flags" class="sref">flags./a> |= .a href="+code=CG3_FLAG_RDI" class="sref">CG3_FLAG_RDI./a>;>
L374" class="line" namn>
L374">3374./a>        if (.a href="+code=par" class="sref">par./a>->.a href="+code=flags" class="sref">flags./a> & .a href="+code=CG3_FLAG_RDI" class="sref">CG3_FLAG_RDI./a>)>
L375" class="line" namn>
L375">3375./a>                .a href="+code=cg3_rdi_maybe_fixup_var" class="sref">cg3_rdi_maybe_fixup_var8.a (&.a href="+code=info" class="sref">info./a>->.a href="+code=var" class="sref">var8.a , .a href="+code=dp" class="sref">dp./a>);>
L376" class="line" namn>
L376">33768.a >
L377" class="line" namn>
L377">3377./a>        .a href="+code=linebytes" class="sref">linebytes./a> = .a href="+code=of_getintprop_default" class="sref">of_getintprop_default8.a (.a href="+code=dp" class="sref">dp./a>, .spa  class="string">"linebytes"./spa  ,>
L378" class="line" namn>
L378">33788.a                                           .a href="+code=info" class="sref">info./a>->.a href="+code=var" class="sref">var8.a ..a href="+code=xres" class="sref">xres8.a );>
L379" class="line" namn>
L379">3379./a>        .a href="+code=info" class="sref">info./a>->.a href="+code=fix" class="sref">fix./a>..a href="+code=smem_len" class="sref">smem_len8.a  = .a href="+code=PAGE_ALIGN" class="sref">PAGE_ALIGN8.a (.a href="+code=linebytes" class="sref">linebytes./a> * .a href="+code=info" class="sref">info./a>->.a href="+code=var" class="sref">var8.a ..a href="+code=yres" class="sref">yres8.a );>
L380" class="line" namn>
L380">338.8.a >
L381" class="line" namn>
L381">3381./a>        .a href="+code=par" class="sref">par./a>->.a href="+code=regs" class="sref">regs./a> = .a href="+code=of_ioremap" class="sref">of_ioremap8.a (&.a href="+code=op" class="sref">op./a>->.a href="+code=resource" class="sref">resource./a>[0], .a href="+code=CG3_REGS_OFFSET" class="sref">CG3_REGS_OFFSET./a>,>
L382" class="line" namn>
L382">33828.a                                sizeof(struct3.a href="+code=cg3_regs" class="sref">cg3_regs./a>), .spa  class="string">"cg3 regs"./spa  );>
L383" class="line" namn>
L383">33838.a         if (!.a href="+code=par" class="sref">par./a>->.a href="+code=regs" class="sref">regs./a>)>
L384" class="line" namn>
L384">3384./a>                goto .a href="+code=out_release_fb" class="sref">out_release_fb./a>;>
L385" class="line" namn>
L385">33858.a >
L386" class="line" namn>
L386">3386./a>        .a href="+code=info" class="sref">info./a>->.a href="+code=flags" class="sref">flags./a> = .a href="+code=FBINFO_DEFAULT" class="sref">FBINFO_DEFAULT./a>;>
L387" class="line" namn>
L387">3387./a>        .a href="+code=info" class="sref">info./a>->.a href="+code=fbops" class="sref">fbops./a> = &.a href="+code=cg3_ops" class="sref">cg3_ops./a>;>
L388" class="line" namn>
L388">3388./a>        .a href="+code=info" class="sref">info./a>->.a href="+code=screen_base" class="sref">screen_base./a> = .a href="+code=of_ioremap" class="sref">of_ioremap8.a (&.a href="+code=op" class="sref">op./a>->.a href="+code=resource" class="sref">resource./a>[0], .a href="+code=CG3_RAM_OFFSET" class="sref">CG3_RAM_OFFSET./a>,>
L389" class="line" namn>
L389">33898.a                                        .a href="+code=info" class="sref">info./a>->.a href="+code=fix" class="sref">fix./a>..a href="+code=smem_len" class="sref">smem_len8.a , .spa  class="string">"cg3 ram"./spa  );>
L390" class="line" namn>
L390">33908.a         if (!.a href="+code=info" class="sref">info./a>->.a href="+code=screen_base" class="sref">screen_base./a>)>
L391" class="line" namn>
L391">3391./a>                goto .a href="+code=out_unmap_regs" class="sref">out_unmap_regs./a>;>
L392" class="line" namn>
L392">3392./a>>
L393" class="line" namn>
L393">3393./a>        .a href="+code=cg3_blank" class="sref">cg3_blank8.a (.a href="+code=FB_BLANK_UNBLANK" class="sref">FB_BLANK_UNBLANK8.a , .a href="+code=info" class="sref">info./a>);>
L394" class="line" namn>
L394">3394./a>>
L395" class="line" namn>
L395">33958.a         if (!.a href="+code=of_find_property" class="sref">of_find_property8.a (.a href="+code=dp" class="sref">dp./a>, .spa  class="string">"width"./spa  , .a href="+code=NULL" class="sref">NULL8.a )) {>
L396" class="line" namn>
L396">3396./a>                .a href="+code=err" class="sref">err./a> = .a href="+code=cg3_do_default_mode" class="sref">cg3_do_default_mode8.a (.a href="+code=par" class="sref">par./a>);>
L397" class="line" namn>
L397">3397./a>                if (.a href="+code=err" class="sref">err./a>)>
L398" class="line" namn>
L398">33988.a                         goto .a href="+code=out_unmap_screen" class="sref">out_unmap_screen./a>;>
L399" class="line" namn>
L399">33998.a         }>
L400" class="line" namn>
L400">340.8.a >
L401" class="line" namn>
L401">3401./a>        .a href="+code=err" class="sref">err./a> = .a href="+code=fb_alloc_cmap" class="sref">fb_alloc_cmap8.a (&.a href="+code=info" class="sref">info./a>->.a href="+code=cmap" class="sref">cmap8.a ,3256, 0);>
L402" class="line" namn>
L402">34028.a         if (.a href="+code=err" class="sref">err./a>)>
L403" class="line" namn>
L403">34038.a                 goto .a href="+code=out_unmap_screen" class="sref">out_unmap_screen./a>;>
L404" class="line" namn>
L404">3404./a>>
L405" class="line" namn>
L405">3405./a>        .a href="+code=fb_set_cmap" class="sref">fb_set_cmap8.a (&.a href="+code=info" class="sref">info./a>->.a href="+code=cmap" class="sref">cmap8.a ,3.a href="+code=info" class="sref">info./a>);>
L406" class="line" namn>
L406">34068.a >
L407" class="line" namn>
L407">3407./a>        .a href="+code=cg3_init_fix" class="sref">cg3_init_fix8.a (.a href="+code=info" class="sref">info./a>,3.a href="+code=linebytes" class="sref">linebytes./a>,3.a href="+code=dp" class="sref">dp./a>);>
L408" class="line" namn>
L408">3408./a>>
L409" class="line" namn>
L409">3409./a>        .a href="+code=err" class="sref">err./a> = .a href="+code=register_framnbuffer" class="sref">register_framnbuffer8.a (.a href="+code=info" class="sref">info./a>);>
L410" class="line" namn>
L410">34108.a         if (.a href="+code=err" class="sref">err./a> < 0)>
L411" class="line" namn>
L411">3411./a>                goto .a href="+code=out_dealloc_cmap" class="sref">out_dealloc_cmap./a>;>
L412" class="line" namn>
L412">3412./a>>
L413" class="line" namn>
L413">3413./a>        .a href="+code=dev_set_drvdata" class="sref">dev_set_drvdata8.a (&.a href="+code=op" class="sref">op./a>->.a href="+code=dev" class="sref">dev8.a ,3.a href="+code=info" class="sref">info./a>);>
L414" class="line" namn>
L414">3414./a>>
L415" class="line" namn>
L415">3415./a>        .a href="+code=printk" class="sref">printk8.a (.a href="+code=KERN_INFO" class="sref">KERN_INFO./a> .spa  class="string">"%s: cg3 at %lx:%lx\n"./spa  ,>
L416" class="line" namn>
L416">3416./a>               .a href="+code=dp" class="sref">dp./a>->.a href="+code=full_namn" class="sref">full_namn8.a ,3.a href="+code=par" class="sref">par./a>->.a href="+code=which_io" class="sref">which_io./a>,3.a href="+code=info" class="sref">info./a>->.a href="+code=fix" class="sref">fix./a>..a href="+code=smem_start" class="sref">smem_start8.a );>
L417" class="line" namn>
L417">3417./a>>
L418" class="line" namn>
L418">34188.a         return 0;>
L419" class="line" namn>
L419">34198.a >
L420" class="line" namn>
L420">3420./a>.a href="+code=out_dealloc_cmap" class="sref">out_dealloc_cmap./a>:>
L421" class="line" namn>
L421">3421./a>        .a href="+code=fb_dealloc_cmap" class="sref">fb_dealloc_cmap8.a (&.a href="+code=info" class="sref">info./a>->.a href="+code=cmap" class="sref">cmap8.a );>
L422" class="line" namn>
L422">3422./a>>
L423" class="line" namn>
L423">34238.a .a href="+code=out_unmap_screen" class="sref">out_unmap_screen./a>:>
L424" class="line" namn>
L424">3424./a>        .a href="+code=of_iounmap" class="sref">of_iounmap8.a (&.a href="+code=op" class="sref">op./a>->.a href="+code=resource" class="sref">resource./a>[0], .a href="+code=info" class="sref">info./a>->.a href="+code=screen_base" class="sref">screen_base./a>,3.a href="+code=info" class="sref">info./a>->.a href="+code=fix" class="sref">fix./a>..a href="+code=smem_len" class="sref">smem_len8.a );>
L425" class="line" namn>
L425">34258.a >
L426" class="line" namn>
L426">3426./a>.a href="+code=out_unmap_regs" class="sref">out_unmap_regs./a>:>
L427" class="line" namn>
L427">3427./a>        .a href="+code=of_iounmap" class="sref">of_iounmap8.a (&.a href="+code=op" class="sref">op./a>->.a href="+code=resource" class="sref">resource./a>[0], .a href="+code=par" class="sref">par./a>->.a href="+code=regs" class="sref">regs./a>, sizeof(struct3.a href="+code=cg3_regs" class="sref">cg3_regs./a>));>
L428" class="line" namn>
L428">3428./a>>
L429" class="line" namn>
L429">34298.a .a href="+code=out_release_fb" class="sref">out_release_fb./a>:>
L430" class="line" namn>
L430">3430./a>        .a href="+code=framnbuffer_release" class="sref">framnbuffer_release8.a (.a href="+code=info" class="sref">info./a>);>
L431" class="line" namn>
L431">3431./a>>
L432" class="line" namn>
L432">34328.a .a href="+code=out_err" class="sref">out_err./a>:>
L433" class="line" namn>
L433">3433./a>        return .a href="+code=err" class="sref">err./a>;>
L434" class="line" namn>
L434">3434./a>}>
L435" class="line" namn>
L435">34358.a >
L436" class="line" namn>
L436">3436./a>static int3.a href="+code=__devexit" class="sref">__devexit./a> .a href="+code=cg3_remove" class="sref">cg3_remove8.a (struct3.a href="+code=platform_device" class="sref">platform_device./a> *.a href="+code=op" class="sref">op./a>)>
L437" class="line" namn>
L437">34378.a {>
L438" class="line" namn>
L438">34388.a         struct3.a href="+code=fb_info" class="sref">fb_info./a> *.a href="+code=info" class="sref">info./a> = .a href="+code=dev_get_drvdata" class="sref">dev_get_drvdata8.a (&.a href="+code=op" class="sref">op./a>->.a href="+code=dev" class="sref">dev8.a );>
L439" class="line" namn>
L439">34398.a         struct3.a href="+code=cg3_par" class="sref">cg3_par./a> *.a href="+code=par" class="sref">par./a> = .a href="+code=info" class="sref">info./a>->.a href="+code=par" class="sref">par./a>;>
L440" class="line" namn>
L440">344.8.a >
L441" class="line" namn>
L441">3441./a>        .a href="+code=unregister_framnbuffer" class="sref">unregister_framnbuffer8.a (.a href="+code=info" class="sref">info./a>);>
L442" class="line" namn>
L442">34428.a         .a href="+code=fb_dealloc_cmap" class="sref">fb_dealloc_cmap8.a (&.a href="+code=info" class="sref">info./a>->.a href="+code=cmap" class="sref">cmap8.a );>
L443" class="line" namn>
L443">34438.a >
L444" class="line" namn>
L444">3444./a>        .a href="+code=of_iounmap" class="sref">of_iounmap8.a (&.a href="+code=op" class="sref">op./a>->.a href="+code=resource" class="sref">resource./a>[0], .a href="+code=par" class="sref">par./a>->.a href="+code=regs" class="sref">regs./a>, sizeof(struct3.a href="+code=cg3_regs" class="sref">cg3_regs./a>));>
L445" class="line" namn>
L445">3445./a>        .a href="+code=of_iounmap" class="sref">of_iounmap8.a (&.a href="+code=op" class="sref">op./a>->.a href="+code=resource" class="sref">resource./a>[0], .a href="+code=info" class="sref">info./a>->.a href="+code=screen_base" class="sref">screen_base./a>,3.a href="+code=info" class="sref">info./a>->.a href="+code=fix" class="sref">fix./a>..a href="+code=smem_len" class="sref">smem_len8.a );>
L446" class="line" namn>
L446">34468.a >
L447" class="line" namn>
L447">3447./a>        .a href="+code=framnbuffer_release" class="sref">framnbuffer_release8.a (.a href="+code=info" class="sref">info./a>);>
L448" class="line" namn>
L448">3448./a>>
L449" class="line" namn>
L449">3449./a>        .a href="+code=dev_set_drvdata" class="sref">dev_set_drvdata8.a (&.a href="+code=op" class="sref">op./a>->.a href="+code=dev" class="sref">dev8.a ,3.a href="+code=NULL" class="sref">NULL8.a );>
L450" class="line" namn>
L450">345.8.a >
L451" class="line" namn>
L451">3451./a>        return 0;>
L452" class="line" namn>
L452">3452./a>}>
L453" class="line" namn>
L453">34538.a >
L454" class="line" namn>
L454">3454./a>static const struct3.a href="+code=of_device_id" class="sref">of_device_id./a> .a href="+code=cg3_match" class="sref">cg3_match./a>[] = {>
L455" class="line" namn>
L455">3455./a>        {>
L456" class="line" namn>
L456">3456./a>                ..a href="+code=namn" class="sref">namn./a> = .spa  class="string">"cgthree"./spa  ,>
L457" class="line" namn>
L457">34578.a         },>
L458" class="line" namn>
L458">3458./a>        {>
L459" class="line" namn>
L459">34598.a                 ..a href="+code=namn" class="sref">namn./a> = .spa  class="string">"cgRDI"./spa  ,>
L460" class="line" namn>
L460">3460./a>        },>
L461" class="line" namn>
L461">3461./a>        {},>
L462" class="line" namn>
L462">3462./a>};>
L463" class="line" namn>
L463">34638.a .a href="+code=MODULE_DEVICE_TABLE" class="sref">MODULE_DEVICE_TABLE8.a (.a href="+code=of" class="sref">of8.a ,3.a href="+code=cg3_match" class="sref">cg3_match./a>);>
L464" class="line" namn>
L464">3464./a>>
L465" class="line" namn>
L465">3465./a>static struct3.a href="+code=platform_driver" class="sref">platform_driver./a> .a href="+code=cg3_driver" class="sref">cg3_driver./a> = {>
L466" class="line" namn>
L466">3466./a>        ..a href="+code=driver" class="sref">driver./a> = {>
L467" class="line" namn>
L467">3467./a>                ..a href="+code=namn" class="sref">namn./a> = .spa  class="string">"cg3"./spa  ,>
L468" class="line" namn>
L468">34688.a                 ..a href="+code=owner" class="sref">owner./a> = .a href="+code=THIS_MODULE" class="sref">THIS_MODULE8.a ,>
L469" class="line" namn>
L469">34698.a                 ..a href="+code=of_match_tabln" class="sref">of_match_tabln./a> = .a href="+code=cg3_match" class="sref">cg3_match./a>,>
L470" class="line" namn>
L470">3470./a>        },>
L471" class="line" namn>
L471">3471./a>        ..a href="+code=probn" class="sref">probn8.a           = .a href="+code=cg3_probn" class="sref">cg3_probn8.a ,>
L472" class="line" namn>
L472">34728.a         ..a href="+code=remove" class="sref">remove8.a          = .a href="+code=__devexit_p" class="sref">__devexit_p8.a (.a href="+code=cg3_remove" class="sref">cg3_remove8.a ),>
L473" class="line" namn>
L473">34738.a };>
L474" class="line" namn>
L474">3474./a>>
L475" class="line" namn>
L475">3475./a>static int3.a href="+code=__init" class="sref">__init./a> .a href="+code=cg3_init" class="sref">cg3_init8.a (void)>
L476" class="line" namn>
L476">34768.a {>
L477" class="line" namn>
L477">3477./a>        if (.a href="+code=fb_get_options" class="sref">fb_get_options8.a (.spa  class="string">"cg3fb"./spa  , .a href="+code=NULL" class="sref">NULL8.a ))>
L478" class="line" namn>
L478">34788.a                 return -.a href="+code=ENODEV" class="sref">ENODEV./a>;>
L479" class="line" namn>
L479">34798.a >
L480" class="line" namn>
L480">3480./a>        return .a href="+code=platform_driver_register" class="sref">platform_driver_register8.a (&.a href="+code=cg3_driver" class="sref">cg3_driver./a>);>
L481" class="line" namn>
L481">3481./a>}>
L482" class="line" namn>
L482">3482./a>>
L483" class="line" namn>
L483">34838.a static void3.a href="+code=__exit" class="sref">__exit./a> .a href="+code=cg3_exit" class="sref">cg3_exit8.a (void)>
L484" class="line" namn>
L484">3484./a>{>
L485" class="line" namn>
L485">3485./a>        .a href="+code=platform_driver_unregister" class="sref">platform_driver_unregister8.a (&.a href="+code=cg3_driver" class="sref">cg3_driver./a>);>
L486" class="line" namn>
L486">3486./a>}>
L487" class="line" namn>
L487">3487./a>>
L488" class="line" namn>
L488">3488./a>.a href="+code=module_init" class="sref">module_init8.a (.a href="+code=cg3_init" class="sref">cg3_init8.a );>
L489" class="line" namn>
L489">34898.a .a href="+code=module_exit" class="sref">module_exit8.a (.a href="+code=cg3_exit" class="sref">cg3_exit8.a );>
L490" class="line" namn>
L490">349.8.a >
L491" class="line" namn>
L491">3491./a>.a href="+code=MODULE_DESCRIPTION" class="sref">MODULE_DESCRIPTION8.a (.spa  class="string">"framnbuffer driver for CGthree chipsets"./spa  );>
L492" class="line" namn>
L492">34928.a .a href="+code=MODULE_AUTHOR" class="sref">MODULE_AUTHOR8.a (.spa  class="string">"David S. Miller <davem@davemloft.net>"./spa  );>
L493" class="line" namn>
L493">34938.a .a href="+code=MODULE_VERSION" class="sref">MODULE_VERSION8.a (.spa  class="string">"2.0"./spa  );>
L494" class="line" namn>
L494">3494./a>.a href="+code=MODULE_LICENSE" class="sref">MODULE_LICENSE8.a (.spa  class="string">"GPL"./spa  );>
L495" class="line" namn>
L495">34958.a 
lxr.linux.no kindly hosted by Redpill Linpro AS8.a ,3provider of Linux consulting and operations services since 1995.