lvmc

Members
  • Content Count

    132
  • Joined

  • Last visited


Reputation Activity

  1. Like
    lvmc reacted to mindee in NanoPi NEO4   
    Just a little bit list, more detail would be done on wiki soon.
    1. NEO4 board size is 45 x 56mm, but M4 is 85 x 56mm
    2. NEO4 has 1GB DDR3 RAM with single chanel, But M4 has two version 2GB DDR3 RAM/4G LPDDR3 RAM with Dual Chanel.
    3. NEO4  will use AP6212 wireless module with single antenna , but M4 use AP6356S dual-band module, and use 2x2 MIMO and 2 real antennas. 
    4. NEO4 has one MIPI-CSI, M4 has two MIPI-CSI
    5. NEO4 has USB3.0  x1 & USB 2.0  x1, but M4 has USB 3.0 x4 behind a VL817 internal hub.
    6. NEO4 use 1.27mm pitch SMD connector for GPIO-40 pinout,  M4 is same with RPi3 40pin GPIO.
     
    Both have:
    1. PCIe x2 pin-out
    2. eMMC module connector
    3. GigE port.
    4. TypeC is for power supply and OTG.
    5. HDMI-A & MicroSD slot.
    6. Big CNC heat sink, with two side 1/4 screw hole
  2. Like
    lvmc got a reaction from guidol in Armbian for Amlogic S912   
    WiFi is now working on GT1.   1. Download & Copy AP6255 WiFi drivers extracted from Beelink's Android image: https://dl.dropboxusercontent.com/u/11164079/GT1/wifi.tar.gz   2. Load WiFi kernel modules   2.1. Manually modprobe cfg80211 modprobe dhd firmware_path=/lib/firmware/ap6255/fw_bcm43455c0_ag.bin nvram_path=/lib/firmware/ap6255/nvram.txt 2.2. On boot
    # /etc/modules cfg80211 dhd # /etc/modprobe.d/options.conf options dhd firmware_path=/lib/firmware/ap6255/fw_bcm43455c0_ag.bin nvram_path=/lib/firmware/ap6255/nvram.txt SCAN
    root@amlogic-s905x:~# iwlist wlan0 scan wlan0     Scan completed :           Cell 01 - Address: XX:54:XX:FA:C8:XX                     ESSID:"SSID_NAME"                     Mode:Managed Connect to SSID with nmcli
    nmcli dev wifi connect NETWORK_SSID password NETWORK_PASSWD DMESG
                  dhd_bus_devreset: == WLAN ON == [  149.800463] F1 signature read @0x18000000=0x15264345 [  149.806417] F1 signature OK, socitype:0x1 chip:0x4345 rev:0x6 pkg:0x2 [  149.807102] DHD: dongle ram size is set to 819200(orig 819200) at 0x198000 [  149.807543] dhd_conf_read_config: kso_enable = 0 [  149.807633] dhd_conf_set_fw_name_by_chip: firmware_path=/lib/firmware/ap6255/fw_bcm43455c0_ag.bin [  149.807641] dhdsdio_download_firmware: set use_rxchain 0 [  149.807647] dhdsdio_download_firmware: set txglomsize 40 [  149.807653] sdioh_set_mode: set txglom_mode to multi-desc [  149.807659] Final fw_path=/lib/firmware/ap6255/fw_bcm43455c0_ag.bin [  149.807664] Final nv_path=/lib/firmware/ap6255/nvram.txt [  149.807669] Final conf_path=/lib/firmware/ap6255/config.txt [  149.861058] NVRAM version: AP6255_NVRAM_V1.0_29052015 [  149.861683] dhdsdio_write_vars: Download, Upload and compare of NVRAM succeeded. [  149.939601] dhd_bus_init: enable 0x06, ready 0x06 (waited 0us) [  149.939765] bcmsdh_oob_intr_register: Enter [  149.939769] bcmsdh_oob_intr_register: HW_OOB enabled [  149.939773] bcmsdh_oob_intr_register OOB irq=100 flags=414 [  149.939802] bcmsdh_oob_intr_register: enable_irq_wake [  149.939808] bcmsdh_oob_intr_register: enable_irq_wake failed with -6 [  149.940733] dhd_conf_set_fw_int_cmd: set WLC_SET_BAND 142 0 [  149.941361] dhd_preinit_ioctls: Set tcpack_sup_mode 0 [  149.943237] Firmware up: op_mode=0x0005, MAC=44:2c:05:4b:5b:49 [  149.943243] dhd_conf_set_country: set country ALL, revision 38 [  149.943248] dhd_conf_set_fw_string_struct_cmd: set country [  149.943581] CONFIG-ERROR) dhd_conf_set_fw_string_struct_cmd: country setting failed -2 [  149.947523] Country code: US (US/0) [  149.947863] dhd_conf_set_fw_string_cmd: set roam_off 1 [  149.949492] dhd_conf_set_fw_string_cmd: set txbf 1 [  149.949947] CONFIG-ERROR) dhd_conf_set_fw_string_cmd: txbf setting failed -23 [  149.959389] Firmware version = wl0: Aug 25 2015 18:58:57 version 7.45.69 (r581703) FWID 01-24037f6e [  149.959398]   Driver: 1.201.59.6 (r506368)                  Firmware: wl0: Aug 25 2015 18:58:57 version 7.45.69 (r581703) FWID 01-24037f6e [  149.959611] dhd_txglom_enable: enable 1 [  149.959616] dhd_conf_set_txglom_params: swtxglom=0, txglom_ext=0 [  149.959620] dhd_conf_set_txglom_params: txglom_bucket_size=0 [  149.959624] dhd_conf_set_txglom_params: txglomsize=40, deferred_tx_len=40, bus_txglom=0 [  149.959628] dhd_conf_set_txglom_params: tx_in_rx=1, tx_max_offset=0 [  149.959632] dhd_conf_set_disable_proptx: set disable_proptx 0 [  149.960335] dhd_wlfc_hostreorder_init(): successful bdcv2 tlv signaling, 64 [  149.960826] wl_android_wifi_on: Success [  150.018061] dhd_open: Exit ret=0 [  150.140579] P2P interface registered [  150.153519] WLC_E_IF: NO_IF set, event Ignored [  150.154635] P2P interface started [  182.422348] dhd_module_cleanup: Enter [  182.422393] sdioh_remove: Enter [  182.422398] dhdsdio_disconnect : no mutex held. set lock [  182.430336] dhdsdio_dpc: Bus down, ret [  182.430350] bcmsdh_oob_intr_unregister: Enter [  182.430364] dhd_wlfc_deinit():3301, Already disabled! [  182.490019] dhd_stop: Enter ffffffc05119b000 [  182.490026] wl_android_wifi_off in 1 [  182.490030] wl_android_wifi_off in 2: g_wifi_on=1 [  182.490036] dhd_prot_ioctl : bus is down. we have nothing to do [  182.490118] bcmsdh_oob_intr_unregister: Enter [  182.490128] bcmsdh_oob_intr_unregister: irq is not registered [  182.490143] dhd_txglom_enable: enable 0 [  182.490150] dhd_conf_set_txglom_params: swtxglom=0, txglom_ext=0 [  182.490156] dhd_conf_set_txglom_params: txglom_bucket_size=0 [  182.490162] dhd_conf_set_txglom_params: txglomsize=0, deferred_tx_len=0, bus_txglom=0 [  182.490168] dhd_conf_set_txglom_params: tx_in_rx=1, tx_max_offset=0 [  182.490175] dhd_bus_devreset:  WLAN OFF DONE [  182.490240] wifi_platform_set_power = 0 [  182.490247] ======== PULL WL_REG_ON LOW! ======== [  182.490252] wl_android_wifi_off out [  182.490258] dhd_stop: Exit [  182.570103] dhd_detach(): thread:dhd_watchdog_thread:ee1 terminated OK [  182.570165] dhd_detach(): thread:dhd_rxf:ee3 terminated OK [  182.570188] dhd_dpc_thread: Unexpected up_cnt 0 [  182.570211] dhd_detach(): thread:dhd_dpc:ee2 terminated OK [  182.571711] P2P interface unregistered [  182.571746] wl_event_handler: was terminated [  182.571944] wl_destroy_event_handler(): thread:wl_event_handler:ee0 terminated OK [  182.799988] dhd_tcpack_suppress_set 376: already set to 0 [  182.800006] dhd_os_prealloc: failed to alloc memory, section: 7, size: 0bytes [  182.800031] dhdsdio_disconnect : the lock is released. [  182.800275] unregister wifi platform drivers [  182.800283] wifi_platform_bus_enumerate device present 0 [  182.800289] ======== Card detection to remove SDIO card! ======== [  182.800315] aml_wifi wifi.33: [extern_wifi_set_enable] WIFI  Disable! 240 [  183.000404] dhd_module_cleanup: Exit
  3. Like
    lvmc got a reaction from Lion Wang in Banana Pi Zero   
    booting with kernel 4.14.3-sunix
     
  4. Like
    lvmc reacted to chwe in Banana Pi Zero   
    it's everything there...  just open your eyes... 
     
    And I don't use it, I was only interested in the script.bin file... It boots,  wifi 'works' but without an external antenna, it's not stable in an urban environment. 
  5. Like
    lvmc reacted to Lion Wang in Banana Pi Zero   
    let me think about it , it mean we need do CE,FCC test,again . and many user have use BPI-M2+ inside they are product . mean we need do double inventory
  6. Like
    lvmc reacted to chwe in Banana Pi Zero   
    But BPi-M2+ has 'no voltage regulation' for CPU.

    Which makes it 'not useful'.  Maybe you can fix this issue (and make an annotation in your documentation for this board) when you produce the next batch of this board?
  7. Like
    lvmc got a reaction from Lion Wang in Banana Pi Zero   
    The key point is CSI camera support without extension board, the missing point is no eMMC and tiny embedded RTC module.
  8. Like
    lvmc reacted to tkaiser in Banana Pi Zero   
    Nice! Thank you for reacting so promptly on me complaining here and there  . Which eMMC modules do you now use on the Air?
     
     
    BTW: this kernel is now somewhat outdated (ok, not that much as the 3.4 other H2+/H3 board makers use), please ensure that as soon as 4.14 is ready Weidong switches to this version since 4.14 will become an LTS release (long term support). IMO you should also overthink maintaining your own mainline kernel fork since it will be just PITA to merge in all upstream changes (I recommended it already to Weidong back in March: adopt Armbian's build system to your needs -- soooo easy -- and submit patches for your own devices here just like other responsible vendors do -- eg. Olimex)
     
    On a related note: Weidong chose to implement DRAM configuration in an incompatible way compared to how it's done upstream. This led already to a lot of confusion since Linux and u-boot maintainers now look into your sources and overtake settings that aren't valid.
     
    Please remind Weidong of the problem: https://github.com/armbian/build/commit/b57c9d767ead528a54001d8728d39470e9faf5e4#commitcomment-23045104
     
    Upstream maintainers now use wrong settings (eg. just 408 MHz for NanoPi M1 Plus while choosing 672 MHz for NEO 2 and so on) and there's a lot of confusion. The best idea would be if he could simply join this thread here: https://groups.google.com/forum/#!topic/linux-sunxi/coQGctAipgI (telling he's from FriendlyELEC and explaining which DRAM clockspeeds are meant to be used for which board and maybe why you chose to go another route than the standard way defining RAM parameter definitions)
     
    Thank you a lot for the heads-up. Such feedback from vendors is always welcome!
  9. Like
    lvmc reacted to chwe in Banana Pi Zero   
    Mikey should think about this lines too:
    [uart3] uart_used = 1 uart_port = 3 uart_type = 2 uart_tx = port:PA13<3><1><default><default> uart_rx = port:PA14<3><1><default><default> uart_rts = port:PA15<3><1><default><default> uart_cts = port:PA16<3><1><default><default> From your schematics, PA15 & PA16 are expanded on 'CON 2' header, so it would be no problem to use it (uart_type = 4).
     
    Further (line 790 to 793):
    [s_rsb0] s_rsb_used = 1 s_rsb_sck = port:PL00<2><1><2><default> s_rsb_sda = port:PL01<2><1><2><default> half of this bus is now used for switching between 1.1V & 1.3V so s_rsb_used = 0 cause you can't use it for other porpuses.  
     
    Maybe if you want to improve things, Mikey  could also set a 1 (w1_used) here:
    [w1_para] w1_used = 0 gpio = 10 gpio = 10 means that one-wire would be available on (PA10, means PIN35 on your expansion header) or to make it even easier for the users set 'gpio = 20' (PA20) which would than be the nice PIN40 on this header. But you have to inform your users that they should set CPU min freq to 480MHz (otherwise your Forum would be full of stuff like 'why's one wire disappearing constantly?' ). This might be something for your gitbook pages. Explaining the users 'how to connect something like DS18b20 to my BPi M2 Zero'
     
     
  10. Like
    lvmc reacted to tkaiser in Banana Pi Zero   
    I checked today and found that @megous is currently pretty active here too (though with an A83T tablet and different camera).
  11. Like
    lvmc got a reaction from tkaiser in Banana Pi Zero   
    I'm working on CSI/camera for 4.X
  12. Like
    lvmc reacted to tkaiser in Banana Pi Zero   
    To stop wasting my and other's time on this boring 'issue' here a final summary:
    Close to unbelievable but after another 'evil tkaiser attacking us' event today the hardware vendor 'fixed' voltage regulation description. Just to remind you: this file has to be correct in the first place, there's no excuse for such wrong information there, it's simply the hardware vendor describing how the board works. So now that PL01 is used for voltage regulation (now in conflict with another active PL01 entry for s_rsb_sda -- good luck!) only all gmac* entries are still wrong and cooler_table not using the 912 MHz OPP is most probably a great recipe for poor performance when overheating occurs. So in case someone from SinoVoip wants to fix their pseudo Armbian build it would be wise to fix the fex first since afterwards Armbian's h3consumption tool can work without issues (today not due to still wrong fex file) On their Gitbook pages the size of M2 Zero increased by 5mm (now at least this most basic info is correct), most of the other 'information' is still sparse, wrong, missing, bogus. But fortunately the hardware is still too small on their product page and of course soon everywhere around the globe in advertisements and product listings since all resellers use the wrong dimensions they've been provided with back in July. So anyone interested in this board running with the outdated legacy kernel: chances are great that you get a working OS image over at bananapi.org (soon). As a reminder: Armbian follows the policy to not officially support Raspberry Pi boards which of course also applies to deliberately compatible looking but mostly incompatible RPi clones like this M2 Zero here (we don't want to see this forum/community dying when RPi users or fooled M2 Zero customers arrive) Armbian also tries to phase out legacy kernel support (3.4.113 which is not supported any longer since over half a year now). CSI/camera support with mainline kernel is still WiP so when switching from legacy to mainline camera functionality will also be missing. Again no reason to officially support such a device Third 'problem': dishonest advertising. Nowhere is mentioned by the vendor that M2 Zero is totally incompatible to RPi cameras (which is something average buyers expect) and RPi software (which is something clueless buyers expect from something that mimics the look of an RPi Zero and is said to run 'Raspberry Pi image'). There's really no reason for us here wasting our spare time with support efforts like this: https://forum.armbian.com/topic/5579-power-off-with-hdd-over-active-hub/?do=findComment&comment=43088  
    Exactly. @Lion Wang's problem is that he wants to sell hardware and his company earned a very negative reputation over the last years (believing this would be caused only by evil people outside and not related to their internal and pretty real problems). That's something where some idiots here at Armbian could help working for him in their spare time and doing his software and support work.
     
    @lvmc has the problem that he wants to use this BPi board with his own camera modules. Should work now so let's please stop babbling about community and so on.
     
    We have the problem that even if we wanted to support SinoVoip products they don't allow us. They refuse to cooperate, do not provide correct hardware descriptions, do not listen to community, delete community knowledge, ignore(d) even patches they got for free just due to ignorance, ignorance, ignorance.
     
    A few people here suggested to give SinoVoip a final chance. I support this. The problem is... I and others are dealing with Banana madness now in the 3rd year. We have heard that so often that it simply got too boring. So let's step back now, give them 6 months of time to show that they're willing to improve, deal with their internal ignorance/stupidity problems and then let's have a look again.
     
    In the meantime it would be great if people would stop asking us for anything Banana related. Thank you.
     
     
  13. Like
    lvmc reacted to guidol in Banana Pi Zero   
    Its not about people or being personally - but about finding solutions for problems....

    So I found these quotes better:
     
    Coming together is a beginning; keeping together is progress; working together is success.   [Henry Ford]
    or
    Let's not forget it's you and me vs. the problem... NOT you vs. me.  [Steve Maraboli]
  14. Like
    lvmc reacted to TonyMac32 in Banana Pi Zero   
    I have to agree with@chwe on this, I am in the automotive industry, not only would I be fired for such documentation of a design, there could be federal charges brought against myself and my company ending with me in jail if incorrect documentation could be linked to a failure or unexpected behaviour. Not to mention losing all OEM business, etc.

    It is not such an impossible task to document properly. But attacking anyone who points out factual errors in your paperwork causes animosity and people will refuse to support these products. Trust me, I am no stranger to poor documentation. But at least for the ASUS Tinker Board the problem is missing documentation, not incorrect documentation. Were it incorrect I would have immediately recommended Armbian drop all support for the board, no matter how popular it may be.

    Now, as an engineer I am accustomed to dealing with suppliers. In this situation, that is your role. You are a supplier of single board computers to a marketplace. That gives the user (customer) a certain amount of agency over you, the customer can require correct documentation, the customer can provide negative feedback and refuse to use your product. As a supplier it is your duty to provide a product the customer wants. In the single board computer world that is more than a board, it is also the means to use it. Your product cannot simply be defined as a board, your product is a board and a manual. And that manual needs to make it possible to use the board. The manual includes complete and correct schematics, diagrams of all exposed connections, a basic board support package (device tree or equivalent, vendor-specific drivers, uboot if not mainline, etc)

    As you have pointed out, most SBC suppliers in this market have flaws. But I have seen none that are outright confrontational and generally unprofessional. Do you think I don't have customers and coworkers just as disagreeable as Thomas is capable of being? Of course I do, many far worse actually. Do I respond the way you do? No, or else I would not have a job. Do I always agree with the magnitude and force of Thomas's quick anger? No. But I certainly understand it. I actually refused to reply several times during this thread because I felt my feedback would be less than professional. However, my reserved tone has apparently caused some confusion which I felt it necessary to clear up.

    I want to see a good competition between board makers, and the obvious benefits that come with it. So to that end I want to see you succeed. However, for that to happen you need to also compete in documentation. You have said you will, but be aware I will not engage in any development, privately or for Armbian, until there is some proof of that effort. A big step would be addressing the concerns you have heard here so many times that I'm even tired of reading about them.

    [/rant]

    Sent from my Pixel using Tapatalk


  15. Like
    lvmc got a reaction from Tido in Banana Pi Zero   
    @guidol thank you so much for sharing your thoughts, experience and pointing a direction. @Lion Wang that is the kind of feedback you MUST read, understand, SHARE with your team and act to solve the pains.
     
    +1 for eMMC, a 8GB class-10 sdcard costs ~6.5USD nowdays. How much it is 8GB eMMC?
  16. Like
    lvmc got a reaction from Lion Wang in Banana Pi Zero   
    @Lion Wang SinoVoip's gitbooks has to be reviewed. Technical information is not consistent and English is not good enough, it has to be fixed urgently. Over the last years I have been seeing many Chinese companies doing good products or at least pursuing to build good products but failing on how to communicate and support customers, think about it. Never forget that customers don't care about how hard is to build a new product or how insane is to run a business, they only care about how good the product is.
     
    @Tido gave a good suggestion... before releasing any new product and during the entire product lifespan do short technical / writing meetings with your technical team to consolidate knowledge.
     
    The entire problem here seems to be about communication, as always. Most of Chinese companies have good engineers that doesn't even speak or write in English. If it is the case, hire someone that could help you to fulfil this gap, as soon as possible.
     
    @TonyMac32, @chwe thank you for focusing on the real problems, not at person level discussions. In just a few questions I think you got the answers you were looking for. That is a good start point.
     
    @tkaiser I would like to suggest you to just 'stop' buddy, please.
     
    Let's give the last chance to SinoVoip understand, change, react and SOLVE the main issues. Everything said here is applicable for any hardware supplier.
  17. Like
    lvmc got a reaction from Lion Wang in Banana Pi Zero   
    @tkaiser and @Lion Wang it is time to put an end point on this "fight".
     
    In my option, things are getting too aggressive and boring from both sides and it is not good for both the Armbian community and SinoVoip business.
     
    @Lion Wang the community & customers are not satisfied with the information you are providing about your products. As CEO you have to listen and act as soon as possible to correct what is wrong.
     
    @tkaiser you are essential for Armbian community, but it has been useless to read your posts about SinoVoip.
     
    My suggestion is to give the last official chance for SinoVoip with Armbian community. I suggest to port Armbian to BPI ZERO and during the porting process both sides tell everything about what is not going right or hasn't been done right. Documentation is not good? SinoVoip will fix it. We need some detailed information about the hardware? SinoVoip will provide it... and so on.
     
    Let's do it, guys?
     
    We all want to build an ecosystem between hardware and software and a friendly community.
  18. Like
    lvmc got a reaction from tkaiser in Banana Pi Zero   
    @tkaiser it works with both SinoVoip's OV5640 or own custom module.
  19. Like
    lvmc reacted to balbes150 in Armbian for Amlogic S912   
    1. Yes, You can use this git to build (it is in the public domain).
    2. No, this is not the official version. The process of inclusion in the official GIT requires considerable time.
     
     
     
    In the next few days I'll try to run this test (now I have disabled s912 to upgrade the cooling system).
  20. Like
    lvmc got a reaction from balbes150 in Armbian for Amlogic S912   
    @balbes150 and @chocho
     
    I learnt how to extract the dtb and dts file from Beelink Android images. I will be documenting it here to help other users, but it is the exactly process @chocho already did.
     
    1) update your GT1 device with GT1_104M0.img or GT1_104M0_AP6255.img
     
    2) power-up, boot GT1;
     
    3) copy boot.img from running Android image
    adb pull /dev/block/boot boot.img 4) download split_bootimg.pl tool and run it over boot.img
    wget -c http://www.enck.org/tools/split_bootimg_pl.txt -O split_bootimg.pl chmod a+x split_bootimg.pl split_bootimg.pl boot.img Result:
    -rw-r--r--   1 lvmc  staff    32M Dec  4 19:28 boot.img -rw-r--r--   1 lvmc  staff   7.0M Dec  4 20:08 boot.img-kernel -rw-r--r--   1 lvmc  staff   898K Dec  4 20:08 boot.img-ramdisk.gz -rw-r--r--   1 lvmc  staff    82K Dec  4 20:08 boot.img-second.gz 5) find the hex addresses of "d0 0d fe ed"
    hexdump -C -v boot.img-second.gz |less Results (hex and decimal addresses):
    gxm_q201_1g: 00000800 (2048) gxm_q201_2g: 0000a800 (43008) 6) extract available dtb sections from boot.img-second.gz
    gxm_q201_1g dd if=boot.img-second.gz of=gxm_q201_1g.dtb bs=2048 skip=1 gxm_q201_2g dd if=boot.img-second.gz of=gxm_q201_2g.dtb bs=43008 skip=1 7) convert dtb (binary format) to dts (readable)
    dtc -I dtb -O dts -o gxm_q201_201_1g.dts gxm_q201_201_1g.dtb dtc -I dtb -O dts -o gxm_q201_201_2g.dts gxm_q201_201_2g.dtb *dtc command is available on GNU/Linux
     
    There is only one difference between gxm_q201_201_1g.dts and gxm_q201_201_2g.dts
    memory@00000000 { device_type = "memory"; linux,usable-memory = <0x0 0x1000000 0x0 0x3f000000>; }; memory@00000000 { device_type = "memory"; linux,usable-memory = <0x0 0x1000000 0x0 0x7f000000>; }; boot.img, dtb and dts files from previous steps are available at:
    https://dl.dropboxusercontent.com/u/11164079/GT1/beelink_gt1.tar.gz
     
    beelink_gt1/boot
    -rw-r--r--  1 lvmc  staff    32M Dec  4 19:28 boot.img -rw-r--r--  1 lvmc  staff   7.0M Dec  4 20:08 boot.img-kernel -rw-r--r--  1 lvmc  staff   898K Dec  4 20:08 boot.img-ramdisk.gz -rw-r--r--  1 lvmc  staff    82K Dec  4 20:08 boot.img-second.gz beelink_gt1/dtb_dts
    -rw-r--r--  1 lvmc  staff    80K Dec  4 20:24 gxm_q201_1g_00000800.dtb -rw-r--r--  1 lvmc  staff    48K Dec  4 20:25 gxm_q201_1g_00000800.dts -rw-r--r--  1 lvmc  staff    40K Dec  4 20:18 gxm_q201_2g_0000a800.dtb -rw-r--r--  1 lvmc  staff    48K Dec  4 20:21 gxm_q201_2g_0000a800.dts
  21. Like
    lvmc reacted to Vincs in Armbian for Amlogic S912   
    While the support of S912 is still WIP, and not very stable, I think it might be good to have to separated thread.
    Once the support of S912 is as good as the s905, I think we can merge the topics, but it's only my opinion. 
    Thanks for your help.
  22. Like
    lvmc reacted to balbes150 in Armbian for Amlogic S912   
    https://forum.armbian.com/index.php/topic/2419-armbian-for-amlogic-s905-and-s905x/?p=21058
  23. Like
    lvmc got a reaction from Jens Bauer in Armbian for Amlogic S912   
    I'm trying to find all errors on @balbes150 905x image, the issues are:
     
    1) on boot
    [FAILED] Failed to start Hostname Service. [FAILED] Failed to start Network Manager Wait Online. 2) nand-sata-install
     
    Current root is returning a strange path: LABEL=ROOTFS
    302         root_partition=$(cat /proc/cmdline | sed -e 's/^.*root=//' -e 's/ .*$//') root@amlogic-s905x:~# cat /proc/cmdline root=LABEL=ROOTFS rootflags=data=writeback rw console=ttyS0,115200n8 console=tty0 no_console_suspend consoleblank=0 hdmimode=720p60hz m_bpp=24 fsck.repair=yes net.ifnames=0 mac=00:15:18:01:81:31 We also have a problem with emmc device
    Error: The device /dev/mmcblk1 is so small that it cannot possibly store a file system or partition table.  Perhaps you selected the wrong device? Error: The device /dev/mmcblk1 is so small that it cannot possibly store a file system or partition table.  Perhaps you selected the wrong device? Error: The device /dev/mmcblk1 is so small that it cannot possibly store a file system or partition table.  Perhaps you selected the wrong device? Error: The device /dev/mmcblk1 is so small that it cannot possibly store a file system or partition table.  Perhaps you selected the wrong device? Error: The device /dev/mmcblk1 is so small that it cannot possibly store a file system or partition table.  Perhaps you selected the wrong device? 3) dmesg / kernel errors 
    [    0.000000]               linux,ppmgr: 0x0000000078200000 - 0x000000007a200000  (32 MiB)[    0.000000]        linux,codec_mm_cma: 0x0000000066800000 - 0x0000000073800000  (208 MiB) [    0.000000]              linux,picdec: 0x0000000078200000 - 0x0000000078200000  (0 MiB) [    0.000000] Reserved memory: incorrect alignment of CMA region [    0.000000]   linux,codec_mm_reserved: 0x0000000074100000 - 0x0000000078200000  (65 MiB) [    0.000000] fdt Reserved memory total:  402 MiB [    0.000000] cma: Reserved 8 MiB at 66000000 [    0.000000] On node 0 totalpages: 519424 [    0.647863] clkmsr: Gxl msr_clk_reg0=ffffff800006075c,msr_clk_reg2=ffffff8000062764 [    0.650302] aml_iomap: amlogic iomap probe done [    0.650939] pinmux-gxl c1109880.pinmux: Init pinux probe! [    0.652185] pinmux-gxl c1109880.pinmux: Probed amlogic pinctrl driver [    0.652672] genirq: Setting trigger mode 8 for irq 241 failed (gic_set_type+0x0/0xbc) [    0.652709] genirq: Setting trigger mode 8 for irq 242 failed (gic_set_type+0x0/0xbc) [    0.652879] genirq: Setting trigger mode 8 for irq 241 failed (gic_set_type+0x0/0xbc) [    0.652908] genirq: Setting trigger mode 8 for irq 242 failed (gic_set_type+0x0/0xbc) [    0.655451] codec_mm has 2 memory regions [    0.655505] codec_mm codec_mm.19: assigned reserved memory node linux,codec_mm_cma ok [    0.655529] codec_mm codec_mm.19: assigned reserved memory node linux,codec_mm_reserved ok [    0.655641] codec_mm has 2 memory regions [    0.655664] codec_mm codec_mm.19: assigned reserved memory node linux,codec_mm_cma ok [    0.655685] codec_mm codec_mm.19: assigned reserved memory node linux,codec_mm_reserved ok [    0.657635] vpu: driver version: v02 [    0.657678] vpu: load vpu_clk: 666667000Hz(7) [    0.657779] vpu: vpu_probe OK [    0.659312] tv_vout: tvout_probe [    0.659340] tv_vout: major number 254 for disp [    0.659352] vout_notify: vout_register_server [    0.659363] tv_vout: register tv module server ok [    0.659463] tv_vout: tvout_probe OK [    0.660085] canvas_probe reg=00000000c8838000,size=400 [    0.660122] canvas maped reg_base =ffffff8000184000 [    0.664344] rdma_probe [    2.590447] meson-rng c8834000.rng: hwrng registered [    2.594299] loop: module loaded [    2.595295] mtdoops: mtd device (mtddev=name/number) must be supplied [    2.596090] tun: Universal TUN/TAP device driver, 1.6 [    2.596113] tun: (C) 1999-2004 Max Krasnyansky <maxk@qualcomm.com> [    2.648928] hdmitx: plugin [    2.741198] amlogic-new-usb2 d0078000.usb2phy: USB2 phy probe:phy_mem:0xd0078000, iomap phy_base:0xffffff80001ba000 [    2.741447] amlogic-new-usb3 d0078080.usb3phy: This phy has no usb port [    2.741481] amlogic-new-usb3 d0078080.usb3phy: USB3 phy probe:phy_mem:0xd0078080, iomap phy_base:0xffffff80001bc080 [    2.741999] mousedev: PS/2 mouse device common for all mice [    2.743182] USB Video Class driver (1.1.1) [    2.744089] device-mapper: ioctl: 4.27.0-ioctl (2013-10-30) initialised: dm-devel@redhat.com [    2.744280] cpufreq-hotplug: cpufreq_gov_dbs_init: assumes CONFIG_NO_HZ [    2.744441] cpu cpu0: bL_cpufreq_init: CPU 0 initialized [    2.746648] cpu cpu4: bL_cpufreq_init: CPU 4 initialized [    4.543802] c11084c0.serial: ttyS1 at MMIO 0xc11084c0 (irq = 58, base_baud = 1500000) is a meson_uart [    4.553701] dwc_otg: usb0: type: 2 speed: 0, config: 0, dma: 0, id: 0, phy: d0078000, ctrl: 0 [    4.561709] dwc_otg_driver_probe host only, not probe usb_otg!!! [    4.568023] meson-gpu-clkgen c883c000.gpu_clk: can't request region for resource [mem 0xc883c000-0xc883cfff] [    4.577777] meson-gpu-clkgen: probe of c883c000.gpu_clk failed with error -16 [    4.585240] hdmitx: system: hdmitx_hdcp_init [    4.868852] emmc:pdata->caps = c0000d47 [    4.872790] emmc:pdata->caps2 = 18060 [    4.876590] storage 1, boot 1 [    4.879690] get_storage_dev return 1 [    4.910259] normal card in [    4.918796] [aml_sd_emmc_probe] aml_sd_emmc_probe() success! [    5.008814] [aml_sd_emmc_probe] aml_sd_emmc_probe() success! [    5.009399] ion_dev has 1 memory regions [    5.029124] fb: osd_init_module [    5.029348] fb: viu vsync irq: 35 [    5.030273] fb: failed to init reserved memory [    5.034853] tv_vout: tv_set_current_vmode[759]fps_target_mode=16 [    5.040993] tv_vout: mode is 16,sync_duration_den=1,sync_duration_num=60 [    6.060585] 6unifykey: device unifykeys created ok [    6.065362] 6aml_unifykeys_init done! [    6.069139] PPMGRDRV: warn: ppmgr module init func called [    6.074777] PPMGRDRV: err: ppmgr_driver_probe called [    6.079734] ppmgr has 1 memory regions [    6.083619] PPMGRDRV: info: ppmgr_dev major:232 [    6.088616] PPMGRDRV: info: ppmgr_probe done [    6.542486] audio_dsp: [dsp]register dsp to char divece(257) [    6.549117] amaudio: amaudio: driver amaudio succuess! [    6.553817] amlvid:err: amlvideo_init called [    6.557715] amlvid:err: amlvideo_create_instance called [    6.564008] amlvid:err: v4l2_dev.name=:amlvideo-000 [    6.568967] amlvideo-000: V4L2 device registered as video10 [    6.574874] [RX]-hdmirx: hdmirx_init. [    6.578201] ESM HLD: Initializing... [    6.849342] input input1: key 116 up [    6.853760] input: cec_input as /devices/virtual/input/input2 [    6.858808] cectx aocec: aml_cec_probe(): no hdmirx reg resource [    6.864611] cectx aocec: aml_cec_probe(): no hhi reg resource [    6.870589] cectx aocec: aml_cec_probe(): can't find hdmirx [    6.877313] cec: wake up flag:0 [    6.881408] aml_aes_dma c883e000.aml_aes: Aml AES_dma [    7.158993] aml_snd_card: headphone detection disable=1 [    7.162483] aml_snd_card: no spk event delay time set [    7.168047] aml_snd_m8_card aml_m8_snd.47: T9015-audio-hifi <-> I2S.40 mapping ok [    7.175606] aml_snd_m8_card aml_m8_snd.47: dit-hifi <-> SPDIF.41 mapping ok [    7.182298] aml_snd_m8_card aml_m8_snd.47: pcm2bt-pcm <-> PCM.42 mapping ok [    7.189168] aml_snd_m8_card aml_m8_snd.47: ASoC: no source widget found for LOUTL [    7.196709] aml_snd_m8_card aml_m8_snd.47: ASoC: Failed to add route LOUTL -> direct -> Ext Spk [    7.205526] aml_snd_m8_card aml_m8_snd.47: ASoC: no source widget found for LOUTR [    7.213110] aml_snd_m8_card aml_m8_snd.47: ASoC: Failed to add route LOUTR -> direct -> Ext Spk [    7.229669] aml_snd_card: audio use jtag pinmux as i2s output, read val =ffffffff [    8.562936] usb usb2: SerialNumber: xhci-hcd.0.auto [    8.568513] hub 2-0:1.0: USB hub found [    8.572608] hub 2-0:1.0: config failed, hub doesn't have any ports! (err -19) [    8.579306] aml_vrtc rtc.32: setting system clock to 2015-01-01 00:00:14 UTC (1420070414) [    8.588658] gxbb_pm: enter meson_pm_probe! [    8.594847] gxbb_pm: meson_pm_probe done [    8.601893] cpucore_cooling_register, max_cpu_core_num:4 [    8.608223] cpucore_cooling_register, max_cpu_core_num:4 [    8.628551] aml_istbt_dev_ready NULL [    8.632656] ALSA device list: [    8.636630]   #0: AML-M8AUDIO [   11.528107] systemd[1]: Starting Create list of required static device nodes for the current kernel... [   11.547452] systemd[1]: Mounted POSIX Message Queue File System. [   11.561244] systemd[1]: Mounted Debug File System. [   11.574443] systemd[1]: Mounted Huge Pages File System. [   11.587878] systemd[1]: systemd-modules-load.service: Main process exited, code=exited, status=1/FAILURE [   11.598590] systemd[1]: Failed to start Load Kernel Modules. [   11.618008] systemd[1]: systemd-modules-load.service: Unit entered failed state. [   11.626685] systemd[1]: systemd-modules-load.service: Failed with result 'exit-code'. [   11.636116] systemd[1]: Started Set console keymap. [   11.651753] systemd[1]: Started Restore / save the current clock. [   11.670622] systemd[1]: Time has been changed [   11.713706] systemd[1]: Starting Apply Kernel Variables... 4) WiFi
     
    I copied the WiFi files extracted from original Beelink GT1 Android image to /lib/firmware/brcm, but I'm getting these errors:
    [   77.851826] F1 signature read @0x18000000=0x15264345 [   77.855166] F1 signature OK, socitype:0x1 chip:0x4345 rev:0x6 pkg:0x2 [   77.855833] DHD: dongle ram size is set to 819200(orig 819200) at 0x198000 [   77.856284] dhd_conf_read_config: kso_enable = 0 [   77.856372] dhd_conf_set_fw_name_by_chip: firmware_path=/lib/firmware/brcm/fw_bcm43455c0_ag.bin [   77.856381] dhdsdio_download_firmware: set use_rxchain 0 [   77.856386] dhdsdio_download_firmware: set txglomsize 40 [   77.856392] sdioh_set_mode: set txglom_mode to multi-desc [   77.856397] Final fw_path=/lib/firmware/brcm/fw_bcm43455c0_ag.bin [   77.856402] Final nv_path=/lib/firmware/brcm/ [   77.856407] Final conf_path=/lib/firmware/brcm/config.txt [   77.905834] dhdsdio_download_nvram: error reading nvram file: -21 [   77.905849] _dhdsdio_download_firmware: dongle nvram file download failed [   77.905889] dhd_net_bus_devreset: dhd_bus_devreset: -35 [   77.905898] dhd_prot_ioctl : bus is down. we have nothing to do [   77.905904] dhd_net_bus_devreset: dhd_bus_devreset: -35 [   77.905958] wifi_platform_set_power = 0 [   77.905964] ======== PULL WL_REG_ON LOW! ======== [   77.905969] wl_android_wifi_on: Failed [   77.905976] dhd_open : wl_android_wifi_on failed (-35) [   77.905984] dhd_stop: Enter ffffffc050c6d800 [   77.905989] wl_android_wifi_off in 1 [   77.905995] wl_android_wifi_off in 2: g_wifi_on=0 [   77.905999] wl_android_wifi_off out [   77.906004] dhd_stop: Exit [   77.906013] dhd_open: Exit ret=-1 4) Mali drivers
    tar xvzf Mali_OpenCL_SDK_v1.1.0.tar.gz cd Mali_OpenCL_SDK_v1.1.0/samples/hello_world_opencl make export LD_LIBRARY_PATH=Mali_OpenCL_SDK_v1.1.0/lib Result:
    root@amlogic-s905x:~/Mali_OpenCL_SDK_v1.1.0/samples/hello_world_opencl# ./hello_world_opencl OpenCL error: Unknown error Retrieving OpenCL platforms failed. common.cpp:233 Failed to create an OpenCL context. hello_world_opencl.cpp:39 Tried to modprobe mali, no success yet. There is an interesting Amlogic repository with gpu drivers: http://openlinux.amlogic.com:8000/download/ARM/gpu/
  24. Like
    lvmc got a reaction from Jens Bauer in Armbian for Amlogic S912   
    @balbes150 and @chocho
     
    I learnt how to extract the dtb and dts file from Beelink Android images. I will be documenting it here to help other users, but it is the exactly process @chocho already did.
     
    1) update your GT1 device with GT1_104M0.img or GT1_104M0_AP6255.img
     
    2) power-up, boot GT1;
     
    3) copy boot.img from running Android image
    adb pull /dev/block/boot boot.img 4) download split_bootimg.pl tool and run it over boot.img
    wget -c http://www.enck.org/tools/split_bootimg_pl.txt -O split_bootimg.pl chmod a+x split_bootimg.pl split_bootimg.pl boot.img Result:
    -rw-r--r--   1 lvmc  staff    32M Dec  4 19:28 boot.img -rw-r--r--   1 lvmc  staff   7.0M Dec  4 20:08 boot.img-kernel -rw-r--r--   1 lvmc  staff   898K Dec  4 20:08 boot.img-ramdisk.gz -rw-r--r--   1 lvmc  staff    82K Dec  4 20:08 boot.img-second.gz 5) find the hex addresses of "d0 0d fe ed"
    hexdump -C -v boot.img-second.gz |less Results (hex and decimal addresses):
    gxm_q201_1g: 00000800 (2048) gxm_q201_2g: 0000a800 (43008) 6) extract available dtb sections from boot.img-second.gz
    gxm_q201_1g dd if=boot.img-second.gz of=gxm_q201_1g.dtb bs=2048 skip=1 gxm_q201_2g dd if=boot.img-second.gz of=gxm_q201_2g.dtb bs=43008 skip=1 7) convert dtb (binary format) to dts (readable)
    dtc -I dtb -O dts -o gxm_q201_201_1g.dts gxm_q201_201_1g.dtb dtc -I dtb -O dts -o gxm_q201_201_2g.dts gxm_q201_201_2g.dtb *dtc command is available on GNU/Linux
     
    There is only one difference between gxm_q201_201_1g.dts and gxm_q201_201_2g.dts
    memory@00000000 { device_type = "memory"; linux,usable-memory = <0x0 0x1000000 0x0 0x3f000000>; }; memory@00000000 { device_type = "memory"; linux,usable-memory = <0x0 0x1000000 0x0 0x7f000000>; }; boot.img, dtb and dts files from previous steps are available at:
    https://dl.dropboxusercontent.com/u/11164079/GT1/beelink_gt1.tar.gz
     
    beelink_gt1/boot
    -rw-r--r--  1 lvmc  staff    32M Dec  4 19:28 boot.img -rw-r--r--  1 lvmc  staff   7.0M Dec  4 20:08 boot.img-kernel -rw-r--r--  1 lvmc  staff   898K Dec  4 20:08 boot.img-ramdisk.gz -rw-r--r--  1 lvmc  staff    82K Dec  4 20:08 boot.img-second.gz beelink_gt1/dtb_dts
    -rw-r--r--  1 lvmc  staff    80K Dec  4 20:24 gxm_q201_1g_00000800.dtb -rw-r--r--  1 lvmc  staff    48K Dec  4 20:25 gxm_q201_1g_00000800.dts -rw-r--r--  1 lvmc  staff    40K Dec  4 20:18 gxm_q201_2g_0000a800.dtb -rw-r--r--  1 lvmc  staff    48K Dec  4 20:21 gxm_q201_2g_0000a800.dts
  25. Like
    lvmc got a reaction from Jens Bauer in Armbian for Amlogic S912   
    @balbes150 and @choco
     
    1. I just wrote your image to sdcard and booted, I haven't copied any dtb file.
    How can I extract dtb files from available Beelink Android images (GT1_104M0.img or GT1_104M0_AP6255.img)?
     
    2. What are the differences from @balbes150 and @choco initiative?
     
    3. What do you mean by "script in internal the internal memory"? What are the steps to test and help you?
     
    4. I extracted newest Bluetooth and WiFi drivers for AP6255 from Beelink's GT1 Android image, it can be downloaded from:
    https://dl.dropboxusercontent.com/u/11164079/GT1/bluetooth.tar.gz
    https://dl.dropboxusercontent.com/u/11164079/GT1/wifi.tar.gz