{"id":1718,"date":"2016-04-27T07:36:42","date_gmt":"2016-04-27T06:36:42","guid":{"rendered":"http:\/\/rglinuxtech.com\/?p=1718"},"modified":"2016-04-27T07:36:42","modified_gmt":"2016-04-27T06:36:42","slug":"arm64-odroid-c2-with-latest-u-boot-and-kernel-not-quite-yet","status":"publish","type":"post","link":"https:\/\/rglinuxtech.com\/?p=1718","title":{"rendered":"ARM64 &#8211; Odroid C2 With Latest U-Boot and Kernel &#8211; Not Quite Yet.."},"content":{"rendered":"<p>I decided to check the latest <em>linux-next<\/em> tree for signs of Odroid C2 code, and there is some there &#8211; apparently for basic functionality..\u00a0\u00a0\u00a0\u00a0 Compiled OK, but when I tried to boot it, the Hardkernel-supplied version of U-Boot crashed:<\/p>\n<pre><strong><span style=\"font-family: courier new,courier;\">odroidc2#ext4load mmc 0:1 ${loadaddr} \/boot\/uboot\/Image<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">7748608 bytes read in 187 ms (39.5 MiB\/s)<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">odroidc2#ext4load mmc 0:1 ${dtb_loadaddr} \/boot\/uboot\/meson-gxbb-odroidc2.dtb<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">27913 bytes read in 5 ms (5.3 MiB\/s)<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">odroidc2#booti ${loadaddr} - ${dtb_loadaddr}<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">\"Synchronous Abort\" handler, esr 0x96000010<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">ELR: 77f4b734<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">LR: 77f4b728<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">x0 : 0000000077fa6c48 x1 : 0000000000080000<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">x2 : 000000000079b000 x3 : 000000000079b000<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">x4 : 000000000000006e x5 : 0000000011000000<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">x6 : 0000000077fa6b08 x7 : 0000000000000044<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">x8 : 0000000077f9a280 x9 : 0000000000000000<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">x10: 0000000073f386d8 x11: 0000000077f87000<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">x12: 000000000000000f x13: 0000000000000000<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">x14: 0000000000000000 x15: 0000000000000000<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">x16: 0000000000000000 x17: 0000000000000000<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">x18: 0000000073f38e28 x19: 0000000077fa6b08<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">x20: 0000000011000000 x21: 0000000073f3e6c0<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">x22: 0000000000000003 x23: 0000000073f3e6c8<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">x24: 0000000000000000 x25: 0000000077f9c2c0<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">x26: 0000000000000000 x27: 0000000000000000<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">x28: 0000000000000000 x29: 0000000073f38940<\/span><\/strong><\/pre>\n<p>I then searched for a more &#8216;mainline&#8217; version of U-Boot for the C2 and found some fairly recent patches mentioned here: <a href=\"http:\/\/permalink.gmane.org\/gmane.comp.boot-loaders.u-boot\/256647\/\" target=\"_blank\">http:\/\/permalink.gmane.org\/gmane.comp.boot-loaders.u-boot\/256647\/<\/a><\/p>\n<p>I created a patch (from the original <span style=\"text-decoration: underline;\">newsgroup<\/span> version of the message, rather than the &#8211; mangled &#8211; web text) and applied it to the latest -rc version of U-Boot..<\/p>\n<p>After commenting out a reference to <strong><span style=\"font-family: courier new,courier;\">psci_system_reset<\/span><\/strong> that &#8211; as far as I could tell &#8211; no longer existed in the U-Boot code tree, I successfully compiled <strong>u-boot.bin<\/strong>, and &#8211; together with the sd_fuse Hardkernel binary content &#8211; installed it on the C2.<\/p>\n<p>I tried to start the device, but got a constant stream of resets:<\/p>\n<pre><strong><span style=\"font-family: courier new,courier;\">Board ID = 8<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">set vcck to 1100 mv<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">set vddee to 1050 mv<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">CPU clk: 1536MHz<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">DDR channel setting: DDR0 Rank0+1 same<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">DDR0: 2048MB(auto) @ 912MHz(2T)-13<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">DataBus test pass!<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">AddrBus test pass!<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">Load fip header from eMMC, src: 0x0000c200, des: 0x01400000, size: 0x000000b0<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">aml log : SIG CHK : 351 for address 0x01700000<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">reset...<\/span><\/strong>\r\n<strong><span style=\"font-family: courier new,courier;\">GXBB:BL1:08dafd:0a8993;FEAT:EDFC318C;POC:3;RCY:0;EMMC:0;<\/span><\/strong>\r\n<span style=\"font-family: courier new,courier;\"> ( line repeated.. )<\/span><\/pre>\n<p>So&#8230; There is &#8216;mainline&#8217; support for the C2 coming, but not quite there yet..<\/p>\n<p><em>Robert Gadsdon\u00a0\u00a0 April 26, 2016.<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>I decided to check the latest linux-next tree for signs of Odroid C2 code, and there is some there &#8211; apparently for basic functionality..\u00a0\u00a0\u00a0\u00a0 Compiled OK, but when I tried to boot it, the Hardkernel-supplied version of U-Boot crashed: odroidc2#ext4load mmc 0:1 ${loadaddr} \/boot\/uboot\/Image 7748608 bytes read in 187 ms (39.5 MiB\/s) odroidc2#ext4load mmc 0:1 ${dtb_loadaddr} \/boot\/uboot\/meson-gxbb-odroidc2.dtb <span class=\"excerpt-dots\">&hellip;<\/span> <a class=\"more-link\" href=\"https:\/\/rglinuxtech.com\/?p=1718\"><span class=\"more-msg\">Continue reading &rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[1132,706,1131,5,6,11,1285,19,937],"tags":[646,1083,1286,1341,1340],"class_list":["post-1718","post","type-post","status-publish","format-standard","hentry","category-aarch64","category-alpha-release","category-arm64","category-compilation","category-crash-and-burn","category-hacks","category-odroid-c2","category-opinion","category-u-boot-2","tag-crash","tag-linux-next","tag-odroid-c2","tag-reset","tag-u-boot-patch"],"_links":{"self":[{"href":"https:\/\/rglinuxtech.com\/index.php?rest_route=\/wp\/v2\/posts\/1718","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rglinuxtech.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rglinuxtech.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/rglinuxtech.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/rglinuxtech.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1718"}],"version-history":[{"count":1,"href":"https:\/\/rglinuxtech.com\/index.php?rest_route=\/wp\/v2\/posts\/1718\/revisions"}],"predecessor-version":[{"id":1719,"href":"https:\/\/rglinuxtech.com\/index.php?rest_route=\/wp\/v2\/posts\/1718\/revisions\/1719"}],"wp:attachment":[{"href":"https:\/\/rglinuxtech.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1718"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rglinuxtech.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1718"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rglinuxtech.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1718"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}