-
Posts
356 -
Joined
-
Last visited
Content Type
Forums
Store
Crowdfunding
Applications
Events
Raffles
Community Map
Everything posted by Nick A
-
Here are the Allwinner BSP kernel drivers if you want to dive deep into the rabbit hole. git clone https://github.com/AvaotaSBC/linux.git --depth=1 Have you tried a newer version of bluez? https://packages.debian.org/search?arch=arm64&keywords=bluez https://github.com/bluez/bluez/tree/master https://github.com/bluez/bluez/blob/bd7d49d54aa3aa490ebdd67b3dd2317d29213d45/monitor/bt.h#L1488 #define BT_HCI_CMD_WRITE_EXT_INQUIRY_RESPONSE 0x0c52 struct bt_hci_cmd_write_ext_inquiry_response { uint8_t fec; uint8_t data[240]; } __attribute__ ((packed)); https://github.com/bluez/bluez/blob/bd7d49d54aa3aa490ebdd67b3dd2317d29213d45/monitor/bt.h#L1271C1-L1274C28 #define BT_HCI_CMD_WRITE_CLASS_OF_DEV 0x0c24 struct bt_hci_cmd_write_class_of_dev { uint8_t dev_class[3]; } __attribute__ ((packed)); https://github.com/bluez/bluez/blob/bd7d49d54aa3aa490ebdd67b3dd2317d29213d45/monitor/packet.c#L5920 static void write_ext_inquiry_response_cmd(const void *data, uint8_t size) { const struct bt_hci_cmd_write_ext_inquiry_response *cmd = data; print_fec(cmd->fec); print_eir(cmd->data, sizeof(cmd->data), false); } https://kernel.googlesource.com/pub/scm/bluetooth/bluez/+/5.7/monitor/packet.c#4070 { 0x0c52, 137, "Write Extended Inquiry Response", write_ext_inquiry_response_cmd, 241, true, status_rsp, 1, true }, https://github.com/bluez/bluez/blob/bd7d49d54aa3aa490ebdd67b3dd2317d29213d45/monitor/packet.c#L5565 static void write_class_of_dev_cmd(uint16_t index, const void *data, uint8_t size) { const struct bt_hci_cmd_write_class_of_dev *cmd = data; print_dev_class(cmd->dev_class); } https://kernel.googlesource.com/pub/scm/bluetooth/bluez/+/5.7/monitor/packet.c#4015 { 0x0c24, 73, "Write Class of Device", write_class_of_dev_cmd, 3, true, status_rsp, 1, true }, You can ask the bluez developers for help. https://github.com/bluez/bluez/issues
-
Try the firmware from here. https://forums.linuxmint.com/viewtopic.php?p=1994357#p1994357
-
I think you used the wifi firmware from LibreElec. But the bluetooth firmware "BCM4334B0.hcd" was already existing in the Armbian firmware folder. The Armbian firmware might be different than LibreElec's version. Worth a try. I'm not sure if the sdio.txt file has bluetooth configuration settings in it. We can play with some of these settings.
-
Maybe you'll have better luck with these. https://github.com/LibreELEC/brcmfmac_sdio-firmware
-
You need these three files: bcm4334.hcd (bluetooth) fw_bcm4334b1_ag.bin (wifi .bin) nvram_ap6334.txt (wifi .txt)
-
I forget exactly where the firmware is... I think it's in /vendor/etc/firmware. Search your android partitions for a file called BCM4334B0.hcd. You can also try your original android wifi firmware too. You can use the X-plorer app. My box comes with it.
-
firepower.. I don't even see a HCI interface detected at all. Maybe your dts needs some work. MMorales your dmesg looks like a firmware issue.. extract the firmware from your original android.
-
Looking at the patch again... I don't think adding cooling will solve the issue. Also the H616 dtsi already has "#cooling-cells = <2>;". https://lore.kernel.org/linux-arm-kernel/20230821-ths-h616-v2-0-cda60d556798@somainline.org/T/ Right now I'm using the 6.10.10 kernel. I'll update to 6.10.14 and make a new kernel config. Your board is using an external crystal for it's clock. Can I see your dmesg log? Maybe you just need bluetooth firmware.
-
I guess the thermal patches where mainlined for kernel 6.10. Maybe it still needs the 6.9 patch? Or something is missing in the kernel config? Kernel 6.7. https://github.com/NickAlilovic/build/blob/main/patch/kernel/archive/sunxi-6.7/patches.armbian/arm64-dts-allwinner-h616-Add-thermal-sensor-and-thermal-zones.patch https://github.com/NickAlilovic/build/blob/main/patch/kernel/archive/sunxi-6.7/patches.armbian/arm64-dts-allwinner-h616-Fix-thermal-zones-missing-trips.patch Kernel 6.9 (Missing Trips and most of the DT thermal settings were added to 6.9 mainline kernel.) https://github.com/NickAlilovic/build/blob/v20240909/patch/kernel/archive/sunxi-6.9/patches.armbian/arm64-dts-allwinner-h616-Add-thermal-sensor-and-thermal-zones.patch Bluetooth still has issues. The bluetooth interface randomly changes from hci0 to hci1. At first there was a problem with the Internal 32Khz OSC Clock. By enabling the Internal OSC Clock Auto Calibration Register we got a 32Khz needed to detect Bluetooth. But there's something missing. Right now it works when it feels like it. Usually when I enable Bluetooth using Android then reboot to Armbian It works. Can someone with a Transpeed 8k618-t measure the 32KHz clock with a Oscilloscope? The 32Khz fanout is routed to PG10 pin on the SOC and connected to the LPO pin of the WiFi/BT chip. Depending on your wifi chip you might be missing the BT firmware. I have a 4335 chip so I use BCM4335A0.hcd. You can find the original firmware on your android partition if you still have it or search around online.
-
My 6.10 kernel needs more work. The patches for Ethernet is broken. I think the hdmi works on my box tho. I would stick with 6.9 for now.
-
Yes, sorry I forgot to mention that your patch needs to be applied last. So you need to change the name of the patch. If all the sunxi u-boot patches had a prefix in front it. It would help alot. We don't have this problem with kernel patches because the build system uses series.armbian and series.conf for the patch execution order.
-
You can't use your android dts. It needs to be converted to mainline linux. But you can use some of the information. For example these are the gpio settings for wifi. Android: wlan_regon = <0x53 0x06 0x12 0x01 0xffffffff 0xffffffff 0x00>; Linux: gpio = <&pio 6 18 GPIO_ACTIVE_HIGH>; /* PG18 WL_REG_ON */ Android: wlan_hostwake = <0x53 0x06 0x0f 0x06 0xffffffff 0xffffffff 0x00>; Linux: interrupts = <6 15 IRQ_TYPE_EDGE_RISING>; /* PG15 WL_HOSTWAKE*/ https://www.rapidtables.com/convert/number/hex-to-binary.html https://github.com/warpme/minimyth2/blob/master/script/kernel/linux-6.10/files/0644-arm64-dts-allwinner-h313-add-x96q-TVbox.patch I think your problem is the wifi driver. SV6256P uses the ssv6x5x driver. Only source I can find is for linux 4.4 kernel. https://github.com/paolosabatino/ssv6x5x/tree/master
-
MMorales which image boots on your box? Can you post the error message?
-
The reason I suggested "sudo git format-patch -1 v2024.01" was because I can only generate kernel patches this way. It use to work before but branch names changed from "linux-6.7.y" to "kernel-sunxi64-6.7". sudo git format-patch linux-6.7.y use to work sudo git format-patch kernel-sunxi64-6.7 Does not work sudo git format-patch -1 kernel-sunxi64-6.7 works -<n> Prepare patches from the topmost <n> commits.
-
Maybe it's a bad HDMI cable?
-
I think for openvfd LED to work you need these lines in your dts. You probably have to modify it with the correct GPIO settings for your box. You can find it in the android dts. I haven't tested this yet. https://github.com/warpme/minimyth2/blob/master/script/kernel/linux-6.10/files/0568-arm64-dts-allwinner-tanix-tx6-enable-wifi-cpu-dvfs.patch + openvfd { + compatible = "open,vfd"; + dev_name = "openvfd"; + openvfd_gpio_clk = <&pio 3 25 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>; /* PD25 */ + openvfd_gpio_dat = <&pio 3 26 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>; /* PD26 */ + vfd_gpio_chip_name = "300b000.pinctrl"; + openvfd_chars = [02 04 03 02 01]; + openvfd_dot_bits = [00 01 03 02 04 05 06]; + openvfd_display_type = <0x03000001>; + status = "okay"; + }; Driver patches and service init script. https://github.com/warpme/minimyth2/tree/master/script/kernel/openvfd More info found in CoreELEC https://discourse.coreelec.org/t/how-to-configure-vfd/427/43?page=3 vfd-configurations ( looking at these configurations you can set gpio here. I'll look more into it when I have time off.) https://github.com/arthur-liberman/vfd-configurations
-
I ran the commands above and the only changes I made was the build directory name. On sicXnull repository it's called "armbian-build" instead of "build". From 2af52d684c05cdd7eef9123baa7a1157507b03a2 Mon Sep 17 00:00:00 2001 From: Nick Alilovic <nickalilovic@gmail.com> Date: Mon, 23 Sep 2024 09:37:45 -0400 Subject: [PATCH 2/2] configs: x96q lpddr3: Add SECURE BOOT Add SECURE BOOT Signed-off-by: Nick Alilovic <nickalilovic@gmail.com> --- configs/x96q_lpddr3_defconfig | 1 + root_key.pem | 28 ++++++++++++++++++++++++++++ 2 files changed, 29 insertions(+) create mode 100644 root_key.pem diff --git a/configs/x96q_lpddr3_defconfig b/configs/x96q_lpddr3_defconfig index 764e77dac1..828f59a9b7 100644 --- a/configs/x96q_lpddr3_defconfig +++ b/configs/x96q_lpddr3_defconfig @@ -17,6 +17,7 @@ CONFIG_MACH_SUN50I_H616=y CONFIG_R_I2C_ENABLE=y CONFIG_SPL_I2C=y CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_IMAGE_TYPE_SUNXI_TOC0=y CONFIG_SPL_SYS_I2C_LEGACY=y CONFIG_SYS_I2C_MVTWSI=y CONFIG_SYS_I2C_SLAVE=0x7f diff --git a/root_key.pem b/root_key.pem new file mode 100644 index 0000000000..cfffdbf247 --- /dev/null +++ b/root_key.pem @@ -0,0 +1,28 @@ +-----BEGIN PRIVATE KEY----- +MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQC4N+7DvqP4cmLP +1u9L8dQ1fVtzXxwzt6Qrn0JEMyHtQm2ZSwxOrAjyPKt9UTfEz3G5K7v7wBLzxS+n +KQWtrcwiFfAPrFK5wyEQU/z/ltfUBg4NCagvgngb38AGwdgAPZ9+Wl3cueB6XxpJ +etVlLUQtiaqGb92CyUDqZsbrNaBOOcxUxNEkAtxOHzriDC9PKRi780ntXWjp+R5Z +loDQ0SyxjnhGBPNAhEAkEHXCLhTg82JHm4tNEVi/esXfMwQRm6x/eb/p55zd/ULU +RXdxxS0j7/DPhRpync6mYJzLl7bDRrNA9DnyyC2kgWWkJ9F/QNMl3HqHTgClehTZ +MfO1tCM5AgMBAAECggEAAn6CJsCRUSFWHq6wF8OYupeBK/U6/ojDRmRP59TlyYsB +oi28fIwH/ev1ASne1L+txZ8k85qYp/uUVGjaynrng8roN8OpiZKGo14qMArf6x9S +eb2hjPfmX++vAT6jcOpkrOmDAFnf+IGDbytWPGTTxGoD5upf2PjYHnqPZQyrHY// +yAIpYtS9zjRx44iVN8olwwXXTDVe7yigAkrYvu0f4AUUv4azv68eYWXUXDN1YaWE +gtwjSOCnhuwHTJTyz6Vi40ju32zxq7rTbe09NV7LcU6CmJBy8GDv2KsNfwk+OwsI +gvz31jZ1jwyLZEGAxL/ibA0ldSAsjG3Akgw8jqG1cQKBgQDunDFVljn2uWVoBwip +QJveKIGNgVnJ6YF630JGMP4X20rkh7/9lyBJQUixlc6Z3qUcCfyKi8EJkPMLs1u+ +QSmmKnsInqp8ZkCPG0g4FZNgHkC+fIfmgO+gVNxyh+MXZNsvVVH6NtpRIfLSXeCl +aTWv4d8rIU5Tl9hDY2UhGQ7CaQKBgQDFpPEeS5hdIaqnZaJ50/V/gzrkENAFWZuP +zYqhS4RcD6dogAByjQvvNByIn5avrPz6N75qsZl5VY0TtaYe6hHehDOwKHM7CFZe +FSjSTdgi7b5jL11///9W5Eztn7L1ckZo93j2ZYLl9+PuXGAY4SRcYYOQjBBmOwmj +Qpryy2+gUQKBgCY4uuZc1BgjhoztY4PJJ66kimwiZkGjt+v4y2L3AhzMMej9ndF/ +XdqeLIjV2Gxpb8VYDC4dSOTBZU1gg7esNIG7mE2/LMwUjQ7fbegd/KeO8QwSYqqX +yMrEDTQDdGsQ6tNgNWuBUeNhLsZn505X1hPAeMEt6qAVWL0itNZibyzRAoGBALD6 +8wKa1LPImuTM6MHI4FOvckOZHn078UXC2zl1wu8hAVpdDImG7cHj2w0oQqnK8Lkq +w3MM145D4lFc3oVeOmQT46kBf7XD0Hrs3aH8HOeiFlMArewZk07+njhGQdzx2ETU +HVgeLCm7YTonM9HzgTjMBSChm2m/wfCUiuWQ78MRAoGAWAElZCjb8Dxp9z8KJ0JX +Z3d2yueOgxf3J6X+7XMW7Yv9uFOvYNI/BNT3Ii3P+u6SJpKXuQgBoDT/2FP/f8m6 +U1dMu7PHcBi3MA1IvGi6NSC+cVcIy0yYi2vYsW6lkOsDwr+HrDQWte3HjiXcIy+g +f9CFoVb4L1ILI/SBaZSV8LQ= +-----END PRIVATE KEY----- -- 2.34.1 configs-x96q-lpddr3-Add-SECURE-BOOT.patch
-
Here's a step by step instructions to compile and create your own image. Make sure you "ctrl c" after the kernel patches are applied. The build erases the cached kernel source when completed. You want the patches applied before you stop the build. First link are the files I usually edit. Second link is how to make a patch and build your own image.
-
Run these commands again. sudo git status sudo git add configs/x96q_lpddr3_defconfig sudo git add root_key.pem sudo git commit --signoff (Remember the first line patch title and the second line patch description.) sudo git format-patch v2024.01 maybe you didn’t commit the patch? Git commit usually opens up a text editor. When you run "sudo git status" and the output still shows "modified: configs/x96q_lpddr3_defconfig" then you haven't commit the changes yet. your patch should look similar to mine.
-
Try this command with -1 after format-patch sudo git format-patch -1 v2024.01
-
Vontar H618 and Tanix TXs6 H616 are supported by miniarch and armbian. There are 3 different tanix_tx6s boards. Not sure which version is supported by armbian. But you shouldn't have trouble porting over the other boards to armbian. https://github.com/warpme/minimyth2/tree/master/script/bootloaders board-h616.tanix_tx6s board-h616.tanix_tx6s_axp313 board-h616.tanix_tx6s_lpddr3 Vontar is almost exactly the same as transpeed 8K618. I think the wifi chip is the only difference. https://github.com/warpme/minimyth2/blob/master/script/kernel/linux-6.10/files/0642-arm64-dts-allwinner-h616-add-Tanix-TX6s-TVbox.patch https://github.com/warpme/minimyth2/blob/master/script/kernel/linux-6.10/files/0647-arm64-dts-allwinner-h618-add-vontar-h618-TVbox.patch I haven't had time to play with the LED yet.
-
You can clone the original armbian build (git clone https://github.com/armbian/build.git), sicXnull build (git clone https://github.com/sicXnull/armbian-build.git --branch X96Q-TVBOX-LPDDR3 --single-branch) or my build (git clone https://github.com/NickAlilovic/build.git --branch v20240918) SicXnull has the latest fixes for X96Q LPDDR3. If you want to use the 6.10 kernel with hdmi support I can modify the X96Q config on my build to include both current and edge kernels. git clone https://github.com/sicXnull/armbian-build.git --branch X96Q-TVBOX-LPDDR3 --single-branch cd armbian-build ./compile.sh In the choose board menu click on "Show CSC/WIP/EOS/TVB" option then choose "x96q". Choose "current", "bookworm", server or desktop doesn't matter. Any desktop environment. Any software. (After the u-boot patches are applied and u-boot starts to build) ctrl C Create patches for u-boot: cd cache/sources/u-boot-worktree/u-boot/v2024.01 sudo git add . (For the first line patch title you can put "test" and the second line patch description put "test". Doesn't matter right now.) sudo git commit --signoff sudo pico configs/x96q_lpddr3_defconfig Add this line to your defconfig. CONFIG_SPL_IMAGE_TYPE_SUNXI_TOC0=y sudo openssl genrsa -out root_key.pem sudo git status sudo git add configs/x96q_lpddr3_defconfig sudo git add root_key.pem sudo git commit --signoff (Remember the first line patch title and the second line patch description.) sudo git format-patch v2024.01 Copy the patch to this armbian build directory. ~/build/patch/u-boot/u-boot-sunxi/ ./compile.sh Your new image should be in output/images directory.
-
Allwinner h618 (and maybe h626/h313) has an issue reading emmc during boot. The code is noway perfect. The read and write speeds go back to normal when the kernel is loaded. I guess we can add code to prevent other SOC’s from loading the code if not needed.
-
Can post your nand chip... maybe we can figure out the problem.
-
Do you have any info on what the problem might be?