From 49990869a0f988f3d24c47812d3ce3a797a43a44 Mon Sep 17 00:00:00 2001 From: Gerson Fernando Budke Date: Mon, 26 May 2025 18:18:37 +0200 Subject: [PATCH] boards: doiting: Introduce dt_bl10_devkit board Introduce dt_bl10_devkit board from doiting vendor. Signed-off-by: Gerson Fernando Budke --- .../dt_bl10_devkit/Kconfig.dt_bl10_devkit | 5 + boards/doiting/dt_bl10_devkit/board.cmake | 7 + boards/doiting/dt_bl10_devkit/board.yml | 6 + .../doc/img/dt_bl10_devkit.webp | Bin 0 -> 45472 bytes .../doc/img/dt_bl10_pinout.webp | Bin 0 -> 18536 bytes boards/doiting/dt_bl10_devkit/doc/index.rst | 124 ++++++++++++++++++ .../dt_bl10_devkit-pinctrl.dtsi | 25 ++++ .../doiting/dt_bl10_devkit/dt_bl10_devkit.dts | 51 +++++++ .../dt_bl10_devkit/dt_bl10_devkit.yaml | 18 +++ .../dt_bl10_devkit/dt_bl10_devkit_defconfig | 8 ++ boards/doiting/index.rst | 10 ++ 11 files changed, 254 insertions(+) create mode 100644 boards/doiting/dt_bl10_devkit/Kconfig.dt_bl10_devkit create mode 100644 boards/doiting/dt_bl10_devkit/board.cmake create mode 100644 boards/doiting/dt_bl10_devkit/board.yml create mode 100644 boards/doiting/dt_bl10_devkit/doc/img/dt_bl10_devkit.webp create mode 100644 boards/doiting/dt_bl10_devkit/doc/img/dt_bl10_pinout.webp create mode 100644 boards/doiting/dt_bl10_devkit/doc/index.rst create mode 100644 boards/doiting/dt_bl10_devkit/dt_bl10_devkit-pinctrl.dtsi create mode 100644 boards/doiting/dt_bl10_devkit/dt_bl10_devkit.dts create mode 100644 boards/doiting/dt_bl10_devkit/dt_bl10_devkit.yaml create mode 100644 boards/doiting/dt_bl10_devkit/dt_bl10_devkit_defconfig create mode 100644 boards/doiting/index.rst diff --git a/boards/doiting/dt_bl10_devkit/Kconfig.dt_bl10_devkit b/boards/doiting/dt_bl10_devkit/Kconfig.dt_bl10_devkit new file mode 100644 index 00000000000..634561d9d12 --- /dev/null +++ b/boards/doiting/dt_bl10_devkit/Kconfig.dt_bl10_devkit @@ -0,0 +1,5 @@ +# Copyright (c) 2021-2025 ATL Electronics +# SPDX-License-Identifier: Apache-2.0 + +config BOARD_DT_BL10_DEVKIT + select SOC_BL602C20Q2I diff --git a/boards/doiting/dt_bl10_devkit/board.cmake b/boards/doiting/dt_bl10_devkit/board.cmake new file mode 100644 index 00000000000..d8e6ac40147 --- /dev/null +++ b/boards/doiting/dt_bl10_devkit/board.cmake @@ -0,0 +1,7 @@ +# Copyright (c) 2021-2025 ATL Electronics +# SPDX-License-Identifier: Apache-2.0 + +board_runner_args(bflb_mcu_tool --chipname bl602) +include(${ZEPHYR_BASE}/boards/common/bflb_mcu_tool.board.cmake) + +board_set_flasher(bflb_mcu_tool) diff --git a/boards/doiting/dt_bl10_devkit/board.yml b/boards/doiting/dt_bl10_devkit/board.yml new file mode 100644 index 00000000000..9c080ef4bce --- /dev/null +++ b/boards/doiting/dt_bl10_devkit/board.yml @@ -0,0 +1,6 @@ +board: + name: dt_bl10_devkit + full_name: DT-BL10 coexistence Module Development Kit + vendor: doiting + socs: + - name: bl602c20q2i diff --git a/boards/doiting/dt_bl10_devkit/doc/img/dt_bl10_devkit.webp b/boards/doiting/dt_bl10_devkit/doc/img/dt_bl10_devkit.webp new file mode 100644 index 0000000000000000000000000000000000000000..e65768b9fab4722af85e9196430133f63b986432 GIT binary patch literal 45472 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 literal 0 HcmV?d00001 diff --git a/boards/doiting/dt_bl10_devkit/doc/img/dt_bl10_pinout.webp b/boards/doiting/dt_bl10_devkit/doc/img/dt_bl10_pinout.webp new file mode 100644 index 0000000000000000000000000000000000000000..2efa8764c61a2025eaca5c9757b001b7412cec8c GIT binary patch literal 18536 zcmXuJQ;;q?v^Dy*ZQHhO+pBG_wyo8+ZQHhO+qSK{|8vf*%0p6l$jHQ)qh_KkB`$6t z2>_^z2`m0l$+R|CFgdY7yD41dsA z9N2a5YC?McupOD&3uby z5{^cYHtSazu`*7aAf+eSHlf}bC`#bh-9shu}pd}$lF}m!q zv-rAxXctz^c6J9d{|{Dw_SLg#Q`caZ0P*HAF7?d%IS*q4wTv=!m_P7fj1oUui!bi1 z4N-BQs68gKK)vAs_B5>Sj8QBAyTeBs%Kwl{WmQWvmTHNHef_V^ zoKn(`3F;Yqe2-*B=he+GzW&22S3sQdDre)zyr!stx z%%&w`pItJdwNp=-q4%UB01^yyh-F?ZHTiR`^B*QZg0yIl@2V}&HPsUkw;bnxxZ2Md zg$6L~Q`>$k{&eMj#j&G0?HD2#R#W!$xy%ibEB|2srji6mNzuOfgag-g-uPFwUj}%r zcpD8-jfvK@loKtScV#z9%P{gsv4nDJwq3RuUoxmW0qTU$-W9w~3TaN@+a= zoJFwu(MQ(%?2Z>YrlI}2fLA}8nf8y>z(!gc0p{rySMO@OZ5o~b*5tOb*Ggo09boT{tvc5hi%@LP_b`z!VR1PMHEM&!BA@r zp!lbeT&Bj-Ec%JP-&evOv8K_McD5Vm3?;A3FNFyu z^%=_4Kl<*yN&2YH%cA*PWE{@IOL{|7f>2T}JP~YpgE<&S5|dO}zVN@@o!Gh!<4L8$@4hIuM^>*5OX zh8u-1?MB{&K{xW2SPr{3Q`sS{HH9Y-VT2DlRW7_M1#PG<)p^1}5U`E}Bk4^ieKh?G zg1O=wdGa&5kbtkvCcv?5TmGWJG2?Ek%^>&5u+gn7AYD3Piz{hHlbI=37%^~jN85a9 zi33>46}l9H8}jdzQ;u77v!KqO-r;k;0$xTQ;oJPCTV=%8T5p`c&Z5>{T@Fxx+9uLr z>%WyVEq@r#)Ct_VVJ3C@E3~URG`0C^1`C!3qt1u5)vL#*C#fB`=La$6W4qR3y-tip znuRrzGjk$cH#?a?fudD2&^+*!(A* zi;?w;(;S}83g=WXhdiT2!8>bkk8f1YwQ(iH64Q#~q7sn}Sqp3c(iDpG} zX1mKsf=@XzAI6zv zSZcd`K|5|BqH9y$TrzF5|8Zgo$JTf$rTp6Z{|}AD?JEX~k=LEd_lI%FSk@^OBb>%j{PPUUd#w;+L1aXrb8M(^a2DlaE&Z7PXe!H?KKSGKv)1J3P8yeKVnP|-rYN@3}zP=`Y zGWZ@?d7_iZ;2D&bvf=(5_iuZClFE<~d!i&|5ucy|7^C^ z4w6Nmp`E_?*~Efu&W(d^g2T8+48o;JL<-%+6vd%y?{?xUvZ#~78$t1W;zAH)Q%WEPit!)y1F_6}9~ zhZ)jQ{ktt}1zZL|B{(8Z!0#7Iv_3k0liVGeJI`hpV<9B zWmM|<$J{Dg$E>$WP=-&TC8(Ag_Yp=1hrz=N{)UWd8&9~(nyHlRM#XB45^>7Cb*FI; z^Fg$cw9D<`#8+M@?!fO?LnHbHQ^{jUnC(3H@8>_qE;eeq^`QS@qyKS30zPifo{Z47 zf{HSMxtjg=3}Ip+r3OdlE0=}$WA(hcul{S3Rvx&fv$9@`-tV`(Ab$}9{?l9j!(E@@toLHYUsm>pIHMEJj!GU2yw@|j2y0$R%`?cthi2*csfqyn2xKp8W%@1N9%pfR zTAct+P+VP0`zM?)cHJzN8U|QD9`{M5c93lGxJql3H~Lqw{}saj8xjMo-i;l|eygE3 zgD;Dc4F8cB0PyomkcNThAYP>pu3XiVu9 zSOZS?Z#T?G`T{i36tfl&IVP`=3+(H_JFQdpuY$vRrTG>-F-8yKK)vv=%3;Cmc1c$y z4`9Vs87L

pL#WGE3lmcv9idX7_Ih6~jmCYSm6pm-{>u*rz4)1H;7?ec z*q&$_Ky>LYA0qvMM}COdj@zTWDYe%nl2U8DS}prA@3MVAXTf&?6@xxPRKKHq7vVQY z!F7aKFVBy7IejcSn{P&;;f4W`%g+Vgye-n3qOwprOHZr`Dk64?rZ6UDq>ha3^xu!B z>5jKUJgDT;h5$<37DMbXZsyv@Ys*#@Y&r2u6zcOyfE~Z5B%wgQU8u)<;H)KkUlYRQ z)B|XO5U-Ak_Lh;y)z^hOU*>im<8O$zDn}vlE(@k_A{w%L5GOEyfHZ=yONVgEiA z*@JNcX0A;~bU;Ox>c0Au2mJDei+FdC_1OQ{{^GZE8%<@?P z>Rfr$V-%k}u&js8t)-#wehRMDq;YBNd>I|4?*PzAdB`z;wHN^aL_-MS+aaHZ9$hN} zb_w&LdJAfJVP$?nJXtob;I<$=20x&D0Tl$4atv-y64W*&%`LVD^liZXsKZM7t8Lt9 zfjO@Er8QFe9RL8N?%xS!Lh=?sga%qEsm}(Oj<{6W@OcFQ#`=)^px$JPDyQqk49IIl zANYDI_iu!dD;`A%wrRK_vSmBz&G_15PK9$N58Q>w<2N&Sfqg~iO6lO255=hdi%gH2 zgyI#d!>up>x3GO00}KniZtr=5GpV!;3*xnJRL0*GIi9#VGpfJ%_OuAhyIM8S-CXn| z$UMord;G5LwOE)&J39c*lOh5f?}k0$7m2Xz$z9}DDVY-0HDs3Njb?5e9zv_nPj5fc zd~MHu(M1Th)w_nFg&L(U;c=)hdSEgP>MApw?E%kRP?rxFtCxZvv%)I9KB$8wpLtn# zZ3>$2%H}X6@_{po?S-6A88Ojn`MhQ8%JhF==cfk@wdxNKA-9tor+6f5Kr`pHQGh>7 ztLTjs__qpF$DCp|JDfHN00Q^RfbtX;8yQAZq>3_V6db#ZFPux=>C6ZMu$5OWe(;)} zEaNrc4reZI+&?zy{r!&}V%s~Dlz){=0Vzx^|J4YP!PG77!_*MlL#~2?GUqwq zUmS8m9C_I*`jcnrr*1C$+odbW%u7r7VB+J9w1D6Ys3gV?Al1B(kb~4ds_@Fn2Gvw5}y&||CN`8QzTL|WuIGZrWK^uxfHy~A804ySLvX*=%-t&@(yD{l=4 zOapW~jpKXw)al%jOyr6B$2Z{k{2cNzoZ!@|@;8`;cjKugNWdSfg}Dou%)`BxtT6pC)sMdjcdWg*V`zX&XHC?v=g$hSfs z5c5vwY&YBEVLDc~(%5)#kRC|0M=9-HZD}$Bd}DE-%vFNUjf8D^5>EQ;c*iXCfNQ8x zYyVI+WtVw~ux@X%?ee8Oxjar1pTt%l!+%aY_L_4e_AK05y1z^|@CgDK7QbI>)ZeW% zx%C3E^~Zu|XBE+-1f>^z!6%*D04!tAEH6(e5lpxJwV8I6kzC{Nl9kN@MUGnnB<5WW zX%YJ@gvJ2}{qK*+28`Eq53-1EXkh}{5NQ2_$~TN&ZdbusqOMFdxBW}Ox-1wcZ&RF( zk*OZ$ZZk{aj88E%JT5~$c$B)Y7P^wxMP0$quC`Ir`#O#&+PW^d+$&0QsBXttQ=#-a zM>rCkr?Q2&*!hk${=9T7^WYB1+r*nAPU|jFosA>Tq1A9EeDVowI$Kxt%!EcG$V&Nd z@BK50dMQ&FR)e_Nnh5~`&i5a`sfS}0GLz=q z=3RNmTR!0q%#tv*oE{8@5cu#+VsKKs!e5eXigHjRvsJSPZQs-;iqPpof?zQ)$8$ic z2EEy%wXdy^&lvbuxEb(5qK8n)w&soI-#*uxdSw(djCkgDo z{vuLAER?oGBXYDg-^u~@_wNuZ$*Kz`B&J6g$f;C+L+pi`C$+!~r)L;f1R_$GAynJ( z;{-Lu(JG^kOoguIoa*=4shV*LH~8Gs{C+6=JXf630%U;D&{L!7gjWlr7$VwXrAmeQ^Hs<#nyoIO>L_oVZ*4*s`z{dJ`4$*+%~b=3!G#_KqUu*owQ)4ShI?(Qgj6@s62-O}!j z7k|#A34Zwbsi)OM*Ky(@Y7B$Fr3K`W6&&LQ(peVhr81}nCm)D@s0N{H;^yxdRIJzt z&ptULK_2t1jwqiQF*$s;MXz-vf%qv0DQ*fSR-~k^YghG-91aNX@Wn zhJ53+Z++dzaIY=Vg3xzvZb03t|J$4+469fxiDa$l+z?Au+Ss&;t--6thWY0Te!KXMIOo!Ibq7R zk-X$~J039^d~A;E<>069#XGdvl1&ABFz;i?RF({Qa24YZobe*tK0avV%(UFC$~wAZ3jH~`SRM*?F;6~`+}gH-Ge z5i!QcC96THUr{=eZ27HqwCgL>@|1XS76PI3?G!hO>x5V&xLi)i4V+k z?9!SFMqVFmX0?|GKK%r+pwZC74M0pHbaH`sAR5DkQcr{I#b|F2lrC`PPQvzYFGdl4 z;y|g#J?4Q~1O_W1nX3RkV>I@LKR(un=MJdZC;tV=} zI$*4TM8oyr_vVus9X^Sf?1%6WTP)~`j1B)ez6pLfN1%+BUdxipJafsJk8ih;-YzczSDp!qnW2^V`UbsTGyYLx zZ6r9dlY_rb!L9!YfYwSZ&>XAbj0lQi)DI50z^PZN(8N$8)zxng9Fl6hTxQJgSgCapdpLG zdWTv^VYDhinifr@45DDNV4zruUUx=U!z1qs)wuJ3L2_R5oYU%}LD0(l-YT4aHeO2` zzl3#nEyuF{d4PuYFExWYXviGO00c$YsNOAI!#988fYnFJI-T4#fhIzxF}bz)wd_c? z^X@!y+?+`L%frf&Tkm$0?(h5(RzG9UdaPV_@!WDnZgPidDc)Dy6~9wQb2PtEC&$7M zN^G2tlmK8$kG)I3Aa8JL?wq_8F>9!m@Dx?KXGdPJ-*RpJ=n2 zJ1$_8yJT1)2)`818>uyVUj_6rw78QewgjVW%QOQPj?@_q_B4H|JJuIkYv}tO+tNit zgG-5YjQtiK-#_qo@oY+vsu7O+rCcoC<#a7ID~*qJgSNXhjg|eTN|X(|+Vvelz8p$P z?*`0c*;o`5V3<}xh>Y7jVN(*Erp?Hy! zIZL(6!bn~)4aT(S%S(G_hsqXMXeRv9L!6P*mIj?20y z|Lhd^ZL6>C9hrfgXGOTL>2h|?91fXOO`5)bdRS{_l_}Apv&t<>UCeP-fIeu_3IZf! z+a99DdNYRW2ndi@cYltt>GP;r8@66Bt$m?#%J``uE43X|!_DtGu=aeE&7|rD9&|u^ zp`eTkz6Yf4*DmK7W(nx3`d2vA5IWDqn}C_YBEw7JxUsCuRhlZ~X&;RHpMOSheZ@$R zD3xXDLxo+x4!AkXo$p|Q15(za*0Yexf3m{FuoB!cwj!Ou6Bwd271whw%2z zJ8d7lCuhwqe5Nlk4VOEV$GgUWK!E~BSMqJ48a*fD^GL#(dAx)2H_7|N0yn1X5Q5C9 z(@1ZxKNL3LQ1(0Mpiu$&SaA}jdNT>KE%hRUIa_&0mwC+>q69?dNVjF$d}j5+#QBh9M1WQSYA zgJEyzyL+CCe{_sEu_RRW{5iSd2saY3d6`q*S?+Y0zc1PR4yR5u2os29hI@1od?)liuKpf{>a6t}nlb z2$0f^(LYEV7m_Aaoy2=f#PiXM>K^RTP3N)y_+S-Pg#lw|+?nZt8mSA@ci@~$+lO>< zU|4qm;ZGRDWiz82lI?jF$DQW-n!`m99o37w&b4(MKV>ipv$c2k=;22!v*A^D5*L^n z`ik=hW)XhH!zO&IbId4rqA(hT{=1Dn{-a6wPr3h~?OjAvu^ebd;bzSAKDO=ti<`s?Y4+%yL{il2r>=P)#bQc3pwXYp-Ti!I znKPy2X^f;2#hI?k6t_44YCTOeN0mIl`*oo3W^?B}JiV9O;rtE_tSFxngA`0XRMTX!4^^V2%U!=D3>(`R}a9vv-(^+r8C*7#Rd(l^Y zWU=nz)qdaR!`mq7JHsj-Lk@Np1R`7g)^#Diejz)=1r9y>PED63#oEx)nm#tAT$o|M zkcoc0PJ{rl)NHMrUe6IpyeK7s$8?xL;!GOx6mca5e9*h2Jj$oB(i(g509mdQjNA_cad& ziUx@`wIs&N7B;1xSHoO`ebAas75EE%6nD0B@-=!RjE`7jlOcc{L?rU@W>#tBuu*UV zeYA_N+P43N3HjSpI)@C^(y0@Z8$MjPsCUAfDi*VCoVyqRIDBn`_9+rp@$tN;IEmp? z3&(QV39r!N3u6-UupXr4Yw@l@9B#%eoAuxF7gK^@HNtND%bv=}m-DgMpSqX)o6Q(S z&US~{U8bS$E;EIO>H#_si7AKPUeE3NUa`*5TL7nG7}|>?@7+(r0EP8ihq;W(71C`| z?oUrRHSRzOZp4OlHpamYOr)&N+XU; z*Kpgt_7>*pInMaHtzz&U>_ng8KnJQI{U!(E_zoMlY_@unXSH@?TB7 zvUVE#w|I&{n|yzI;lAVAIL}z4=qmabKu_=bd?D#ynSkcL%`hu)@o5R&^C6r!;gbO8 z7fVYS1Mczwy|nG*l_6m{KGA0_!M1C$14VGl)=)^lC6p;?D{rp4ns&U(_<_g|v6?$# zGC0|!pQs0grSVP_YKMpD-ZT(( zpA}90wd73If)d{+1Go*{1I#^;CYw7g$h$eUw5}X(%Dn3 z)&)ZEZCAgtZOCGMDkN`!;eEO0#UZnpSopLWcV}XZ*$RRC?vTA#gD!Mel|N05GfVd< z2cIr=>CL!Cb$1-Px_7SL?hYn$yrYyIx^4I6p0_|$3xTz{*f`hgz*Ojk#^Kk;6Pk%s z`Low91<~=THp%{}Y_l|r!6yftXZ*m_5N)nIzV#3?UJcPrGTpwExTey_t*^K7@}z<| zdxM+2%C2$KfLi@ykRVArL5yGtcllVtFe}8=Lpe=fae(T9sG_>{C~^Nmz@x{QI?S<9 zu%${qZtG!U!HzS5V5no+rLNV1*d@Y?FQ=OqL6?4fag^N3myi1w`R5-si!h%>ZE2hA zf%fgUId&;Rc?y9m56V8zAf3lafm49-_l7cN&ZOv2RcecP7 zH8~W=A{Yjy;95y*Sz8xbgLX8(|GEY5eh9Ei+%i{*=5|<`HnzTbVqowElTnn(%#V9q zOR#;T;ek!A7$@eG#^v0U!+-sW_3mL(ju;N+`+qeYIL2ZR)KpK6A(j31aJq)stX*f% zDhLnaGkNWk0go&bbb5jSw8JxJWW@Gx=H&2_(OQx^4zY^_3=8gHm-4h0+fV#2QV1@v z1n|S0u!7HFr-9Ds8&>(8UWarw0S@PqdyFE9eZkzFP1aDduArGzvxQ(=0WYNQWQwWY zUc$KOq|1CpBL3vxHf>9?e?RS6YEh!6Z)N(c9?9=?Ii{*iI>~Syw?4|8ac|>xJ(LRB zMFp)t@26ls`X>%n(7hIw*X*?$1`}qSyYzT}kBYGzMx_=pF&j*DwPpk-RCA;#f}%=~ zGv@tS<~}r{kfrq2y8hM1KLVLNxJ3?$OJo$cqnEe7Z(vjTyaLHGoGSf3pUN44w}M61 z-4QeI|M<0yI?De#O8QCqHF|v{{Xl7S!p2iH7)T>OolHjU_t|eaMMpNqxJUm?qKVK5 zd*X8EtmR2faQ57Ch}1{1&Xtl_o~najVKz&Q5UyfAUMj>uikZq=s*P-ALbj4}9_!*Q zJWdE5KpKOXz%p3BA0mCPBJ!@7I2+ab68$iE5f0M)=*(ooyx)QM6-^U%pq{Efbm`7C zIylxEyXJhv&+_Z<@BT-;vqpD+S)F1J!y(bp3ekyN{ZW~5qVECJ(dz?;#k5i-Fk8(Q zlKbcFxY6KC*L}KAMMkK+4hxHmep;fh^z$y+Znbf2`0>eqs z2Wso#>O)Am(IB~f1caNC;mb>7n3#($ptSvQ?Ou9cLKgRT!Z5v4k6fvy9vY*BHw|yv ztol=gIFvq*V4yrpZxB|-T?0GhLdsLS?#pXUWw%jVkq`d&=i5dH{oXR!YJ|-TzV2lZ z?2G5g_}}tV5r6!|<#Q3PPhc#<=mg2|UdS8T&gHUenw zn0tsORf6EIwE|hzk9z-LYmJ(F2jC>QyeY^d`Yu_l8y(yEIRp8l!~C`7OJjBqi+Ke{ z>!C|i_9_e~oOKNpHbsjGeag09?6cLIanDwD;a(f+QgS@A@N-AoD<^nH_b;)HERP9P z;{urR#G6&n9T-IM6tY+0sO)6_4UR0}*K#!NT=#&(PxI(_7?NMBi=q?>WsCJ_ zf)ZeX?_A;H{CUtK21-d!ek*7RJM&SrN!>ao5J6e4fUM6NIrNoO=Zt)SbxjDfCWen-QzZK(ihtsM;a6r*aLk{FB=qj=DL z*Y5E@;HDQ_p3cmJ-JdTE#+(m<|Gl);A3H4Ud)Z|X942@b+BjBFtVL*5>l&;Rvuj+) zPme1++cy(hr`pWU{Q+x&AT`3Q(m2bzc0N}+%fSiGzA-jiuS6v7Pb26B!5g3?Iz5od zX;Gi#8qk7U;^s@hBCjEU5O3i>YUPzeXE!a%$Aso^Mw z2ugqWHr;leOmyY9>lCqW7)RX6j+s&!#kbJGdF01*4zp_Ir={T{@HzkTFcqE;Ow>Lf98Q$;+ zXsc^#lB!h&Z)K5@V)-DTbv0k0DM`dW2McKqXq)Xua^^yhyWUj{*=FFkycb!RLz7Ey zp0xf2A$jphO{`6dpM1Ufp@nK*`-rd~A@JOtEh~W;)hKjL`5*n;3kD`|`0MKnS^s(7 z!1m@l!Cw2PpxFS%Io(?{*Kn=AeX9$WL=Y)MNHGh%h@r@uo4@SmjD7d~f6sstxilSh zbQ2W(0m+zMb>mD_6>snchQjyTSbmVN4K;+O&H>IpNTz^BlLJ6QPLE25C zeOA#7YERPYA!HTyw35s|g~vQ00#t|Fxq zinC8q$!?NIQMsg*h_#QNd9=lqwB!Nf28u#{0P7C*7(YdS^9?WH(zP~1&Q-&bMu#nb z$$t#%3upSE!JJF*Ox^q77{_M@3D`1EMM5wkIFvQ^C!wgsXnl4VDI}RuKMftAAGc-l ze<$D0bfT`uyRO_8?O3LbOsO(o8sQzhDd`Rm$`$xG9F#m3ye4E)Uyx>KkRtv|i+XUp#Nf%c%;AmFTqLpk_w+?s^k3I^ zYh8rvVG#hcHBzx4NJ`v z814Xhm0J|b708(I2Q2`8pyJl=$%)9?obMf9K~+2P-EdPgk4L?T4|%w>y;|aa_Sl`? z%&D&yYY?T%2}kvyau>^+(o88$ZUU-a!Yzp{f?UvtuxJh&vTZKIp*3ndqDG84eAmlO zeu|qaNQl}CTEx*dDhUs>pEy84YT3E!|Z=U7+BAZ8st9aWn z@4bB!j*`PSyt!DQo*ru`WUoSveK`E@WcjS9Q)mLkM1$L zSnfJ+T_p)we?V7T^Bl-_UtgSkz1{Y}2hIJq0*eEr=>B~Ata^b1ixNR`9g=04a%$9m zjiZbIwn55JXBwF0jgJNA`uw%2;-6J>sz6LA{U=lDW8p zoIlYV+*mNHpdCl97zPc$R$N(*K}cJ$yE4r|^1ppe&Ygn94+2OYyM{>*COpNlO#SMp zN!4)`a9kOu`H(t5p!DyfOw6pJ^~Kh| z;=y({m4BA_ssT%LUES0up!A;9x-|OSQgiR$g~N&L50T=?0_aZ#6df9<$P#Y>7oqY) z`_CY)Zl+?i+SqO&o_G33B8(hoRX3tOxa+qo2Z?%O+RVdOX8`~;s$yT4 zX~m$&=ma^%xv!#1x6&(?FGPN)QaED`AdD8b#ZI;tc@uV;&qj_t5>q&y2-O9qoxE9L z7VgT4(X?*(-H5HRMK$JK*HH7M@@z(z=9sUVE}(k|Esm}vPh;>rgZR(O)rZ%7OLXLw z)t5?Q6%(>|txiLPwI*V*H%uvDDdy2$w;5TokDlhx>@y=@y{>j7oZ{GW86}S%_p%cxoN=;YpSN#~lo~p!%`>uk=vaq=TQ~eifcze7 z;Mc?ua>7TIdtyOZibbz3pLy8V#V&nJa09yU;-{GLyN45aRW7Uf4{XJp!tREc-|Zj& zMYUm&TOhE19P6y(h3vVb(e`=nwPwN4*STMnKMZg`OhI9Q{o&9`zHqssO0@;0!}xqh zw?c$A1-=G-?n#og)r-Nr=uC0yrKrfB-!`&E`rwQI8PWB0F09Ww0Tct=)=7~dTzrfWZXTJG zQftGCChL?Dv&FaK!_g;}X*n&Qc3`)fjDaCdm<#=aR+boF$CR_=5DRGrKbAVYfyB3D z)KpD5e|_*O*M!vvzIGS(3!i>@7;S*g*H`BJI8tJ+q7qFi7D_ z*M!1qe3bQAC*0li6l*!yW5!;%^ZDywM5-A~FJZAKMCnZ~ZS@bZ1?TBj!S2VMyH`z& zf9q-$QDg)i*XfsgJg1r9=c=mJSZ`>s*&-5!dPnN=V@R1zr-h;JRO4zB`q4F&?Gx&; zJF7ytG`9my)8>d08p0T3>oG>5u#$zl71#={FE}lDWe#O(kU!Q|oZs1!3rW@vwWOH3 zi*uYLiL*PYa;#BB6v6{DvF+0`regu8rKw&l&BX5*YpIj}{=3EKeZD++x}!;SPA%9z z?sG)j1L-k3|C(whZ+#9*09dkZVn`Ol}=z)jS}zhO-4jAQC$xy0wHK02l{+}(x0z~=?Ll*8bvOU zCdA4kwyCXTagGdJN_#`+>}i58_a`-T+5RtR@^SsO0xq%$#hOHV_cacsxNLQuW!C($hw1gRcSA_Q4ETI=H$PsYz+tQul z+5eWHT)j5?6wK4sWY_j!i1TV4DfMlXBo{F3(deKAA`GvMT+(d%P6M#kl+Hcy51bcC-8C-fH9^1XGZtK(Z= zYAR0AW?k`2llDB&^$nGHD6w*3BZD}&9s$A|+8cwCzS+F!kft}V0qt`B=`{BNR6fe< zkk<9*_;{7MLD_1m8F&L*_08y4VY$9!)fXF#klpWMfX{6*?j+EKe|@LYEeoUohTOX`V4PCf2=I-%W$Gg0bo{ zk`2?+So_`QtVkLD>-N0klMhiN+p_5c07HAiENR0-@PN0Hk7Mhq!Pfyez`~ZUdJ|ME zUO|nd{QsdlHQ-;hpsvCuS4FGh1QE6O1@{;>q{i&O+bONcMjOW)$ z5Bx0C59{m{VG*c`(a3y7G%n9sCS+fPI7YO5K%~?cLWFK8FOMX=j$%wD-->B)nNWQ_ zJe1AdlE0{149vb5-Q7F8!oKQ_R~~Z_i^^On?*ACdoUI~!jiU>IZ!E|T<^?HaPJ@D5 z_~|xJ)(I1`hNq|Tj~G+v^ZGeBo0b46o%Ua zIi*+QgxK&-q-l>K&j>C#6}H274}L6Y0m)DY!AjIC<%o&>lpv3lHYvNc(;VN=9ZGAV zvt6s6Rb<<`2j>2VqOeXjq`l!S;pm=8`YUR(K4XvamU z#2HA_-r3E;?AgVjq!e4PhR}Ksn@*Qe3u~cj zh=Il0Lo>1mS&@q&^g-`$NbNAD#ys+wmj9Q1g{!&(_{Gu8cJ!}Sa%Uvb)6|#swvr^w zvV19-ia%`r+ODHL)Cz@0nG0QC85{`JfEEmrkC@X18l7xl;LK<9O=T#V+n#1ORM6C? z_aZ;n41f^a;zj)S9P|Wd{uJS_QtXB{3Z(GSh;0cmVzicZgzEk=i#V04a=fj&02XTV zV9_CZgihTSIO(`{AwUH$EIOJ;eF)&f`fx_Mvm~1kn2x0Cr$EUUQ(LFoe!~R20fR^x zR9+#Q>Ev|4}234wA*WOK2tV;5aMD&JN>8TPG<0h zj+h~P|HyJ#14GYanRX6<1c8B+6)FKKDSU2jo9T)~B*wkc8_spL4?I%4n=W#hxjc5< zu!j<>aGY~8Faf2^i?K-B8IcIx1+=Ler6A~IYZI5B$N+gTN%74tRzV_5Cr%X4A@%P_Q}n zXL$-f0%LtBZu9ztvA+&`nS*ECnU>mV6Reu|=AKp$oup zCgwC7(p2PX{WuD>2uElG21t;ksF#-6wH!PVeqvktSg z$CF(%k_<{)L;mc>wHQNv5dYsvZA}d1JEj@fWJHY*{S8>f9;UZz?s<6h)f!^sr+vwIyzBYk^8N>R?ziqO~c3aqXTK3!k zJMm5aJ(gwh&~gPIrmyh5A?ZOXdP&OTebm)Vb7sIlro(9g${7};JBwjDg zPEXhqg}*`E!LU8a&5x~Gs})>AU-xfX-9EQo`rE48e#~iUnloX z)?hzz001oZXdYx`$Ie@{-HPvi=@K}o+KUgp!{6&68bZ$D6j|k4fv!5&r_Lc=`>YW_I337gZJ8X+@w9DGlmRGuG(zDR>>fM#RGcfGEwN5OrW=~*2DFxr9| z3y6<#X&lC{-lL6#`uT{@I$5&GZtPd}3VkP?j1{L_x7^z0h=@R{QHC)4CVUHPiZ=Ih z&A4|7Los;;q@S-#?AAs@TkSCO=p8w9lH2nPU9gKV;d{nuDtgjFqur?d4SSDbN3n{P z7_?WiGpC!IcGjDyE4LE(bYQnnhCvp;#dfWk$BweXpRR#ycU|=6 z#u^8oM(HvZr{fn)ubjCcZJ@hP{USb4?N%9_n)n8(-DG3R0DR!VAQa zNJcA(-=Z69O!N#(@T7VL zch-ywmyvgY5-8E8^zxHzGB{QbG~JqQgbE^2$Y#V=yzyruu>XA~4tQaKHiO9DbJOjz zHe#2dI+ui1(jwJ)yI92|3)xAi$=T_$olh=O28SKfF5%64A7+n?n}p#%|{~f~(@R zA0In*wDO?>wVvSD6(1daKQ)A?CbPWJ`~L#c2QB!1QQ^>_Z8|h_^K0h4Y-4%M5M>v9 zO#&jNl4e7Dq^YpitXHn6vOEwIf(;bO9KCJE2i$(HaP{B&&`B|zWtjDGD4{flA-EU` zeYrFadV-hJ_6xJI*>F3n4iz|F80sPe1@CH}RgZ5!D?@olRqK_E@|(_8hO zi_rMNceakjR=}GXk%t-1b;qK57i-TcGKU=~wWzue-t))X!Wa`hVeE)jaLaL?;b4L8 zip>Rc?Zl*Sq&CRzX(e3&7&9pw7?BY>Njj@3W9pKRLdzP}UE{8*;`gLjVkK1H+tJ6biRO6eJSbT8o%LiI;_ zHXf&#ERYA7V#Xjm@w_h=D~6LX>oYIjjQ^bYuqmSJqVcRG+;h56j?HeF+W*@ z`nE&!-(1Dv$QmA=Qs!}Avvi#JlE|Ua7bt88Oq~~3YZ1W{{rm1j--O3FB?zizqmy1J z9^09Fm-oh#WsS#||1dfkd%Ai)0$x0LT&jSwXd^jwXnVf-bgyek#a9JjP9asT?=lh_ zlyS=m#DA*_CiPt+rK5HILBCB6eM`=Z6x}{{lqn#+)R(A2cO^dJ0L%vG(MuG#ZTW_)p{7$BTX*f%xHa)Jji(|44%rb_5^C ziiAv(@d71^H+-p1BYY8U&-j3R_3pp1mJ$+xXIKCQPaj{2?wV08Z*k}N&z3fz`~96g zu*;EZ#RWc5ctfS$GecsZ?4_7P%|i(3+s@NuA&#(Z2|9ihPC*xjuqnWiq3P~-FYyp5rI-GW$ zQ(+yEKutSIEw*e=?2#klFvgYzRf!Zf9OELZQ3Rn1a!D;1keMnR#cbXamuDnuB|rYX zbf!WO)O#;adOgII<~;PT+0PfNJ1~l_J6YaK7yz>NZ{rTjKNO0BTlI)_E&r0mrUqN% zbO<;i;{QK@0{Ag@ZHeyqFqS%As+Y%r$ig_GeGPWMZ6~+{tP82Pt@?waj6`xGJrp8C z{4mVLKC}l&E4P}fHmsv~ zE{#L=9hKC1b2dS`3&bmIpXe+%w${9^{Bg9DT!d8yY5yLz1hFzdU$A|p9{N-Rt1t|9 zIwHeD|DJH&<`wzc@xofIFxQIvMr8h3phkupXeC(VU&;-_Eyhp>i}~)6g?aEPykTX9 zyN>FqWgq#rpUN`KqlDI(fMK=RN%Zy8QFNy+UL22c<+C!sdMe{E5f5>9eVA)}o4^>< z&Quou9+;ooRCXe;)G|Bt$(h?}pC@!%@kr8#l5>Gzh`&zP*PjyOLsg7-=Sca7_3D5} zw=)+!=7YihBjIbt6CHp*Nso6}%<(cyfY->2<_&A9%8cqqsZU4({8LSVm zaHYS|Nlwfj0004VZIV8(|8$12_N$`EXDIwK4FsTHB*eRJHoSgM(6YM?li6!o5NkNgc%?ZddSH9n#b!3MT(N<`x?N-CjWL_{*jny6mDj z2oaJEDTT~3MTLHkLYnR2N8Hm)hz0r7JYlTiAW74LiCsb-7;Hy0l1n;cK=Q(x2fm0u zL8?`)1Ix6Q>^urB{p-FbX{3o~?NsAdIP2{=NDOD0qeRDt0#+Ai?AZH<6J(+iTNi!K zh66r^k5rn}F59_a>vTRA?yp?7IPsn5JA=QoBUJ^2VO3wudEo1?FrdgbrXaxZli5Eah`XaY@BIE;Kzk- zJa+M+X*HBL-v~U1>r52EcP#!zlHy+X0Uk}Y!>PeV1_(LCb1(w+J5x0U(l`8BE(ydV zPnyO^^Q`O-xX4}3_oaTb(}emU370F+qD!s+;dN)(xsy^gH$mnUd;N9xQ&fm5xEA_P zWmMF;b}q^3gxIpEj4QV??Pj{cLRs1$g(XwkMYwUa?~px|Mz!k*B6eU{*?BPeXY{h7 zCE3(fTui|GUc`x4HsNpz(D8^?ntll0bCuNy0#%_QB0000000000 I000000JA1ZKmY&$ literal 0 HcmV?d00001 diff --git a/boards/doiting/dt_bl10_devkit/doc/index.rst b/boards/doiting/dt_bl10_devkit/doc/index.rst new file mode 100644 index 00000000000..2f351a77f25 --- /dev/null +++ b/boards/doiting/dt_bl10_devkit/doc/index.rst @@ -0,0 +1,124 @@ +.. zephyr:board:: dt_bl10_devkit + +DT-BL10 Development Kit +####################### + +Overview +******** + +DT-BL10 Wi-Fi and BLE coexistence Module is a highly integrated single-chip +low power 802.11n Wireless LAN (WLAN) network controller. It combines an RISC +CPU, WLAN MAC, a lT1R capable WLAN baseband, RF, and Bluetooth in a single chip. +It also provides a bunch of configurable GPIO, which are configured as digital +peripherals for different applications and control usage. + +DT-BL10 WiFi Module use BL602 as Wi-Fi and BLE coexistence soc chip. DT-BL10 +WiFi Module integrates internal memories for complete WIFI protocol functions. +The embedded memory configuration also provides simple application developments. + +DT-BL10 WiFi module supports the standard IEEE 802.11 b/g/n/e/i protocol and the +complete TCP/IP protocol stack. User can use it to add the WiFi function for the +installed devices, and also can be viewed as a independent network controller. + +Hardware +******** + +For more information about the Bouffalo Lab BL-602 MCU: + +- `Bouffalo Lab BL602 MCU Website`_ +- `Bouffalo Lab BL602 MCU Datasheet`_ +- `Bouffalo Lab Development Zone`_ +- `dt_bl10_devkit Schematic`_ +- `Doctors of Intelligence & Technology (www.doiting.com)`_ +- `The RISC-V BL602 Book`_ + +Supported Features +================== + +.. zephyr:board-supported-hw:: + +System Clock +============ + +The DT-BL10 board is configured to run at max speed (192MHz). + +Serial Port +=========== + +The ``dt_bl10_devkit`` board uses UART0 as default serial port. It is connected +to USB Serial converter and port is used for both program and console. + + +Programming and Debugging +************************* + +.. zephyr:board-supported-runners:: + +Samples +======= + +#. Build the Zephyr kernel and the :zephyr:code-sample:`hello_world` sample +application: + + .. zephyr-app-commands:: + :zephyr-app: samples/hello_world + :board: dt_bl10_devkit + :goals: build + +#. To flash an image using blflash runner: + + #. Press D8 button + + #. Press and release EN button + + #. Release D8 button + + .. code-block:: console + + west flash + +#. Run your favorite terminal program to listen for output. Under Linux the + terminal should be :code:`/dev/ttyUSB0`. For example: + + .. code-block:: console + + $ minicom -D /dev/ttyUSB0 -o + + The -o option tells minicom not to send the modem initialization + string. Connection should be configured as follows: + + - Speed: 115200 + - Data: 8 bits + - Parity: None + - Stop bits: 1 + + Then, press and release EN button + + .. code-block:: console + + *** Booting Zephyr OS build v4.1.0-4682-g21b20de1eb34 *** + Hello World! dt_bl10_devkit/bl602c20q2i + +Congratulations, you have ``dt_bl10_devkit`` configured and running Zephyr. + + +.. _Bouffalo Lab BL602 MCU Website: + https://www.bouffalolab.com/bl602 + +.. _Bouffalo Lab BL602 MCU Datasheet: + https://github.com/bouffalolab/bl_docs/tree/main/BL602_DS/en + +.. _Bouffalo Lab Development Zone: + https://dev.bouffalolab.com/home?id=guest + +.. _dt_bl10_devkit Schematic: + https://github.com/SmartArduino/Doiting_BL/blob/master/board/DT-BL10%20User%20Mannual.pdf + +.. _Doctors of Intelligence & Technology (www.doiting.com): + https://www.doiting.com + +.. _The RISC-V BL602 Book: + https://lupyuen.github.io/articles/book + +.. _Flashing Firmware to BL602: + https://lupyuen.github.io/articles/book#flashing-firmware-to-bl602 diff --git a/boards/doiting/dt_bl10_devkit/dt_bl10_devkit-pinctrl.dtsi b/boards/doiting/dt_bl10_devkit/dt_bl10_devkit-pinctrl.dtsi new file mode 100644 index 00000000000..6909cc44715 --- /dev/null +++ b/boards/doiting/dt_bl10_devkit/dt_bl10_devkit-pinctrl.dtsi @@ -0,0 +1,25 @@ +/* + * Copyright (c) 2021-2025 ATL Electronics + * SPDX-License-Identifier: Apache-2.0 + */ + +#include + +&pinctrl { + uart0_default: uart0_default { + group1 { + pinmux = , + ; + bias-pull-up; + input-schmitt-enable; + }; + }; + + uart0_sleep: uart0_sleep { + group1 { + pinmux = , + ; + bias-high-impedance; + }; + }; +}; diff --git a/boards/doiting/dt_bl10_devkit/dt_bl10_devkit.dts b/boards/doiting/dt_bl10_devkit/dt_bl10_devkit.dts new file mode 100644 index 00000000000..34ce0613736 --- /dev/null +++ b/boards/doiting/dt_bl10_devkit/dt_bl10_devkit.dts @@ -0,0 +1,51 @@ +/* + * Copyright (c) 2021-2025 ATL Electronics + * SPDX-License-Identifier: Apache-2.0 + */ + +/dts-v1/; + +#include +#include "dt_bl10_devkit-pinctrl.dtsi" + +/ { + model = "2.4GHz Wi-Fi and BLE coexistence Module Development Kit"; + compatible = "bflb,bl602"; + + chosen { + zephyr,flash = &flash0; + zephyr,itcm = &itcm; + zephyr,dtcm = &dtcm; + zephyr,sram = &sram0; + zephyr,console = &uart0; + zephyr,shell-uart = &uart0; + }; +}; + +&cpu0 { + clock-frequency = ; +}; + +&spi1 { + #address-cells = <1>; + #size-cells = <0>; + reg = <0x4000b000 0x1000 0x23000000 0xc00000>; + + flash0: flash@0 { + compatible = "issi,is25lp128", "jedec,spi-nor"; + status = "disabled"; + size = ; + jedec-id = [96 60 18]; + reg = <0>; + spi-max-frequency = ; + }; +}; + +&uart0 { + status = "okay"; + current-speed = <115200>; + + pinctrl-0 = <&uart0_default>; + pinctrl-1 = <&uart0_sleep>; + pinctrl-names = "default", "sleep"; +}; diff --git a/boards/doiting/dt_bl10_devkit/dt_bl10_devkit.yaml b/boards/doiting/dt_bl10_devkit/dt_bl10_devkit.yaml new file mode 100644 index 00000000000..8a0921fd9d8 --- /dev/null +++ b/boards/doiting/dt_bl10_devkit/dt_bl10_devkit.yaml @@ -0,0 +1,18 @@ +# Copyright (c) 2021-2025 ATL Electronics +# SPDX-License-Identifier: Apache-2.0 + +identifier: dt_bl10_devkit +name: DT-BL10 coexistence Module Development Kit +type: mcu +arch: riscv +ram: 64 +toolchain: + - zephyr +testing: + ignore_tags: + - net + - bluetooth +supported: + - pinctrl + - uart +vendor: doiting diff --git a/boards/doiting/dt_bl10_devkit/dt_bl10_devkit_defconfig b/boards/doiting/dt_bl10_devkit/dt_bl10_devkit_defconfig new file mode 100644 index 00000000000..b4c911b77c4 --- /dev/null +++ b/boards/doiting/dt_bl10_devkit/dt_bl10_devkit_defconfig @@ -0,0 +1,8 @@ +# Copyright (c) 2021-2025 ATL Electronics +# SPDX-License-Identifier: Apache-2.0 + +CONFIG_CONSOLE=y +CONFIG_SERIAL=y + +CONFIG_UART_CONSOLE=y +CONFIG_UART_INTERRUPT_DRIVEN=y diff --git a/boards/doiting/index.rst b/boards/doiting/index.rst new file mode 100644 index 00000000000..8be7f522dbd --- /dev/null +++ b/boards/doiting/index.rst @@ -0,0 +1,10 @@ +.. _boards-doiting: + +Doctors of Intelligence & Technology +#################################### + +.. toctree:: + :maxdepth: 1 + :glob: + + **/*