From owner-freebsd-arm@freebsd.org Sun Mar 8 06:16:42 2020 Return-Path: Delivered-To: freebsd-arm@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 457D025FF6C for ; Sun, 8 Mar 2020 06:16:42 +0000 (UTC) (envelope-from ivlevsr@yandex.ru) Received: from forward100o.mail.yandex.net (forward100o.mail.yandex.net [IPv6:2a02:6b8:0:1a2d::600]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 48Zrj42npHz3Bty for ; Sun, 8 Mar 2020 06:16:40 +0000 (UTC) (envelope-from ivlevsr@yandex.ru) Received: from forward102q.mail.yandex.net (forward102q.mail.yandex.net [IPv6:2a02:6b8:c0e:1ba:0:640:516:4e7d]) by forward100o.mail.yandex.net (Yandex) with ESMTP id 880E34AC0B0D for ; Sun, 8 Mar 2020 09:16:35 +0300 (MSK) Received: from mxback2q.mail.yandex.net (mxback2q.mail.yandex.net [IPv6:2a02:6b8:c0e:40:0:640:9c8c:4946]) by forward102q.mail.yandex.net (Yandex) with ESMTP id 8478A7F20013 for ; Sun, 8 Mar 2020 09:16:35 +0300 (MSK) Received: from localhost (localhost [::1]) by mxback2q.mail.yandex.net (mxback/Yandex) with ESMTP id FHLK3vigbg-GZFCLNN6; Sun, 08 Mar 2020 09:16:35 +0300 To: undisclosed-recipients:; DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1583648195; bh=uWSl6OoY2HWDxPM+PNkKapz6NwJzqPVZiLgvTp89r3g=; h=References:Date:Message-Id:Cc:Subject:In-Reply-To:From; b=Ot8efFaJYIJjwBkk4XPP7MkSce1x34y5sYJdPOIHWVdQ8Du9M41vwKTL0JlyXIBTP ekLVa0nx++w6m292m6lGDHUeO5SVtkIGZGYYNZn6f2nux8xn+s8y//L4tRhlgIlEPw kUUve07ObDyCAP0g3MMMmzSGk/lhYMD76ak6wHlI= Received: by vla5-e043431e7e8d.qloud-c.yandex.net with HTTP; Sun, 08 Mar 2020 09:16:35 +0300 From: Sergey Ivlev Cc: "freebsd-arm@FreeBSD.org" In-Reply-To: <76e66ea321b8d7480af75cfbd38fa55f5ac40afd.camel@freebsd.org> References: <2228511583493903@vla3-bebe75876e15.qloud-c.yandex.net> <76e66ea321b8d7480af75cfbd38fa55f5ac40afd.camel@freebsd.org> Subject: Re: Cross-building ports with release(7) MIME-Version: 1.0 X-Mailer: Yamail [ http://yandex.ru ] 5.0 Date: Sun, 08 Mar 2020 11:16:35 +0500 Message-Id: <3494471583648080@vla5-4a37cde0b550.qloud-c.yandex.net> Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset=utf-8 X-Rspamd-Queue-Id: 48Zrj42npHz3Bty X-Spamd-Bar: + Authentication-Results: mx1.freebsd.org; dkim=pass header.d=yandex.ru header.s=mail header.b=Ot8efFaJ; dmarc=pass (policy=none) header.from=yandex.ru; spf=pass (mx1.freebsd.org: domain of ivlevsr@yandex.ru designates 2a02:6b8:0:1a2d::600 as permitted sender) smtp.mailfrom=ivlevsr@yandex.ru X-Spamd-Result: default: False [1.37 / 15.00]; TO_DN_EQ_ADDR_SOME(0.00)[]; TO_DN_SOME(0.00)[]; R_SPF_ALLOW(-0.20)[+ip6:2a02:6b8:0:1000::/52:c]; FREEMAIL_FROM(0.00)[yandex.ru]; RCVD_COUNT_THREE(0.00)[4]; DKIM_TRACE(0.00)[yandex.ru:+]; RCPT_COUNT_TWO(0.00)[2]; DMARC_POLICY_ALLOW(-0.50)[yandex.ru,none]; FROM_EQ_ENVFROM(0.00)[]; IP_SCORE(0.00)[ip: (-9.14), ipnet: 2a02:6b8::/32(-4.74), asn: 13238(-3.84), country: RU(0.01)]; MIME_TRACE(0.00)[0:+]; FREEMAIL_ENVFROM(0.00)[yandex.ru]; ASN(0.00)[asn:13238, ipnet:2a02:6b8::/32, country:RU]; DWL_DNSWL_NONE(0.00)[yandex.ru.dwl.dnswl.org : 127.0.5.0]; ARC_NA(0.00)[]; R_DKIM_ALLOW(-0.20)[yandex.ru:s=mail]; FROM_HAS_DN(0.00)[]; NEURAL_HAM_LONG(-1.00)[-0.998,0]; MIME_GOOD(-0.10)[text/plain]; PREVIOUSLY_DELIVERED(0.00)[freebsd-arm@freebsd.org]; NEURAL_SPAM_MEDIUM(0.37)[0.366,0]; IP_SCORE_FREEMAIL(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[0.0.6.0.0.0.0.0.0.0.0.0.0.0.0.0.d.2.a.1.0.0.0.0.8.b.6.0.2.0.a.2.list.dnswl.org : 127.0.5.0]; RCVD_TLS_LAST(0.00)[]; R_UNDISC_RCPT(3.00)[] X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Porting FreeBSD to ARM processors." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 08 Mar 2020 06:16:42 -0000 06.03.2020, 22:15, "Ian Lepore" : > On Fri, 2020-03-06 at 16:25 +0500, Sergey Ivlev wrote: >>  Hello! >> >>  I've successfully built FreeBSD 13.0-CURRENT (r358609) image for >>  ARMv7 on AMD64 host using release(7). >> >>  I wonder is it possible for AMD64 host to build/install ports into >>  the image? >> >>  I've defined arm_do_quirk function in my configuration file, where >>  I'm calling `make DESTDIR=${CHROOTDIR}/${DESTDIR} TARGET=arm >>  TARGET_ARCH=armv7 ... build install clean`. But it ended up with >>  error, of course, because that make(1) chroots into >>  ${CHROOTDIR}/${DESTDIR} and runs executables from there, but >>  ${CHROOTDIR}/${DESTDIR} is where **built target** located (i.e. where >>  files for ARMv7; ${CHROOTDIR}/${DESTDIR} is {my chrrot >>  dir}/usr/obj/usr/src/arm.armv7/release/{kernel name}). Altering the >>  PATH variable so it will specify ${CHROOTDIR} as the first entry, >>  doesn't help either -- I end up with the same ``exec format error'' >>  (env PATH="${CHROOTDIR}:${PATH}" make DESTDIR=...). >> >>  I had also tried to `chroot ${CHROOTDIR} make DESTDIR=${DESTDIR} >>  TARGET=arm TARGET_ARCH=armv7 ... build install clean`, but >>  mount_nullfs(8) failed under chroot(8). >> >>  Therefore, my question is: is it possible while building an image for >>  ARMv7 on AMD64 host with release(7) also building and installing >>  ports into the result image? >> >>  Thanks in advance! > > Cross-building ports is done with poudriere and qemu. There is some > info on setting it up in https://wiki.freebsd.org/QemuUserModeHowTo but > I think that's pretty out of date. There may be newer how-to info that > I'm not aware of. I'm going to CC the freebsd-arm@ list on this reply, > because the folks there probably know of better information resources > for all this. > > I also have no idea how to integrate poudriere-based building with > release(7) stuff. It may be a matter of building a local package repo > using poudriere, then configuring the release script stuff to use it. Thanks for reply! Let's suppose that I've built a local repository with packages targeting ARM (using poudriere and qemu). Is it possible than to use `pkg add -c {CHROOTDIR} arm_pkg_name` within arm_do_quirk function to install a package into the release? From owner-freebsd-arm@freebsd.org Sun Mar 8 06:44:10 2020 Return-Path: Delivered-To: freebsd-arm@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 92B9F2608D0 for ; Sun, 8 Mar 2020 06:44:10 +0000 (UTC) (envelope-from yamori813@yahoo.co.jp) Received: from nh601-vm6.bullet.mail.ssk.yahoo.co.jp (nh601-vm6.bullet.mail.ssk.yahoo.co.jp [182.22.90.15]) by mx1.freebsd.org (Postfix) with SMTP id 48ZsJj1cdWz3RHC for ; Sun, 8 Mar 2020 06:44:04 +0000 (UTC) (envelope-from yamori813@yahoo.co.jp) Received: from [182.22.66.105] by nh601.bullet.mail.ssk.yahoo.co.jp with NNFMP; 08 Mar 2020 06:44:02 -0000 Received: from [182.22.91.132] by t603.bullet.mail.ssk.yahoo.co.jp with NNFMP; 08 Mar 2020 06:44:01 -0000 Received: from [127.0.0.1] by omp605.mail.ssk.yahoo.co.jp with NNFMP; 08 Mar 2020 06:44:01 -0000 X-Yahoo-Newman-Property: ymail-3 X-Yahoo-Newman-Id: 933695.88407.bm@omp605.mail.ssk.yahoo.co.jp X-YMail-OSG: pBmoCLcVM1lOODVljwSWKoIzMlDVsZt6slNvswEBOAucX1seXcG8WsMlwQJIyBJ zGC0yZcCS4gJJT3XsXu5VmwzKrCUkETGxn9P7pS8lw5XMX4qvcoSLO4VwozBpQcniMEBVUqRjfno kKW6ZZBJeOQSu3jJ4veXGYeyx7mNPJVSre1.ERR4.UHPtdiJvEtM8vWUivqlD.rZPW3WiYFkfnbs k0E5Af_iPeEvkzf6ZB1uY8vWcmZIiYul4A6Sl8wgSOmdLQSsITKK0KmjhK3t7NGF4CWzAyIblfWB vR7rRnL.POmZnic6mxCZ4a0zhEmfmxI4HBd8Hg9EKl15pB3kQpE7sYupUKistE36IR1acn15S5Ob ip_lTD6P.7birDxXp352C8Qm3Yk2OBbK7wELxG_VnheXevggM0yKwuJkFH.ZaCMDNBUsNJfHe.0A pY3MxbQJ8UFb7SGx_Yw51oodtxP0B.s2PD0ttSI8KISiPu6xEn4SSHdFuWUBFabyeDZxIPgRu5j7 lkCNh7muy8Z.zdfx3yUkuuELosB22.WFS3iF4_Y8JOfp_GHkIdFOnvXOtxdCk70uS.NSeEGzkSlD 08krWebHZNgEXCGcU.INhxWTg3gQ1Gtb4y.e0v1yLhMSGOPmE.JNM6NAw0UsbJ46Imuv70iyJSNz mJJWU3MuJYSbobcZhwiZSfrH4D1RExU2QcA8t88nSHW7cqQ6WrhmfYQ6oyzVSa4aZyhR974tvVgq DAJSqVkIipwGwUnwcSrwV Received: from jws701106.mail.ssk.yahoo.co.jp by sendmailws603.mail.ssk.yahoo.co.jp; Sun, 08 Mar 2020 15:44:01 +0000; 1583649841.405 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1583649841; s=yj20110701; d=yahoo.co.jp; h=Date:From:Reply-To:To:Cc:Message-ID:Subject:MIME-Version:Content-Type:Content-Transfer-Encoding:References; bh=gqeGYoSDej3c/7fEUF1+hPvO9KyKNqp8LspGe6SRU9k=; b=hiNuXVc+ePc3ioYw9QpVVfQ7EI5KekMDHPH61YrelOOTPFM8EJQd6LTjjDRBxqYZ e035nHCkZf2Em45qvezs9AYomQqoOVYRZdac2Nb1REbd/HAhZ/vBdk+xFCB0fc2/mda c0d9UxSCTTVDF49wkFTDLZGvg0mpsa8kktwB9v7I= DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=yj20110701; d=yahoo.co.jp; h=Date:From:Reply-To:Cc:Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:References; b=cDh1vkG8GZrp8OD6w09SpaDHCEXShKBDeouCyZNqu/OoS/A3g9f9nSCrC3TXuMXE Zl5CFgWlAhKJpD7D+O31Rg0Ts9nbQRliKzaqKbCV6YJpJLUmQBqkjgEqy7Lk4fz/f36 qBpzdG6zLw19XF/OIouHo2G25A+qHzoJ+xZ4xYoY=; Date: Sun, 8 Mar 2020 15:44:00 +0900 (JST) From: Mori Hiroki Reply-To: Mori Hiroki To: Michael Vale , Ian Lepore Cc: "freebsd-hackers@freebsd.org" , "freebsd-arm@FreeBSD.org" , Sergey Ivlev Message-ID: <1598855931.2738447.1583649840845.JavaMail.yahoo@mail.yahoo.co.jp> Subject: Re: Cross-building ports with release(7) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable References: <1598855931.2738447.1583649840845.JavaMail.yahoo.ref@mail.yahoo.co.jp> X-Rspamd-Queue-Id: 48ZsJj1cdWz3RHC X-Spamd-Bar: - Authentication-Results: mx1.freebsd.org; dkim=pass header.d=yahoo.co.jp header.s=yj20110701 header.b=hiNuXVc+; dmarc=pass (policy=none) header.from=yahoo.co.jp; spf=pass (mx1.freebsd.org: domain of yamori813@yahoo.co.jp designates 182.22.90.15 as permitted sender) smtp.mailfrom=yamori813@yahoo.co.jp X-Spamd-Result: default: False [-1.11 / 15.00]; TO_DN_EQ_ADDR_SOME(0.00)[]; HAS_REPLYTO(0.00)[yamori813@yahoo.co.jp]; TO_DN_SOME(0.00)[]; FREEMAIL_FROM(0.00)[yahoo.co.jp]; R_SPF_ALLOW(-0.20)[+ip4:182.22.90.0/23]; RCPT_COUNT_FIVE(0.00)[5]; DKIM_TRACE(0.00)[yahoo.co.jp:+]; DMARC_POLICY_ALLOW(-0.50)[yahoo.co.jp,none]; FREEMAIL_TO(0.00)[live.com.au]; RCVD_NO_TLS_LAST(0.10)[]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+]; FREEMAIL_ENVFROM(0.00)[yahoo.co.jp]; ASN(0.00)[asn:23816, ipnet:182.22.0.0/17, country:JP]; IP_SCORE(0.00)[ip: (3.78), ipnet: 182.22.0.0/17(2.37), asn: 23816(1.89), country: JP(0.04)]; DWL_DNSWL_NONE(0.00)[yahoo.co.jp.dwl.dnswl.org : 127.0.5.0]; ARC_NA(0.00)[]; R_DKIM_ALLOW(-0.20)[yahoo.co.jp:s=yj20110701]; RCVD_COUNT_FIVE(0.00)[5]; FROM_HAS_DN(0.00)[]; REPLYTO_EQ_FROM(0.00)[]; NEURAL_HAM_LONG(-0.79)[-0.786,0]; MIME_GOOD(-0.10)[text/plain]; FREEMAIL_REPLYTO(0.00)[yahoo.co.jp]; NEURAL_SPAM_MEDIUM(0.58)[0.575,0]; IP_SCORE_FREEMAIL(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[15.90.22.182.list.dnswl.org : 127.0.5.0] X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Porting FreeBSD to ARM processors." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 08 Mar 2020 06:44:10 -0000 Hi ZRouter.org support ports cross build. https://zrouter.org I do build mips, mipsel, arm, armv7 ports by ZRouter. I put paper to AsiaBSDCon 2020 about cross build ports. The paper is accept. But AsiaBSDCon is cancelled. This is prepared slide. https://docs.google.com/presentation/d/1iybunLiYIKbpOKHYHNHDnaQ7jO23DpXGk_U= R9mF21NY/edit?usp=3Dsharing ----- Original Message ----- > From: Michael Vale > To: Ian Lepore > Cc: "freebsd-hackers@freebsd.org" ; "freebsd= -arm@FreeBSD.org" ; Sergey Ivlev > Date: 2020/3/7, Sat 03:15 > Subject: Re: Cross-building ports with release(7) >=20 > Sergey, >=20 > I see what you are trying to achieve here. Sorry but the cross ports buil= d=20 > scripting has been neglected.=C2=A0 It requires staging.=C2=A0 I will tak= e a look at this=20 > today but I can't promise anything as other things have taken priority in= =20 > life.=C2=A0 You can for the interim make packages and install them after = the fact or=20 > use Ian's suggestion. >=20 > On 7 Mar 2020 04:15, Ian Lepore wrote: >=20 > On Fri, 2020-03-06 at 16:25 +0500, Sergey Ivlev wrote: >>=C2=A0 Hello! >>=20 >>=C2=A0 I've successfully built FreeBSD 13.0-CURRENT (r358609) image for >>=C2=A0 ARMv7 on AMD64 host using release(7). >>=20 >>=C2=A0 I wonder is it possible for AMD64 host to build/install ports into >>=C2=A0 the image? >>=20 >>=C2=A0 I've defined arm_do_quirk function in my configuration file, where >>=C2=A0 I'm calling `make DESTDIR=3D${CHROOTDIR}/${DESTDIR} TARGET=3Darm >>=C2=A0 TARGET_ARCH=3Darmv7 ... build install clean`.=C2=A0 But it ended u= p with >>=C2=A0 error, of course, because that make(1) chroots into >>=C2=A0 ${CHROOTDIR}/${DESTDIR} and runs executables from there, but >>=C2=A0 ${CHROOTDIR}/${DESTDIR} is where **built target** located (i.e. wh= ere >>=C2=A0 files for ARMv7; ${CHROOTDIR}/${DESTDIR} is {my chrrot >>=C2=A0 dir}/usr/obj/usr/src/arm.armv7/release/{kernel name}).=C2=A0 Alter= ing the >>=C2=A0 PATH variable so it will specify ${CHROOTDIR} as the first entry, >>=C2=A0 doesn't help either -- I end up with the same ``exec format=20 > error'' >>=C2=A0 (env PATH=3D"${CHROOTDIR}:${PATH}" make DESTDIR=3D...). >>=20 >>=C2=A0 I had also tried to `chroot ${CHROOTDIR} make DESTDIR=3D${DESTDIR} >>=C2=A0 TARGET=3Darm TARGET_ARCH=3Darmv7 ... build install clean`, but >>=C2=A0 mount_nullfs(8) failed under chroot(8). >>=20 >>=C2=A0 Therefore, my question is: is it possible while building an image = for >>=C2=A0 ARMv7 on AMD64 host with release(7) also building and installing >>=C2=A0 ports into the result image? >>=20 >>=C2=A0 Thanks in advance! >>=20 >=20 > Cross-building ports is done with poudriere and qemu.=C2=A0 There is some > info on setting it up in https://wiki.freebsd.org/QemuUserModeHowTo but > I think that's pretty out of date.=C2=A0 There may be newer how-to info t= hat > I'm not aware of.=C2=A0 I'm going to CC the freebsd-arm@ list on this rep= ly, > because the folks there probably know of better information resources > for all this. >=20 > I also have no idea how to integrate poudriere-based building with > release(7) stuff.=C2=A0 It may be a matter of building a local package re= po > using poudriere, then configuring the release script stuff to use it. >=20 > -- Ian >=20 >=20 > _______________________________________________ > freebsd-arm@freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/freebsd-arm > To unsubscribe, send any mail to "freebsd-arm-unsubscribe@freebsd.org" >=20 > _______________________________________________ > freebsd-arm@freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/freebsd-arm > To unsubscribe, send any mail to "freebsd-arm-unsubscribe@freebsd.org" >=20 From owner-freebsd-arm@freebsd.org Sun Mar 8 08:18:34 2020 Return-Path: Delivered-To: freebsd-arm@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 83DA7262138 for ; Sun, 8 Mar 2020 08:18:34 +0000 (UTC) (envelope-from hlh@restart.be) Received: from tignes.restart.be (tignes.restart.be [IPv6:2001:41d0:a:f40b::1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "tignes.restart.be", Issuer "CA master" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 48ZvPj0PV0z4FFT for ; Sun, 8 Mar 2020 08:18:32 +0000 (UTC) (envelope-from hlh@restart.be) X-Comment: SPF check N/A for local connections - client-ip=192.168.25.127; helo=restart.be; envelope-from=hlh@restart.be; receiver= DKIM-Filter: OpenDKIM Filter v2.10.3 tignes.restart.be 48ZvPX39LHzjF Received: from restart.be (norquay.tunnel.bel [192.168.25.127]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.restart.be", Issuer "CA master" (verified OK)) by tignes.restart.be (Postfix) with ESMTPS id 48ZvPX39LHzjF; Sun, 8 Mar 2020 09:18:23 +0100 (CET) Received: from morzine.restart.bel (morzine.restart.be [IPv6:2001:41d0:a:f40b:1:1:0:1]) (authenticated bits=0) by restart.be (8.15.2/8.15.2) with ESMTPSA id 0288IKMY059951 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=OK); Sun, 8 Mar 2020 09:18:22 +0100 (CET) (envelope-from hlh@restart.be) X-Authentication-Warning: norquay.restart.bel: Host morzine.restart.be [IPv6:2001:41d0:a:f40b:1:1:0:1] claimed to be morzine.restart.bel Subject: Re: FreeBSD 13.0-CURRENT #0 r358465 on rockpro64 and RTC To: Greg V Cc: "freebsd-arm@freebsd.org" References: <2ff55aa2-b919-3f2b-715b-a97bb0debe21@restart.be> <71529742-60eb-4301-808a-d9dd3902d50e@localhost> <95809d4d-9375-70b7-df83-1ba614ad6a8a@restart.be> From: Henri Hennebert Message-ID: <1bb31f7d-2fef-3c98-5243-4818be9c8de0@restart.be> Date: Sun, 8 Mar 2020 09:18:20 +0100 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:68.0) Gecko/20100101 Thunderbird/68.5.0 MIME-Version: 1.0 In-Reply-To: <95809d4d-9375-70b7-df83-1ba614ad6a8a@restart.be> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 48ZvPj0PV0z4FFT X-Spamd-Bar: / X-Spamd-Result: default: False [0.46 / 15.00]; ARC_NA(0.00)[]; TO_DN_EQ_ADDR_SOME(0.00)[]; R_DKIM_ALLOW(-0.20)[restart.be:s=tignes]; RCVD_VIA_SMTP_AUTH(0.00)[]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; R_SPF_ALLOW(-0.20)[+ip6:2001:41d0:a:f40b::1/128]; NEURAL_HAM_LONG(-0.93)[-0.927,0]; MIME_GOOD(-0.10)[text/plain]; HAS_XAW(0.00)[]; NEURAL_SPAM_MEDIUM(0.99)[0.994,0]; RCVD_COUNT_THREE(0.00)[3]; TO_MATCH_ENVRCPT_SOME(0.00)[]; DKIM_TRACE(0.00)[restart.be:+]; RCPT_COUNT_TWO(0.00)[2]; DMARC_POLICY_ALLOW(-0.50)[restart.be,reject]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+]; IP_SCORE(1.40)[ipnet: 2001:41d0::/32(4.92), asn: 16276(2.06), country: FR(0.00)]; ASN(0.00)[asn:16276, ipnet:2001:41d0::/32, country:FR]; MID_RHS_MATCH_FROM(0.00)[]; RCVD_TLS_ALL(0.00)[] X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Porting FreeBSD to ARM processors." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 08 Mar 2020 08:18:34 -0000 On 3/7/20 12:06 PM, Henri Hennebert via freebsd-arm wrote: > On 3/6/20 3:20 PM, Greg V wrote: >> >> >> Mar 6, 2020 3:21:03 PM Henri Hennebert via freebsd-arm : >> >>> Hello >>> >>> I am running FreeBSD 13.0-CURRENT #0 r358465 on a rockpro64 4GB with a >>> RTC BACKUP BATTERY HOLDER - CR-2032. >>> >>> (u-boot from https://wiki.freebsd.org/arm64/ROCKPro64 to run with the >>> 4GB and with hw.ncpu=4 in loader.conf) >>> >>> I tested the 3V of the battery. >>> >>> It seems that the RTC is not managed for now (time lost after power >>> off), is it correct? >> >> Hi, the RTC driver is not merged yet: >> >> https://reviews.freebsd.org/D22692 >> > I try it and it work for me! > Strangely after a night off time is lost :-o Henri From owner-freebsd-arm@freebsd.org Tue Mar 10 04:48:34 2020 Return-Path: Delivered-To: freebsd-arm@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id C564925833D for ; Tue, 10 Mar 2020 04:48:34 +0000 (UTC) (envelope-from yamori813@yahoo.co.jp) Received: from nh603-vm2.bullet.mail.ssk.yahoo.co.jp (nh603-vm2.bullet.mail.ssk.yahoo.co.jp [182.22.90.43]) by mx1.freebsd.org (Postfix) with SMTP id 48c2fP5LZxz4Txx for ; Tue, 10 Mar 2020 04:48:29 +0000 (UTC) (envelope-from yamori813@yahoo.co.jp) Received: from [182.22.66.104] by nh603.bullet.mail.ssk.yahoo.co.jp with NNFMP; 10 Mar 2020 04:48:26 -0000 Received: from [182.22.91.133] by t602.bullet.mail.ssk.yahoo.co.jp with NNFMP; 10 Mar 2020 04:48:26 -0000 Received: from [127.0.0.1] by omp606.mail.ssk.yahoo.co.jp with NNFMP; 10 Mar 2020 04:48:26 -0000 X-Yahoo-Newman-Property: ymail-3 X-Yahoo-Newman-Id: 470854.60424.bm@omp606.mail.ssk.yahoo.co.jp X-YMail-OSG: WS_GiY0VM1nUsEps8w4kxnR93Ib8UKmFiLrvxYJe7lGMVjr1Wu2weDtfnMGhdf6 JYiwT1grwyxOsJHn8nUeFWb91i4Mdd6sCXs.gKlg5cp_fR9J3qlm6B20SQR0l_uue_dxztXUlTb8 .DhfUESj8Lcesl9i0Nr888je3LHxhyat4VqtQvNSwBRkvVCvUIYGHtryluv0AN7JkoFE1h_0gWZI 18.VMJBySWqfs2_aFuoVTxyvVT3Bf.vfcjCLxHnTdn_i1tiE9IzALy7LlHIQalUa4ZbcjzCrIeuf eNsIsWWLenkEqspreyxB6e_5.YDrn3ynWD8R3qL3077BIJo9VYam1ta5OWYTg7Tg.9S0JZZB9pNk PFEut8gS9Y8BO6UMzVu1rVAkgqHuRz8dPVOa8DTLqLUJccUAl8PXawMOHxLTDqrMvgdAJ.WVAlht hXTip.E3r28a9Zk39PUvozkpgHJDzPBOXQc8rxnpgYKvkb2xo43KmFOp.57CikH00Kv945QOisQN bRZGyL.UNzTF4GWHnaGMxDEzZWbcnZFVSGBq3C2r9rJljmf8mDwKgDmvf9IrJ95pLHEBWi_mUPoo wRMqqTFOCcAGmE4km9J3k7JytKcmzZAF8w90pC8iSfSdKXfFKuxEzcpix69y1T9xKaBJyLQCOQD3 gqv4rkyIMkTjL3lUqr3SeLO7MM6u5Z1v6sz43336eLhO4apIDJmD61pTdvjEtmv7drUCJkwvuL5Z taO7UErduDVfK0hBcKXXUKw-- Received: from jws702105.mail.ssk.yahoo.co.jp by sendmailws613.mail.ssk.yahoo.co.jp; Tue, 10 Mar 2020 13:48:25 +0000; 1583815705.957 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1583815706; s=yj20110701; d=yahoo.co.jp; h=Date:From:Reply-To:To:Message-ID:In-Reply-To:References:Subject:MIME-Version:Content-Type:Content-Transfer-Encoding; bh=qKK6CZAuL4EQpO0Vyfmbp5ntI/S8qfuqqqPqIORVrGI=; b=fWgrvohOeiswUzBneorK3j+yFsTXyn1DnR6RWuvP+7ApnER3lf19B32hGYfU6G1w TqwSlKjdwt+t6J+06aDIQSGBdIy5UySibtfFJsGMhJlfA7jVlB8+k4t8RToZEdp42+l Y9hi3JBkjwdSK4xgr3EJzHJKXX6LpEFOLZDvCLiY= DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=yj20110701; d=yahoo.co.jp; h=Date:From:Reply-To:Message-ID:In-Reply-To:References:MIME-Version:Content-Type:Content-Transfer-Encoding; b=kZXG9Qcq5GQIsNtvFHStKzbWslELDs6Jj8BPhb7CtQse+JkUrkD86ow7FPde3AcB FJHK0VmIjKgEgGhbK1Lxiut1VpDEXpCBQM2QbpKTd2f3wiotgY7NfnhV3omu0TmRxdD xKLXYSvrZgQQwwSraYXlxS6uSPFbBlDlkVGzybj0=; Date: Tue, 10 Mar 2020 13:48:25 +0900 (JST) From: Mori Hiroki Reply-To: Mori Hiroki To: Mori Hiroki , "freebsd-arm@freebsd.org" Message-ID: <1652297435.2854754.1583815705218.JavaMail.yahoo@mail.yahoo.co.jp> In-Reply-To: <899170752.2669767.1583496425789.JavaMail.yahoo@mail.yahoo.co.jp> References: <1989879823.835082.1583057147228.JavaMail.yahoo.ref@mail.yahoo.co.jp> <1989879823.835082.1583057147228.JavaMail.yahoo@mail.yahoo.co.jp> <2128278973.2661650.1583474156629.JavaMail.yahoo@mail.yahoo.co.jp> <374090886.2770800.1583491536027.JavaMail.yahoo@mail.yahoo.co.jp> <899170752.2669767.1583496425789.JavaMail.yahoo@mail.yahoo.co.jp> Subject: Re: A10 HDMI support MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Rspamd-Queue-Id: 48c2fP5LZxz4Txx X-Spamd-Bar: / Authentication-Results: mx1.freebsd.org; dkim=pass header.d=yahoo.co.jp header.s=yj20110701 header.b=fWgrvohO; dmarc=pass (policy=none) header.from=yahoo.co.jp; spf=pass (mx1.freebsd.org: domain of yamori813@yahoo.co.jp designates 182.22.90.43 as permitted sender) smtp.mailfrom=yamori813@yahoo.co.jp X-Spamd-Result: default: False [-0.82 / 15.00]; TO_DN_EQ_ADDR_SOME(0.00)[]; HAS_REPLYTO(0.00)[yamori813@yahoo.co.jp]; TO_DN_SOME(0.00)[]; R_SPF_ALLOW(-0.20)[+ip4:182.22.90.0/23]; FREEMAIL_FROM(0.00)[yahoo.co.jp]; DKIM_TRACE(0.00)[yahoo.co.jp:+]; RCPT_COUNT_TWO(0.00)[2]; DMARC_POLICY_ALLOW(-0.50)[yahoo.co.jp,none]; FREEMAIL_TO(0.00)[yahoo.co.jp]; RCVD_NO_TLS_LAST(0.10)[]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+]; FREEMAIL_ENVFROM(0.00)[yahoo.co.jp]; ASN(0.00)[asn:23816, ipnet:182.22.0.0/17, country:JP]; IP_SCORE(0.00)[ip: (1.53), ipnet: 182.22.0.0/17(2.37), asn: 23816(1.90), country: JP(0.04)]; DWL_DNSWL_NONE(0.00)[yahoo.co.jp.dwl.dnswl.org : 127.0.5.0]; ARC_NA(0.00)[]; R_DKIM_ALLOW(-0.20)[yahoo.co.jp:s=yj20110701]; RCVD_COUNT_FIVE(0.00)[5]; FROM_HAS_DN(0.00)[]; REPLYTO_EQ_FROM(0.00)[]; NEURAL_HAM_LONG(-0.81)[-0.810,0]; MIME_GOOD(-0.10)[text/plain]; FREEMAIL_REPLYTO(0.00)[yahoo.co.jp]; NEURAL_SPAM_MEDIUM(0.89)[0.890,0]; IP_SCORE_FREEMAIL(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[43.90.22.182.list.dnswl.org : 127.0.5.0]; RWL_MAILSPIKE_POSSIBLE(0.00)[43.90.22.182.rep.mailspike.net : 127.0.0.17] X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Porting FreeBSD to ARM processors." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 10 Mar 2020 04:48:35 -0000 Hi Now HDMI work on A10. I use u-boot initialize setting and only change frame buffer address. ----- Original Message ----- > From: Mori Hiroki > To: "freebsd-arm@freebsd.org" > Cc:=20 > Date: 2020/3/6, Fri 21:07 > Subject: Re: A10 HDMI support >=20 > Hi >=20 > A10 and A20=C2=A0CLK_PLL_VIDEO0 is PLL3. >=20 > PLL3 is 3000000(3M) step. >=20 > But minimam is 27M(x9). >=20 > 222M is just x74. >=20 > aw_clk_frac.c is miss calculate clock. >=20 > ----- Original Message ----- >> From: Mori Hiroki >> To: "freebsd-arm@freebsd.org" >> Cc:=20 >> Date: 2020/3/6, Fri 19:45 >> Subject: Re: A10 HDMI support >>=20 >> Hi >>=20 >> I test this code. >>=20 >> error =3D clk_set_freq(clk_vid,=C2=A0222000000, CLK_SET_ROUND_DOWN); >> error =3D clk_get_freq(clk_vid, &lcd_fout); >> device_printf(sc->dev, "MORI MORI freq=C2=A0CLK_PLL_VIDEO0=20 > %llu\n",=20 >> lcd_fout); >>=20 >> Result is this. >>=20 >> fb0: MORI MORI freq=C2=A0CLK_PLL_VIDEO0=C2=A0240000000 >>=20 >> clkng is not work=C2=A0correctly. >>=20 >> ----- Original Message ----- >>> =C2=A0 From: Mori Hiroki >>> =C2=A0 To: "freebsd-arm@freebsd.org"=20 > >>> =C2=A0 Cc:=20 >>> =C2=A0 Date: 2020/3/6, Fri 14:55 >>> =C2=A0 Subject: Re: A10 HDMI support >>>=20 >>> =C2=A0 Hi >>>=20 >>> =C2=A0 I seem clkng don't have this method. >>>=20 >>>=20 >>> =C2=A0 #define TCON_PLL_WORST =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A01000000 >>> =C2=A0 #define TCON_PLL_N_MIN =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A01 >>> =C2=A0 #define TCON_PLL_N_MAX =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A015 >>> =C2=A0 #define TCON_PLL_M_MIN =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A09 >>> =C2=A0 #define TCON_PLL_M_MAX =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0127 >>> =C2=A0 #define TCON_PLLREF_SINGLE =C2=A0 =C2=A0 =C2=A03000 =C2=A0 =C2= =A0/* kHz */ >>> =C2=A0 #define TCON_PLLREF_DOUBLE =C2=A0 =C2=A0 =C2=A06000 =C2=A0 =C2= =A0/* kHz */ >>> =C2=A0 #define TCON_RATE_KHZ(rate_hz) =C2=A0((rate_hz) / 1000) >>> =C2=A0 #define TCON_RATE_HZ(rate_khz) =C2=A0((rate_khz) * 1000) >>> =C2=A0 #define HDMI_DEFAULT_RATE =C2=A0 =C2=A0 =C2=A0 297000000 >>> =C2=A0 #define DEBE_DEFAULT_RATE =C2=A0 =C2=A0 =C2=A0 300000000 >>>=20 >>> =C2=A0 static void >>> =C2=A0 calc_tcon_pll(int f_ref, int f_out, int *pm, int *pn) >>> =C2=A0 { >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 int best, m, n, f_cur, diff; >>>=20 >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 best =3D TCON_PLL_WORST; >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 for (n =3D TCON_PLL_N_MIN; n <=3D TC= ON_PLL_N_MAX; n++) { >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 for (m = =3D TCON_PLL_M_MIN; m <=3D TCON_PLL_M_MAX; m++)=20 > { >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 f_cur =3D (m * f_ref) / n; >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 diff =3D f_out - f_cur; >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 if (diff > 0 && diff < best) { >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 best =3D diff; >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 *pm =3D m; >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 *pn =3D n; >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 } >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 } >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 } >>> =C2=A0 } >>>=20 >>> =C2=A0 int >>> =C2=A0 a10_clk_tcon_activate(unsigned int freq) >>> =C2=A0 { >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 struct a10_ccm_softc *sc; >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 int m, n, m2, n2, f_single, f_double= , dbl, src_sel; >>>=20 >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 sc =3D a10_ccm_sc; >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 if (sc =3D=3D NULL) >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 return (= ENXIO); >>>=20 >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 m =3D n =3D m2 =3D n2 =3D 0; >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 dbl =3D 0; >>>=20 >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 calc_tcon_pll(TCON_PLLREF_SINGLE, TC= ON_RATE_KHZ(freq), &m,=20 >=20 >> &n); >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 calc_tcon_pll(TCON_PLLREF_DOUBLE, TC= ON_RATE_KHZ(freq),=20 > &m2,=20 >>> =C2=A0 &n2); >>>=20 >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 f_single =3D n ? (m * TCON_PLLREF_SI= NGLE) / n : 0; >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 f_double =3D n2 ? (m2 * TCON_PLLREF_= DOUBLE) / n2 : 0; >>>=20 >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 if (f_double > f_single) { >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 dbl =3D = 1; >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 m =3D m2= ; >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 n =3D n2= ; >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 } >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 src_sel =3D dbl ? CCM_LCD_CH1_SRC_SE= L_PLL3_2X :=20 >> CCM_LCD_CH1_SRC_SEL_PLL3; >>>=20 >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 if (n =3D=3D 0 || m =3D=3D 0) >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 return (= EINVAL); >>>=20 >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 /* Set PLL3 to the closest possible = rate */ >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 a10_clk_pll3_set_rate(TCON_RATE_HZ(m= * TCON_PLLREF_SINGLE)); >>>=20 >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 /* Enable LCD0 CH1 clock */ >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 ccm_write_4(sc, CCM_LCD0_CH1_CLK, >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 CCM_LCD_CH1_SCLK2_GATI= NG | CCM_LCD_CH1_SCLK1_GATING | >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 (src_sel << CCM_LCD_CH= 1_SRC_SEL_SHIFT) | (n - 1)); >>>=20 >>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 return (0); >>> =C2=A0 } >>> =C2=A0 ----- Original Message ----- >>>> =C2=A0 From: Mori Hiroki >>>> =C2=A0 To: "freebsd-arm@freebsd.org"=20 >> >>>> =C2=A0 Cc:=20 >>>> =C2=A0 Date: 2020/3/1, Sun 19:05 >>>> =C2=A0 Subject: A10 HDMI support >>>>=20 >>>> =C2=A0 Hi >>>>=20 >>>> =C2=A0 I have A10 PCduino.=C2=A0 >>>>=20 >>>> =C2=A0 I try to use a10_hdmi.c and a10_fb.c >>>>=20 >>>> =C2=A0 This code may be work at first implementation >>>> =C2=A0 at 2016.=C2=A0 >>>>=20 >>>> =C2=A0 But change to dts away modify and chkng change >>>> =C2=A0 complete broken this code. >>>>=20 >>>> =C2=A0 I modify dts and code on 12-Stable then almost >>>> =C2=A0 detect. But not work. >>>>=20 >>>> =C2=A0 http://dmesgd.nycbug.org/index.cgi?do=3Dview&id=3D5402=20 >>>>=20 >>>>=20 >>>> =C2=A0 Dose some body repair this code? >>>>=20 >>>> =C2=A0 Thanks >>>>=20 >>>> =C2=A0 Hiroki Mori >>>>=20 >>>> =C2=A0 _______________________________________________ >>>> =C2=A0 freebsd-arm@freebsd.org mailing list >>>> =C2=A0 https://lists.freebsd.org/mailman/listinfo/freebsd-arm=20 >>>> =C2=A0 To unsubscribe, send any mail to=20 >>> =C2=A0 "freebsd-arm-unsubscribe@freebsd.org" >>>>=20 >>>=20 >>> =C2=A0 _______________________________________________ >>> =C2=A0 freebsd-arm@freebsd.org mailing list >>> =C2=A0 https://lists.freebsd.org/mailman/listinfo/freebsd-arm=20 >>> =C2=A0 To unsubscribe, send any mail to=20 >> "freebsd-arm-unsubscribe@freebsd.org" >>>=20 >>=20 >> _______________________________________________ >> freebsd-arm@freebsd.org mailing list >> https://lists.freebsd.org/mailman/listinfo/freebsd-arm=20 >> To unsubscribe, send any mail to=20 > "freebsd-arm-unsubscribe@freebsd.org" >>=20 >=20 > _______________________________________________ > freebsd-arm@freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/freebsd-arm=20 > To unsubscribe, send any mail to "freebsd-arm-unsubscribe@freebsd.org" >=20 From owner-freebsd-arm@freebsd.org Thu Mar 12 23:53:09 2020 Return-Path: Delivered-To: freebsd-arm@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 1376826EE00 for ; Thu, 12 Mar 2020 23:53:09 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48dlyD5Hgkz4Rnd; Thu, 12 Mar 2020 23:53:08 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from John-Baldwins-MacBook-Pro-8.local (ralph.baldwin.cx [66.234.199.215]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) (Authenticated sender: jhb) by smtp.freebsd.org (Postfix) with ESMTPSA id D7E9BAE82; Thu, 12 Mar 2020 23:53:07 +0000 (UTC) (envelope-from jhb@FreeBSD.org) To: "freebsd-arm@freebsd.org" Cc: emaste@FreeBSD.org, Dimitry Andric From: John Baldwin Subject: Stack unwinding for pthread_exit() Autocrypt: addr=jhb@FreeBSD.org; keydata= mQGiBETQ+XcRBADMFybiq69u+fJRy/0wzqTNS8jFfWaBTs5/OfcV7wWezVmf9sgwn8TW0Dk0 c9MBl0pz+H01dA2ZSGZ5fXlmFIsee1WEzqeJzpiwd/pejPgSzXB9ijbLHZ2/E0jhGBcVy5Yo /Tw5+U/+laeYKu2xb0XPvM0zMNls1ah5OnP9a6Ql6wCgupaoMySb7DXm2LHD1Z9jTsHcAQMD /1jzh2BoHriy/Q2s4KzzjVp/mQO5DSm2z14BvbQRcXU48oAosHA1u3Wrov6LfPY+0U1tG47X 1BGfnQH+rNAaH0livoSBQ0IPI/8WfIW7ub4qV6HYwWKVqkDkqwcpmGNDbz3gfaDht6nsie5Z pcuCcul4M9CW7Md6zzyvktjnbz61BADGDCopfZC4of0Z3Ka0u8Wik6UJOuqShBt1WcFS8ya1 oB4rc4tXfSHyMF63aPUBMxHR5DXeH+EO2edoSwViDMqWk1jTnYza51rbGY+pebLQOVOxAY7k do5Ordl3wklBPMVEPWoZ61SdbcjhHVwaC5zfiskcxj5wwXd2E9qYlBqRg7QeSm9obiBCYWxk d2luIDxqaGJARnJlZUJTRC5vcmc+iGAEExECACAFAkTQ+awCGwMGCwkIBwMCBBUCCAMEFgID AQIeAQIXgAAKCRBy3lIGd+N/BI6RAJ9S97fvbME+3hxzE3JUyUZ6vTewDACdE1stFuSfqMvM jomvZdYxIYyTUpC5Ag0ERND5ghAIAPwsO0B7BL+bz8sLlLoQktGxXwXQfS5cInvL17Dsgnr3 1AKa94j9EnXQyPEj7u0d+LmEe6CGEGDh1OcGFTMVrof2ZzkSy4+FkZwMKJpTiqeaShMh+Goj XlwIMDxyADYvBIg3eN5YdFKaPQpfgSqhT+7El7w+wSZZD8pPQuLAnie5iz9C8iKy4/cMSOrH YUK/tO+Nhw8Jjlw94Ik0T80iEhI2t+XBVjwdfjbq3HrJ0ehqdBwukyeJRYKmbn298KOFQVHO EVbHA4rF/37jzaMadK43FgJ0SAhPPF5l4l89z5oPu0b/+5e2inA3b8J3iGZxywjM+Csq1tqz hltEc7Q+E08AAwUIAL+15XH8bPbjNJdVyg2CMl10JNW2wWg2Q6qdljeaRqeR6zFus7EZTwtX sNzs5bP8y51PSUDJbeiy2RNCNKWFMndM22TZnk3GNG45nQd4OwYK0RZVrikalmJY5Q6m7Z16 4yrZgIXFdKj2t8F+x613/SJW1lIr9/bDp4U9tw0V1g3l2dFtD3p3ZrQ3hpoDtoK70ioIAjjH aIXIAcm3FGZFXy503DOA0KaTWwvOVdYCFLm3zWuSOmrX/GsEc7ovasOWwjPn878qVjbUKWwx Q4QkF4OhUV9zPtf9tDSAZ3x7QSwoKbCoRCZ/xbyTUPyQ1VvNy/mYrBcYlzHodsaqUDjHuW+I SQQYEQIACQUCRND5ggIbDAAKCRBy3lIGd+N/BCO8AJ9j1dWVQWxw/YdTbEyrRKOY8YZNwwCf afMAg8QvmOWnHx3wl8WslCaXaE8= Message-ID: <3c53aeda-f77a-0c07-2d33-caa6dfbc1322@FreeBSD.org> Date: Thu, 12 Mar 2020 16:53:00 -0700 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:68.0) Gecko/20100101 Thunderbird/68.5.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Porting FreeBSD to ARM processors." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 12 Mar 2020 23:53:09 -0000 libthr contains code in thr_exit.c to use libunwind (libgcc_s) to unwind a thread's stack invoking destructors and pthread_cleanup actions. This uses the _Unwind_ForcedUnwind() function provided by libunwind. However, libunwind does not provide this function on ARM platforms that are using the default EHABI for exception unwinding. It is a bit of a silent failure because the dlsym() calls just fail to find the symbols from libgcc_s. I noticed this because I am working on a patch to install the LLVM libunwind headers into /usr/include and use them instead of the libcxxrt headers (not available to C), and the uninstalled include/unwind.h. However, when I do this, arm worlds stop building due to conflicting types for _Unwind_Stop_Fn. One option is to just disable the forced unwinding at compile time by forcing NO_THREAD_UNWIND_STACK on for ARM in libthr/Makefile. I wonder, however, if a better option would be to switch FreeBSD/arm to using DWARF unwinding (via -fdwarf-exceptions) instead? Perhaps we can even have clang default to that for FreeBSD 13.0 and later? Note that this appears to be a regression from switching to the LLVM libunwind as an old image I have that used libgcc_s from gcc4.2.1 does have _Unwind_ForcedUnwind defined and reading the DWARF info I can tell it has the signature for _Unwind_Stop_Fn that libthr expects. I can't quite tell if GCC 4.2.1 was using DWARF unwind info by default though (it seems like it might have been) and was providing the EHABI VRS API on top of that in addition for ARM. Looks like NetBSD forces DWARF exceptions on for ARM, and Watch OS also uses DWARF exceptions. Darwin on ARM uses SjLj exceptions on ARM otherwise. FreeBSD uses SjLj on ARM with thumb because DWARF I think doesn't handle thumb, but we could perhaps default to DWARF when not using SJLJ instead of the default of EHABI? The relevant file for that would be clang/lib/Driver/ToolChains/FreeBSD.cpp, FreeBSD::GetExceptionModel(). -- John Baldwin