€•l…Œsphinx.addnodes”Œdocument”“”)�”}”(Œ rawsource”Œ”Œchildren”]”(Œ translations”Œ LanguagesNode”“”)�”}”(hhh]”(hŒ pending_xref”“”)�”}”(hhh]”Œdocutils.nodes”ŒText”“”ŒChinese (Simplified)”…”�”}”Œparent”hsbaŒ attributes”}”(Œids”]”Œclasses”]”Œnames”]”Œdupnames”]”Œbackrefs”]”Œ refdomain”Œstd”Œreftype”Œdoc”Œ reftarget”Œ)/translations/zh_CN/gpu/intel-display/dsb”Œmodname”NŒ classname”NŒ refexplicit”ˆuŒtagname”hhh ubh)�”}”(hhh]”hŒChinese (Traditional)”…”�”}”hh2sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ)/translations/zh_TW/gpu/intel-display/dsb”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒItalian”…”�”}”hhFsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ)/translations/it_IT/gpu/intel-display/dsb”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒJapanese”…”�”}”hhZsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ)/translations/ja_JP/gpu/intel-display/dsb”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒKorean”…”�”}”hhnsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ)/translations/ko_KR/gpu/intel-display/dsb”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒPortuguese (Brazilian)”…”�”}”hh‚sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ)/translations/pt_BR/gpu/intel-display/dsb”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒSpanish”…”�”}”hh–sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ)/translations/sp_SP/gpu/intel-display/dsb”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubeh}”(h]”h ]”h"]”h$]”h&]”Œcurrent_language”ŒEnglish”uh1h hhŒ _document”hŒsource”NŒline”NubhŒcomment”“”)�”}”(hŒSPDX-License-Identifier: MIT”h]”hŒSPDX-License-Identifier: MIT”…”�”}”hh·sbah}”(h]”h ]”h"]”h$]”h&]”Œ xml:space”Œpreserve”uh1hµhhh²hh³ŒC/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb.rst”h´Kubh¶)�”}”(hŒ#Copyright © 2026 Intel Corporation”h]”hŒ#Copyright © 2026 Intel Corporation”…”�”}”hhÈsbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1hµhhh²hh³hÇh´KubhŒsection”“”)�”}”(hhh]”(hŒtitle”“”)�”}”(hŒDisplay State Buffer”h]”hŒDisplay State Buffer”…”�”}”(hhÝh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÛhhØh²hh³hÇh´KubhŒ paragraph”“”)�”}”(hX¤A DSB (Display State Buffer) is a queue of MMIO instructions in the memory which can be offloaded to DSB HW in Display Controller. DSB HW is a DMA engine that can be programmed to download the DSB from memory. It allows driver to batch submit display HW programming. This helps to reduce loading time and CPU activity, thereby making the context switch faster. DSB Support added from Gen12 Intel graphics based platform.”h]”hX¤A DSB (Display State Buffer) is a queue of MMIO instructions in the memory which can be offloaded to DSB HW in Display Controller. DSB HW is a DMA engine that can be programmed to download the DSB from memory. It allows driver to batch submit display HW programming. This helps to reduce loading time and CPU activity, thereby making the context switch faster. DSB Support added from Gen12 Intel graphics based platform.”…”�”}”(hhíh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³Œm/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:7: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´K?hhØh²hubhì)�”}”(hŒSDSB's can access only the pipe, plane, and transcoder Data Island Packet registers.”h]”hŒUDSB’s can access only the pipe, plane, and transcoder Data Island Packet registers.”…”�”}”(hhüh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³Œm/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:7: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´KFhhØh²hubhì)�”}”(hŒˆDSB HW can support only register writes (both indexed and direct MMIO writes). There are no registers reads possible with DSB HW engine.”h]”hŒˆDSB HW can support only register writes (both indexed and direct MMIO writes). There are no registers reads possible with DSB HW engine.”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³Œm/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:7: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´KIhhØh²hubhŒindex”“”)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(Œsingle”Œ(intel_dsb_reg_write_indexed (C function)”Œc.intel_dsb_reg_write_indexed”hNt”auh1jhhØh²hh³Nh´NubhŒdesc”“”)�”}”(hhh]”(hŒdesc_signature”“”)�”}”(hŒRvoid intel_dsb_reg_write_indexed (struct intel_dsb *dsb, intel_reg_t reg, u32 val)”h]”hŒdesc_signature_line”“”)�”}”(hŒQvoid intel_dsb_reg_write_indexed(struct intel_dsb *dsb, intel_reg_t reg, u32 val)”h]”(hŒdesc_sig_keyword_type”“”)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hj>h²hh³Nh´Nubah}”(h]”h ]”Œkt”ah"]”h$]”h&]”uh1j<hj8h²hh³Œn/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:10: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´MoubhŒdesc_sig_space”“”)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjPh²hh³Nh´Nubah}”(h]”h ]”Œw”ah"]”h$]”h&]”uh1jNhj8h²hh³jMh´MoubhŒ desc_name”“”)�”}”(hŒintel_dsb_reg_write_indexed”h]”hŒ desc_sig_name”“”)�”}”(hŒintel_dsb_reg_write_indexed”h]”hŒintel_dsb_reg_write_indexed”…”�”}”(hjgh²hh³Nh´Nubah}”(h]”h ]”Œn”ah"]”h$]”h&]”uh1jehjaubah}”(h]”h ]”(Œsig-name”Œdescname”eh"]”h$]”h&]”hÅhÆuh1j_hj8h²hh³jMh´MoubhŒdesc_parameterlist”“”)�”}”(hŒ1(struct intel_dsb *dsb, intel_reg_t reg, u32 val)”h]”(hŒdesc_parameter”“”)�”}”(hŒstruct intel_dsb *dsb”h]”(hŒdesc_sig_keyword”“”)�”}”(hŒstruct”h]”hŒstruct”…”�”}”(hjŒh²hh³Nh´Nubah}”(h]”h ]”Œk”ah"]”h$]”h&]”uh1jŠhj†ubjO)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj›h²hh³Nh´Nubah}”(h]”h ]”j[ah"]”h$]”h&]”uh1jNhj†ubh)�”}”(hhh]”jf)�”}”(hŒ intel_dsb”h]”hŒ intel_dsb”…”�”}”(hj¬h²hh³Nh´Nubah}”(h]”h ]”jrah"]”h$]”h&]”uh1jehj©ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”Œc”Œreftype”Œ identifier”Œ reftarget”j®Œmodname”NŒ classname”NŒ c:parent_key”Œsphinx.domains.c”Œ LookupKey”“”)�”}”Œdata”]”jÈŒ ASTIdentifier”“”)�”}”jÃjisbŒc.intel_dsb_reg_write_indexed”†”asbuh1hhj†ubjO)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÕh²hh³Nh´Nubah}”(h]”h ]”j[ah"]”h$]”h&]”uh1jNhj†ubhŒdesc_sig_punctuation”“”)�”}”(hŒ*”h]”hŒ*”…”�”}”(hjåh²hh³Nh´Nubah}”(h]”h ]”Œp”ah"]”h$]”h&]”uh1jãhj†ubjf)�”}”(hŒdsb”h]”hŒdsb”…”�”}”(hjôh²hh³Nh´Nubah}”(h]”h ]”jrah"]”h$]”h&]”uh1jehj†ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j„hj€ubj…)�”}”(hŒintel_reg_t reg”h]”(h)�”}”(hhh]”jf)�”}”(hŒ intel_reg_t”h]”hŒ intel_reg_t”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”jrah"]”h$]”h&]”uh1jehj ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jÁŒreftype”jÃŒ reftarget”jŒmodname”NŒ classname”NjÇjÊ)�”}”jÍ]”jÑŒc.intel_dsb_reg_write_indexed”†”asbuh1hhj ubjO)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj.h²hh³Nh´Nubah}”(h]”h ]”j[ah"]”h$]”h&]”uh1jNhj ubjf)�”}”(hŒreg”h]”hŒreg”…”�”}”(hj<h²hh³Nh´Nubah}”(h]”h ]”jrah"]”h$]”h&]”uh1jehj ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j„hj€ubj…)�”}”(hŒu32 val”h]”(h)�”}”(hhh]”jf)�”}”(hŒu32”h]”hŒu32”…”�”}”(hjXh²hh³Nh´Nubah}”(h]”h ]”jrah"]”h$]”h&]”uh1jehjUubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jÁŒreftype”jÃŒ reftarget”jZŒmodname”NŒ classname”NjÇjÊ)�”}”jÍ]”jÑŒc.intel_dsb_reg_write_indexed”†”asbuh1hhjQubjO)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjvh²hh³Nh´Nubah}”(h]”h ]”j[ah"]”h$]”h&]”uh1jNhjQubjf)�”}”(hŒval”h]”hŒval”…”�”}”(hj„h²hh³Nh´Nubah}”(h]”h ]”jrah"]”h$]”h&]”uh1jehjQubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j„hj€ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j~hj8h²hh³jMh´Moubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆŒ add_permalink”ˆuh1j6Œsphinx_line_type”Œ declarator”hj2h²hh³jMh´Moubah}”(h]”j)ah ]”(Œsig”Œ sig-object”eh"]”h$]”h&]”Œ is_multiline”ˆŒ _toc_parts”)Œ _toc_name”huh1j0h³jMh´Mohj-h²hubhŒ desc_content”“”)�”}”(hhh]”hì)�”}”(hŒ.Emit indexed register write to the DSB context”h]”hŒ.Emit indexed register write to the DSB context”…”�”}”(hj¸h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³Œn/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:10: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´Mohjµh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j³hj-h²hh³jMh´Moubeh}”(h]”h ]”(jÁŒfunction”eh"]”h$]”h&]”Œdomain”jÁŒobjtype”jÐŒdesctype”jÐŒnoindex”‰Œ noindexentry”‰Œnocontentsentry”‰uh1j+h²hhhØh³Nh´NubhŒ container”“”)�”}”(hX\**Parameters** ``struct intel_dsb *dsb`` DSB context ``intel_reg_t reg`` register address. ``u32 val`` value. **Description** This function is used for writing register-value pair in command buffer of DSB. Note that indexed writes are slower than normal MMIO writes for a small number (less than 5 or so) of writes to the same register.”h]”(hì)�”}”(hŒ**Parameters**”h]”hŒstrong”“”)�”}”(hjâh]”hŒ Parameters”…”�”}”(hjæh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jähjàubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³Œn/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:10: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´MshjÜubhŒdefinition_list”“”)�”}”(hhh]”(hŒdefinition_list_item”“”)�”}”(hŒ&``struct intel_dsb *dsb`` DSB context ”h]”(hŒterm”“”)�”}”(hŒ``struct intel_dsb *dsb``”h]”hŒliteral”“”)�”}”(hj h]”hŒstruct intel_dsb *dsb”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j hjubah}”(h]”h ]”h"]”h$]”h&]”uh1jh³Œn/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:10: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´MphjubhŒ definition”“”)�”}”(hhh]”hì)�”}”(hŒ DSB context”h]”hŒ DSB context”…”�”}”(hj&h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³j h´Mphj#ubah}”(h]”h ]”h"]”h$]”h&]”uh1j!hjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÿh³j h´Mphjüubj)�”}”(hŒ&``intel_reg_t reg`` register address. ”h]”(j)�”}”(hŒ``intel_reg_t reg``”h]”j )�”}”(hjFh]”hŒintel_reg_t reg”…”�”}”(hjHh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j hjDubah}”(h]”h ]”h"]”h$]”h&]”uh1jh³Œn/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:10: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´Mqhj@ubj")�”}”(hhh]”hì)�”}”(hŒregister address.”h]”hŒregister address.”…”�”}”(hj_h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³j[h´Mqhj\ubah}”(h]”h ]”h"]”h$]”h&]”uh1j!hj@ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÿh³j[h´Mqhjüubj)�”}”(hŒ``u32 val`` value. ”h]”(j)�”}”(hŒ ``u32 val``”h]”j )�”}”(hjh]”hŒu32 val”…”�”}”(hj�h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j hj}ubah}”(h]”h ]”h"]”h$]”h&]”uh1jh³Œn/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:10: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´Mrhjyubj")�”}”(hhh]”hì)�”}”(hŒvalue.”h]”hŒvalue.”…”�”}”(hj˜h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³j”h´Mrhj•ubah}”(h]”h ]”h"]”h$]”h&]”uh1j!hjyubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÿh³j”h´Mrhjüubeh}”(h]”h ]”h"]”h$]”h&]”uh1júhjÜubhì)�”}”(hŒ**Description**”h]”jå)�”}”(hjºh]”hŒ Description”…”�”}”(hj¼h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jähj¸ubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³Œn/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:10: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´MthjÜubhì)�”}”(hŒOThis function is used for writing register-value pair in command buffer of DSB.”h]”hŒOThis function is used for writing register-value pair in command buffer of DSB.”…”�”}”(hjÐh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³Œn/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:10: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´MshjÜubhì)�”}”(hŒ‚Note that indexed writes are slower than normal MMIO writes for a small number (less than 5 or so) of writes to the same register.”h]”hŒ‚Note that indexed writes are slower than normal MMIO writes for a small number (less than 5 or so) of writes to the same register.”…”�”}”(hjßh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³Œn/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:10: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´MvhjÜubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jÚhhØh²hh³Nh´Nubj)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j'Œintel_dsb_commit (C function)”Œc.intel_dsb_commit”hNt”auh1jhhØh²hh³Nh´Nubj,)�”}”(hhh]”(j1)�”}”(hŒ-void intel_dsb_commit (struct intel_dsb *dsb)”h]”j7)�”}”(hŒ,void intel_dsb_commit(struct intel_dsb *dsb)”h]”(j=)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”jIah"]”h$]”h&]”uh1j<hj h²hh³Œn/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:10: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´M¶ubjO)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”j[ah"]”h$]”h&]”uh1jNhj h²hh³jh´M¶ubj`)�”}”(hŒintel_dsb_commit”h]”jf)�”}”(hŒintel_dsb_commit”h]”hŒintel_dsb_commit”…”�”}”(hj/h²hh³Nh´Nubah}”(h]”h ]”jrah"]”h$]”h&]”uh1jehj+ubah}”(h]”h ]”(jyjzeh"]”h$]”h&]”hÅhÆuh1j_hj h²hh³jh´M¶ubj)�”}”(hŒ(struct intel_dsb *dsb)”h]”j…)�”}”(hŒstruct intel_dsb *dsb”h]”(j‹)�”}”(hjŽh]”hŒstruct”…”�”}”(hjKh²hh³Nh´Nubah}”(h]”h ]”j—ah"]”h$]”h&]”uh1jŠhjGubjO)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjXh²hh³Nh´Nubah}”(h]”h ]”j[ah"]”h$]”h&]”uh1jNhjGubh)�”}”(hhh]”jf)�”}”(hŒ intel_dsb”h]”hŒ intel_dsb”…”�”}”(hjih²hh³Nh´Nubah}”(h]”h ]”jrah"]”h$]”h&]”uh1jehjfubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jÁŒreftype”jÃŒ reftarget”jkŒmodname”NŒ classname”NjÇjÊ)�”}”jÍ]”jÐ)�”}”jÃj1sbŒc.intel_dsb_commit”†”asbuh1hhjGubjO)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj‰h²hh³Nh´Nubah}”(h]”h ]”j[ah"]”h$]”h&]”uh1jNhjGubjä)�”}”(hjçh]”hŒ*”…”�”}”(hj—h²hh³Nh´Nubah}”(h]”h ]”jðah"]”h$]”h&]”uh1jãhjGubjf)�”}”(hŒdsb”h]”hŒdsb”…”�”}”(hj¤h²hh³Nh´Nubah}”(h]”h ]”jrah"]”h$]”h&]”uh1jehjGubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j„hjCubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j~hj h²hh³jh´M¶ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj¥ˆuh1j6j¦j§hjh²hh³jh´M¶ubah}”(h]”jah ]”(j«j¬eh"]”h$]”h&]”j°ˆj±)j²huh1j0h³jh´M¶hjh²hubj´)�”}”(hhh]”hì)�”}”(hŒ"Trigger workload execution of DSB.”h]”hŒ"Trigger workload execution of DSB.”…”�”}”(hjÎh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³Œn/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:10: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´M¶hjËh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j³hjh²hh³jh´M¶ubeh}”(h]”h ]”(jÁŒfunction”eh"]”h$]”h&]”jÔjÁjÕjæjÖjæj׉j؉jÙ‰uh1j+h²hhhØh³Nh´NubjÛ)�”}”(hŒ‰**Parameters** ``struct intel_dsb *dsb`` DSB context **Description** This function is used to do actual write to hardware using DSB.”h]”(hì)�”}”(hŒ**Parameters**”h]”jå)�”}”(hjðh]”hŒ Parameters”…”�”}”(hjòh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jähjîubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³Œn/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:10: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´Mºhjêubjû)�”}”(hhh]”j)�”}”(hŒ&``struct intel_dsb *dsb`` DSB context ”h]”(j)�”}”(hŒ``struct intel_dsb *dsb``”h]”j )�”}”(hjh]”hŒstruct intel_dsb *dsb”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j hj ubah}”(h]”h ]”h"]”h$]”h&]”uh1jh³Œn/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:10: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´M·hj ubj")�”}”(hhh]”hì)�”}”(hŒ DSB context”h]”hŒ DSB context”…”�”}”(hj(h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³j$h´M·hj%ubah}”(h]”h ]”h"]”h$]”h&]”uh1j!hj ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÿh³j$h´M·hjubah}”(h]”h ]”h"]”h$]”h&]”uh1júhjêubhì)�”}”(hŒ**Description**”h]”jå)�”}”(hjJh]”hŒ Description”…”�”}”(hjLh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jähjHubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³Œn/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:10: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´M¹hjêubhì)�”}”(hŒ?This function is used to do actual write to hardware using DSB.”h]”hŒ?This function is used to do actual write to hardware using DSB.”…”�”}”(hj`h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³Œn/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:10: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´M¸hjêubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jÚhhØh²hh³Nh´Nubj)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j'Œintel_dsb_prepare (C function)”Œc.intel_dsb_prepare”hNt”auh1jhhØh²hh³Nh´Nubj,)�”}”(hhh]”(j1)�”}”(hŒ‘struct intel_dsb * intel_dsb_prepare (struct intel_atomic_state *state, struct intel_crtc *crtc, enum intel_dsb_id dsb_id, unsigned int max_cmds)”h]”j7)�”}”(hŒ�struct intel_dsb *intel_dsb_prepare(struct intel_atomic_state *state, struct intel_crtc *crtc, enum intel_dsb_id dsb_id, unsigned int max_cmds)”h]”(j‹)�”}”(hjŽh]”hŒstruct”…”�”}”(hj�h²hh³Nh´Nubah}”(h]”h ]”j—ah"]”h$]”h&]”uh1jŠhj‹h²hh³Œn/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:10: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´MubjO)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj�h²hh³Nh´Nubah}”(h]”h ]”j[ah"]”h$]”h&]”uh1jNhj‹h²hh³jœh´Mubh)�”}”(hhh]”jf)�”}”(hŒ intel_dsb”h]”hŒ intel_dsb”…”�”}”(hj®h²hh³Nh´Nubah}”(h]”h ]”jrah"]”h$]”h&]”uh1jehj«ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jÁŒreftype”jÃŒ reftarget”j°Œmodname”NŒ classname”NjÇjÊ)�”}”jÍ]”jÐ)�”}”jÃŒintel_dsb_prepare”sbŒc.intel_dsb_prepare”†”asbuh1hhj‹h²hh³jœh´MubjO)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÏh²hh³Nh´Nubah}”(h]”h ]”j[ah"]”h$]”h&]”uh1jNhj‹h²hh³jœh´Mubjä)�”}”(hjçh]”hŒ*”…”�”}”(hjÝh²hh³Nh´Nubah}”(h]”h ]”jðah"]”h$]”h&]”uh1jãhj‹h²hh³jœh´Mubj`)�”}”(hŒintel_dsb_prepare”h]”jf)�”}”(hjÌh]”hŒintel_dsb_prepare”…”�”}”(hjîh²hh³Nh´Nubah}”(h]”h ]”jrah"]”h$]”h&]”uh1jehjêubah}”(h]”h ]”(jyjzeh"]”h$]”h&]”hÅhÆuh1j_hj‹h²hh³jœh´Mubj)�”}”(hŒl(struct intel_atomic_state *state, struct intel_crtc *crtc, enum intel_dsb_id dsb_id, unsigned int max_cmds)”h]”(j…)�”}”(hŒ struct intel_atomic_state *state”h]”(j‹)�”}”(hjŽh]”hŒstruct”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”j—ah"]”h$]”h&]”uh1jŠhjubjO)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”j[ah"]”h$]”h&]”uh1jNhjubh)�”}”(hhh]”jf)�”}”(hŒintel_atomic_state”h]”hŒintel_atomic_state”…”�”}”(hj'h²hh³Nh´Nubah}”(h]”h ]”jrah"]”h$]”h&]”uh1jehj$ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jÁŒreftype”jÃŒ reftarget”j)Œmodname”NŒ classname”NjÇjÊ)�”}”jÍ]”jÊŒc.intel_dsb_prepare”†”asbuh1hhjubjO)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjEh²hh³Nh´Nubah}”(h]”h ]”j[ah"]”h$]”h&]”uh1jNhjubjä)�”}”(hjçh]”hŒ*”…”�”}”(hjSh²hh³Nh´Nubah}”(h]”h ]”jðah"]”h$]”h&]”uh1jãhjubjf)�”}”(hŒstate”h]”hŒstate”…”�”}”(hj`h²hh³Nh´Nubah}”(h]”h ]”jrah"]”h$]”h&]”uh1jehjubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j„hjubj…)�”}”(hŒstruct intel_crtc *crtc”h]”(j‹)�”}”(hjŽh]”hŒstruct”…”�”}”(hjyh²hh³Nh´Nubah}”(h]”h ]”j—ah"]”h$]”h&]”uh1jŠhjuubjO)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj†h²hh³Nh´Nubah}”(h]”h ]”j[ah"]”h$]”h&]”uh1jNhjuubh)�”}”(hhh]”jf)�”}”(hŒ intel_crtc”h]”hŒ intel_crtc”…”�”}”(hj—h²hh³Nh´Nubah}”(h]”h ]”jrah"]”h$]”h&]”uh1jehj”ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jÁŒreftype”jÃŒ reftarget”j™Œmodname”NŒ classname”NjÇjÊ)�”}”jÍ]”jÊŒc.intel_dsb_prepare”†”asbuh1hhjuubjO)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjµh²hh³Nh´Nubah}”(h]”h ]”j[ah"]”h$]”h&]”uh1jNhjuubjä)�”}”(hjçh]”hŒ*”…”�”}”(hjÃh²hh³Nh´Nubah}”(h]”h ]”jðah"]”h$]”h&]”uh1jãhjuubjf)�”}”(hŒcrtc”h]”hŒcrtc”…”�”}”(hjÐh²hh³Nh´Nubah}”(h]”h ]”jrah"]”h$]”h&]”uh1jehjuubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j„hjubj…)�”}”(hŒenum intel_dsb_id dsb_id”h]”(j‹)�”}”(hŒenum”h]”hŒenum”…”�”}”(hjéh²hh³Nh´Nubah}”(h]”h ]”j—ah"]”h$]”h&]”uh1jŠhjåubjO)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj÷h²hh³Nh´Nubah}”(h]”h ]”j[ah"]”h$]”h&]”uh1jNhjåubh)�”}”(hhh]”jf)�”}”(hŒ intel_dsb_id”h]”hŒ intel_dsb_id”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”jrah"]”h$]”h&]”uh1jehjubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jÁŒreftype”jÃŒ reftarget”j Œmodname”NŒ classname”NjÇjÊ)�”}”jÍ]”jÊŒc.intel_dsb_prepare”†”asbuh1hhjåubjO)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj&h²hh³Nh´Nubah}”(h]”h ]”j[ah"]”h$]”h&]”uh1jNhjåubjf)�”}”(hŒdsb_id”h]”hŒdsb_id”…”�”}”(hj4h²hh³Nh´Nubah}”(h]”h ]”jrah"]”h$]”h&]”uh1jehjåubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j„hjubj…)�”}”(hŒunsigned int max_cmds”h]”(j=)�”}”(hŒunsigned”h]”hŒunsigned”…”�”}”(hjMh²hh³Nh´Nubah}”(h]”h ]”jIah"]”h$]”h&]”uh1j<hjIubjO)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj[h²hh³Nh´Nubah}”(h]”h ]”j[ah"]”h$]”h&]”uh1jNhjIubj=)�”}”(hŒint”h]”hŒint”…”�”}”(hjih²hh³Nh´Nubah}”(h]”h ]”jIah"]”h$]”h&]”uh1j<hjIubjO)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjwh²hh³Nh´Nubah}”(h]”h ]”j[ah"]”h$]”h&]”uh1jNhjIubjf)�”}”(hŒmax_cmds”h]”hŒmax_cmds”…”�”}”(hj…h²hh³Nh´Nubah}”(h]”h ]”jrah"]”h$]”h&]”uh1jehjIubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j„hjubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j~hj‹h²hh³jœh´Mubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj¥ˆuh1j6j¦j§hj‡h²hh³jœh´Mubah}”(h]”j‚ah ]”(j«j¬eh"]”h$]”h&]”j°ˆj±)j²huh1j0h³jœh´Mhj„h²hubj´)�”}”(hhh]”hì)�”}”(hŒ-Allocate, pin and map the DSB command buffer.”h]”hŒ-Allocate, pin and map the DSB command buffer.”…”�”}”(hj¯h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³Œn/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:10: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´Mhj¬h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j³hj„h²hh³jœh´Mubeh}”(h]”h ]”(jÁŒfunction”eh"]”h$]”h&]”jÔjÁjÕjÇjÖjÇj׉j؉jÙ‰uh1j+h²hhhØh³Nh´NubjÛ)�”}”(hX�**Parameters** ``struct intel_atomic_state *state`` the atomic state ``struct intel_crtc *crtc`` the CRTC ``enum intel_dsb_id dsb_id`` the DSB engine to use ``unsigned int max_cmds`` number of commands we need to fit into command buffer **Description** This function prepare the command buffer which is used to store dsb instructions with data. **Return** DSB context, NULL on failure”h]”(hì)�”}”(hŒ**Parameters**”h]”jå)�”}”(hjÑh]”hŒ Parameters”…”�”}”(hjÓh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jähjÏubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³Œn/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:10: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´M hjËubjû)�”}”(hhh]”(j)�”}”(hŒ6``struct intel_atomic_state *state`` the atomic state ”h]”(j)�”}”(hŒ$``struct intel_atomic_state *state``”h]”j )�”}”(hjðh]”hŒ struct intel_atomic_state *state”…”�”}”(hjòh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j hjîubah}”(h]”h ]”h"]”h$]”h&]”uh1jh³Œn/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:10: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´Mhjêubj")�”}”(hhh]”hì)�”}”(hŒthe atomic state”h]”hŒthe atomic state”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³jh´Mhjubah}”(h]”h ]”h"]”h$]”h&]”uh1j!hjêubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÿh³jh´Mhjçubj)�”}”(hŒ%``struct intel_crtc *crtc`` the CRTC ”h]”(j)�”}”(hŒ``struct intel_crtc *crtc``”h]”j )�”}”(hj)h]”hŒstruct intel_crtc *crtc”…”�”}”(hj+h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j hj'ubah}”(h]”h ]”h"]”h$]”h&]”uh1jh³Œn/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:10: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´Mhj#ubj")�”}”(hhh]”hì)�”}”(hŒthe CRTC”h]”hŒthe CRTC”…”�”}”(hjBh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³j>h´Mhj?ubah}”(h]”h ]”h"]”h$]”h&]”uh1j!hj#ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÿh³j>h´Mhjçubj)�”}”(hŒ3``enum intel_dsb_id dsb_id`` the DSB engine to use ”h]”(j)�”}”(hŒ``enum intel_dsb_id dsb_id``”h]”j )�”}”(hjbh]”hŒenum intel_dsb_id dsb_id”…”�”}”(hjdh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j hj`ubah}”(h]”h ]”h"]”h$]”h&]”uh1jh³Œn/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:10: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´Mhj\ubj")�”}”(hhh]”hì)�”}”(hŒthe DSB engine to use”h]”hŒthe DSB engine to use”…”�”}”(hj{h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³jwh´Mhjxubah}”(h]”h ]”h"]”h$]”h&]”uh1j!hj\ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÿh³jwh´Mhjçubj)�”}”(hŒP``unsigned int max_cmds`` number of commands we need to fit into command buffer ”h]”(j)�”}”(hŒ``unsigned int max_cmds``”h]”j )�”}”(hj›h]”hŒunsigned int max_cmds”…”�”}”(hj�h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j hj™ubah}”(h]”h ]”h"]”h$]”h&]”uh1jh³Œn/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:10: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´M hj•ubj")�”}”(hhh]”hì)�”}”(hŒ5number of commands we need to fit into command buffer”h]”hŒ5number of commands we need to fit into command buffer”…”�”}”(hj´h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³j°h´M hj±ubah}”(h]”h ]”h"]”h$]”h&]”uh1j!hj•ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÿh³j°h´M hjçubeh}”(h]”h ]”h"]”h$]”h&]”uh1júhjËubhì)�”}”(hŒ**Description**”h]”jå)�”}”(hjÖh]”hŒ Description”…”�”}”(hjØh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jähjÔubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³Œn/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:10: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´M hjËubhì)�”}”(hŒ[This function prepare the command buffer which is used to store dsb instructions with data.”h]”hŒ[This function prepare the command buffer which is used to store dsb instructions with data.”…”�”}”(hjìh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³Œn/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:10: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´M hjËubhì)�”}”(hŒ **Return**”h]”jå)�”}”(hjýh]”hŒReturn”…”�”}”(hjÿh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jähjûubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³Œn/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:10: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´M hjËubhì)�”}”(hŒDSB context, NULL on failure”h]”hŒDSB context, NULL on failure”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³Œn/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:10: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´MhjËubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jÚhhØh²hh³Nh´Nubj)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j'Œintel_dsb_cleanup (C function)”Œc.intel_dsb_cleanup”hNt”auh1jhhØh²hh³Nh´Nubj,)�”}”(hhh]”(j1)�”}”(hŒ.void intel_dsb_cleanup (struct intel_dsb *dsb)”h]”j7)�”}”(hŒ-void intel_dsb_cleanup(struct intel_dsb *dsb)”h]”(j=)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hjB h²hh³Nh´Nubah}”(h]”h ]”jIah"]”h$]”h&]”uh1j<hj> h²hh³Œn/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:10: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´MIubjO)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjQ h²hh³Nh´Nubah}”(h]”h ]”j[ah"]”h$]”h&]”uh1jNhj> h²hh³jP h´MIubj`)�”}”(hŒintel_dsb_cleanup”h]”jf)�”}”(hŒintel_dsb_cleanup”h]”hŒintel_dsb_cleanup”…”�”}”(hjc h²hh³Nh´Nubah}”(h]”h ]”jrah"]”h$]”h&]”uh1jehj_ ubah}”(h]”h ]”(jyjzeh"]”h$]”h&]”hÅhÆuh1j_hj> h²hh³jP h´MIubj)�”}”(hŒ(struct intel_dsb *dsb)”h]”j…)�”}”(hŒstruct intel_dsb *dsb”h]”(j‹)�”}”(hjŽh]”hŒstruct”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”j—ah"]”h$]”h&]”uh1jŠhj{ ubjO)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjŒ h²hh³Nh´Nubah}”(h]”h ]”j[ah"]”h$]”h&]”uh1jNhj{ ubh)�”}”(hhh]”jf)�”}”(hŒ intel_dsb”h]”hŒ intel_dsb”…”�”}”(hj� h²hh³Nh´Nubah}”(h]”h ]”jrah"]”h$]”h&]”uh1jehjš ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jÁŒreftype”jÃŒ reftarget”jŸ Œmodname”NŒ classname”NjÇjÊ)�”}”jÍ]”jÐ)�”}”jÃje sbŒc.intel_dsb_cleanup”†”asbuh1hhj{ ubjO)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj½ h²hh³Nh´Nubah}”(h]”h ]”j[ah"]”h$]”h&]”uh1jNhj{ ubjä)�”}”(hjçh]”hŒ*”…”�”}”(hjË h²hh³Nh´Nubah}”(h]”h ]”jðah"]”h$]”h&]”uh1jãhj{ ubjf)�”}”(hŒdsb”h]”hŒdsb”…”�”}”(hjØ h²hh³Nh´Nubah}”(h]”h ]”jrah"]”h$]”h&]”uh1jehj{ ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j„hjw ubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j~hj> h²hh³jP h´MIubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj¥ˆuh1j6j¦j§hj: h²hh³jP h´MIubah}”(h]”j5 ah ]”(j«j¬eh"]”h$]”h&]”j°ˆj±)j²huh1j0h³jP h´MIhj7 h²hubj´)�”}”(hhh]”hì)�”}”(hŒTo cleanup DSB context.”h]”hŒTo cleanup DSB context.”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³Œn/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:10: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´MIhjÿ h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j³hj7 h²hh³jP h´MIubeh}”(h]”h ]”(jÁŒfunction”eh"]”h$]”h&]”jÔjÁjÕj jÖj j׉j؉jÙ‰uh1j+h²hhhØh³Nh´NubjÛ)�”}”(hŒ­**Parameters** ``struct intel_dsb *dsb`` DSB context **Description** This function cleanup the DSB context by unpinning and releasing the VMA object associated with it.”h]”(hì)�”}”(hŒ**Parameters**”h]”jå)�”}”(hj$ h]”hŒ Parameters”…”�”}”(hj& h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jähj" ubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³Œn/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:10: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´MMhj ubjû)�”}”(hhh]”j)�”}”(hŒ&``struct intel_dsb *dsb`` DSB context ”h]”(j)�”}”(hŒ``struct intel_dsb *dsb``”h]”j )�”}”(hjC h]”hŒstruct intel_dsb *dsb”…”�”}”(hjE h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j hjA ubah}”(h]”h ]”h"]”h$]”h&]”uh1jh³Œn/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:10: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´MJhj= ubj")�”}”(hhh]”hì)�”}”(hŒ DSB context”h]”hŒ DSB context”…”�”}”(hj\ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³jX h´MJhjY ubah}”(h]”h ]”h"]”h$]”h&]”uh1j!hj= ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÿh³jX h´MJhj: ubah}”(h]”h ]”h"]”h$]”h&]”uh1júhj ubhì)�”}”(hŒ**Description**”h]”jå)�”}”(hj~ h]”hŒ Description”…”�”}”(hj€ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jähj| ubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³Œn/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:10: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´MLhj ubhì)�”}”(hŒcThis function cleanup the DSB context by unpinning and releasing the VMA object associated with it.”h]”hŒcThis function cleanup the DSB context by unpinning and releasing the VMA object associated with it.”…”�”}”(hj” h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³Œn/var/lib/git/docbuild/linux/Documentation/gpu/intel-display/dsb:10: ./drivers/gpu/drm/i915/display/intel_dsb.c”h´MKhj ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jÚhhØh²hh³Nh´Nubeh}”(h]”Œdisplay-state-buffer”ah ]”h"]”Œdisplay state buffer”ah$]”h&]”uh1hÖhhh²hh³hÇh´Kubeh}”(h]”h ]”h"]”h$]”h&]”Œsource”hÇuh1hŒcurrent_source”NŒ current_line”NŒsettings”Œdocutils.frontend”ŒValues”“”)�”}”(hÛNŒ generator”NŒ datestamp”NŒ source_link”NŒ source_url”NŒ toc_backlinks”Œentry”Œfootnote_backlinks”KŒ sectnum_xform”KŒstrip_comments”NŒstrip_elements_with_classes”NŒ strip_classes”NŒ report_level”KŒ halt_level”KŒexit_status_level”KŒdebug”NŒwarning_stream”NŒ traceback”ˆŒinput_encoding”Œ utf-8-sig”Œinput_encoding_error_handler”Œstrict”Œoutput_encoding”Œutf-8”Œoutput_encoding_error_handler”jÕ Œerror_encoding”Œutf-8”Œerror_encoding_error_handler”Œbackslashreplace”Œ language_code”Œen”Œrecord_dependencies”NŒconfig”NŒ id_prefix”hŒauto_id_prefix”Œid”Œ dump_settings”NŒdump_internals”NŒdump_transforms”NŒdump_pseudo_xml”NŒexpose_internals”NŒstrict_visitor”NŒ_disable_config”NŒ_source”hÇŒ _destination”NŒ _config_files”]”Œ7/var/lib/git/docbuild/linux/Documentation/docutils.conf”aŒfile_insertion_enabled”ˆŒ raw_enabled”KŒline_length_limit”M'Œpep_references”NŒ pep_base_url”Œhttps://peps.python.org/”Œpep_file_url_template”Œpep-%04d”Œrfc_references”NŒ rfc_base_url”Œ&https://datatracker.ietf.org/doc/html/”Œ tab_width”KŒtrim_footnote_reference_space”‰Œsyntax_highlight”Œlong”Œ smart_quotes”ˆŒsmartquotes_locales”]”Œcharacter_level_inline_markup”‰Œdoctitle_xform”‰Œ docinfo_xform”KŒsectsubtitle_xform”‰Œ image_loading”Œlink”Œembed_stylesheet”‰Œcloak_email_addresses”ˆŒsection_self_link”‰Œenv”NubŒreporter”NŒindirect_targets”]”Œsubstitution_defs”}”Œsubstitution_names”}”Œrefnames”}”Œrefids”}”Œnameids”}”j¯ j¬ sŒ nametypes”}”j¯ ‰sh}”(j¬ hØj)j2jjj‚j‡j5 j: uŒ footnote_refs”}”Œ citation_refs”}”Œ autofootnotes”]”Œautofootnote_refs”]”Œsymbol_footnotes”]”Œsymbol_footnote_refs”]”Œ footnotes”]”Œ citations”]”Œautofootnote_start”KŒsymbol_footnote_start”KŒ id_counter”Œ collections”ŒCounter”“”}”…”R”Œparse_messages”]”Œtransform_messages”]”Œ transformer”NŒ include_log”]”Œ decoration”Nh²hub.