Jump to content

srx

Members
  • Posts

    26
  • Joined

  • Last visited

Everything posted by srx

  1. I would also like to ask for headers. I think headers should be part of image. At least as long as kernel and headers are not downloadable via package manager (I hope we can soon get kernel/headers from a repository, so we do not need to install new image to get fresh kernel - this unified image is a step towards that goal). Otherwise it is impossible to compile modules. It is not very efficient to compile full custom kernel just so that you can add one little module. It takes ages. And it is somewhat difficult to replace a kernel. Or please provide kernel headers as separate download for every image version if you do not want to make it part of the image. I really do not understand why kernel headers are not included.
  2. I've spent hours today playing with dtb parameters and whatnot. So far nothing. Yes, Android dtb and dtb in this image are different. But I can not just copy-paste it. It is all related and pretty difficult to understand. All I have is dmesg saying that SD card appeared, it is detected. Even partitions are detected and then it dissapears. But why it dissapears? SDXC card seems to appear, then dissapear, then appear again... [ 88.606168] mmc0: new high speed SDHC card at address aaaa [ 88.607742] mmcblk0: mmc0:aaaa SP32G 29.7 GiB [ 88.610100] mmcblk0: p1 p2 [ 89.637741] mmc0: card aaaa removed [ 89.731537] mmc0: error -84 whilst initialising SD card [ 90.824315] mmc0: error -84 whilst initialising SD card [ 91.912485] mmc0: error -84 whilst initialising SD card Keeps repeating the last message about once per second. /.../ Another card: [ 441.699628] mmc0: new high speed SDXC card at address aaaa [ 441.701190] mmcblk0: mmc0:aaaa SR64G 59.5 GiB [ 441.706375] mmcblk0: unable to read partition table [ 441.707109] mmc0: card aaaa removed [ 441.709786] udevd[2335]: inotify_add_watch(7, /dev/mmcblk0, 10) failed: No such file or directory [ 441.815132] mmc0: new high speed SDXC card at address aaaa [ 441.816655] mmcblk0: mmc0:aaaa SR64G 59.5 GiB [ 441.819250] mmcblk0: p1 p2 [ 441.890260] blk_update_request: I/O error, dev mmcblk0, sector 124735472 op 0x0:(READ) flags 0x80700 phys_seg 1 prio class 0 [ 441.957930] blk_update_request: I/O error, dev mmcblk0, sector 0 op 0x0:(READ) flags 0x80700 phys_seg 1 prio class 0 [ 442.031386] blk_update_request: I/O error, dev mmcblk0, sector 8 op 0x0:(READ) flags 0x80700 phys_seg 1 prio class 0 [ 442.034128] blk_update_request: I/O error, dev mmcblk0, sector 8 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0 EDIT: The same card/image/kernel that gives endless -84 errors boots just fine in another device. I just changed dtb to match hardware and started it up in Nexbox A95X (s905x/2GB/8GB). No errors, starts just fine. In A95X F3 Air (S905x3/4GB/32GB) still no luck. I have no time to do more research at the moment. Maybe I'll try again next weekend.
  3. I've spent hours today playing with dtb parameters and whatnot. So far nothing. Yes, Android dtb and dtb in this image are different. But I can not just copy-paste it. It is all related and pretty difficult to understand. All I have is dmesg saying that SD card appeared, it is detected. Even partitions are detected and then it dissapears. But why it dissapears? SDXC card seems to appear, then dissapear, then appear again... [ 88.606168] mmc0: new high speed SDHC card at address aaaa [ 88.607742] mmcblk0: mmc0:aaaa SP32G 29.7 GiB [ 88.610100] mmcblk0: p1 p2 [ 89.637741] mmc0: card aaaa removed [ 89.731537] mmc0: error -84 whilst initialising SD card [ 90.824315] mmc0: error -84 whilst initialising SD card [ 91.912485] mmc0: error -84 whilst initialising SD card Keeps repeating the last message about once per second. /.../ Another card: [ 441.699628] mmc0: new high speed SDXC card at address aaaa [ 441.701190] mmcblk0: mmc0:aaaa SR64G 59.5 GiB [ 441.706375] mmcblk0: unable to read partition table [ 441.707109] mmc0: card aaaa removed [ 441.709786] udevd[2335]: inotify_add_watch(7, /dev/mmcblk0, 10) failed: No such file or directory [ 441.815132] mmc0: new high speed SDXC card at address aaaa [ 441.816655] mmcblk0: mmc0:aaaa SR64G 59.5 GiB [ 441.819250] mmcblk0: p1 p2 [ 441.890260] blk_update_request: I/O error, dev mmcblk0, sector 124735472 op 0x0:(READ) flags 0x80700 phys_seg 1 prio class 0 [ 441.957930] blk_update_request: I/O error, dev mmcblk0, sector 0 op 0x0:(READ) flags 0x80700 phys_seg 1 prio class 0 [ 442.031386] blk_update_request: I/O error, dev mmcblk0, sector 8 op 0x0:(READ) flags 0x80700 phys_seg 1 prio class 0 [ 442.034128] blk_update_request: I/O error, dev mmcblk0, sector 8 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0 It is meson-gx-mmc driver that handles sd card as far as I understand.
  4. Well, SD card is not faulty. I have tried several and none work. Most give the same -84 error, some give random IO errors. But none work. Same card on same system in USB reader boots just fine. Same card on same system when running Android works just fine. Same cards and same kernel work fine on different hardware/dtb. From that we know that: Card is ok. This specific hardware is ok and can read the card (works in andorid and bootloader). This specific kernel can read card on different hardware (works on RK3328 A5X Max - but not S905x3 A95X F3 Air). It does not work with specific hardware+dtb+kernel combo. Same problem with s9xxx image and 5.3 kernel. So what can be the problem? Some sort of bug in kernel that only appears on specific hardware. Incompatible reader and kernel driver. Problem with DTB - maybe this hardware needs a different dtb to describe card reader. Could be a small detail - different voltage setup, different clock setup, etc. I am not competent enough to look into kernel source and understand what the problem could be. I can understand most of the code - but I do not have the knowledge of card reader hardware specifics and how to program it. When it comes to dtb, it is difficult to understand what 4000 lines of text actually do. And this is highly hardware specific and I do not know what hardware expects. So again, difficult to see if something is wrong. I've run different tv boxes from sd card for a few years now. This is the first one that does not work from sd.
  5. Here is A95X F3 Air dtb from android. I can not really understand how dtb describes hardware (yet...), so I have really hard time to understand if anything important is different. And it is not like it is just few lines... it is pretty long file. So not something you can understand in few minutes. https://hastebin.com/leluzuhado.pl Maybe someone who understands it can have a look and see if there is important difference in SD card section vs meson-g12a-* dtb files. For whatever reason I can not use any SD cards in linux. It will not even boot up past ROOTFS mounting point. All I get is different error messages. But at the same time bootloader can access SD cards just fine, to read kernel/ramdisk. Also Android can access SD cards just fine, no problems. Problem is only when linux kernel tries to access SD card and then it fails. I think I have tried most if not all meson-g12a-* and meson-g12b-* dtb files and while they all boot to kernel, none have been able to read SD card. And some have other problems like network not working.
  6. mmc1: error -84 whilst initialising SD card Could it be related to DTB and SD voltage regulation or something like that? I have a faint memory of reading about it somewhere. Something like using non-standard/strange regulators that need different setup. I do not have much time or motivation to dig very deep. But if I can find some time I will look at DTB and compare SD card voltages on different devices. Could be as simple as fixing some numbers in DTB to get right voltage. But I would not bet on it. EDIT: SD voltage seems ok - 3.3V I measured A5X Max box where all cards work and that has also 3.3V. I also measured in Android and in Linux (well... initramfs console) to make sure that kernel does not change voltage - and it does not. It stays at 3.3V.
  7. Mine is: VER_1.0 20170730 - and works with both unified image (5.5 kernel) and rk3328 image (both 4.4 and 5.3 kernel versions) Even if you install fresh image. No need to do the magic I described somewhere before. That magic was so that I do not need to do full wipe/install just for trying new kernel.
  8. I am trying to run Armbian_20.02.0-rc1.036_Arm-64_buster_current_5.5.0-rc6_desktop_20200205.img on A95X F3 Air (S905x3, 4GB/32GB). Kernel loads to a point where it needs to mount ROOTFS and then there is infinite loop of error messages and I am dropped to initramfs console. error messages keep coming about once per second. mmc1: error -84 whilst initialising SD card I have tried several DTB files but every single one I tried ends up like this. This box has mt7668rsn module for WiFi/BT and as far as I understand it is connected over SDIO. Can that somehow screw it up? Kernel looks for SD card and is stuck on some strange SDIO implemetation? Or is SDIO device referenced by mmc[0-9] at all? Not sure how SDIO works on kernel level. I keep trying. And I will try "-next"/"-dev" image also. Maybe it works better. And I might try S9xxx image too. EDIT: Booting from USB works. But for whatever reason console is cyan instead of black when booting from usb. Looks like kernel does not like my Sandisk Extreme Pro 32GB microsd card. It reads kernel just fine and boots kernel. But when kernel tries to read sdcard, there are errors and it fails. Transend Premium 128GB card gives the same error. Sandisk Extreme Pro 64GB card gives the same error. Kingston Canvas Select Plus 64GB card gives lot of different IO errors and also fails. I have used that same cards with different images from this forum on S905/RK3328/S905x2 devices without problems so far. Not sure what is wrong with this device. I also have problem with S9xxx image and 5.3 kernel. Same problems. I just can not get SD card to work. Any ideas? EDIT2: Cards work fine in Android. So reader is ok and can read those cards. Bootloader also reads kernel from all of those cards just fine. There is something wrong with kernel mmc driver maybe? Some sort of comatibility issue?
  9. I use default dtb. rk3328-box.dtb or something like that on my A5X Max and it works (except wifi and bluetooth). I have not been able to boot with x96 dtb-s. So every A5X max might not be the same. Mine is quite old oversion, bough over a year ago. Play around, try different rk3328 dtb files and see how they work.
  10. I see that RK3328 in my A5X max is getting really hot. It is just touch under 50°C at idle. At the same time S905X2 in my Mecool KM9 box is running much cooler. About 35°C at idle. When compiling kernel (make -j4), temps go up to 72°C+ and then it crashes. S905X2 tops at about 53°C and keeps going. Not sure if my RK3328 (28nm) box has bad cooling or is S905X2(12nm) just so much more efficient. Looks like I need to look at cooling first before I try anything else. That could solve my crashing issues. But at the moment I would suggest to go with S905X2 boxes. Price is about the same.
  11. Yandex disk link in 1st post. There are 4.4 and 5.3.0 versions. Two different folders. There is also unified image with 5.5 kernel in this thread (that I am running currently):
  12. Thanks for pointing me to that. I have not read the whole thread and missed that bit. As I understand, I have to add that block to dtb? I decompiled dtb, added that bit, recompiled. I hope I got it right - at least it booted I am running unified image with 5.5 kernel now. It still crashed before dtb update. I hope it works better now. We will see in few days if it is stable or not. If that fix works I think it should be included in images. Saves a lot of trouble for many people.
  13. Looks like 5.3 has the same crashing problem, it just took longer to get there (unless of course it is hardware issue that causes it). My A5X max just crashed again. Storage gone, nothing works. Shell is accessible but nothing works, everything gives "not found" or I/O error. Even reboot, init 6 or crtl+alt+del does not work. Only way is to pull the plug. And as storage is gone, no logs to diagnose the problem. This time I got 4 days uptime before it crashed. I guess I will try unified image next. It has 5.5.0 rc2 kernel.
  14. Default dtb works for me. /dtb/rockchip/rk3328-box.dtb I have not tried others. No WiFi, no bluetooth. but everything else seems to work. I actually did not do full install of new image. I took only /boot and /lib/modules/5.3.0-rk3328-tv/ from new image to get 5.3 kernel. This is something I am not very happy about actually. There is no easy way to update kernel I know about. I do not want to backup everything, flash whole new image and then restore everything just to get fresh kernel. I used Armbian_19.11.3_Rk3328-tv_buster_legacy_5.3.0_20191216.img for new kernel. Just ungzip it and mount with offsets mkdir /mnt/boot mkdir /mnt/root mount -o offset=16777216 Armbian_19.11.3_Rk3328-tv_buster_legacy_5.3.0_20191216.img /mnt/boot mount -o offset=285212672 Armbian_19.11.3_Rk3328-tv_buster_legacy_5.3.0_20191216.img /mnt/root to find correct offsets: #> fdisk -l Armbian_19.11.3_Rk3328-tv_buster_legacy_5.3.0_20191216.img Disk Armbian_19.11.3_Rk3328-tv_buster_legacy_5.3.0_20191216.img: 1.9 GiB, 1992294400 bytes, 3891200 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0x757e269e Device Boot Start End Sectors Size Id Type Armbian_19.11.3_Rk3328-tv_buster_legacy_5.3.0_20191216.img1 32768 557055 524288 256M e W95 FAT16 (LBA) Armbian_19.11.3_Rk3328-tv_buster_legacy_5.3.0_20191216.img2 557056 3891199 3334144 1.6G 83 Linux Multiply partition Start with Sector size 32768 x 512 = 16777216 = Offset for partition 1, /boot Second partition is rootfs And then you can copy /mnt/boot to /boot and /mnt/usr/lib/modules/5.3.0-rk3328-tv/ to /lib/modules/5.3.0-rk3328-tv/ make sure your dtb is correct in /boot/exlinux/extlinux.conf Check extlinux.conf to see if root filesystem detection is changed (root=LABEL=ROOTFS). If it is, change extlinux.conf to match your conf or update your conf to mach extlinux.conf. either way works. reboot and you should boot to new kernel if everything was done correctly and DTB works. If not, take your SD to some other computer and fix it. Of course this could be much easier. I would like to see it as deb package or at least tarball that I can just untar. Maybe we can get kernel update packages somehow? And some sort of bootloader (like grub, lilo, syslinux, etc) would be awesome, so you can install new kernel beside old one and if new does not boot, you have fallback option. Not sure if that is possible.
  15. New 5.3 kernel seems to be better than old 4.4. I tried image with 4.4 kernel version and it kept crashing with IO errors at least once a day. I could not get any logs because it was just like storage suddenly disconnected or something like that. Nothing worked. Not even reboot. I tried different SD cards but no change. Now I have image with 5.3 kernel and so far I have 3 days uptime and no problems/crashes yet. I am running it on A5X Max with 4GB ram from SD card.
  16. Is there any way to change memory split between GPU/RAM. On my S905x2 box I have only 3.3GB RAM and looks like about 700MB is for GPU (4GB total). As I am running headless server, I would very much prefer to have more RAM and I do not care about GPU at all. GPU needs just minimal amount to be able to show console on HDMI. Someting like 16MB would be enough for GPU I guess. But if so little is not possible then even 64/128MB would be nice. About 700MB is serious overkill. EDIT: Found some info from here: However, it did not help me. Yes, cma size decreased but I still have only 3.3GB of memory. Now to think about it, I guess it might be in some sort of firmware/u-boot or somewhere else before kernel starts because the total amount of memory shown is 3.3GB. So something hides the memory from kernel before kernel starts. Not sure how to "fix" it and if it is possible at all. It is Mecool KM9 box, 4GB/32GB model with S905x2 SoC.
  17. I have never tried it. I am running it from SD card. That way it is much easier to manage. microSD cards cost so little these days. Just make sure you pick up a good one, like Sandisk Extreme (Pro), Samsung Pro or something like that. Samsung Evo+ is not too bad either. Generic cards, like cheap Kingston ones, are extremely slow. Specially when dealing with lot of small files. If you try to extract something like linux source or headers, which contain lot of small files, it takes ages. Goods cards have much higher IOPS and work quite well. Class 10, UHS-I and other markings are quite useless. The most important number is IOPS. Higher IOPS means much better performance when running OS on it. You can not find official IOPS specification for any cards. But internet is full of benchmarks and for some cards that information can be found unofficially. When booting kernel looks for partition labeled ROOTFS to mount as "/" and it can be on any storage device visible to kernel. So you can put it on USB stick or external HDD or any other device kernel recognizes, including emmc. I am not sure if it works but in theory you could partition mmcblk2 (I think it is emmc on our box), make one ext4 (or maybe f2fs) partition on it and label it ROOTFS (or anything else but then you need to update boot files accordingly). Copy entire SDcard contents there (except /boot, /sys, /proc, /dev - just make empty directories). If you labeled your partition ROOTFS then relabel your SD partition to something else. So you have only one partition labeled ROOTFS. After reboot you should boot from emmc. Then your boot partition remains on SD card but everything else is on emmc. You still need SD card to boot but entire system except kernel (which is only read once when booting) will be on emmc. And that SD card can be any old slow card. I think I would try something like that. I do not know if emmc contains something important for booting. If you completely erase it and re-partition you might make your box unbootable/(soft)bricked. So in theory it will work. But if emmc contains something important for booting, it will not. You will not see Android partitions on emmc because Android does not use partition table. Android uses partition definition file or something like that. That is essentially external partition table stored somewhere else. So linux kernel and partition tools know nothing about existing partitions because emmc has no partition table and looks like empty - but it is not. About DTB... I think I tried meson-g12a-x96-max.dtb and meson-g12a-x96-max-rmii.dtb but I do not think either one worked. If I remember correctly I tried all g12a DTB files but only one worked. Do you have BT and/or WiFi working? I do not care much about WiFi (I use cable anyway) but BT would be good - I could use keyboard/mouse without external dongle. EDIT: meson-g12a-x96-max.dtb and meson-g12a-x96-max-rmii.dtb do not work on my box. Tried both. Mecool KM9, 4GB RAM, 32GB ROM, 1Gb ethernet, S905x2 CPU
  18. That is because /boot is on FAT32 filesystem but update wants to make hardlinks and FAT32 does not support it. For it to work /boot needs to be on ext filesystem but uBoot needs FAT32. So you can not covert it to ext. Other than that it is just as every other Debian/Ubuntu and updating is the same. How I did get around it? * Make alternate boot directory somewhere else * copy/rsync contents of /boot into that directory * umount /boot * bind mount new directory to /boot * update kernel * umount /boot * mount normal /boot again * copy/rsync contents of alternate boot to /boot In the end you have updated kernel... If you read my posts above, you see that I had some problems and I think that something went wrong when I updated kernel last time. So there is some risk involved. I am not sure if there is any way to make it possible to update kernel without any such workarounds.
  19. I downloaded the latest image, 19.11.3. Extracted kernel, ramdisk, /lib/modules and transplanted those into my installation and now everything is fine. IPv6 is working. So inside the SD image everything is fine. Not sure why it broke. Maybe something went wrong when updating kernel and modules from old and new got mixed or something like that.
  20. Well, you are correct. Did not check that first. But there is something wrong with modules then... I've never needed to load ipv6 manually and when i try it, it fails. Not sure why. $ modprobe ipv6 modprobe: ERROR: could not insert 'ipv6': Unknown symbol in module, or unknown parameter (see dmesg) $ dmesg [16158.815595] nf_defrag_ipv6: Unknown symbol __ll_sc_arch_atomic64_add (err -2) [16158.854186] nf_defrag_ipv6: Unknown symbol __ll_sc_arch_atomic64_add (err -2) [16173.695401] nf_defrag_ipv6: Unknown symbol __ll_sc_arch_atomic64_add (err -2) Installed kernel package: ii linux-image-aml-g12 5.99 arm64 Linux kernel, version 5.3.0-aml-g12 $ uname -a Linux aml 5.3.0-aml-g12 #5.99 SMP PREEMPT Sat Nov 9 17:44:28 MSK 2019 aarch64 GNU/Linux EDIT: I must add that I did update kernel (because there was update available in package manager). I guess it did come from apt.armbian.com repo. So it is not the same kernel that was in SD card image.
  21. Thank you for all your good work. Running Debian Buster converted to Devuan Beowulf (debian without systemd) on Mecool KM9 using meson-g12a-sei510.dtb Wifi and BT are not working. Everything else is working I think. I have one major issue. Looks like IPv6 is disabled in kernel (at least in 5.99, that is the latest in the repo). That is not good. I would like to see it enabled. IPv6 is essential feature that should not be disabled. I am unable to connect to some services because of that. If for some reason you want to disable IPv6, do it in sysctl.conf. That way we can enable it without replacing/compiling kernel. At the moment there is no /proc/sys/net/ipv6/* so not possible to enable. I had one other problem but that just got sorted... Yandex disk over quota and MEGA out of date. MEGA is updated again and all is fine
  22. I have not even tried. I am not interested in running LibreElec/Kodi on this box. I have many cheap s905x boxes with 1GB/8GB and they work very well with LibreElec (like x96/x96 mini, T96N, A95x (not the R1 version - this is rockchip) and many others). There is not much hardware needed to play media over LAN. Cheapest s905x boxes cost just about €20 or so... and everything is still included, even HDMI cable and remote. I'd take one of those if I want just to run Kodi. Those work very well for me. Just pop in microSD with LibreElec and you are good to go (might need some magic - like pushing a button hidden in AV out port or placing empty update.zip file on SD card and selecting manual update from Android. It is just for the first boot, after that you do not have to do it anymore. If SD is inserted it boots from SD, if not it boots Android from internal flash). Or if you want the best software support - Raspberry Pi is a good choice. Of course it needs lot of extra bits like memory card, power brick, cables, case, etc. My interest is to run Linux Server on this box. Just because I got it really cheap and it has 4GB of RAM. My other boxes have 1GB or 2GB and even 2GB is bit too short for what I want to do. 4GB would be perfect. And to be honest, I have not worked on the issue at the moment. So no progress with booting Linux either.
  23. I found this thread in LibreElec forum: https://forum.libreelec.tv/thread/12664-a5x-max-rk3328-a53/ And I tried latest image from https://github.com/Kwiboo/LibreELEC.tv/releases At the time of writing that is LibreELEC-ROCK64.aarch64-8.2-devel-20171004193222-r26173-gd404dbb.img.gz zcat LibreELEC-ROCK64.aarch64-8.2-devel-20171004193222-r26173-gd404dbb.img.gz | dd of=/dev/<sd card device> bs=1M Just insert SD card, apply power and you get LibreElec. Well, it is without WiFi at the moment and probably some other things might not work. But it means it is possible to boot from SD card and have linux running on this box. So, little bit of info from that site... bit of tinkering with armbian root image and we should have cheap linux server with 4GB of RAM, running from SD card. I'm not sure I can do it... but I might try. I am very interested in getting headless linux server running on that box. EDIT: Looks like Armbian Rock64 image has hardcoded DTB in bootloader (first 16MB of SD card): fdtfile=rockchip/rk3328-rock64.dtb So that is difficult to change... or you could replace contents of that file... BUT read on... It also looks like DTB is embedded into bootloader part of the SD (starting at ABOUT 0x00A916E8 - not exact number, look there and you see DTB info). So even changing DTB filename or replacing rk3328-rock64.dtb contents with something else will probably have no effect at all. So everthing relating to DTBs is built into bootloader at compile time and altering it is difficult. To build Arbian release for our box we probably have to take full source package, modify it, and build our own image. OR... maybe we can replace DTB embedded into bootloader... I will look into it. If there is (enough) empty space at the end, I will try to overwrite DTB. I have this box sitting on the shelf for at least half a year now... would be nice if I finally can use it for what I wanted it for. Another edit: Maybe Armbian image is not meant to be flashed to SD card but into eMMC. That also might be the reason why it is not working.
  24. Not sure how to get proper DTB file. I can extract it from android but will it work? I tried with generic ROCK64 images and default DTB. I remember from LibreElec and s905x that you must use correct DTB for kernel in use. So DTB is decompiled and recompiled somehow. Not sure how. DTBs for different hardware was provided with every new version. Looks like there is something that looks like serial console under heatsink. Just up from flash memory chip. I have not removed heatsink yet because I do not have anything at hand to reattach it later.
  25. If I have SD card inserted and power on, nothing happens. Red led stays on and that's all. Looks like it tries to boot from SD but something is not right. If I push that button when powering on, then still nothing happens. Red led stays on and that is all. Of course without serial console I have no idea what is going on. I'll take a look under heatsink. Thaks for that tip.
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines