Jump to content

Search the Community

Showing results for 'tv'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Armbian
    • Armbian project administration
  • Community
    • Announcements
    • SBC News
    • Framework and userspace feature requests
    • Off-topic
  • Using Armbian
    • Beginners
    • Software, Applications, Userspace
    • Advanced users - Development
  • Standard support
    • Amlogic meson
    • Allwinner sunxi
    • Rockchip
    • Other families
  • Community maintained / Staging
    • TV boxes
    • Amlogic meson
    • Allwinner sunxi
    • Marvell mvebu
    • Rockchip
    • Other families
  • Support

Categories

  • Volunteering opportunities
  • Part time jobs

Categories

  • Official giveaways
  • Community giveaways
  • Raffles

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Matrix


Mastodon


IRC


Website URL


XMPP/Jabber


Skype


Github


Discord


Location


Interests

  1. @Maurizio Finesso@John Taylor@SteeMan I've had success using USB stick instead of SD Card (see my post on 1st page), however now the BOOT Fat32 partition was hidden for some reason, I used DiskGenius to unhide it. I didn't test this on the tv box yet. This also goes against what is being said in this thread (that there are no more Fat32 paritions visible in Windows) from this thread: EDIT2: USB stick works, however I'm having trouble with "USB device not recognized" on Windows, and I can' seem to be able to fix it with gparted for example, as it keeps disconnecting, so YMMW.
  2. moving to Amlogic TV Boxes as I believe (via a quick google search) that this is amlogic cpu based.
  3. Hi, I have an old Android 6 TV box that is slow (1GB ram), i think it's an S905 because it's the only kernel that can boot and its mainboard is a "gxbb p200" as I see on Aida64 : I just tried to boot the Armbian_community_24.8.0-trunk.139_Aml-s9xx-box_bookworm_current_6.6.33_minimal.img I flashed it on a 16GB microSD card on an SD card adapter. Then I added the line : FDT /dtb/amlogic/meson-gxbb-p200.dtb just after the lines label Armbian_community kernel /Image initrd /uInitrd fdtdir /dtb/ into extlinux.conf file. and then I renamed the u-boot-s905 file to u-boot.ext But the system still hangs at startup because it can't find the ROOT partition : I think it's because the kernel can't find the SD card reader, as an error appears: mmc0: error -110 whilst initialising SD card I checked the partitions on gnome-disk utility and there are fine : Here is the box : The only distro that worked was Libreelec but the Wi-Fi does not accept the password. (it always says "invalid credentials) is it a box that's too old to be saved?
  4. @Phi Hùng Nguyễn that link looks nothing like Armbian. You shouldn’t install it on your tv box. Try my build it's unofficial Armbian but I provided source code. So you know what you are installing on your tv box. You can build it yourself if you want to. https://github.com/NickAlilovic/build/releases/tag/20250306
  5. Hello everyone, I own this android box and I followed this tutorial https://ragone.dev/post/install-linux-on-android-tv-box which is based on tutorials on armbian website, I tried to install Armbian 25.8 server with Debian. Everything went fine until the step "5. Flash Armbian to the internal eMMC", despite me running the install-aml.sh script and getting a complete message in the end (see following images for script execution output), when I reboot it just always starts from the sd (see the following screenshot showing that the mounted storage is 16 GB, but my box internal storage is 8 GB). fdisk -l output to also show the internal mmc (in the screen /dev/mmcblk1) If I remove the sd and then turn it on, it is just stuck in a loop, having the following errors: Can you please help me in solving this problem? I already tried looking on the web and found these two topics: https://github.com/ophub/amlogic-s9xxx-armbian/issues/3032 But they didn't help me. Kind regards
  6. So I made a second test with your image. I changed to a 32GB SD card because the other one's capacity was an old 4gb one and run out of space when installing some stuff. I run your image as is in my device. I don't change the DTB to the extracted one from Android partition, because if I do so, I get black screen. I managed to install kodi and xfce4 desktop (xinit and lightdm are required to make it work, as I understand) sudo apt update && sudo apt upgrade sudo apt install xfce4 xinit lightdm I realized I could run Kodi without xfce desktop... just typiing "kodi" command. Before doing so I plugged my pendrive in the USB3.0 port and checked it was mounted. I did some file exploration with ls commands, mount, lsblk etc... but at the end when opened Kodi it was detected as "New_volume" which is the drive's name. For my surprise: When moving through Kodi's menu, the "tic" sound came out from my TV. So: HDMI sound was working Added the movie's folder to the Kodi library and it searched all the stuff that Kodi does (movie posters, tittle, information, etc.) Hit play on one of them and movie played fluid ! movie spec: 1080p and H264 codec I looked for another movie encoded with H265 (HEVC) file... and it played but with some "stuttering". I don't know the cause, if USB is not working at 3.0 speed, or GPU is running slower than expected (or other reason) --> The same file in the same pendrive in the same port, when running the device's Android and Kodi, plays perfectly smooth. Also: In ANdroid Kodi es v21 and the one in Armbian is v20.5 ; maybe some HW acceleration issue there? In conclusion, at the moment, with the original @johlnx image (v0.3, the latest at the moment of testing), for this board (pics in first post of this thread) I have: USB2.0 port: Working: used for wireless keyboard+mouse receiver USB3.0 port: Working, used for a 64G Pendrive (I don't know if it was recognized as USB 3.0 or 2.0, I don't know hoy to check that, yet) HDMI-Video: Working HDMI-Audio: Working (played few movies with 2ch audio content) HDMI-CEC: Not tested, don't know how to do it, yet. SD card reader: Working, as device boots from SD card. LAN: Working WiFi: Not fully tested, (I could only "See" networks , but did'nt connect to them as I was using the device wired.) So it is supposed to be working. Will fully test it in another moment. IR and LCD: Not tested, I don't know where to start with those (will appreciate some help) Analog A/V output: Not tested yet. I can do more tests if some of you consider it, just ask me. The more specific information (and how-to's...) the better. Thanks
  7. Apologies this isnt about Orange Pi Zero 2, but about a TV stick called Tronsmart Draco H3 which I have and am trying to repurpose into a light weight server with armbian. It obviously isnt well known, but I have tried a few H3 based builds, all of them boot fine, but I cant seem to get Wifi running. I tried Orange Pi PC and Orange Pi but they dont have Wifi at all I believe, so it didnt ask to setup wifi. I tried Orange Pi Zero 2+H3, but for some odd reason my keyboard didnt work on it, so I couldnt setup the users to be able to get further. I tried Nano Pi R1, but that didnt have HDMI, so my hdmi didnt work and I had no idea how to view the output at that point. I tried Orange Pi + as that had wifi as well, but the wifi wasnt able to be configured. I then figured that I need to get a board with the same wifi chipset as mine, and settled on Banana Pi M2+ which matched on RAM, SOC and Wifi chipset, but it still had the same problem as Orange Pi+ in that it asked to setup wifi, but then fails immediately with unable to configure. Any tips on how I can proceed? I understand that recovering esoteric TV boxes isnt looked on fondly here, but I am curious to see if I can make this work. p.s. Ethernet does work with this box and the banana pi m2 + build, but I would need an ethernet to USB dongle, and ofc the cable.
  8. Hi everyone, how's it going? I'm new to the forum and I'm having trouble getting my Chinese T95 mini TV box to run Linux. I want to switch it to a basic server, but I'm having problems booting it from the SD card. I'm using the sunxi-fel mode method in Linux. I tested Armbian_23.8.1_Orangepipc_jammy_current_6.1.47_minimal.img and others like Armbian_23.8.1_Orangepipc_jammy_current_6.1.47.img. I used the .bin file generated on this forum. Boot it using the method `sudo sunxi-fel -v -p uboot u-boot-sunxi-with-spl.bin` in the terminal. TV BOX Model: T95mini | R69 - EMCP V2.0 - H3 Allwinner. The screenshots below show the screen freezing. I'm a total noob, guys, if you could please explain the procedures, indicate what needs to be done to make it work. Thanks in advance libretech_all_h3_cc_h3_mem_336 - u-boot-sunxi-with-spl.bin
  9. But I still need to short-circuit the TV box to be able to install anything; it's locked and I can't do anything, If you can help me, I would really appreciate it.
  10. The Wi-Fi isn't working. I've been trying to get it working for a week now. My hardware is a board from a TV set-top box based on the Amlogic S905X. I have six of them. Armbian OS v26.2, kernel 6.12.59-current-meson64 There are 6 adapters: noname aic8800 ax900 bt5.4 usb (Two types. Some are detected slightly differently by the system, but I want to figure out the first type first (on the left in the photo)) Photo of adapters: https://disk.yandex.ru/i/x37stQnEgEW52gра As far as I can tell, the manufacturer's website: https://www.fenvi.com/index.php/drive.html?id=1&page=2 What I've tried: https://resource.tp-link.com.cn/pc/docCenter/showDocproductId=3343&type=DRIVER&id=1744265707665927 https://www.tendacn.com/ru/material/show/105769 https://www.lulian.cn/download/135.html https://github.com/Wolfdv1/aic8800/ https://github.com/radxapkg/aic8800 https://github.com/geniuskidkanyi/aic8800 https://github.com/nbfalcon/aic8800 https://github.com/shenmintao/aic8800d80 In the related thread https://www.linux.org.ru/forum/linux-hardware/18109581?cid=18151734 , they suggested installing: https://github.com/shenmintao/aic8800d80 , but that didn't help me. What helped: 1) I tried following the instructions from https://linux.brostrend.com/ After that, the adapter worked once, but after a reboot, it didn't work again. I couldn't try again on a clean system. 2) On a clean system, the description from the first post helped once: https://forums.linuxmint.com/viewtopic.php?t=437357 ``` sudo dkms remove aic8800/1.0.8 –all sudo dpkg –remove –force-all aic8800-dkms sudo dpkg –remove –force-all aic8800-dkms sudo rm -rf /var/lib/dkms/aic8800 ``` then installed the deb packages from https://github.com/radxa-pkg/aic8800/releases/tag/4.0%2Bgit20250410.b99ca8b6-3 ``` sudo dpkg -i aic8800-firmware_4.0+git20250410.b99ca8b6-3_all.deb sudo dpkg -i aic8800-usb-dkms_4.0+git20250410.b99ca8b6-3_all.deb ``` But after two reboots, for some reason, it crashed and I can't retry. I also disable the storage on the Wi-Fi adapter: according to the instructions at https://linux.brostrend.com/advanced/usb_modeswitch/, that is, ``` sudo apt install usb-modeswitch lsusb | grep -E '(0bda|368b|a69c):(8812|b812|c811|b832|c832|1a2b|88df|8d80|8d83|5721|5723)' sudo /usr/sbin/usb_modeswitch -KQ -v a69c -p 5721 ``` When running the lsusb command, the output is: ``` Bus 001 Device 004: ID 368b:8d81 AICSemi AIC 8800D80 ``` I also tried this one because the description says it supports my adapter. They promise support for 368b:* https://github.com/xProbe/aic8800d80-wifi-driver But there are a lot of mistakes there: '''/home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aicbluetooth.c:259:5: warning: no previous prototype for ‘aic_crc32’ [-Wmissing-prototypes] 259 | u32 aic_crc32(u8 p, u32 len, u32 crc) | ^~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aicbluetooth.c: In function ‘rwnx_plat_flash_bin_upload_android’: /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aicbluetooth.c:760:15: warning: conversion from ‘long unsigned int’ to ‘u32’ {aka ‘unsigned int’} changes value from ‘18446744073709551615’ to ‘4294967295’ [-Woverflow] 760 | u32 crc = ~0UL; | ^ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aicbluetooth.c: At top level: /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aicbluetooth.c:900:6: warning: no previous prototype for ‘get_fw_path’ [-Wmissing-prototypes] 900 | void get_fw_path(char fw_path){ | ^~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aicbluetooth.c:908:6: warning: no previous prototype for ‘set_testmode’ [-Wmissing-prototypes] 908 | void set_testmode(int val){ | ^~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aicbluetooth.c:912:5: warning: no previous prototype for ‘get_testmode’ [-Wmissing-prototypes] 912 | int get_testmode(void){ | ^~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aicbluetooth.c:916:5: warning: no previous prototype for ‘get_hardware_info’ [-Wmissing-prototypes] 916 | int get_hardware_info(void){ | ^~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aicbluetooth.c:921:5: warning: no previous prototype for ‘get_adap_test’ [-Wmissing-prototypes] 921 | int get_adap_test(void){ | ^~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aicbluetooth.c:925:5: warning: no previous prototype for ‘get_flash_bin_size’ [-Wmissing-prototypes] 925 | int get_flash_bin_size(void) | ^~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aicbluetooth.c:930:5: warning: no previous prototype for ‘get_flash_bin_crc’ [-Wmissing-prototypes] 930 | u32 get_flash_bin_crc(void) | ^~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aicbluetooth.c:949:6: warning: no previous prototype for ‘get_userconfig_xtal_cap’ [-Wmissing-prototypes] 949 | void get_userconfig_xtal_cap(xtal_cap_conf_t *xtal_cap) | ^~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aicbluetooth.c:962:6: warning: no previous prototype for ‘get_userconfig_txpwr_idx’ [-Wmissing-prototypes] 962 | void get_userconfig_txpwr_idx(txpwr_idx_conf_t *txpwr_idx){ | ^~~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aicbluetooth.c:989:6: warning: no previous prototype for ‘get_userconfig_txpwr_ofst’ [-Wmissing-prototypes] 989 | void get_userconfig_txpwr_ofst(txpwr_ofst_conf_t *txpwr_ofst){ | ^~~~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aicbluetooth.c:1012:6: warning: no previous prototype for ‘rwnx_plat_userconfig_set_value’ [-Wmissing-prototypes] 1012 | void rwnx_plat_userconfig_set_value(char *command, char *value){ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aicbluetooth.c:1060:6: warning: no previous prototype for ‘rwnx_plat_userconfig_parsing’ [-Wmissing-prototypes] 1060 | void rwnx_plat_userconfig_parsing(char *buffer, int size){ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aicwf_usb.o /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_msg_tx.c:174:18: warning: no previous prototype for ‘rwnx_cmd_malloc’ [-Wmissing-prototypes] 174 | struct rwnx_cmd *rwnx_cmd_malloc(void){ | ^~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_msg_tx.c:203:6: warning: no previous prototype for ‘rwnx_cmd_free’ [-Wmissing-prototypes] 203 | void rwnx_cmd_free(struct rwnx_cmd *cmd){ | ^~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_msg_tx.c:213:5: warning: no previous prototype for ‘rwnx_init_cmd_array’ [-Wmissing-prototypes] 213 | int rwnx_init_cmd_array(void){ | ^~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_msg_tx.c:228:6: warning: no previous prototype for ‘rwnx_free_cmd_array’ [-Wmissing-prototypes] 228 | void rwnx_free_cmd_array(void){ | ^~~~~~~~~~~~~~~~~~~ CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_msg_rx.o CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aic_txrxif.o /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aicwf_usb.c:1375:5: warning: no previous prototype for ‘aicfw_download_fw_8800’ [-Wmissing-prototypes] 1375 | int aicfw_download_fw_8800(struct aic_usb_dev *usb_dev){ | ^~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aicwf_usb.c:1650:5: warning: no previous prototype for ‘aicfw_download_fw’ [-Wmissing-prototypes] 1650 | int aicfw_download_fw(struct aic_usb_dev *usb_dev) | ^~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_msg_rx.c:1655:6: warning: no previous prototype for ‘rwnx_rx_handle_msg’ [-Wmissing-prototypes] 1655 | void rwnx_rx_handle_msg(struct rwnx_hw *rwnx_hw, struct ipc_e2a_msg *msg) | ^~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_msg_rx.c:1667:6: warning: no previous prototype for ‘rwnx_rx_handle_print’ [-Wmissing-prototypes] 1667 | void rwnx_rx_handle_print(struct rwnx_hw *rwnx_hw, u8 *msg, u32 len) | ^~~~~~~~~~~~~~~~~~~~ CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_utils.o CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aicbluetooth_cmds.o CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_cmds.o CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aic_compat_8800d80.o CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_irqs.o /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_utils.c:23:5: warning: no previous prototype for ‘rwnx_init_aic’ [-Wmissing-prototypes] 23 | int rwnx_init_aic(struct rwnx_hw *rwnx_hw) | ^~~~~~~~~~~~~ CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_cfgfile.o /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_cmds.c:339:6: warning: no previous prototype for ‘cmd_mgr_task_process’ [-Wmissing-prototypes] 339 | void cmd_mgr_task_process(struct work_struct *work) | ^~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aic_compat_8800d80.c: In function ‘aicfw_download_fw_8800d80’: /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aic_compat_8800d80.c:375:31: warning: unused variable ‘patch_info’ [-Wunused-variable] 375 | struct aicbt_patch_info_t patch_info = { | ^~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aic_compat_8800d80.c:374:31: warning: unused variable ‘head’ [-Wunused-variable] 374 | struct aicbt_patch_table *head = NULL; | ^~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aic_compat_8800d80.c: At top level: /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aic_compat_8800d80.c:340:12: warning: ‘aicbt_ext_patch_data_load’ defined but not used [-Wunused-function] 340 | static int aicbt_ext_patch_data_load(struct aic_usb_dev *usb_dev, struct aicbt_patch_info_t *patch_info) | ^~~~~~~~~~~~~~~~~~~~~~~~~ CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aic_compat_8800d80x2.o CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_strs.o CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_rx.o /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_irqs.c:21:13: warning: no previous prototype for ‘rwnx_irq_hdlr’ [-Wmissing-prototypes] 21 | irqreturn_t rwnx_irq_hdlr(int irq, void *dev_id) | ^~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_irqs.c:34:6: warning: no previous prototype for ‘rwnx_task’ [-Wmissing-prototypes] 34 | void rwnx_task(unsigned long data) | ^~~~~~~~~ CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_tx.o CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/md5.o CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_txq.o CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aicwf_rx_prealloc.o /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_rx.c:344:6: warning: no previous prototype for ‘rwnx_rx_data_skb_resend’ [-Wmissing-prototypes] 344 | void rwnx_rx_data_skb_resend(struct rwnx_hw *rwnx_hw, struct rwnx_vif *rwnx_vif, struct sk_buff *skb) | ^~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_rx.c:1533:5: warning: no previous prototype for ‘reord_flush_tid’ [-Wmissing-prototypes] 1533 | int reord_flush_tid(struct aicwf_rx_priv *rx_priv, struct sk_buff *skb, u8 tid) | ^~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_rx.c:1793:6: warning: no previous prototype for ‘reord_rxframes_process’ [-Wmissing-prototypes] 1793 | bool reord_rxframes_process(struct aicwf_rx_priv *rx_priv, struct reord_ctrl *preorder_ctrl, int bforced) | ^~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_rx.c:1829:6: warning: no previous prototype for ‘reord_rxframes_ind’ [-Wmissing-prototypes] 1829 | void reord_rxframes_ind(struct aicwf_rx_priv *rx_priv, | ^~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_rx.c:1915:5: warning: no previous prototype for ‘reord_process_unit’ [-Wmissing-prototypes] 1915 | int reord_process_unit(struct recv_msdu *pframe, struct aicwf_rx_priv *rx_priv, struct sk_buff *skb, u16 seq_num, u8 tid, u8 forward, u8 is_amsdu) | ^~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_rx.c:2115:6: warning: no previous prototype for ‘remove_sec_hdr_mgmt_frame’ [-Wmissing-prototypes] 2115 | void remove_sec_hdr_mgmt_frame(struct hw_rxhdr *hw_rxhdr,struct sk_buff *skb) | ^~~~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_rx.c:2196:6: warning: no previous prototype for ‘defrag_timeout_cb’ [-Wmissing-prototypes] 2196 | void defrag_timeout_cb(struct timer_list *t) | ^~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_tx.c:1244:5: warning: no previous prototype for ‘intf_tx’ [-Wmissing-prototypes] 1244 | int intf_tx(struct rwnx_hw *priv,struct msg_buf *msg) | ^~~~~~~ CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_main.o In file included from ./include/linux/string.h:390, from ./include/linux/dma-mapping.h:7, from /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_rx.c:10: In function ‘fortify_memcpy_chk’, inlined from ‘rwnx_rx_add_rtap_hdr’ at /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_rx.c:1365:9, inlined from ‘rwnx_rx_monitor’ at /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_rx.c:1405:5, inlined from ‘rwnx_rxdataind_aicwf’ at /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_rx.c:2335:13: ./include/linux/fortify-string.h:571:25: warning: call to ‘__write_overflow_field’ declared with attribute warning: detected write beyond size of field (1st parameter); maybe use struct_group()? [-Wattribute-warning] 571 | write_overflow_field(p_size_field, size); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aicwf_txq_prealloc.o /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_txq.c:154:6: warning: no previous prototype for ‘rwnx_txq_flush’ [-Wmissing-prototypes] 154 | void rwnx_txq_flush(struct rwnx_hw *rwnx_hw, struct rwnx_txq *txq) | ^~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aicwf_txq_prealloc.c:13:7: warning: no previous prototype for ‘aicwf_prealloc_txq_alloc’ [-Wmissing-prototypes] 13 | void aicwf_prealloc_txq_alloc(size_t size) | ^~~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aicwf_txq_prealloc.c:50:6: warning: no previous prototype for ‘aicwf_prealloc_txq_free’ [-Wmissing-prototypes] 50 | void aicwf_prealloc_txq_free(void) | ^~~~~~~~~~~~~~~~~~~~~~~ LD [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic_load_fw/aic_load_fw.o CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_mod_params.o CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_mesh.o CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_platform.o /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_main.c:552:6: warning: no previous prototype for ‘rwnx_skb_align_8bytes’ [-Wmissing-prototypes] 552 | void rwnx_skb_align_8bytes(struct sk_buff skb){ | ^~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_main.c:619:6: warning: no previous prototype for ‘rwnx_frame_parser’ [-Wmissing-prototypes] 619 | void rwnx_frame_parser(char tag, char data, unsigned long len){ | ^~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_main.c:1157:6: warning: no previous prototype for ‘rwnx_update_mesh_power_mode’ [-Wmissing-prototypes] 1157 | void rwnx_update_mesh_power_mode(struct rwnx_vif *vif) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_defs.h:32, from /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_main.c:25: /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_compat.h:395:5: warning: no previous prototype for ‘rwnx_select_queue’ [-Wmissing-prototypes] 395 | rwnx_select_queue(dev, skb, sb_dev) | ^~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_main.c:1736:5: note: in expansion of macro ‘rwnx_select_queue’ 1736 | u16 rwnx_select_queue(struct net_device *dev, struct sk_buff *skb, | ^~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_main.c:2029:6: warning: no previous prototype for ‘aicwf_p2p_alive_timeout’ [-Wmissing-prototypes] 2029 | void aicwf_p2p_alive_timeout(struct timer_list *t) | ^~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_main.c:2708:5: warning: no previous prototype for ‘rwnx_send_check_p2p’ [-Wmissing-prototypes] 2708 | int rwnx_send_check_p2p(struct cfg80211_scan_request *param){ | ^~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_main.c:3564:6: warning: no previous prototype for ‘apm_staloss_work_process’ [-Wmissing-prototypes] 3564 | void apm_staloss_work_process(struct work_struct *work) | ^~~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_main.c:3678:6: warning: no previous prototype for ‘apm_probe_sta_work_process’ [-Wmissing-prototypes] 3678 | void apm_probe_sta_work_process(struct work_struct *work) | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_main.c:4216:5: warning: no previous prototype for ‘rwnx_cfg80211_set_monitor_channel’ [-Wmissing-prototypes] 4216 | int rwnx_cfg80211_set_monitor_channel(struct wiphy *wiphy, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_main.c:4228:5: warning: no previous prototype for ‘rwnx_cfg80211_probe_client’ [-Wmissing-prototypes] 4228 | int rwnx_cfg80211_probe_client(struct wiphy *wiphy, struct net_device *dev, | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_main.c:4265:6: warning: no previous prototype for ‘rwnx_cfg80211_mgmt_frame_register’ [-Wmissing-prototypes] 4265 | void rwnx_cfg80211_mgmt_frame_register(struct wiphy *wiphy, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_main.c:4969:5: warning: no previous prototype for ‘rwnx_cfg80211_channel_switch’ [-Wmissing-prototypes] 4969 | int rwnx_cfg80211_channel_switch(struct wiphy *wiphy, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_main.c:5311:5: warning: no previous prototype for ‘rwnx_cfg80211_change_bss’ [-Wmissing-prototypes] 5311 | int rwnx_cfg80211_change_bss(struct wiphy *wiphy, struct net_device *dev, | ^~~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_main.c:8438:5: warning: no previous prototype for ‘rwnx_ic_system_init’ [-Wmissing-prototypes] 8438 | int rwnx_ic_system_init(struct rwnx_hw *rwnx_hw){ | ^~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_main.c:8477:5: warning: no previous prototype for ‘rwnx_ic_rf_init’ [-Wmissing-prototypes] 8477 | int rwnx_ic_rf_init(struct rwnx_hw *rwnx_hw){ | ^~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_main.c:8516:6: warning: no previous prototype for ‘aic_ipc_setting’ [-Wmissing-prototypes] 8516 | void aic_ipc_setting(struct rwnx_vif rwnx_vif){ | ^~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_mod_params.c:270:6: warning: no previous prototype for ‘rwnx_get_countrycode_channels’ [-Wmissing-prototypes] 270 | void rwnx_get_countrycode_channels(struct wiphy wiphy, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_pci.o /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_platform.c:762:5: warning: no previous prototype for ‘rwnx_request_firmware_common’ [-Wmissing-prototypes] 762 | int rwnx_request_firmware_common(struct rwnx_hw rwnx_hw, u32 buffer, const char filename) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_platform.c:773:6: warning: no previous prototype for ‘rwnx_release_firmware_common’ [-Wmissing-prototypes] 773 | void rwnx_release_firmware_common(u32 buffer) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_platform.c:790:5: warning: no previous prototype for ‘rwnx_plat_bin_fw_upload_2’ [-Wmissing-prototypes] 790 | int rwnx_plat_bin_fw_upload_2(struct rwnx_hw *rwnx_hw, u32 fw_addr, | ^~~~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_platform.c:1959:5: warning: no previous prototype for ‘rwnx_atoi2’ [-Wmissing-prototypes] 1959 | int rwnx_atoi2(char *value, int c_len) | ^~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_platform.c:1986:5: warning: no previous prototype for ‘rwnx_atoi’ [-Wmissing-prototypes] 1986 | int rwnx_atoi(char *value) | ^~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_platform.c:2334:6: warning: no previous prototype for ‘get_userconfig_xtal_cap’ [-Wmissing-prototypes] 2334 | void get_userconfig_xtal_cap(xtal_cap_conf_t *xtal_cap) | ^~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_platform.c:2343:6: warning: no previous prototype for ‘rwnx_plat_nvram_set_value’ [-Wmissing-prototypes] 2343 | void rwnx_plat_nvram_set_value(char *command, char *value) | ^~~~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_platform.c:2649:6: warning: no previous prototype for ‘rwnx_plat_nvram_set_value_8800d80x2’ [-Wmissing-prototypes] 2649 | void rwnx_plat_nvram_set_value_8800d80x2(char *command, char *value) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_platform.c:2872:6: warning: no previous prototype for ‘rwnx_plat_userconfig_parsing_8800d80x2’ [-Wmissing-prototypes] 2872 | void rwnx_plat_userconfig_parsing_8800d80x2(char *buffer, int size) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_dini.o In function ‘rwnx_plat_patch_load’, inlined from ‘rwnx_platform_on’ at /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_platform.c:3563:11: /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_platform.c:1589:9: warning: ‘sprintf’ argument 3 overlaps destination object ‘aic_fw_path’ [-Wrestrict] 1589 | sprintf(aic_fw_path, «%s/%s», aic_fw_path, «aic8800DC»); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_platform.c: In function ‘rwnx_platform_on’: /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_platform.c:51:13: note: destination object referenced by ‘restrict’-qualified argument 1 was declared here 51 | extern char aic_fw_path[FW_PATH_MAX_LEN]; | ^~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_pci.c:85:5: warning: no previous prototype for ‘rwnx_pci_register_drv’ [-Wmissing-prototypes] 85 | int rwnx_pci_register_drv(void) | ^~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_pci.c:90:6: warning: no previous prototype for ‘rwnx_pci_unregister_drv’ [-Wmissing-prototypes] 90 | void rwnx_pci_unregister_drv(void) | ^~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_dini.c:105:5: warning: no previous prototype for ‘rwnx_cfpga_irq_enable’ [-Wmissing-prototypes] 105 | int rwnx_cfpga_irq_enable(struct rwnx_hw *rwnx_hw) | ^~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_dini.c:129:5: warning: no previous prototype for ‘rwnx_cfpga_irq_disable’ [-Wmissing-prototypes] 129 | int rwnx_cfpga_irq_disable(struct rwnx_hw *rwnx_hw) | ^~~~~~~~~~~~~~~~~~~~~~ CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_v7.o CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/ipc_host.o CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_tdls.o CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/regdb.o CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/md5.o CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aic_vendor.o CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aic_priv_cmd.o CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_compat_8800dc.o CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_compat_8800d80.o /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aic_vendor.c:41:5: warning: no previous prototype for ‘aic_dev_start_mkeep_alive’ [-Wmissing-prototypes] 41 | int aic_dev_start_mkeep_alive(struct rwnx_hw *rwnx_hw, struct rwnx_vif *rwnx_vif, | ^~~~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aic_vendor.c:69:5: warning: no previous prototype for ‘aic_dev_stop_mkeep_alive’ [-Wmissing-prototypes] 69 | int aic_dev_stop_mkeep_alive(struct rwnx_hw *rwnx_hw, struct rwnx_vif *rwnx_vif, u8 mkeep_alive_id) | ^~~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aic_vendor.c:1064:5: warning: no previous prototype for ‘aicwf_vendor_init’ [-Wmissing-prototypes] 1064 | int aicwf_vendor_init(struct wiphy *wiphy) | ^~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aic_priv_cmd.c:235:14: warning: no previous prototype for ‘command_strtoul’ [-Wmissing-prototypes] 235 | unsigned int command_strtoul(const char *cp, char **endp, unsigned int base) | ^~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aic_priv_cmd.c:268:5: warning: no previous prototype for ‘str_starts’ [-Wmissing-prototypes] 268 | int str_starts(const char *str, const char *start) | ^~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aic_priv_cmd.c:1614:5: warning: no previous prototype for ‘handle_private_cmd’ [-Wmissing-prototypes] 1614 | int handle_private_cmd(struct net_device *net, char *command, u32 cmd_len) | ^~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aic_priv_cmd.c:1730:6: warning: no previous prototype for ‘set_mon_chan’ [-Wmissing-prototypes] 1730 | void set_mon_chan(struct rwnx_vif *vif, char *parameter) | ^~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_compat_8800dc.c:2637:5: warning: no previous prototype for ‘aicwf_patch_var_config_8800dc’ [-Wmissing-prototypes] 2637 | int aicwf_patch_var_config_8800dc(struct rwnx_hw *rwnx_hw) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_compat_8800dc.c:3585:5: warning: no previous prototype for ‘set_bbpll_config’ [-Wmissing-prototypes] 3585 | int set_bbpll_config(struct rwnx_hw *rwnx_hw){ | ^~~~~~~~~~~~~~~~ CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_compat_8800d80x2.o /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_compat_8800d80.c:19:5: warning: no previous prototype for ‘aicwf_set_rf_config_8800d80’ [-Wmissing-prototypes] 19 | int aicwf_set_rf_config_8800d80(struct rwnx_hw *rwnx_hw, struct mm_set_rf_calib_cfm *cfm) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_compat_8800d80.c:39:9: warning: no previous prototype for ‘rwnx_plat_userconfig_load_8800d80’ [-Wmissing-prototypes] 39 | int rwnx_plat_userconfig_load_8800d80(struct rwnx_hw *rwnx_hw){ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_compat_8800d80.c: In function ‘rwnx_plat_userconfig_load_8800d80’: /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_compat_8800d80.c:57:13: warning: ‘sprintf’ argument 3 overlaps destination object ‘aic_fw_path’ [-Wrestrict] 57 | sprintf(aic_fw_path, «%s/%s», aic_fw_path, «aic8800D80»); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_compat_8800d80.c:11:13: note: destination object referenced by ‘restrict’-qualified argument 1 was declared here 11 | extern char aic_fw_path[200]; | ^~~~~~~~~~~ CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_radar.o CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_tcp_ack.o CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/usb_host.o /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_compat_8800d80x2.c:17:5: warning: no previous prototype for ‘aicwf_set_rf_config_8800d80x2’ [-Wmissing-prototypes] 17 | int aicwf_set_rf_config_8800d80x2(struct rwnx_hw *rwnx_hw, struct mm_set_rf_calib_cfm *cfm) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_compat_8800d80x2.c:37:9: warning: no previous prototype for ‘rwnx_plat_userconfig_load_8800d80x2’ [-Wmissing-prototypes] 37 | int rwnx_plat_userconfig_load_8800d80x2(struct rwnx_hw *rwnx_hw){ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_compat_8800d80x2.c: In function ‘rwnx_plat_userconfig_load_8800d80x2’: /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_compat_8800d80x2.c:43:5: warning: ‘sprintf’ argument 3 overlaps destination object ‘aic_fw_path’ [-Wrestrict] 43 | sprintf(aic_fw_path, «%s/%s», aic_fw_path, «aic8800D80X2»); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_compat_8800d80x2.c:8:13: note: destination object referenced by ‘restrict’-qualified argument 1 was declared here 8 | extern char aic_fw_path[200]; | ^~~~~~~~~~~ CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_txrxif.o /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_radar.c:904:22: warning: no previous prototype for ‘pri_detector_init’ [-Wmissing-prototypes] 904 | struct pri_detector *pri_detector_init(struct dfs_pattern_detector *dpd, | ^~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_radar.c:1073:6: warning: no previous prototype for ‘print_radar_detect_info’ [-Wmissing-prototypes] 1073 | void print_radar_detect_info(struct pri_detector *pde, struct pri_sequence *ps) | ^~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_tcp_ack.c:17:6: warning: no previous prototype for ‘intf_tcp_drop_msg’ [-Wmissing-prototypes] 17 | void intf_tcp_drop_msg(struct rwnx_hw *priv, | ^~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_tcp_ack.c:30:6: warning: no previous prototype for ‘tcp_ack_timeout’ [-Wmissing-prototypes] 30 | void tcp_ack_timeout(struct timer_list *t) | ^~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_tcp_ack.c:123:5: warning: no previous prototype for ‘tcp_check_quick_ack’ [-Wmissing-prototypes] 123 | int tcp_check_quick_ack(unsigned char *buf, | ^~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_tcp_ack.c:216:5: warning: no previous prototype for ‘tcp_check_ack’ [-Wmissing-prototypes] 216 | int tcp_check_ack(unsigned char *buf, | ^~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_tcp_ack.c:260:5: warning: no previous prototype for ‘tcp_ack_match’ [-Wmissing-prototypes] 260 | int tcp_ack_match(struct tcp_ack_manage *ack_m, | ^~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_tcp_ack.c:288:6: warning: no previous prototype for ‘tcp_ack_update’ [-Wmissing-prototypes] 288 | void tcp_ack_update(struct tcp_ack_manage *ack_m) | ^~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_tcp_ack.c:313:5: warning: no previous prototype for ‘tcp_ack_alloc_index’ [-Wmissing-prototypes] 313 | int tcp_ack_alloc_index(struct tcp_ack_manage *ack_m) | ^~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_tcp_ack.c:352:5: warning: no previous prototype for ‘tcp_ack_handle’ [-Wmissing-prototypes] 352 | int tcp_ack_handle(struct msg_buf *new_msgbuf, | ^~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_tcp_ack.c:447:5: warning: no previous prototype for ‘tcp_ack_handle_new’ [-Wmissing-prototypes] 447 | int tcp_ack_handle_new(struct msg_buf *new_msgbuf, | ^~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/usb_host.c:35:30: warning: no previous prototype for ‘aicwf_usb_host_txdesc_get’ [-Wmissing-prototypes] 35 | volatile struct txdesc_host *aicwf_usb_host_txdesc_get(struct usb_host_env_tag *env, const int queue_idx) | ^~~~~~~~~~~~~~~~~~~~~~~~~ CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_usb.o CC [M] /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_wext_linux.o /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_txrxif.c:1300:17: warning: no previous prototype for ‘rxbuff_queue_penq’ [-Wmissing-prototypes] 1300 | struct rx_buff *rxbuff_queue_penq(struct rx_frame_queue *pq, struct rx_buff *p) | ^~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_usb.c:158:6: warning: no previous prototype for ‘rwnx_stop_sta_all_queues’ [-Wmissing-prototypes] 158 | void rwnx_stop_sta_all_queues(struct rwnx_sta *sta, struct rwnx_hw *rwnx_hw) | ^~~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_usb.c:168:6: warning: no previous prototype for ‘rwnx_wake_sta_all_queues’ [-Wmissing-prototypes] 168 | void rwnx_wake_sta_all_queues(struct rwnx_sta *sta, struct rwnx_hw *rwnx_hw) | ^~~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_wext_linux.c: In function ‘aicwf_get_iwe_stream_mac_addr’: /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_wext_linux.c:403:25: warning: the comparison will always evaluate as ‘true’ for the address of ‘bssid’ will never be NULL [-Waddress] 403 | if(scan_re->bss && &scan_re->bss->bssid[0]){ | ^~ In file included from /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_defs.h:20, from /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/rwnx_msg_tx.h:16, from /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_wext_linux.c:10: ./include/net/cfg80211.h:2980:12: note: ‘bssid’ declared here 2980 | u8 bssid[ETH_ALEN]; | ^~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_wext_linux.c: At top level: /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_wext_linux.c:717:5: warning: no previous prototype for ‘aic_get_sec_ie’ [-Wmissing-prototypes] 717 | int aic_get_sec_ie(u8 *in_ie, uint in_len, u8 *rsn_ie, u16 *rsn_len, u8 *wpa_ie, u16 *wpa_len) | ^~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_usb.c:1964:6: warning: no previous prototype for ‘aicwf_usb_cancel_all_urbs’ [-Wmissing-prototypes] 1964 | void aicwf_usb_cancel_all_urbs(struct aic_usb_dev *usb_dev){ | ^~~~~~~~~~~~~~~~~~~~~~~~~ /home/igor/aic8800d80-wifi-driver/drivers/aic8800/aic8800_fdrv/aicwf_wext_linux.c:830:4: warning: no previous prototype for ‘aicwf_get_is_wps_ie’ [-Wmissing-prototypes] 830 | u8 aicwf_get_is_wps_ie(u8 *ie_ptr, uint *wps_ielen) | ^~~~~~~~~~~~~~~~~~~ '''
  11. TV Box Name: H96 MAX M9 CPU: RockChip RK3576 Armbian build file name: Unofficial Release Kernel Version: 6.1 (vendor) Distribution Installed (focal, buster, etc): Jammy Working Ethernet (Yes/No): yes Max Ethernet Speed that works (100/1000): 1000 Gigabit Does wifi work (Yes/No): Yes Does bluetooth work (Yes/No): depends on User WorkAround Does HDMI audio work (Yes/No): Yes Additional Comments (provide any additional information you feel is important): No TF-Card Boot and No USB boot all done by Rockchip Hardware flash Mainline development Topic
  12. I have "x96 mini" TV box with seemingly broken eMMC chip (unable to write firmware by USB). S905W SoC. First I've tested if it can boot from SD-card, made with Amlogic Windows utility "Burn Card Maker". The answer is: yes (see the logs below). Second, I've followed the manual. I've copied the file 'u-boot-s905x-s912' to 'u-boot.ext'. I also edited the file 'extlinux.conf', pointing it to 'meson-gxl-s905w-p281.dtb'. The result is in the logs. The question is: how to boot the device from the SD card? Should I use somehow the original's firmware u-boot (as it works with the the factory firmware)? The SD card was made with 'Balena etcher'. Armbian image was build from gitub repo ("Armbian-unofficial_24.11.1_Aml-s9xx-box_bookworm_current_6.6.62_minimal.img").
  13. Hi. I have the official raspberry TV hat https://www.raspberrypi.com/documentation/accessories/tv-hat.html I'm wondering if I can use it on the Orange Pi. https://pinout.xyz/pinout/tv_hat http://www.orangepi.org/orangepiwiki/images/a/ac/Plus5-img302.png
  14. Did someone managed to make it work on this model below? I tried creating the image with different allwinner chips but its not booting when I burn the sd and insert on the device. The tv box is a Mortal T1 Android 13 2gb ram and 16gb rom
  15. Im trying to flash armbian into the eMMC but its not detected, only the SD card. What should i do? Useful info: CPU/Chip/Idk: sun8iw7p1 PCB Model(?): H3 Q44 V4.0 Uname -a: Linux orangepipcplus 6.12.58-current-sunxi #1 SMP Thu Nov 13 20:34:41 UTC 2025 armv7l GNU/Linux dmesg | grep -i mmc [ 0.000000] Kernel command line: root=UUID=cf60c629-17b3-4fb8-91bb-24bd021f8c6b rootwait rootfstype=ext4 splash=verbose console=ttyS0,115200 console=tty1 hdmi.audio=EDID:0 disp.screen0_output_mode=1920x1080p60 consoleblank=0 loglevel=1 ubootpart=def8ba6d-01 ubootsource=mmc usb-storage.quirks=0x2537:0x1066:u,0x2537:0x1068:u sunxi_ve_mem_reserve=0 sunxi_g2d_mem_reserve=0 sunxi_fb_mem_reserve=16 cgroup_enable=memory [ 0.000000] Unknown kernel command line parameters "splash=verbose ubootpart=def8ba6d-01 ubootsource=mmc sunxi_ve_mem_reserve=0 sunxi_g2d_mem_reserve=0 sunxi_fb_mem_reserve=16 cgroup_enable=memory", will be passed to user space. [ 4.995824] sunxi-mmc 1c0f000.mmc: Got CD GPIO [ 5.019105] sunxi-mmc 1c0f000.mmc: initialized, max. request size: 16384 KB [ 5.031030] sunxi-mmc 1c11000.mmc: initialized, max. request size: 16384 KB [ 5.048053] mmc2: Failed to initialize a non-removable card [ 5.063249] mmc0: host does not support reading read-only switch, assuming write-enable [ 5.067129] mmc0: new high speed SDXC card at address aaaa [ 5.071189] mmcblk0: mmc0:aaaa SC64G 59.5 GiB [ 5.080563] mmcblk0: p1 [ 5.316321] ubootsource=mmc [ 7.603641] sunxi-mmc 1c10000.mmc: allocated mmc-pwrseq [ 7.635175] sunxi-mmc 1c10000.mmc: initialized, max. request size: 16384 KB [ 7.687081] mmc1: new high speed SDIO card at address 0001 [ 8.364751] EXT4-fs (mmcblk0p1): mounted filesystem cf60c629-17b3-4fb8-91bb-24bd021f8c6b ro with writeback data mode. Quota mode: none. [ 14.091111] EXT4-fs (mmcblk0p1): re-mounted cf60c629-17b3-4fb8-91bb-24bd021f8c6b r/w. dmesg | grep -i mmc2 [ 5.048053] mmc2: Failed to initialize a non-removable card I also extracted a DTB file and DTS file from the android of the TV box, if that is useful (I used AI for that, and dont really know if they are useful) Thanks. dts.txt
  16. Good day all, After compiling a build for my TV box and burn it to the SD boot process stuck to Begin: Mounting root file system ... Begin: Running /scripts/local-top ... done. Begin: Running /scripts/local-premount ... Scanning for Btrfs filesystems Can someone help please solving the problem?
  17. No need to recompile, rk322x already have had all the right bits in the right place for years. Everything is written down in the first page of the thread for rk332x tv boxes (What works: ---> Hardware video acceleration) in the hope people read it.
  18. I did a new build this time removind BTRfs from kernel but I still get stucked on ... Begin: Running /scripts/local-premount ... Scanning for Btrfs filesystems I dont see how can I remove that FS since I never use it in my TV Box?
  19. Just answer it... Will i have malware if i installed it on my tv box H96 max RK3528 4gb ram 64gb rom
  20. Hi, I have a TV box with an RK322x chip. I want to use FFmpeg and process video using FFmpeg hardware decoding. Please tell me: do I need to recompile the system/distro build, or does it work out of the box right now? If not, which distribution is better to choose? Please tell me.
  21. Something went wrong while writing Armbian_community_26.2.0-trunk.7_Aml-s9xx-box_noble_current_6.12.58_cinnamon_desktop.img.xz to Mass Storage Device (armbi_boot, armbi_root) (/dev/sdb) When I made a boot with Balena Etecher, it turned out there was an error. Something went wrong while writing Armbian_community_26.2.0-trunk.7_Aml-s9xx-box_noble_current_6.12.58_cinnamon_desktop.img.xz to Mass Storage Device (armbi_boot, armbi_root) (/dev/sdb) I downloaded it from the link provided at https://www.armbian.com/amlogic-s9xx-tv-box/ The file I used was Ubuntu 24.04 (Noble) Cinnamon. When I finished flashing, Balena couldn't verify the memory card and displayed an error. Something went wrong while writing Armbian_community_26.2.0-trunk.7_Aml-s9xx-box_noble_current_6.12.58_cinnamon_desktop.img.xz to Mass Storage Device (armbi_boot, armbi_root) (/dev/sdb)
  22. Author: @WINEDS How to Build Armbian with Maxio Ethernet Support for H96 V56 (2025 Model) If you own the H96 V56 (2025 model) TV box and want to run Armbian with full Gigabit Ethernet support, you might have noticed that the stock kernel doesn't always support the Maxio Ethernet chip out of the box. In this guide, we’ll walk through the most accessible method to build a custom Armbian image with the necessary kernel modules using Windows Subsystem for Linux (WSL). Refer to https://docs.armbian.com/Developer-Guide_Build-Preparation/ and note hardware requirements then in a Windows Powershell console select Ubuntu (using down arrow in title bar) and type to update the system: sudo apt update sudo apt upgrade Prerequisites A Windows PC with WSL (Ubuntu) installed. The specific patch file (my_v2_patch.patch) and DTB file (my_board_df.dtb) mentioned in the documentation. Patience (the build process can take a few hours). Step 1: Prepare Your Environment First, ensure your WSL instance has enough resources. Go to your WSL settings (typically via a .wslconfig file or the settings menu) and allocate about 75% of your CPU cores and RAM to ensure the build doesn't crash. Open your Ubuntu terminal in Windows PowerShell and update your system: sudo apt update sudo apt upgrade Step 2: Get the Armbian Build System Clone the official Armbian build repository and enter the directory: git clone [https://github.com/armbian/build](https://github.com/armbian/build) cd build Step 3: Apply the Kernel Patch You need to patch the kernel to support the specific hardware. Create the directory tree for the patch: mkdir -p ./userpatches/kernel/archive/rockchip64-6.12 Using Windows File Explorer, copy your my_v2_patch.patch file into this newly created directory (rockchip64-6.12). Step 4: Run the Build Command Now, kick off the compilation process. We will build a Gnome desktop image based on the Noble release. Run the following command (copy and paste this as one line): ./compile.sh build BOARD=h96-tvbox-3566 BRANCH=current BUILD_DESKTOP=yes BUILD_MINIMAL=no DESKTOP_APPGROUPS_SELECTED=browsers DESKTOP_ENVIRONMENT=gnome DESKTOP_ENVIRONMENT_CONFIG_NAME=config_base KERNEL_CONFIGURE=yes RELEASE=noble Step 5: Configure the Kernel (Crucial Step) After the build runs for a while, the blue Kernel Configuration menu will appear. This is where you enable the Ethernet driver. Use the arrow keys to navigate to Device Drivers. Select Network device support. Select PHY Device support and Infrastructure. Scroll down to find MAXIO PHYs. Press the Space bar until you see an <M> next to it (this modularizes the feature). Once selected, use the Tab key to select Exit and keep selecting Exit until you leave the configuration menu. Select "Yes" when asked to save the kernel configuration. Step 6: Retrieve Your Image The build will continue (potentially for a few hours). Once finished, your new image file will be located in: output/images Step 7: Post-Installation Setup Flash the image to your SD card/eMMC and boot the device. To get the Ethernet working, you need to update the Device Tree Blob (DTB). Copy the file my_board_df.dtb to /boot/dtb/rockchip/ on the device. Edit the boot environment file: sudo nano /boot/armbianEnv.txt Change the fdtfile line to point to your new DTB: fdtfile=rockchip/my_board_df.dtb Press Ctrl+X, then Y to save. Reboot your H96 V56, and you should now enjoy full Gigabit Ethernet speeds! my_board_df.dtb
  23. Hello everybody, I am new at linux have ubuntu running on n old windows laptop now I found a new use for my old TVBOX i have lying around I need some help logging in to my tv box it is a T95ZPlus with a 912 soc I am booting Armbian_community_25.11.0-trunk.519_Aml-s9xx-box_plucky_edge_6.18.0-rc6_xfce_desktop.img.xz I copy u-boot-s905x2-s912 to u-boot.ext My extlinux.conf looks like this label Armbian_community kernel /Image initrd /uInitrd fdt /dtb/amlogic/meson-gxm-t95z-plus.dtb append root=UUID=8ba6ae05-2bb2-4d2c-bba6-ce6cd91ed2cb rootflags=data=writeback console=ttyAML0,115200n8 console=tty0 rw no_console_suspend consoleblank=0 fsck.fix=yes fsck.repair=yes net.ifnames=0 The system runs but after booting Armbian_community 25.11.0-trunk.519 plucky tty1 it gives me this prompt aml-s9xx-box loging the tutorial tells Basic OS configuration is conducted at first boot. You are asked to set a root password, normal user But my system asked for a login so i am stuck I hope someone have had this problem and can give a solution Greetings Ducdreamer
  24. Is there a tutorial that someone could share with me?
  25. Preexisting builds of Armbian won't run on my X96Q TV box because mine uses DDR3 instead of LPDDR3. U-Boot SPL 2024.01_armbian-2024.01-S866c-P4a40-H8869-Vad24-Bbf55-R448a (Nov 15 2025 - 02:36:36 +0000) This DRAM setup is currently not supported. How do I change the DRAM (and possibly other) configuration U-Boot is built with? I'll be quite frank: Quite annoyed by this whole process. The build process for both Armbian and U-Boot has exhausted my patience and I'm very much not in the mood for digging through (often hard to find) documentation. (Like why is there no standard for adding a board?) Here's the UART boot log of the device:x96q_boot_log.cap Oh and I almost forgot! The stock firmware! https://archive.org/details/x96q_h313_mmcblk0.img.7z Something about extracting "device trees" or something? Honestly I couldn't locate the copy of u-boot in there, but I'm probably doing something wrong there. I'm sure someone WAY smarter then me in this stuff could probably figure it out.
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines