€•DŒ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/leds/leds-lm3556”Œ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/leds/leds-lm3556”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒItalian”…””}”hhFsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ$/translations/it_IT/leds/leds-lm3556”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒJapanese”…””}”hhZsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ$/translations/ja_JP/leds/leds-lm3556”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒKorean”…””}”hhnsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ$/translations/ko_KR/leds/leds-lm3556”Œ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/leds/leds-lm3556”Œ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/leds/leds-lm3556”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubeh}”(h]”h ]”h"]”h$]”h&]”Œcurrent_language”ŒEnglish”uh1h hhŒ _document”hŒsource”NŒline”NubhŒsection”“”)”}”(hhh]”(hŒtitle”“”)”}”(hŒKernel driver for lm3556”h]”hŒKernel driver for lm3556”…””}”(hh¼h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhh·h²hh³Œ>/var/lib/git/docbuild/linux/Documentation/leds/leds-lm3556.rst”h´KubhŒ bullet_list”“”)”}”(hhh]”(hŒ list_item”“”)”}”(hŒVTexas Instrument: 1.5 A Synchronous Boost LED Flash Driver w/ High-Side Current Source”h]”hŒ paragraph”“”)”}”(hŒVTexas Instrument: 1.5 A Synchronous Boost LED Flash Driver w/ High-Side Current Source”h]”hŒVTexas Instrument: 1.5 A Synchronous Boost LED Flash Driver w/ High-Side Current Source”…””}”(hhØh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KhhÒubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhhÍh²hh³hÊh´NubhÑ)”}”(hŒ4Datasheet: http://www.national.com/ds/LM/LM3556.pdf ”h]”h×)”}”(hŒ3Datasheet: http://www.national.com/ds/LM/LM3556.pdf”h]”(hŒ Datasheet: ”…””}”(hhðh²hh³Nh´NubhŒ reference”“”)”}”(hŒ(http://www.national.com/ds/LM/LM3556.pdf”h]”hŒ(http://www.national.com/ds/LM/LM3556.pdf”…””}”(hhúh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”Œrefuri”hüuh1høhhðubeh}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Khhìubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhhÍh²hh³hÊh´Nubeh}”(h]”h ]”h"]”h$]”h&]”Œbullet”Œ*”uh1hËh³hÊh´Khh·h²hubhŒdefinition_list”“”)”}”(hhh]”hŒdefinition_list_item”“”)”}”(hŒcAuthors: - Daniel Jeong Contact:Daniel Jeong(daniel.jeong-at-ti.com, gshark.jeong-at-gmail.com) ”h]”(hŒterm”“”)”}”(hŒAuthors:”h]”hŒAuthors:”…””}”(hj*h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j(h³hÊh´K hj$ubhŒ definition”“”)”}”(hhh]”hÌ)”}”(hhh]”hÑ)”}”(hŒVDaniel Jeong Contact:Daniel Jeong(daniel.jeong-at-ti.com, gshark.jeong-at-gmail.com) ”h]”(h×)”}”(hŒ Daniel Jeong”h]”hŒ Daniel Jeong”…””}”(hjDh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K hj@ubh×)”}”(hŒGContact:Daniel Jeong(daniel.jeong-at-ti.com, gshark.jeong-at-gmail.com)”h]”hŒGContact:Daniel Jeong(daniel.jeong-at-ti.com, gshark.jeong-at-gmail.com)”…””}”(hjRh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K hj@ubeh}”(h]”h ]”h"]”h$]”h&]”uh1hÐhj=ubah}”(h]”h ]”h"]”h$]”h&]”jŒ-”uh1hËh³hÊh´K hj:ubah}”(h]”h ]”h"]”h$]”h&]”uh1j8hj$ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j"h³hÊh´K hjubah}”(h]”h ]”h"]”h$]”h&]”uh1jhh·h²hh³Nh´Nubh¶)”}”(hhh]”(h»)”}”(hŒ Description”h]”hŒ Description”…””}”(hj‚h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhjh²hh³hÊh´Kubh×)”}”(hŒ /sys/class/leds/flash/brightness”h]”hŒ*#echo 0 > /sys/class/leds/flash/brightness”…””}”hj sbah}”(h]”h ]”h"]”h$]”h&]”Œ xml:space”Œpreserve”uh1jh³hÊh´K#hjžh²hubh×)”}”(hŒ 93.75 mA::”h]”hŒ 93.75 mA:”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K%hjžh²hubj )”}”(hŒ*#echo 1 > /sys/class/leds/flash/brightness”h]”hŒ*#echo 1 > /sys/class/leds/flash/brightness”…””}”hj(sbah}”(h]”h ]”h"]”h$]”h&]”jjuh1jh³hÊh´K'hjžh²hubh×)”}”(hŒ...”h]”hŒ...”…””}”(hj6h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K)hjžh²hubh×)”}”(hŒ 1500 mA::”h]”hŒ 1500 mA:”…””}”(hjDh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K+hjžh²hubj )”}”(hŒ+#echo 16 > /sys/class/leds/flash/brightness”h]”hŒ+#echo 16 > /sys/class/leds/flash/brightness”…””}”hjRsbah}”(h]”h ]”h"]”h$]”h&]”jjuh1jh³hÊh´K-hjžh²hubeh}”(h]”Œ flash-mode”ah ]”h"]”Œ flash mode”ah$]”h&]”uh1hµhjh²hh³hÊh´Kubh¶)”}”(hhh]”(h»)”}”(hŒ Torch Mode”h]”hŒ Torch Mode”…””}”(hjkh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhjhh²hh³hÊh´K0ubh×)”}”(hŒ°In Torch Mode, the current source(LED) is programmed via the CURRENT CONTROL REGISTER(0x09).Torch Mode is activated by the ENABLE REGISTER(0x0A) or by the hardware TORCH input.”h]”hŒ°In Torch Mode, the current source(LED) is programmed via the CURRENT CONTROL REGISTER(0x09).Torch Mode is activated by the ENABLE REGISTER(0x0A) or by the hardware TORCH input.”…””}”(hjyh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K2hjhh²hubh×)”}”(hŒ½LM3556 torch can be controlled through /sys/class/leds/torch/brightness file. * if TORCH pin is enabled, below example control brightness only, and ON / OFF will be controlled by TORCH pin.”h]”hŒ½LM3556 torch can be controlled through /sys/class/leds/torch/brightness file. * if TORCH pin is enabled, below example control brightness only, and ON / OFF will be controlled by TORCH pin.”…””}”(hj‡h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K6hjhh²hubh×)”}”(hŒTorch Example:”h]”hŒTorch Example:”…””}”(hj•h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K:hjhh²hubh×)”}”(hŒOFF::”h]”hŒOFF:”…””}”(hj£h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K /sys/class/leds/torch/brightness”h]”hŒ*#echo 0 > /sys/class/leds/torch/brightness”…””}”hj±sbah}”(h]”h ]”h"]”h$]”h&]”jjuh1jh³hÊh´K>hjhh²hubh×)”}”(hŒ 46.88 mA::”h]”hŒ 46.88 mA:”…””}”(hj¿h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K@hjhh²hubj )”}”(hŒ*#echo 1 > /sys/class/leds/torch/brightness”h]”hŒ*#echo 1 > /sys/class/leds/torch/brightness”…””}”hjÍsbah}”(h]”h ]”h"]”h$]”h&]”jjuh1jh³hÊh´KBhjhh²hubh×)”}”(hŒ...”h]”hŒ...”…””}”(hjÛh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KDhjhh²hubh×)”}”(hŒ375 mA::”h]”hŒ375 mA:”…””}”(hjéh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KFhjhh²hubj )”}”(hŒ*#echo 8 > /sys/class/leds/torch/brightness”h]”hŒ*#echo 8 > /sys/class/leds/torch/brightness”…””}”hj÷sbah}”(h]”h ]”h"]”h$]”h&]”jjuh1jh³hÊh´KHhjhh²hubeh}”(h]”Œ torch-mode”ah ]”h"]”Œ torch mode”ah$]”h&]”uh1hµhjh²hh³hÊh´K0ubh¶)”}”(hhh]”(h»)”}”(hŒIndicator Mode”h]”hŒIndicator Mode”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhj h²hh³hÊh´KKubh×)”}”(hŒ‡Indicator pattern can be set through /sys/class/leds/indicator/pattern file, and 4 patterns are pre-defined in indicator_pattern array.”h]”hŒ‡Indicator pattern can be set through /sys/class/leds/indicator/pattern file, and 4 patterns are pre-defined in indicator_pattern array.”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KMhj h²hubh×)”}”(hŒÓAccording to N-lank, Pulse time and N Period values, different pattern wiill be generated.If you want new patterns for your own device, change indicator_pattern array with your own values and INDIC_PATTERN_SIZE.”h]”hŒÓAccording to N-lank, Pulse time and N Period values, different pattern wiill be generated.If you want new patterns for your own device, change indicator_pattern array with your own values and INDIC_PATTERN_SIZE.”…””}”(hj,h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KPhj h²hubh×)”}”(hŒNPlease refer datasheet for more detail about N-Blank, Pulse time and N Period.”h]”hŒNPlease refer datasheet for more detail about N-Blank, Pulse time and N Period.”…””}”(hj:h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KThj h²hubh×)”}”(hŒIndicator pattern example:”h]”hŒIndicator pattern example:”…””}”(hjHh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KVhj h²hubh×)”}”(hŒ pattern 0::”h]”hŒ pattern 0:”…””}”(hjVh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KXhj h²hubj )”}”(hŒ+#echo 0 > /sys/class/leds/indicator/pattern”h]”hŒ+#echo 0 > /sys/class/leds/indicator/pattern”…””}”hjdsbah}”(h]”h ]”h"]”h$]”h&]”jjuh1jh³hÊh´KZhj h²hubh×)”}”(hŒ...”h]”hŒ...”…””}”(hjrh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K\hj h²hubh×)”}”(hŒ pattern 3::”h]”hŒ pattern 3:”…””}”(hj€h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K^hj h²hubj )”}”(hŒ+#echo 3 > /sys/class/leds/indicator/pattern”h]”hŒ+#echo 3 > /sys/class/leds/indicator/pattern”…””}”hjŽsbah}”(h]”h ]”h"]”h$]”h&]”jjuh1jh³hÊh´K`hj h²hubh×)”}”(hŒXIndicator brightness can be controlled through sys/class/leds/indicator/brightness file.”h]”hŒXIndicator brightness can be controlled through sys/class/leds/indicator/brightness file.”…””}”(hjœh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Kbhj h²hubh×)”}”(hŒExample:”h]”hŒExample:”…””}”(hjªh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Kehj h²hubh×)”}”(hŒOFF::”h]”hŒOFF:”…””}”(hj¸h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Kghj h²hubj )”}”(hŒ.#echo 0 > /sys/class/leds/indicator/brightness”h]”hŒ.#echo 0 > /sys/class/leds/indicator/brightness”…””}”hjÆsbah}”(h]”h ]”h"]”h$]”h&]”jjuh1jh³hÊh´Kihj h²hubh×)”}”(hŒ 5.86 mA::”h]”hŒ5.86 mA:”…””}”(hjÔh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Kkhj h²hubj )”}”(hŒ.#echo 1 > /sys/class/leds/indicator/brightness”h]”hŒ.#echo 1 > /sys/class/leds/indicator/brightness”…””}”hjâsbah}”(h]”h ]”h"]”h$]”h&]”jjuh1jh³hÊh´Kmhj h²hubh×)”}”(hŒ...”h]”hŒ...”…””}”(hjðh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Kohj h²hubh×)”}”(hŒ 46.875mA::”h]”hŒ 46.875mA:”…””}”(hjþh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Kqhj h²hubj )”}”(hŒ.#echo 8 > /sys/class/leds/indicator/brightness”h]”hŒ.#echo 8 > /sys/class/leds/indicator/brightness”…””}”hj sbah}”(h]”h ]”h"]”h$]”h&]”jjuh1jh³hÊh´Kshj h²hubeh}”(h]”Œindicator-mode”ah ]”h"]”Œindicator mode”ah$]”h&]”uh1hµhjh²hh³hÊh´KKubeh}”(h]”Œ description”ah ]”h"]”Œ description”ah$]”h&]”uh1hµhh·h²hh³hÊh´Kubh¶)”}”(hhh]”(h»)”}”(hŒNotes”h]”hŒNotes”…””}”(hj-h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhj*h²hh³hÊh´Kvubh×)”}”(hŒâDriver expects it is registered using the i2c_board_info mechanism. To register the chip at address 0x63 on specific adapter, set the platform data according to include/linux/platform_data/leds-lm3556.h, set the i2c board info”h]”hŒâDriver expects it is registered using the i2c_board_info mechanism. To register the chip at address 0x63 on specific adapter, set the platform data according to include/linux/platform_data/leds-lm3556.h, set the i2c board info”…””}”(hj;h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Kwhj*h²hubh×)”}”(hŒ Example::”h]”hŒExample:”…””}”(hjIh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K{hj*h²hubj )”}”(hŒ¹static struct i2c_board_info board_i2c_ch4[] __initdata = { { I2C_BOARD_INFO(LM3556_NAME, 0x63), .platform_data = &lm3556_pdata, }, };”h]”hŒ¹static struct i2c_board_info board_i2c_ch4[] __initdata = { { I2C_BOARD_INFO(LM3556_NAME, 0x63), .platform_data = &lm3556_pdata, }, };”…””}”hjWsbah}”(h]”h ]”h"]”h$]”h&]”jjuh1jh³hÊh´K}hj*h²hubh×)”}”(hŒ-and register it in the platform init function”h]”hŒ-and register it in the platform init function”…””}”(hjeh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K„hj*h²hubh×)”}”(hŒ Example::”h]”hŒExample:”…””}”(hjsh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K†hj*h²hubj )”}”(hŒaboard_register_i2c_bus(4, 400, board_i2c_ch4, ARRAY_SIZE(board_i2c_ch4));”h]”hŒaboard_register_i2c_bus(4, 400, board_i2c_ch4, ARRAY_SIZE(board_i2c_ch4));”…””}”hjsbah}”(h]”h ]”h"]”h$]”h&]”jjuh1jh³hÊh´Kˆhj*h²hubeh}”(h]”Œnotes”ah ]”h"]”Œnotes”ah$]”h&]”uh1hµhh·h²hh³hÊh´Kvubeh}”(h]”Œkernel-driver-for-lm3556”ah ]”h"]”Œkernel driver for lm3556”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™j'j$jejbj jjjj”j‘uŒ nametypes”}”(jœ‰j'‰je‰j ‰j‰j”‰uh}”(j™h·j$jjbjžjjhjj j‘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.