Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision Next revisionBoth sides next revision | ||
| inbox:toh:tp-link:x80-5g_v1 [2024/04/23 23:49] – [Info] professor_jonny | inbox:toh:tp-link:x80-5g_v1 [2024/08/13 00:34] – [Installing OpenWrt factory.ubi part 2 of 2] professor_jonny | ||
|---|---|---|---|
| Line 13: | Line 13: | ||
| * VoLTE/VoIP POTS telephony Support. | * VoLTE/VoIP POTS telephony Support. | ||
| * Based on the Qualcomm IPQ8074A SoC, AP-HK01-C1 reference design. | * Based on the Qualcomm IPQ8074A SoC, AP-HK01-C1 reference design. | ||
| - | * 5G mm wave Modem based on the Snapdragon | + | * 5G mm wave Modem based on the Snapdragon |
| - | * Dual firmware with HTTP based recovery. | + | * Dual firmware with U-boot |
| Line 48: | Line 48: | ||
| * OpenWrt forum thread: (https:// | * OpenWrt forum thread: (https:// | ||
| + | * WIP Private Git hub branch: (https:// | ||
| + | |||
| + | |||
| + | |||
| - | /*** | ||
| ===== Experimental firmware ===== | ===== Experimental firmware ===== | ||
| - | //List experimental firmware download links here.// | ||
| - | //None at this time.// | + | * Initramfs Test Image: (https://github.com/professor-jonny/images/ |
| + | * factory | ||
| - | * External image (add link) | ||
| - | * trunk image (add link) | ||
| - | * ... | ||
| - | ***/ | ||
| ===== Hardware highlights ===== | ===== Hardware highlights ===== | ||
| ^ CPU ^ Ram (DDR3) | ^ CPU ^ Ram (DDR3) | ||
| - | | IPQ8074A @2.2ghz | + | | IPQ8074A @2.2ghz |
| - | /*** if info available: uncomment and fill in | ||
| ===== Installation ===== | ===== Installation ===== | ||
| - → [[: | - → [[: | ||
| Line 73: | Line 73: | ||
| - → [[: | - → [[: | ||
| - | ==== Installing | + | ==== Installing |
| - | ***/ | + | |
| + | |||
| + | - Download and copy the initramfs image to your PC's TFTP server folder. | ||
| + | - connect up your serial port and set up a connection with a terminal program such as SmarTTY | ||
| + | - Plug the router into your computer using an ethernet cable | ||
| + | - set your pc's IP address to the below settings: | ||
| + | - static 192.168.1.2. | ||
| + | - power the router and quickly type the magic string " | ||
| + | - in the shell set the environment variables to enable tftpbooting | ||
| + | - setenv ipaddr 192.168.1.1 | ||
| + | - setenv serverip 192.168.1.2 | ||
| + | - In the shell run the below command to initiate the image transfer: | ||
| + | - this will load your image to memory as location 044000000 in ram | ||
| + | - tftpboot 0x44000000 192.168.1.2: | ||
| + | - your image will now upload to your ram ready to boot. | ||
| + | - run (bootm) and your image will now load. | ||
| + | |||
| + | ==== Installing OpenWrt factory.ubi part 2 of 2 ==== | ||
| + | - Download a copy of the factory.ubi to your pc | ||
| + | - set up a ssh/scp session to your router with a program such as SmarTTY. | ||
| + | - upload the factory.ubi to /tmp on your router | ||
| + | - in the console run the below command: | ||
| + | - ubiformat /dev/mtd12 -y -f / | ||
| + | - wait for it to complete and reboot your router. | ||
| Line 154: | Line 177: | ||
| ===== Hardware ===== | ===== Hardware ===== | ||
| ==== Info ==== | ==== Info ==== | ||
| - | ^ Architecture | + | ^ Architecture |
| - | ^ Vendor | + | ^ Vendor |
| - | ^ Bootloader | + | ^ Bootloader |
| - | ^ System-On-Chip | + | ^ System-On-Chip |
| - | ^ CPU/ | + | ^ CPU/ |
| - | ^ Flash-Chip | + | ^ Flash-Chip |
| - | ^ Flash MB | 128MB (1Gbit) | + | ^ Flash MB | 128MB (1Gbit) |
| - | ^ RAM-chip | + | ^ RAM-chip |
| - | ^ RAM MB | 512MB (4Gbit) | + | ^ RAM MB | 512MB (4Gbit) |
| - | ^ WLan System-On-Chip (5g) | Qualcomm QCN5054 | + | ^ WLan System-On-Chip (5g) | Qualcomm QCN5054 |
| - | ^ WLan Front end modules (5g) | 8* Qorvo QPF4588 | + | ^ WLan Front end modules (5g) | 8* Qorvo QPF4588 |
| - | ^ WLAN (5G) | A/ | + | ^ WLAN (5G) | A/ |
| - | ^ WLAN Antenna (int) | 8 (4 shared with 2.5G) | + | ^ WLAN Antenna (int) | 8* (4 shared with 2.5G) | |
| - | ^ WLan System-On-Chip (2.4G) | + | ^ WLan System-On-Chip (2.4G) |
| - | ^ WLan Front end modules (2.4G) | 4* Skyworks SKY85340-11 | + | ^ WLan Front end modules (2.4G) | 4* Skyworks SKY85340-11 |
| - | ^ WLAN (2.4G) | + | ^ WLAN (2.4G) |
| - | ^ WLAN Antenna (int) | 4* (shared with 5g) | | + | ^ WLAN Antenna (int) | 4* (shared with 5g) | |
| - | ^ Eithernet-phy (1Gbit) | + | ^ Eithernet-phy (1Gbit) |
| - | ^ Ethernet (1Gbit) | + | ^ Ethernet (1Gbit) |
| - | ^ Eithernet-phy (2.5Gbit) | + | ^ Eithernet-phy (2.5Gbit) |
| - | ^ Ethernet (2.5Gbit) | + | ^ Ethernet (2.5Gbit) |
| - | ^ Switch | + | ^ Switch |
| - | ^ Serial | + | ^ Serial |
| - | ^ Modem System-On-Chip | + | ^ Modem System-On-Chip |
| - | ^ 5G modem capability | + | ^ 5G modem capability |
| - | ^ 5G modem bands | N1/ | + | ^ 5G modem bands | N1/ |
| - | ^ 4G modem capability | + | ^ 4G modem capability |
| - | ^ 4G modem FDD bands | B1/ | + | ^ 4G modem FDD bands | B1/ |
| - | ^ 4G modem TDD bands | B34/ | + | ^ 4G modem TDD bands | B34/ |
| - | ^ Modem antenna (int) | 8* (5G/4G use) | + | ^ Modem antenna (int) | 8* (5G/4G use) |
| - | ^ Modem antenna (ext) | 2* SMA connectors (5G/4G use) | | + | ^ Modem antenna (ext) | 2* SMA connectors (5G/4G use) | |
| - | ^ SIM type | 1* Nano SIM | + | ^ SIM type | 1* Nano SIM | |
| - | ^ Telephony | + | ^ Telephony |
| ==== Flash Layout ==== | ==== Flash Layout ==== | ||
| < | < | ||
| Line 265: | Line 288: | ||
| {{: | {{: | ||
| - | Green is Ground (tp3) | + | Green is Ground (TP3) |
| - | Yellow is RX (tp2) | + | Yellow is RX (TP2) |
| - | Orange is TX (tp1) | + | Orange is TX (TP1) |
| < | < | ||
| - | R (~10k Ohms) | + | R (~5k Ohms) |
| - | / | + | / |
| ----------- | ----------- | ||
| - | |TP2|-- RX --------+----------- TX ----| | --> to PC (minicom, screen, C-Kermit, ...) | + | |TP2|---RX----ora--+----------- TX-----| | --> to PC (minicom, screen, C-Kermit, |
| - | |TP1|-- TX -------------------- RX ----| | | + | |TP1|---TX----yel-------------- |
| - | |TP3|-- | + | |TP3|---GND---gre-------------- GND----| |
| ----------- | ----------- | ||
| </ | </ | ||
| Line 281: | Line 304: | ||
| </ | </ | ||
| - | ^ Serial connection parameters\\ for TP-Link X80-5G V1 | 115200, 8N1, 1.8V | | + | ^ Serial connection parameters\\ for TP-Link X80-5G V1 | 115200, 8N1, 1.8V |
| + | ^ Uboot Magic string\\ (password) | tpl (enter) | ||
| ==== JTAG ==== | ==== JTAG ==== | ||
| Line 2476: | Line 2500: | ||
| ==== OpenWrt bootlog ==== | ==== OpenWrt bootlog ==== | ||
| <WRAP bootlog> | <WRAP bootlog> | ||
| - | < | + | < |
| + | Format: Log Type - Time(microsec) - Message - Optional Info | ||
| + | Log Type: B - Since Boot(Power On Reset), | ||
| + | S - QC_IMAGE_VERSION_STRING=BOOT.BF.3.3.1-00158 | ||
| + | S - IMAGE_VARIANT_STRING=HAACANAZA | ||
| + | S - OEM_IMAGE_VERSION_STRING=CRM | ||
| + | S - Boot Config, 0x000002e5 | ||
| + | B - 201 - PBL, Start | ||
| + | B - 2736 - bootable_media_detect_entry, | ||
| + | B - 3443 - bootable_media_detect_success, | ||
| + | B - 3448 - elf_loader_entry, | ||
| + | B - 6114 - auth_hash_seg_entry, | ||
| + | B - 6357 - auth_hash_seg_exit, | ||
| + | B - 68340 - elf_segs_hash_verify_entry, | ||
| + | B - 131183 - PBL, End | ||
| + | B - 217617 - SBL1, Start | ||
| + | B - 296917 - GCC [RstStat: | ||
| + | B - 306799 - pm_device_init, | ||
| + | B - 489891 - PM_SET_VAL: | ||
| + | D - 181170 - pm_device_init, | ||
| + | B - 492300 - pm_driver_init, | ||
| + | D - 5368 - pm_driver_init, | ||
| + | B - 498675 - clock_init, Start | ||
| + | D - 2135 - clock_init, Delta | ||
| + | B - 502609 - boot_flash_init, | ||
| + | D - 12566 - boot_flash_init, | ||
| + | B - 518957 - boot_config_data_table_init, | ||
| + | D - 3111 - boot_config_data_table_init, | ||
| + | B - 526460 - Boot Setting : 0x00000618 | ||
| + | B - 530364 - CDT version: | ||
| + | type:0 | ||
| + | B - 537288 - sbl1_ddr_set_params, | ||
| + | B - 541100 - CPR configuration: | ||
| + | B - 544455 - cpr_init, Start | ||
| + | B - 547353 - Rail:0 Mode: 5 Voltage: 792000 | ||
| + | B - 552446 - CL CPR settled at 744000mV | ||
| + | B - 555283 - Rail:1 Mode: 5 Voltage: 880000 | ||
| + | B - 559553 - Rail:1 Mode: 7 Voltage: 888000 | ||
| + | D - 16531 - cpr_init, Delta | ||
| + | B - 566354 - Pre_DDR_clock_init, | ||
| + | B - 570472 - Pre_DDR_clock_init, | ||
| + | B - 573766 - DDR Type : PCDDR3 | ||
| + | B - 579500 - do ddr sanity test, Start | ||
| + | D - 1067 - do ddr sanity test, Delta | ||
| + | B - 584258 - DDR: Start of HAL DDR Boot Training | ||
| + | B - 588985 - DDR: End of HAL DDR Boot Training | ||
| + | B - 594689 - DDR: Checksum to be stored on flash is 1377291785 | ||
| + | B - 604998 - Image Load, Start | ||
| + | D - 224358 - QSEE Image Loaded, Delta - (1376448 Bytes) | ||
| + | B - 829447 - Image Load, Start | ||
| + | D - 61 - SEC Image Loaded, Delta - (0 Bytes) | ||
| + | B - 837133 - Image Load, Start | ||
| + | D - 10706 - DEVCFG Image Loaded, Delta - (26008 Bytes) | ||
| + | B - 847930 - Image Load, Start | ||
| + | D - 22021 - RPM Image Loaded, Delta - (86584 Bytes) | ||
| + | B - 870043 - Image Load, Start | ||
| + | D - 108915 - APPSBL Image Loaded, Delta - (672668 Bytes) | ||
| + | B - 979111 - QSEE Execution, Start | ||
| + | D - 91 - QSEE Execution, Delta | ||
| + | B - 984906 - USB D+ check, Start | ||
| + | D - 0 - USB D+ check, Delta | ||
| + | B - 991280 - SBL1, End | ||
| + | D - 775981 - SBL1, Delta | ||
| + | S - Flash Throughput, 6744 KB/s (2162955 Bytes, | ||
| + | S - DDR Frequency, 466 MHz | ||
| + | S - Core 0 Frequency, 1651 MHz | ||
| + | |||
| + | |||
| + | U-Boot 2016.01 (Feb 25 2021 - 20:16:45 +0800) | ||
| + | |||
| + | DRAM: smem ram ptable found: ver: 1 len: 4 | ||
| + | 1 GiB | ||
| + | NAND: Could not find nand_gpio in dts, using defaults | ||
| + | ONFI device found | ||
| + | ID = 158061c8 | ||
| + | Vendor = c8 | ||
| + | Device = 61 | ||
| + | SF: Unsupported flash IDs: manuf 00, jedec 1c78, ext_jedec 4a74 | ||
| + | ipq_spi: SPI Flash not found (bus/ | ||
| + | 128 MiB | ||
| + | MMC: < | ||
| + | PCI0 is not defined in the device tree | ||
| + | PCI1 is not defined in the device tree | ||
| + | In: serial@78B3000 | ||
| + | Out: | ||
| + | Err: | ||
| + | machid: 8010400 | ||
| + | Card did not respond to voltage select! | ||
| + | eth0 MAC Address from ART is not valid | ||
| + | eth1 MAC Address from ART is not valid | ||
| + | eth2 MAC Address from ART is not valid | ||
| + | eth3 MAC Address from ART is not valid | ||
| + | eth4 MAC Address from ART is not valid | ||
| + | eth5 MAC Address from ART is not valid | ||
| + | gpio 38 set BOARD_3V9_5V_EN_GPIO to high[1] | ||
| + | gpio 64 set PHY_QCA8081_1V8_EN_GPIO to high[1] | ||
| + | gpio 33 set PHY_AR8033_3V3_EN_GPIO to high[1] | ||
| + | gpio 35 set ONOFF_MODULE_5G_GPIO to low[0] ... 1s | ||
| + | gpio 35 set ONOFF_MODULE_5G_GPIO to high[1] | ||
| + | ubi0: attaching mtd1 | ||
| + | ubi0: scanning is finished | ||
| + | ubi0: attached mtd1 (name " | ||
| + | ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes | ||
| + | ubi0: min./max. I/O unit sizes: 2048/2048, sub-page size 2048 | ||
| + | ubi0: VID header offset: 2048 (aligned 2048), data offset: 4096 | ||
| + | ubi0: good PEBs: 72, bad PEBs: 0, corrupted PEBs: 0 | ||
| + | ubi0: user volume: 1, internal volumes: 1, max. volumes count: 128 | ||
| + | ubi0: max/mean erase counter: 15/8, WL threshold: 4096, image sequenc | ||
| + | e number: 1097309032 | ||
| + | ubi0: available PEBs: 0, total reserved PEBs: 72, PEBs reserved for b | ||
| + | ad PEB handling: 20 | ||
| + | Find no boot alter flag! | ||
| + | Enter magic string to stop autoboot in 1 seconds | ||
| + | Unmounting UBIFS volume ubi_factory_data! | ||
| + | ubi0: detaching mtd1 | ||
| + | ubi0: mtd1 is detached | ||
| + | ubi0: attaching mtd1 | ||
| + | ubi0: scanning is finished | ||
| + | ubi0: attached mtd1 (name " | ||
| + | ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes | ||
| + | ubi0: min./max. I/O unit sizes: 2048/2048, sub-page size 2048 | ||
| + | ubi0: VID header offset: 2048 (aligned 2048), data offset: 4096 | ||
| + | ubi0: good PEBs: 336, bad PEBs: 0, corrupted PEBs: 0 | ||
| + | ubi0: user volume: 3, internal volumes: 1, max. volumes count: 128 | ||
| + | ubi0: max/mean erase counter: 4/2, WL threshold: 4096, image sequence | ||
| + | | ||
| + | ubi0: available PEBs: 0, total reserved PEBs: 336, PEBs reserved for | ||
| + | bad PEB handling: 20 | ||
| + | Read 0 bytes from volume kernel to 44000000 | ||
| + | No size specified -> Using max size (5332992) | ||
| + | ## Loading kernel from FIT Image at 44000000 ... | ||
| + | Using ' | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | Data Start: | ||
| + | Data Size: 5177696 Bytes = 4.9 MiB | ||
| + | | ||
| + | | ||
| + | Load Address: 0x41000000 | ||
| + | Entry Point: | ||
| + | Hash algo: crc32 | ||
| + | Hash value: | ||
| + | Hash algo: sha1 | ||
| + | Hash value: | ||
| + | | ||
| + | ## Loading fdt from FIT Image at 44000000 ... | ||
| + | Using ' | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | Data Start: | ||
| + | Data Size: 46489 Bytes = 45.4 KiB | ||
| + | | ||
| + | Hash algo: crc32 | ||
| + | Hash value: | ||
| + | Hash algo: sha1 | ||
| + | Hash value: | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | Could not find PCI in device tree | ||
| + | Using machid 0x8010400 from environment | ||
| + | |||
| + | Starting kernel ... | ||
| + | |||
| + | Jumping to AARCH64 kernel via monitor | ||
| + | [ 0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034 | ||
| + | ] | ||
| + | [ 0.000000] Linux version 6.6.44 (professor_jonny@MRSPARKLE) (aarc | ||
| + | h64-openwrt-linux-musl-gcc (OpenWrt GCC 13.3.0 r26970-e6c9264351) 13. | ||
| + | 3.0, GNU ld (GNU Binutils) 2.42) #0 SMP Mon Aug 12 18:49:30 2024 | ||
| + | [ 0.000000] Machine model: tplink x80-5g | ||
| + | [ 0.000000] OF: reserved mem: 0x0000000040000000..0x0000000040ffff | ||
| + | ff (16384 KiB) nomap non-reusable nss@40000000 | ||
| + | [ 0.000000] OF: reserved mem: 0x000000004a400000..0x000000004a5fff | ||
| + | ff (2048 KiB) nomap non-reusable tzapp@4a400000 | ||
| + | [ 0.000000] OF: reserved mem: 0x000000004a600000..0x000000004a9fff | ||
| + | ff (4096 KiB) nomap non-reusable bootloader@4a600000 | ||
| + | [ 0.000000] OF: reserved mem: 0x000000004aa00000..0x000000004aafff | ||
| + | ff (1024 KiB) nomap non-reusable sbl@4aa00000 | ||
| + | [ 0.000000] OF: reserved mem: 0x000000004ab00000..0x000000004abfff | ||
| + | ff (1024 KiB) nomap non-reusable smem@4ab00000 | ||
| + | [ 0.000000] OF: reserved mem: 0x000000004ac00000..0x000000004affff | ||
| + | ff (4096 KiB) nomap non-reusable memory@4ac00000 | ||
| + | [ 0.000000] OF: reserved mem: 0x000000004b000000..0x0000000050efff | ||
| + | ff (97280 KiB) nomap non-reusable wcnss@4b000000 | ||
| + | [ 0.000000] OF: reserved mem: 0x0000000050f00000..0x0000000050ffff | ||
| + | ff (1024 KiB) nomap non-reusable q6_etr_dump@50f00000 | ||
| + | [ 0.000000] OF: reserved mem: 0x0000000051000000..0x00000000510fff | ||
| + | ff (1024 KiB) nomap non-reusable m3_dump@51000000 | ||
| + | [ 0.000000] Zone ranges: | ||
| + | [ 0.000000] | ||
| + | [ 0.000000] | ||
| + | [ 0.000000] | ||
| + | [ 0.000000] Movable zone start for each node | ||
| + | [ 0.000000] Early memory node ranges | ||
| + | [ 0.000000] | ||
| + | ] | ||
| + | [ 0.000000] | ||
| + | ] | ||
| + | [ 0.000000] | ||
| + | ] | ||
| + | [ 0.000000] | ||
| + | ] | ||
| + | [ 0.000000] Initmem setup node 0 [mem 0x0000000040000000-0x0000000 | ||
| + | 07fffffff] | ||
| + | [ 0.000000] psci: probing for conduit method from DT. | ||
| + | [ 0.000000] psci: PSCIv1.0 detected in firmware. | ||
| + | [ 0.000000] psci: Using standard PSCI v0.2 function IDs | ||
| + | [ 0.000000] psci: MIGRATE_INFO_TYPE not supported. | ||
| + | [ 0.000000] psci: SMC Calling Convention v1.0 | ||
| + | [ 0.000000] percpu: Embedded 18 pages/cpu s35240 r8192 d30296 u737 | ||
| + | 28 | ||
| + | [ 0.000000] Detected VIPT I-cache on CPU0 | ||
| + | [ 0.000000] alternatives: | ||
| + | [ 0.000000] Kernel command line: ubi.mtd=rootfs root=mtd: | ||
| + | s rootfstype=squashfs rootwait root=/ | ||
| + | [ 0.000000] Dentry cache hash table entries: 131072 (order: 8, 104 | ||
| + | 8576 bytes, linear) | ||
| + | [ 0.000000] Inode-cache hash table entries: 65536 (order: 7, 52428 | ||
| + | 8 bytes, linear) | ||
| + | [ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: | ||
| + | | ||
| + | [ 0.000000] mem auto-init: stack:off, heap alloc:off, heap free:of | ||
| + | f | ||
| + | [ 0.000000] software IO TLB: SWIOTLB bounce buffer size adjusted t | ||
| + | o 1MB | ||
| + | [ 0.000000] software IO TLB: area num 4. | ||
| + | [ 0.000000] software IO TLB: mapped [mem 0x000000007eb00000-0x0000 | ||
| + | 00007ec00000] (1MB) | ||
| + | [ 0.000000] Memory: 885772K/ | ||
| + | 892K rwdata, 2500K rodata, 1472K init, 276K bss, 162804K reserved, 0 | ||
| + | K cma-reserved) | ||
| + | [ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, | ||
| + | es=1 | ||
| + | [ 0.000000] rcu: Hierarchical RCU implementation. | ||
| + | [ 0.000000] | ||
| + | [ 0.000000] rcu: RCU calculated value of scheduler-enlistment dela | ||
| + | y is 10 jiffies. | ||
| + | [ 0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0 | ||
| + | [ 0.000000] Root IRQ handler: gic_handle_irq | ||
| + | [ 0.000000] GICv2m: range[mem 0x0b00a000-0x0b00affc], | ||
| + | [ 0.000000] rcu: srcu_init: Setting srcu_struct sizes based on con | ||
| + | tention. | ||
| + | [ 0.000000] arch_timer: cp15 and mmio timer(s) running at 19.20MHz | ||
| + | | ||
| + | [ 0.000000] clocksource: | ||
| + | max_cycles: 0x46d987e47, | ||
| + | [ 0.000001] sched_clock: | ||
| + | every 4398046511078ns | ||
| + | [ 0.000129] Calibrating delay loop (skipped), value calculated usi | ||
| + | ng timer frequency.. 38.40 BogoMIPS (lpj=192000) | ||
| + | [ 0.000142] pid_max: default: 32768 minimum: 301 | ||
| + | [ 0.005160] Mount-cache hash table entries: 2048 (order: 2, 16384 | ||
| + | bytes, linear) | ||
| + | [ 0.005174] Mountpoint-cache hash table entries: 2048 (order: 2, 1 | ||
| + | 6384 bytes, linear) | ||
| + | [ 0.009416] RCU Tasks Trace: Setting shift to 2 and lim to 1 rcu_t | ||
| + | ask_cb_adjust=1. | ||
| + | [ 0.009641] rcu: Hierarchical SRCU implementation. | ||
| + | [ 0.009646] rcu: Max phase no-delay instances is 1000. | ||
| + | [ 0.010569] smp: Bringing up secondary CPUs ... | ||
| + | [ 0.011229] Detected VIPT I-cache on CPU1 | ||
| + | [ 0.011332] CPU1: Booted secondary processor 0x0000000001 [0x410fd | ||
| + | 034] | ||
| + | [ 0.012001] Detected VIPT I-cache on CPU2 | ||
| + | [ 0.012070] CPU2: Booted secondary processor 0x0000000002 [0x410fd | ||
| + | 034] | ||
| + | [ 0.012721] Detected VIPT I-cache on CPU3 | ||
| + | [ 0.012786] CPU3: Booted secondary processor 0x0000000003 [0x410fd | ||
| + | 034] | ||
| + | [ 0.012855] smp: Brought up 1 node, 4 CPUs | ||
| + | [ 0.012863] SMP: Total of 4 processors activated. | ||
| + | [ 0.012869] CPU features: detected: 32-bit EL0 Support | ||
| + | [ 0.012874] CPU features: detected: CRC32 instructions | ||
| + | [ 0.012943] CPU features: emulated: Privileged Access Never (PAN) | ||
| + | using TTBR0_EL1 switching | ||
| + | [ 0.012950] CPU: All CPU(s) started at EL1 | ||
| + | [ 0.012953] alternatives: | ||
| + | [ 0.023013] clocksource: | ||
| + | fffffff, max_idle_ns: | ||
| + | [ 0.023042] futex hash table entries: 1024 (order: 4, 65536 bytes, | ||
| + | | ||
| + | [ 0.024776] pinctrl core: initialized pinctrl subsystem | ||
| + | [ 0.026479] NET: Registered PF_NETLINK/ | ||
| + | [ 0.027055] DMA: preallocated 128 KiB GFP_KERNEL pool for atomic a | ||
| + | llocations | ||
| + | [ 0.027098] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA pool for | ||
| + | atomic allocations | ||
| + | [ 0.027132] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA32 pool fo | ||
| + | r atomic allocations | ||
| + | [ 0.027519] thermal_sys: | ||
| + | [ 0.027576] cpuidle: using governor menu | ||
| + | [ 0.027779] ASID allocator initialised with 65536 entries | ||
| + | [ 0.054062] qcom, | ||
| + | fuse count: 4 | ||
| + | [ 0.056925] Modules: 29408 pages in range for non-PLT usage | ||
| + | [ 0.056933] Modules: 520928 pages in range for PLT usage | ||
| + | [ 0.061698] SCSI subsystem initialized | ||
| + | [ 0.061902] usbcore: registered new interface driver usbfs | ||
| + | [ 0.061937] usbcore: registered new interface driver hub | ||
| + | [ 0.061985] usbcore: registered new device driver usb | ||
| + | [ 0.062436] qcom_scm: convention: smc arm 64 | ||
| + | [ 0.064085] clocksource: | ||
| + | [ 0.067864] NET: Registered PF_INET protocol family | ||
| + | [ 0.068014] IP idents hash table entries: 16384 (order: 5, 131072 | ||
| + | bytes, linear) | ||
| + | [ 0.070595] tcp_listen_portaddr_hash hash table entries: 512 (orde | ||
| + | r: 1, 8192 bytes, linear) | ||
| + | [ 0.070618] Table-perturb hash table entries: 65536 (order: 6, 262 | ||
| + | 144 bytes, linear) | ||
| + | [ 0.070633] TCP established hash table entries: 8192 (order: 4, 65 | ||
| + | 536 bytes, linear) | ||
| + | [ 0.070720] TCP bind hash table entries: 8192 (order: 6, 262144 by | ||
| + | tes, linear) | ||
| + | [ 0.070992] TCP: Hash tables configured (established 8192 bind 819 | ||
| + | 2) | ||
| + | [ 0.071095] UDP hash table entries: 512 (order: 2, 16384 bytes, li | ||
| + | near) | ||
| + | [ 0.071133] UDP-Lite hash table entries: 512 (order: 2, 16384 byte | ||
| + | s, linear) | ||
| + | [ 0.071609] NET: Registered PF_UNIX/ | ||
| + | [ 0.071651] PCI: CLS 0 bytes, default 64 | ||
| + | [ 0.073484] workingset: timestamp_bits=46 max_order=18 bucket_orde | ||
| + | r=0 | ||
| + | [ 0.074113] squashfs: version 4.0 (2009/ | ||
| + | [ 0.074121] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CM | ||
| + | ODE_PRIORITY) (c) 2001-2006 Red Hat, Inc. | ||
| + | [ 0.080431] qcom-qmp-usb-phy 58000.phy: supply vdda-phy not found, | ||
| + | using dummy regulator | ||
| + | [ 0.080571] qcom-qmp-usb-phy 58000.phy: supply vdda-pll not found, | ||
| + | using dummy regulator | ||
| + | [ 0.081426] qcom-qmp-usb-phy 78000.phy: supply vdda-phy not found, | ||
| + | using dummy regulator | ||
| + | [ 0.081575] qcom-qmp-usb-phy 78000.phy: supply vdda-pll not found, | ||
| + | using dummy regulator | ||
| + | [ 0.082679] qcom-qusb2-phy 59000.phy: supply vdd not found, using | ||
| + | dummy regulator | ||
| + | [ 0.082836] qcom-qusb2-phy 59000.phy: supply vdda-pll not found, u | ||
| + | sing dummy regulator | ||
| + | [ 0.082879] qcom-qusb2-phy 59000.phy: supply vdda-phy-dpdm not fou | ||
| + | nd, using dummy regulator | ||
| + | [ 0.083058] qcom-qusb2-phy 59000.phy: Registered Qcom-QUSB2 phy | ||
| + | [ 0.083272] qcom-qusb2-phy 79000.phy: supply vdd not found, using | ||
| + | dummy regulator | ||
| + | [ 0.083398] qcom-qusb2-phy 79000.phy: supply vdda-pll not found, u | ||
| + | sing dummy regulator | ||
| + | [ 0.083472] qcom-qusb2-phy 79000.phy: supply vdda-phy-dpdm not fou | ||
| + | nd, using dummy regulator | ||
| + | [ 0.083643] qcom-qusb2-phy 79000.phy: Registered Qcom-QUSB2 phy | ||
| + | [ 0.091844] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabl | ||
| + | ed | ||
| + | [ 0.092838] msm_serial 78b3000.serial: | ||
| + | 0 | ||
| + | [ 0.092893] msm_serial 78b3000.serial: | ||
| + | [ 0.093209] 78b3000.serial: | ||
| + | ase_baud = 230400) is a MSM | ||
| + | [ 0.093242] msm_serial: console setup on port #0 | ||
| + | [ 0.093283] printk: console [ttyMSM0] enabled | ||
| + | [ 0.901985] msm_serial: driver initialized | ||
| + | [ 0.911165] loop: module loaded | ||
| + | [ 0.912571] nand: device found, Manufacturer ID: 0xc8, Chip ID: 0x | ||
| + | 61 | ||
| + | [ 0.913121] nand: ESMT PSR1GA30DT | ||
| + | [ 0.919788] nand: 128 MiB, SLC, erase size: 128 KiB, page size: 20 | ||
| + | 48, OOB size: 64 | ||
| + | [ 0.923982] spmi spmi-0: PMIC arbiter version v2 (0x20010000) | ||
| + | [ 0.985585] i2c_dev: i2c /dev entries driver | ||
| + | [ 0.991897] sdhci: Secure Digital Host Controller Interface driver | ||
| + | [ 0.991943] sdhci: Copyright(c) Pierre Ossman | ||
| + | [ 0.997045] sdhci-pltfm: | ||
| + | [ 1.003258] remoteproc remoteproc0: | ||
| + | [ 1.010962] NET: Registered PF_INET6 protocol family | ||
| + | [ 1.014030] Segment Routing with IPv6 | ||
| + | [ 1.018059] In-situ OAM (IOAM) with IPv6 | ||
| + | [ 1.021629] NET: Registered PF_PACKET protocol family | ||
| + | [ 1.025744] 8021q: 802.1Q VLAN Support v1.8 | ||
| + | [ 1.061403] qcom, | ||
| + | fuse count: 4 | ||
| + | [ 1.061772] cpr4_ipq807x_apss_read_fuse_data: | ||
| + | n = 0 | ||
| + | [ 1.067578] cpr4_ipq807x_apss_read_fuse_data: | ||
| + | ng revision = 1 | ||
| + | [ 1.074161] cpr4_ipq807x_apss_read_fuse_data: | ||
| + | fuse value = 0 | ||
| + | [ 1.081792] cpr4_ipq807x_apss_read_fuse_data: | ||
| + | boost fuse config = 0 boost = disable | ||
| + | [ 1.089325] cpr3_mem_acc_init: | ||
| + | egulator | ||
| + | [ 1.098458] cpr4_ipq807x_apss_calculate_open_loop_voltages: | ||
| + | rner: fused SVS: open-loop= 704000 uV | ||
| + | [ 1.105409] cpr4_ipq807x_apss_calculate_open_loop_voltages: | ||
| + | rner: fused NOM: open-loop= 808000 uV | ||
| + | [ 1.115394] cpr4_ipq807x_apss_calculate_open_loop_voltages: | ||
| + | rner: fused TURBO: open-loop= 864000 uV | ||
| + | [ 1.125200] cpr4_ipq807x_apss_calculate_open_loop_voltages: | ||
| + | rner: fused | ||
| + | [ 1.135062] cpr4_ipq807x_apss_calculate_target_quotients: | ||
| + | er: fused SVS: quot[ 7]= 767, quot_offset[ 7]= 0 | ||
| + | [ 1.144822] cpr4_ipq807x_apss_calculate_target_quotients: | ||
| + | er: fused NOM: quot[ 7]= 972, quot_offset[ 7]= 205 | ||
| + | [ 1.155670] cpr4_ipq807x_apss_calculate_target_quotients: | ||
| + | er: fused TURBO: quot[ 7]=1073, quot_offset[ 7]= 100 | ||
| + | [ 1.166612] cpr4_ipq807x_apss_calculate_target_quotients: | ||
| + | er: fused | ||
| + | [ 1.177779] cpr3_regulator_init_ctrl: | ||
| + | ed-loop | ||
| + | [ 1.180467] nand: device found, Manufacturer ID: 0xc8, Chip ID: 0x | ||
| + | 61 | ||
| + | [ 1.195245] nand: ESMT PSR1GA30DT | ||
| + | [ 1.201639] nand: 128 MiB, SLC, erase size: 128 KiB, page size: 20 | ||
| + | 48, OOB size: 64 | ||
| + | [ 1.205306] 17 qcomsmem partitions found on MTD device qcom_nand.0 | ||
| + | [ 1.212325] Creating 17 MTD partitions on " | ||
| + | [ 1.218525] 0x000000000000-0x000000100000 : " | ||
| + | [ 1.225526] 0x000000100000-0x000000200000 : " | ||
| + | [ 1.230284] 0x000000200000-0x000000280000 : " | ||
| + | [ 1.234827] 0x000000280000-0x000000300000 : " | ||
| + | [ 1.240130] 0x000000300000-0x000000600000 : " | ||
| + | [ 1.247900] 0x000000600000-0x000000680000 : " | ||
| + | [ 1.250843] 0x000000680000-0x000000700000 : " | ||
| + | [ 1.255831] 0x000000700000-0x000000780000 : " | ||
| + | [ 1.260902] 0x000000780000-0x000000800000 : " | ||
| + | [ 1.265756] 0x000000800000-0x000000980000 : " | ||
| + | [ 1.271275] 0x000000980000-0x000000b80000 : " | ||
| + | [ 1.277351] 0x000000b80000-0x000000c00000 : " | ||
| + | [ 1.280960] 0x000000c00000-0x000003600000 : " | ||
| + | [ 1.322828] mtd: setting mtd12 (rootfs) as root device | ||
| + | [ 1.323207] mtdsplit: no squashfs found in " | ||
| + | [ 1.326934] 0x000003600000-0x000006000000 : " | ||
| + | [ 1.370320] 0x000006000000-0x000006080000 : " | ||
| + | [ 1.371329] 0x000006080000-0x000006980000 : " | ||
| + | [ 1.383576] 0x000006980000-0x000007a80000 : " | ||
| + | [ 1.407745] cpufreq: cpufreq_online: | ||
| + | tial frequency: 800000 KHz, changing to: 1017600 KHz | ||
| + | [ 1.409628] remoteproc remoteproc0: | ||
| + | [ 1.417712] ubi0: attaching mtd12 | ||
| + | [ 1.655198] ubi0: scanning is finished | ||
| + | [ 1.662605] ubi0: attached mtd12 (name " | ||
| + | [ 1.662643] ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 1269 | ||
| + | 76 bytes | ||
| + | [ 1.667350] ubi0: min./max. I/O unit sizes: 2048/2048, sub-page si | ||
| + | ze 2048 | ||
| + | [ 1.674115] ubi0: VID header offset: 2048 (aligned 2048), data off | ||
| + | set: 4096 | ||
| + | [ 1.680965] ubi0: good PEBs: 336, bad PEBs: 0, corrupted PEBs: 0 | ||
| + | [ 1.687741] ubi0: user volume: 3, internal volumes: 1, max. volume | ||
| + | s count: 128 | ||
| + | [ 1.693987] ubi0: max/mean erase counter: 4/2, WL threshold: 4096, | ||
| + | image sequence number: 473343929 | ||
| + | [ 1.701032] ubi0: available PEBs: 0, total reserved PEBs: 336, PEB | ||
| + | s reserved for bad PEB handling: 20 | ||
| + | [ 1.709975] ubi0: background thread " | ||
| + | [ 1.719923] block ubiblock0_1: | ||
| + | 5] VFS: Mounted root (squashfs filesystem) readonly on device 254:0. | ||
| + | [ 1.735007] Freeing unused kernel memory: 1472K | ||
| + | [ 1.740712] Run /sbin/init as init process | ||
| + | [ 1.923590] init: Console is alive | ||
| + | [ 1.923749] init: - watchdog - | ||
| + | [ 2.524754] kmodloader: loading kernel modules from / | ||
| + | oot.d/* | ||
| + | [ 2.557435] gpio_button_hotplug: | ||
| + | | ||
| + | [ 2.595392] ssdk_dt_parse_interrupt[941]: | ||
| + | xist | ||
| + | [ 4.294137] regi_init[2525]: | ||
| + | [ 4.294267] regi_init[2574]: | ||
| + | [ 4.300638] EDMA ver 1 hw init | ||
| + | [ 4.304840] EDMA HW Reset completed succesfully | ||
| + | [ 4.307494] Num rings - TxDesc:1 (23-23) TxCmpl:1 (7-7) | ||
| + | [ 4.311889] RxDesc:1 (15-15) RxFill:1 (7-7) | ||
| + | [ 4.317515] GMAC5(ffffff800374d900) Invalid MAC@ - using 26:d0:89: | ||
| + | e6:ac:eb | ||
| + | [ 4.321270] dp5: ppe offload disabled: 0 for macid 5 | ||
| + | [ 4.328219] dp5: Switch attached to macid 5 status: 0 | ||
| + | [ 4.426259] Qualcomm QCA8081 90000.mdio-1: | ||
| + | (mii_bus: | ||
| + | [ 4.427141] GMAC6(ffffff800374b900) Invalid MAC@ - using 26:ad:0c: | ||
| + | d7:44:f6 | ||
| + | [ 4.435169] dp6-syn: ppe offload disabled: 0 for macid 6 | ||
| + | [ 4.442005] dp6-syn: Switch attached to macid 6 status: 0 | ||
| + | [ 4.524505] Qualcomm Atheros AR8031/ | ||
| + | ed PHY driver (mii_bus: | ||
| + | [ 4.525319] ****************************************************** | ||
| + | **** | ||
| + | [ 4.534812] * NSS Data Plane driver | ||
| + | [ 4.541115] ****************************************************** | ||
| + | **** | ||
| + | [ 4.562321] xhci-hcd xhci-hcd.1.auto: | ||
| + | [ 4.562381] xhci-hcd xhci-hcd.1.auto: | ||
| + | gned bus number 1 | ||
| + | [ 4.566900] xhci-hcd xhci-hcd.1.auto: | ||
| + | rsion 0x110 quirks 0x0000008002000010 | ||
| + | [ 4.574310] xhci-hcd xhci-hcd.1.auto: | ||
| + | [ 4.583766] xhci-hcd xhci-hcd.1.auto: | ||
| + | [ 4.589548] xhci-hcd xhci-hcd.1.auto: | ||
| + | gned bus number 2 | ||
| + | [ 4.595104] xhci-hcd xhci-hcd.1.auto: | ||
| + | peed | ||
| + | [ 4.603050] hub 1-0:1.0: USB hub found | ||
| + | [ 4.609276] hub 1-0:1.0: 1 port detected | ||
| + | [ 4.613239] usb usb2: We don't know the algorithms for LPM for thi | ||
| + | s host, disabling LPM. | ||
| + | [ 4.617499] hub 2-0:1.0: USB hub found | ||
| + | [ 4.625208] hub 2-0:1.0: 1 port detected | ||
| + | [ 4.629035] xhci-hcd xhci-hcd.2.auto: | ||
| + | [ 4.632775] xhci-hcd xhci-hcd.2.auto: | ||
| + | gned bus number 3 | ||
| + | [ 4.638215] xhci-hcd xhci-hcd.2.auto: | ||
| + | rsion 0x110 quirks 0x0000008002000010 | ||
| + | [ 4.645670] xhci-hcd xhci-hcd.2.auto: | ||
| + | [ 4.655093] xhci-hcd xhci-hcd.2.auto: | ||
| + | [ 4.660897] xhci-hcd xhci-hcd.2.auto: | ||
| + | gned bus number 4 | ||
| + | [ 4.666463] xhci-hcd xhci-hcd.2.auto: | ||
| + | peed | ||
| + | [ 4.674609] hub 3-0:1.0: USB hub found | ||
| + | [ 4.680617] hub 3-0:1.0: 1 port detected | ||
| + | [ 4.684668] usb usb4: We don't know the algorithms for LPM for thi | ||
| + | s host, disabling LPM. | ||
| + | [ 4.688672] hub 4-0:1.0: USB hub found | ||
| + | [ 4.696504] hub 4-0:1.0: 1 port detected | ||
| + | [ 4.702753] kmodloader: done loading kernel modules from /etc/modu | ||
| + | les-boot.d/ | ||
| + | [ 4.705919] init: - preinit - | ||
| + | [ 7.784080] random: crng init done | ||
| + | / | ||
| + | und | ||
| + | Press the [f] key and hit [enter] to enter failsafe mode | ||
| + | Press the [1], [2], [3] or [4] key and hit [enter] to select the debu | ||
| + | g level | ||
| + | [ 9.959699] UBIFS (ubi0:2): Mounting in unauthenticated mode | ||
| + | [ 9.959840] UBIFS (ubi0:2): background thread " | ||
| + | ed, PID 837 | ||
| + | [ 9.997762] UBIFS (ubi0:2): recovery needed | ||
| + | [ | ||
| + | [ | ||
| + | name " | ||
| + | [ | ||
| + | /max. I/O unit sizes: 2048 bytes/2048 bytes | ||
| + | [ | ||
| + | EBs), max 185 LEBs, journal size 1142784 bytes (1 MiB, 9 LEBs) | ||
| + | [ | ||
| + | | ||
| + | [ | ||
| + | UUID 6F2A9AA2-0601-44C9-9ABB-95CF22F596A9, | ||
| + | [ | ||
| + | [ | ||
| + | back to xino=off, | ||
| + | [ | ||
| + | [ | ||
| + | [ | ||
| + | Failed to connect to ubus | ||
| + | [ | ||
| + | [ | ||
| + | [ | ||
| + | Please press Enter to activate this console. | ||
| + | [ | ||
| + | /* | ||
| + | [ | ||
| + | pliant with requirements: | ||
| + | [ | ||
| + | [ | ||
| + | [ | ||
| + | -g28fdf4518483 | ||
| + | [ | ||
| + | 4a3683b2 | ||
| + | [ | ||
| + | [ | ||
| + | eric | ||
| + | [ | ||
| + | [ | ||
| + | [ | ||
| + | [ | ||
| + | [ | ||
| + | [ | ||
| + | [ | ||
| + | [ | ||
| + | [ | ||
| + | [ | ||
| + | .mdt, size 668 | ||
| + | [ | ||
| + | wcss is now up | ||
| + | [ | ||
| + | [ | ||
| + | _id 0xff soc_id 0xffffffff | ||
| + | [ | ||
| + | mestamp 2023-10-12 02:06 fw_build_id WLAN.HK.2.9.0.1-01977-QCAHKSWPL_ | ||
| + | SILICONZ-1 | ||
| + | [ | ||
| + | 00.q6v5_wcss | ||
| + | [ | ||
| + | [ | ||
| + | .mdt, size 668 | ||
| + | [ | ||
| + | wcss is now up | ||
| + | [ | ||
| + | [ | ||
| + | [ | ||
| + | | ||
| + | [ | ||
| + | [ | ||
| + | USB modem | ||
| + | [ | ||
| + | [ | ||
| + | les.d/* | ||
| + | [ | ||
| + | _id 0xff soc_id 0xffffffff | ||
| + | [ | ||
| + | mestamp 2023-10-12 02:06 fw_build_id WLAN.HK.2.9.0.1-01977-QCAHKSWPL_ | ||
| + | SILICONZ-1 | ||
| + | [ | ||
| + | [ | ||
| + | [ | ||
| + | [ | ||
| + | [ | ||
| + | [ | ||
| + | [ | ||
| + | [ | ||
| + | [ | ||
| + | e | ||
| + | [ | ||
| + | [ | ||
| + | [ | ||
| + | te | ||
| + | [ | ||
| + | [ | ||
| + | [ | ||
| + | e | ||
| + | [ | ||
| + | [ | ||
| + | [ | ||
| + | [ | ||
| + | [ | ||
| + | [ | ||
| + | de | ||
| + | [ | ||
| + | e | ||
| + | [ | ||
| + | [ | ||
| + | e | ||
| + | [ | ||
| + | ate | ||
| + | [ | ||
| + | ate | ||
| + | [ | ||
| + | mode | ||
| + | [ | ||
| + | ode | ||
| + | [ | ||
| + | ate | ||
| + | [ | ||
| + | state | ||
| + | [ | ||
| + | e | ||
| + | [ | ||
| + | [ | ||
| + | ate | ||
| + | [ | ||
| + | ate | ||
| + | [ | ||
| + | ate | ||
| + | [ | ||
| + | mode | ||
| + | [ | ||
| + | ode | ||
| + | [ | ||
| + | ate | ||
| + | [ | ||
| + | state | ||
| + | [ | ||
| + | [ | ||
| + | [ | ||
| + | [ | ||
| + | [ | ||
| + | [ | ||
| + | -hcd | ||
| + | [ | ||
| + | [ | ||
| + | ttyUSB0 | ||
| + | [ | ||
| + | [ | ||
| + | ttyUSB1 | ||
| + | [ | ||
| + | [ | ||
| + | ttyUSB2 | ||
| + | [ | ||
| + | [ | ||
| + | ttyUSB3 | ||
| + | |||
| + | |||
| + | |||
| + | BusyBox v1.36.1 (2024-08-08 21:48:47 UTC) built-in shell (ash) | ||
| + | |||
| + | _______ | ||
| + | | ||
| + | | ||
| + | | ||
| + | |__| W I R E L E S S F R E E D O M | ||
| + | | ||
| + | | ||
| + | | ||
| + | root@OpenWrt:/# | ||
| </ | </ | ||
| Line 2482: | Line 3212: | ||
| ==== Devices ==== | ==== Devices ==== | ||
| - | <code> | + | <WRAP bootlog> |
| + | <nowiki> | ||
| cat / | cat / | ||
| Character devices: | Character devices: | ||
| Line 2524: | Line 3255: | ||
| 254 nvme | 254 nvme | ||
| root@(none):/# | root@(none):/# | ||
| - | </code> | + | </nowiki> |
| + | </ | ||
| + | ==== Stock configuration (AP-HK01-C5.dts) ==== | ||
| + | <WRAP bootlog> | ||
| + | < | ||
| + | /dts-v1/; | ||
| + | /* | ||
| + | * Copyright (c) 2017-2019, The Linux Foundation. All rights reserved. | ||
| + | * | ||
| + | * Permission to use, copy, modify, and/or distribute this software for any | ||
| + | * purpose with or without fee is hereby granted, provided that the above | ||
| + | * copyright notice and this permission notice appear in all copies. | ||
| + | * | ||
| + | * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES | ||
| + | * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF | ||
| + | * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR | ||
| + | * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES | ||
| + | * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN | ||
| + | * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF | ||
| + | * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | ||
| + | */ | ||
| + | #include " | ||
| + | #include " | ||
| + | #include < | ||
| - | ===== Notes ===== | + | / { |
| + | # | ||
| + | # | ||
| + | model | ||
| + | compatible | ||
| + | qcom, | ||
| + | interrupt-parent | ||
| + | qcom, | ||
| + | qcom, | ||
| - | Can't seem to get access to uart it asks for a magic string to break into uboot but the typicals strings do not seem to work. | + | aliases { |
| + | sdhc1 = & | ||
| + | /* | ||
| + | * Aliases as required by u-boot | ||
| + | * to patch MAC addresses | ||
| + | */ | ||
| + | ethernet0 = "/ | ||
| + | ethernet1 = "/ | ||
| + | ethernet2 = "/ | ||
| + | ethernet3 = "/ | ||
| + | ethernet4 = "/ | ||
| + | ethernet5 = "/ | ||
| + | }; | ||
| - | has 2x OS images on NAND flash, one image is for normal operation and the other one is for recovering | + | chosen { |
| + | bootargs = " | ||
| + | bootargs-append = " swiotlb=1"; | ||
| + | }; | ||
| + | }; | ||
| + | |||
| + | & | ||
| + | pmic@0 { | ||
| + | compatible =" | ||
| + | reg = <0x0 SPMI_USID>; | ||
| + | # | ||
| + | # | ||
| + | |||
| + | pmm8074_gpios: | ||
| + | compatible = " | ||
| + | reg = <0xc000 0xc00>; | ||
| + | gpio-controller; | ||
| + | # | ||
| + | interrupts = <0 0xc0 0 IRQ_TYPE_NONE>, | ||
| + | <0 0xc1 0 IRQ_TYPE_NONE>, | ||
| + | <0 0xc2 0 IRQ_TYPE_NONE>, | ||
| + | <0 0xc3 0 IRQ_TYPE_NONE>, | ||
| + | <0 0xc4 0 IRQ_TYPE_NONE>, | ||
| + | <0 0xc5 0 IRQ_TYPE_NONE>, | ||
| + | <0 0xc6 0 IRQ_TYPE_NONE>, | ||
| + | <0 0xc7 0 IRQ_TYPE_NONE>, | ||
| + | <0 0xc8 0 IRQ_TYPE_NONE>, | ||
| + | <0 0xc9 0 IRQ_TYPE_NONE>, | ||
| + | <0 0xca 0 IRQ_TYPE_NONE>, | ||
| + | <0 0xcb 0 IRQ_TYPE_NONE>; | ||
| + | pinctrl-0 = <& | ||
| + | pinctrl-names = " | ||
| + | |||
| + | pmm8074_gpio: | ||
| + | pinconf { | ||
| + | pins = " | ||
| + | function = PMIC_GPIO_FUNC_NORMAL; | ||
| + | bias-pull-up; | ||
| + | output-high; | ||
| + | }; | ||
| + | }; | ||
| + | }; | ||
| + | }; | ||
| + | }; | ||
| + | |||
| + | &tlmm { | ||
| + | pinctrl-0 = <& | ||
| + | pinctrl-names = " | ||
| + | pcie_sdx_gpio: | ||
| + | ap2mdm_err_ftl { | ||
| + | pins = " | ||
| + | function = " | ||
| + | drive-strength = < | ||
| + | bias-pull-down; | ||
| + | }; | ||
| + | sdx_pon_gpio { | ||
| + | pins = " | ||
| + | function = " | ||
| + | drive-strength = < | ||
| + | bias-pull-up; | ||
| + | output-high; | ||
| + | }; | ||
| + | ap2mdm_status { | ||
| + | pins = " | ||
| + | function = " | ||
| + | drive-strength = < | ||
| + | bias-pull-up; | ||
| + | output-high; | ||
| + | }; | ||
| + | }; | ||
| + | |||
| + | pcie_wake_pins: | ||
| + | pins = " | ||
| + | function = " | ||
| + | drive-strength = < | ||
| + | bias-pull-up; | ||
| + | }; | ||
| + | |||
| + | mdio_pins: mdio_pinmux { | ||
| + | mux_0 { | ||
| + | pins = " | ||
| + | function = " | ||
| + | drive-strength = < | ||
| + | bias-pull-up; | ||
| + | }; | ||
| + | mux_1 { | ||
| + | pins = " | ||
| + | function = " | ||
| + | drive-strength = < | ||
| + | bias-pull-up; | ||
| + | }; | ||
| + | mux_2 { | ||
| + | pins = " | ||
| + | function = " | ||
| + | bias-pull-up; | ||
| + | }; | ||
| + | mux_3 { | ||
| + | pins = " | ||
| + | function = " | ||
| + | bias-pull-up; | ||
| + | }; | ||
| + | }; | ||
| + | |||
| + | uart_pins: uart_pins { | ||
| + | mux { | ||
| + | pins = " | ||
| + | function = " | ||
| + | drive-strength = < | ||
| + | bias-disable; | ||
| + | }; | ||
| + | }; | ||
| + | |||
| + | qpic_pins: qpic_pins { | ||
| + | data_0 { | ||
| + | pins = " | ||
| + | function = " | ||
| + | drive-strength = < | ||
| + | bias-disable; | ||
| + | }; | ||
| + | data_1 { | ||
| + | pins = " | ||
| + | function = " | ||
| + | drive-strength = < | ||
| + | bias-disable; | ||
| + | }; | ||
| + | data_2 { | ||
| + | pins = " | ||
| + | function = " | ||
| + | drive-strength = < | ||
| + | bias-disable; | ||
| + | }; | ||
| + | data_3 { | ||
| + | pins = " | ||
| + | function = " | ||
| + | drive-strength = < | ||
| + | bias-disable; | ||
| + | }; | ||
| + | data_4 { | ||
| + | pins = " | ||
| + | function = " | ||
| + | drive-strength = < | ||
| + | bias-disable; | ||
| + | }; | ||
| + | data_5 { | ||
| + | pins = " | ||
| + | function = " | ||
| + | drive-strength = < | ||
| + | bias-disable; | ||
| + | }; | ||
| + | data_6 { | ||
| + | pins = " | ||
| + | function = " | ||
| + | drive-strength = < | ||
| + | bias-disable; | ||
| + | }; | ||
| + | data_7 { | ||
| + | pins = " | ||
| + | function = " | ||
| + | drive-strength = < | ||
| + | bias-disable; | ||
| + | }; | ||
| + | data_8 { | ||
| + | pins = " | ||
| + | function = " | ||
| + | drive-strength = < | ||
| + | bias-disable; | ||
| + | }; | ||
| + | qpic_pad { | ||
| + | pins = " | ||
| + | " | ||
| + | function = " | ||
| + | drive-strength = < | ||
| + | bias-disable; | ||
| + | }; | ||
| + | }; | ||
| + | |||
| + | hsuart_pins: | ||
| + | mux { | ||
| + | pins = " | ||
| + | function = " | ||
| + | drive-strength = < | ||
| + | bias-disable; | ||
| + | }; | ||
| + | }; | ||
| + | |||
| + | fan_pins: fan_pins { | ||
| + | mux { | ||
| + | pins = " | ||
| + | function = " | ||
| + | drive-strength = < | ||
| + | bias-disable; | ||
| + | }; | ||
| + | }; | ||
| + | |||
| + | antenna_pins: | ||
| + | ext_antenna_en { | ||
| + | pins = " | ||
| + | function = " | ||
| + | drive-strength = < | ||
| + | bias-disable; | ||
| + | }; | ||
| + | }; | ||
| + | |||
| + | modem_pins: | ||
| + | modem_reset { | ||
| + | pins = " | ||
| + | function = " | ||
| + | drive-strength = < | ||
| + | bias-disable; | ||
| + | }; | ||
| + | |||
| + | w_disable { | ||
| + | pins = " | ||
| + | function = " | ||
| + | drive-strength = < | ||
| + | bias-disable; | ||
| + | }; | ||
| + | }; | ||
| + | |||
| + | ledc_pins: ledc_pinmux { | ||
| + | led_clk { | ||
| + | pins = " | ||
| + | function = " | ||
| + | drive-strength = < | ||
| + | bias-pull-down; | ||
| + | }; | ||
| + | led_data { | ||
| + | pins = " | ||
| + | function = " | ||
| + | drive-strength = < | ||
| + | bias-pull-down; | ||
| + | }; | ||
| + | led_clr { | ||
| + | pins = " | ||
| + | function = " | ||
| + | drive-strength = < | ||
| + | bias-pull-up; | ||
| + | }; | ||
| + | }; | ||
| + | }; | ||
| + | |||
| + | &soc { | ||
| + | mdio: mdio@90000 { | ||
| + | pinctrl-0 = <& | ||
| + | pinctrl-names = " | ||
| + | phy-reset-gpio = <& | ||
| + | compatible = " | ||
| + | phy0: ethernet-phy@0 { | ||
| + | reg = < | ||
| + | }; | ||
| + | phy1: ethernet-phy@1 { | ||
| + | reg = < | ||
| + | }; | ||
| + | phy2: ethernet-phy@2 { | ||
| + | reg = < | ||
| + | }; | ||
| + | phy3: ethernet-phy@3 { | ||
| + | reg = < | ||
| + | }; | ||
| + | phy4: ethernet-phy@4 { | ||
| + | reg = < | ||
| + | }; | ||
| + | phy5: ethernet-phy@5 { | ||
| + | reg = < | ||
| + | }; | ||
| + | }; | ||
| + | |||
| + | ess-switch@3a000000 { | ||
| + | switch_cpu_bmp = < | ||
| + | switch_lan_bmp = < | ||
| + | switch_wan_bmp = < | ||
| + | switch_mac_mode = < | ||
| + | switch_mac_mode1 = < | ||
| + | switch_mac_mode2 = < | ||
| + | bm_tick_mode = <0>; /* bm tick mode */ | ||
| + | tm_tick_mode = <0>; /* tm tick mode */ | ||
| + | qcom, | ||
| + | port@0 { | ||
| + | port_id = < | ||
| + | phy_address = < | ||
| + | }; | ||
| + | port@1 { | ||
| + | port_id = < | ||
| + | phy_address = < | ||
| + | }; | ||
| + | port@2 { | ||
| + | port_id = < | ||
| + | phy_address = < | ||
| + | }; | ||
| + | port@3 { | ||
| + | port_id = < | ||
| + | phy_address = < | ||
| + | }; | ||
| + | port@4 { | ||
| + | port_id = < | ||
| + | phy_address = < | ||
| + | port_mac_sel=" | ||
| + | }; | ||
| + | port@5 { | ||
| + | port_id = < | ||
| + | phy_address = < | ||
| + | }; | ||
| + | }; | ||
| + | port_scheduler_resource { | ||
| + | port@0 { | ||
| + | port_id = < | ||
| + | ucast_queue = <0 143>; | ||
| + | mcast_queue = <256 271>; | ||
| + | l0sp = <0 35>; | ||
| + | l0cdrr = <0 47>; | ||
| + | l0edrr = <0 47>; | ||
| + | l1cdrr = <0 7>; | ||
| + | l1edrr = <0 7>; | ||
| + | }; | ||
| + | port@1 { | ||
| + | port_id = < | ||
| + | ucast_queue = <144 159>; | ||
| + | mcast_queue = <272 275>; | ||
| + | l0sp = <36 39>; | ||
| + | l0cdrr = <48 63>; | ||
| + | l0edrr = <48 63>; | ||
| + | l1cdrr = <8 11>; | ||
| + | l1edrr = <8 11>; | ||
| + | }; | ||
| + | port@2 { | ||
| + | port_id = < | ||
| + | ucast_queue = <160 175>; | ||
| + | mcast_queue = <276 279>; | ||
| + | l0sp = <40 43>; | ||
| + | l0cdrr = <64 79>; | ||
| + | l0edrr = <64 79>; | ||
| + | l1cdrr = <12 15>; | ||
| + | l1edrr = <12 15>; | ||
| + | }; | ||
| + | port@3 { | ||
| + | port_id = < | ||
| + | ucast_queue = <176 191>; | ||
| + | mcast_queue = <280 283>; | ||
| + | l0sp = <44 47>; | ||
| + | l0cdrr = <80 95>; | ||
| + | l0edrr = <80 95>; | ||
| + | l1cdrr = <16 19>; | ||
| + | l1edrr = <16 19>; | ||
| + | }; | ||
| + | port@4 { | ||
| + | port_id = < | ||
| + | ucast_queue = <192 207>; | ||
| + | mcast_queue = <284 287>; | ||
| + | l0sp = <48 51>; | ||
| + | l0cdrr = <96 111>; | ||
| + | l0edrr = <96 111>; | ||
| + | l1cdrr = <20 23>; | ||
| + | l1edrr = <20 23>; | ||
| + | }; | ||
| + | port@5 { | ||
| + | port_id = < | ||
| + | ucast_queue = <208 223>; | ||
| + | mcast_queue = <288 291>; | ||
| + | l0sp = <52 55>; | ||
| + | l0cdrr = <112 127>; | ||
| + | l0edrr = <112 127>; | ||
| + | l1cdrr = <24 27>; | ||
| + | l1edrr = <24 27>; | ||
| + | }; | ||
| + | port@6 { | ||
| + | port_id = < | ||
| + | ucast_queue = <224 239>; | ||
| + | mcast_queue = <292 295>; | ||
| + | l0sp = <56 59>; | ||
| + | l0cdrr = <128 143>; | ||
| + | l0edrr = <128 143>; | ||
| + | l1cdrr = <28 31>; | ||
| + | l1edrr = <28 31>; | ||
| + | }; | ||
| + | port@7 { | ||
| + | port_id = < | ||
| + | ucast_queue = <240 255>; | ||
| + | mcast_queue = <296 299>; | ||
| + | l0sp = <60 63>; | ||
| + | l0cdrr = <144 159>; | ||
| + | l0edrr = <144 159>; | ||
| + | l1cdrr = <32 35>; | ||
| + | l1edrr = <32 35>; | ||
| + | }; | ||
| + | }; | ||
| + | port_scheduler_config { | ||
| + | port@0 { | ||
| + | port_id = < | ||
| + | l1scheduler { | ||
| + | group@0 { | ||
| + | sp = <0 1>; /*L0 SPs*/ | ||
| + | / | ||
| + | cfg = <0 0 0 0>; | ||
| + | }; | ||
| + | }; | ||
| + | l0scheduler { | ||
| + | group@0 { | ||
| + | / | ||
| + | ucast_queue = <0 4 8>; | ||
| + | / | ||
| + | mcast_queue = <256 260>; | ||
| + | /*sp cpri cdrr epri edrr*/ | ||
| + | cfg = <0 0 0 0 0>; | ||
| + | }; | ||
| + | group@1 { | ||
| + | ucast_queue = <1 5 9>; | ||
| + | mcast_queue = <257 261>; | ||
| + | cfg = <0 1 1 1 1>; | ||
| + | }; | ||
| + | group@2 { | ||
| + | ucast_queue = <2 6 10>; | ||
| + | mcast_queue = <258 262>; | ||
| + | cfg = <0 2 2 2 2>; | ||
| + | }; | ||
| + | group@3 { | ||
| + | ucast_queue = <3 7 11>; | ||
| + | mcast_queue = <259 263>; | ||
| + | cfg = <0 3 3 3 3>; | ||
| + | }; | ||
| + | }; | ||
| + | }; | ||
| + | port@1 { | ||
| + | port_id = < | ||
| + | l1scheduler { | ||
| + | group@0 { | ||
| + | sp = < | ||
| + | cfg = <0 8 0 8>; | ||
| + | }; | ||
| + | group@1 { | ||
| + | sp = < | ||
| + | cfg = <1 9 1 9>; | ||
| + | }; | ||
| + | }; | ||
| + | l0scheduler { | ||
| + | group@0 { | ||
| + | ucast_queue = < | ||
| + | ucast_loop_pri = < | ||
| + | mcast_queue = < | ||
| + | mcast_loop_pri = < | ||
| + | cfg = <36 0 48 0 48>; | ||
| + | }; | ||
| + | }; | ||
| + | }; | ||
| + | port@2 { | ||
| + | port_id = < | ||
| + | l1scheduler { | ||
| + | group@0 { | ||
| + | sp = < | ||
| + | cfg = <0 12 0 12>; | ||
| + | }; | ||
| + | group@1 { | ||
| + | sp = < | ||
| + | cfg = <1 13 1 13>; | ||
| + | }; | ||
| + | }; | ||
| + | l0scheduler { | ||
| + | group@0 { | ||
| + | ucast_queue = < | ||
| + | ucast_loop_pri = < | ||
| + | mcast_queue = < | ||
| + | mcast_loop_pri = < | ||
| + | cfg = <40 0 64 0 64>; | ||
| + | }; | ||
| + | }; | ||
| + | }; | ||
| + | port@3 { | ||
| + | port_id = < | ||
| + | l1scheduler { | ||
| + | group@0 { | ||
| + | sp = < | ||
| + | cfg = <0 16 0 16>; | ||
| + | }; | ||
| + | group@1 { | ||
| + | sp = < | ||
| + | cfg = <1 17 1 17>; | ||
| + | }; | ||
| + | }; | ||
| + | l0scheduler { | ||
| + | group@0 { | ||
| + | ucast_queue = < | ||
| + | ucast_loop_pri = < | ||
| + | mcast_queue = < | ||
| + | mcast_loop_pri = < | ||
| + | cfg = <44 0 80 0 80>; | ||
| + | }; | ||
| + | }; | ||
| + | }; | ||
| + | port@4 { | ||
| + | port_id = < | ||
| + | l1scheduler { | ||
| + | group@0 { | ||
| + | sp = < | ||
| + | cfg = <0 20 0 20>; | ||
| + | }; | ||
| + | group@1 { | ||
| + | sp = < | ||
| + | cfg = <1 21 1 21>; | ||
| + | }; | ||
| + | }; | ||
| + | l0scheduler { | ||
| + | group@0 { | ||
| + | ucast_queue = < | ||
| + | ucast_loop_pri = < | ||
| + | mcast_queue = < | ||
| + | mcast_loop_pri = < | ||
| + | cfg = <48 0 96 0 96>; | ||
| + | }; | ||
| + | }; | ||
| + | }; | ||
| + | port@5 { | ||
| + | port_id = < | ||
| + | l1scheduler { | ||
| + | group@0 { | ||
| + | sp = < | ||
| + | cfg = <0 24 0 24>; | ||
| + | }; | ||
| + | group@1 { | ||
| + | sp = < | ||
| + | cfg = <1 25 1 25>; | ||
| + | }; | ||
| + | }; | ||
| + | l0scheduler { | ||
| + | group@0 { | ||
| + | ucast_queue = < | ||
| + | ucast_loop_pri = < | ||
| + | mcast_queue = < | ||
| + | mcast_loop_pri = < | ||
| + | cfg = <52 0 112 0 112>; | ||
| + | }; | ||
| + | }; | ||
| + | }; | ||
| + | port@6 { | ||
| + | port_id = < | ||
| + | l1scheduler { | ||
| + | group@0 { | ||
| + | sp = < | ||
| + | cfg = <0 28 0 28>; | ||
| + | }; | ||
| + | group@1 { | ||
| + | sp = < | ||
| + | cfg = <1 29 1 29>; | ||
| + | }; | ||
| + | }; | ||
| + | l0scheduler { | ||
| + | group@0 { | ||
| + | ucast_queue = < | ||
| + | ucast_loop_pri = < | ||
| + | mcast_queue = < | ||
| + | mcast_loop_pri = < | ||
| + | cfg = <56 0 128 0 128>; | ||
| + | }; | ||
| + | }; | ||
| + | }; | ||
| + | port@7 { | ||
| + | port_id = < | ||
| + | l1scheduler { | ||
| + | group@0 { | ||
| + | sp = < | ||
| + | cfg = <0 32 0 32>; | ||
| + | }; | ||
| + | group@1 { | ||
| + | sp = < | ||
| + | cfg = <1 33 1 33>; | ||
| + | }; | ||
| + | }; | ||
| + | l0scheduler { | ||
| + | group@0 { | ||
| + | ucast_queue = < | ||
| + | ucast_loop_pri = < | ||
| + | mcast_queue = < | ||
| + | cfg = <60 0 144 0 144>; | ||
| + | }; | ||
| + | }; | ||
| + | }; | ||
| + | }; | ||
| + | }; | ||
| + | |||
| + | dp1 { | ||
| + | device_type = " | ||
| + | compatible = " | ||
| + | qcom,id = < | ||
| + | reg = < | ||
| + | qcom, | ||
| + | local-mac-address = [000000000000]; | ||
| + | qcom, | ||
| + | qcom, | ||
| + | phy-mode = " | ||
| + | }; | ||
| + | |||
| + | dp2 { | ||
| + | device_type = " | ||
| + | compatible = " | ||
| + | qcom,id = < | ||
| + | reg = < | ||
| + | qcom, | ||
| + | local-mac-address = [000000000000]; | ||
| + | qcom, | ||
| + | qcom, | ||
| + | phy-mode = " | ||
| + | }; | ||
| + | |||
| + | dp3 { | ||
| + | device_type = " | ||
| + | compatible = " | ||
| + | qcom,id = < | ||
| + | reg = < | ||
| + | qcom, | ||
| + | local-mac-address = [000000000000]; | ||
| + | qcom, | ||
| + | qcom, | ||
| + | phy-mode = " | ||
| + | }; | ||
| + | |||
| + | dp4 { | ||
| + | device_type = " | ||
| + | compatible = " | ||
| + | qcom,id = < | ||
| + | reg = < | ||
| + | qcom, | ||
| + | local-mac-address = [000000000000]; | ||
| + | qcom, | ||
| + | qcom, | ||
| + | phy-mode = " | ||
| + | }; | ||
| + | |||
| + | dp5 { | ||
| + | device_type = " | ||
| + | compatible = " | ||
| + | qcom,id = < | ||
| + | reg = < | ||
| + | qcom, | ||
| + | local-mac-address = [000000000000]; | ||
| + | qcom, | ||
| + | qcom, | ||
| + | phy-mode = " | ||
| + | }; | ||
| + | |||
| + | dp6 { | ||
| + | device_type = " | ||
| + | compatible = " | ||
| + | qcom,id = < | ||
| + | reg = < | ||
| + | qcom, | ||
| + | local-mac-address = [000000000000]; | ||
| + | qcom, | ||
| + | qcom, | ||
| + | phy-mode = " | ||
| + | }; | ||
| + | |||
| + | gpio_keys { | ||
| + | compatible = " | ||
| + | |||
| + | button@1 { | ||
| + | label = " | ||
| + | linux, | ||
| + | gpios = <& | ||
| + | linux, | ||
| + | }; | ||
| + | }; | ||
| + | |||
| + | fans { | ||
| + | compatible = " | ||
| + | pinctrl-0 = <& | ||
| + | pinctrl-names = " | ||
| + | fan1 { | ||
| + | label = " | ||
| + | gpios = <& | ||
| + | }; | ||
| + | fan2 { | ||
| + | label = " | ||
| + | gpios = <& | ||
| + | }; | ||
| + | fan3 { | ||
| + | label = " | ||
| + | gpios = <& | ||
| + | }; | ||
| + | }; | ||
| + | |||
| + | antennas { | ||
| + | compatible = " | ||
| + | pinctrl-0 = <& | ||
| + | pinctrl-names = " | ||
| + | ext_antenna_en { | ||
| + | label = " | ||
| + | gpios = <& | ||
| + | }; | ||
| + | }; | ||
| + | |||
| + | modem { | ||
| + | compatible = " | ||
| + | pinctrl-0 = <& | ||
| + | pinctrl-names = " | ||
| + | modem_reset { | ||
| + | label = " | ||
| + | gpios = <& | ||
| + | }; | ||
| + | |||
| + | w_disable { | ||
| + | label = " | ||
| + | gpios = <& | ||
| + | }; | ||
| + | }; | ||
| + | |||
| + | leds { | ||
| + | compatible = " | ||
| + | |||
| + | red { | ||
| + | gpios = <& | ||
| + | default-state = " | ||
| + | }; | ||
| + | green { | ||
| + | gpios = <& | ||
| + | default-state = " | ||
| + | }; | ||
| + | blue { | ||
| + | gpios = <& | ||
| + | default-state = " | ||
| + | }; | ||
| + | |||
| + | yellow_mix { | ||
| + | default-state = " | ||
| + | virtuals = <0>, <1>, < | ||
| + | }; | ||
| + | blue_mix { | ||
| + | default-state = " | ||
| + | virtuals = <1>, <2>, < | ||
| + | }; | ||
| + | }; | ||
| + | }; | ||
| + | |||
| + | & | ||
| + | pinctrl-0 = <& | ||
| + | pinctrl-names = " | ||
| + | status = " | ||
| + | }; | ||
| + | |||
| + | |||
| + | & | ||
| + | pinctrl-0 = <& | ||
| + | pinctrl-names = " | ||
| + | status = " | ||
| + | }; | ||
| + | |||
| + | & | ||
| + | status = " | ||
| + | }; | ||
| + | |||
| + | & | ||
| + | status = " | ||
| + | }; | ||
| + | |||
| + | & | ||
| + | status = " | ||
| + | }; | ||
| + | |||
| + | & | ||
| + | status = " | ||
| + | }; | ||
| + | |||
| + | & | ||
| + | status = " | ||
| + | }; | ||
| + | |||
| + | &usb3_0 { | ||
| + | status = " | ||
| + | }; | ||
| + | |||
| + | &usb3_1 { | ||
| + | status = " | ||
| + | }; | ||
| + | |||
| + | & | ||
| + | status = " | ||
| + | }; | ||
| + | |||
| + | &crypto { | ||
| + | status = " | ||
| + | }; | ||
| + | |||
| + | &sdhc_1 { | ||
| + | qcom, | ||
| + | 192000000 384000000>; | ||
| + | qcom, | ||
| + | qcom, | ||
| + | status = " | ||
| + | }; | ||
| + | |||
| + | & | ||
| + | status = " | ||
| + | }; | ||
| + | |||
| + | &nand { | ||
| + | pinctrl-0 = <& | ||
| + | pinctrl-names = " | ||
| + | status = " | ||
| + | }; | ||
| + | |||
| + | &pcie0 { | ||
| + | interrupts-extended = <& | ||
| + | <& | ||
| + | <& | ||
| + | <& | ||
| + | <& | ||
| + | <& | ||
| + | <& | ||
| + | |||
| + | interrupt-names = " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | |||
| + | pinctrl-0 = <& | ||
| + | pinctrl-names = " | ||
| + | link_retries_count = < | ||
| + | use_delay = < | ||
| + | }; | ||
| + | |||
| + | &pcie1 { | ||
| + | status = " | ||
| + | }; | ||
| + | |||
| + | & | ||
| + | status = " | ||
| + | }; | ||
| + | |||
| + | & | ||
| + | status = " | ||
| + | }; | ||
| + | |||
| + | &ledc { | ||
| + | pinctrl-0 = <& | ||
| + | pinctrl-names = " | ||
| + | status = " | ||
| + | led0 { | ||
| + | label = " | ||
| + | linux, | ||
| + | }; | ||
| + | led1 { | ||
| + | label = " | ||
| + | linux, | ||
| + | }; | ||
| + | led2 { | ||
| + | label = " | ||
| + | linux, | ||
| + | }; | ||
| + | led3 { | ||
| + | label = " | ||
| + | linux, | ||
| + | }; | ||
| + | led4 { | ||
| + | label = " | ||
| + | linux, | ||
| + | }; | ||
| + | led5 { | ||
| + | label = " | ||
| + | linux, | ||
| + | }; | ||
| + | led6 { | ||
| + | label = " | ||
| + | linux, | ||
| + | }; | ||
| + | led7 { | ||
| + | label = " | ||
| + | linux, | ||
| + | }; | ||
| + | led8 { | ||
| + | label = " | ||
| + | linux, | ||
| + | }; | ||
| + | led9 { | ||
| + | label = " | ||
| + | linux, | ||
| + | }; | ||
| + | led10 { | ||
| + | label = " | ||
| + | linux, | ||
| + | }; | ||
| + | led11 { | ||
| + | label = " | ||
| + | linux, | ||
| + | }; | ||
| + | led12 { | ||
| + | label = " | ||
| + | linux, | ||
| + | }; | ||
| + | }; | ||
| + | |||
| + | & | ||
| + | mhi-wdt-panic-enable; | ||
| + | }; | ||
| + | |||
| + | & | ||
| + | |||
| + | # | ||
| + | # | ||
| + | |||
| + | status = " | ||
| + | aliases { | ||
| + | mhi-netdev0 = & | ||
| + | mhi_netdev2 = & | ||
| + | }; | ||
| + | mhi_0: qcom,mhi@0 { | ||
| + | reg = <0 0 0 0 0 >; | ||
| + | |||
| + | ap2mdm = < | ||
| + | mdm2ap = < | ||
| + | |||
| + | /* controller specific configuration */ | ||
| + | qcom, | ||
| + | |||
| + | |||
| + | /* mhi bus specific settings */ | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | |||
| + | mhi_channels: | ||
| + | # | ||
| + | # | ||
| + | |||
| + | mhi_chan@0 { | ||
| + | reg = < | ||
| + | label = " | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,ee = < | ||
| + | }; | ||
| + | |||
| + | mhi_chan@1 { | ||
| + | reg = < | ||
| + | label = " | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,ee = < | ||
| + | }; | ||
| + | |||
| + | mhi_chan@4 { | ||
| + | reg = < | ||
| + | label = " | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,ee = < | ||
| + | }; | ||
| + | |||
| + | mhi_chan@5 { | ||
| + | reg = < | ||
| + | label = " | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,ee = < | ||
| + | }; | ||
| + | |||
| + | mhi_chan@14 { | ||
| + | reg = < | ||
| + | label = " | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,ee = < | ||
| + | }; | ||
| + | |||
| + | mhi_chan@15 { | ||
| + | reg = < | ||
| + | label = " | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,ee = < | ||
| + | }; | ||
| + | |||
| + | mhi_chan@16 { | ||
| + | reg = < | ||
| + | label = " | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,ee = < | ||
| + | }; | ||
| + | |||
| + | mhi_chan@17 { | ||
| + | reg = < | ||
| + | label = " | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,ee = < | ||
| + | }; | ||
| + | |||
| + | mhi_chan@18 { | ||
| + | reg = < | ||
| + | label = " | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,ee = < | ||
| + | }; | ||
| + | |||
| + | mhi_chan@19 { | ||
| + | reg = < | ||
| + | label = " | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,ee = < | ||
| + | mhi, | ||
| + | }; | ||
| + | |||
| + | mhi_chan@20 { | ||
| + | reg = < | ||
| + | label = " | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,ee = < | ||
| + | mhi, | ||
| + | }; | ||
| + | |||
| + | mhi_chan@21 { | ||
| + | reg = < | ||
| + | label = " | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,ee = < | ||
| + | mhi, | ||
| + | mhi, | ||
| + | }; | ||
| + | |||
| + | mhi_chan@46 { | ||
| + | reg = < | ||
| + | label = " | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,ee = < | ||
| + | }; | ||
| + | |||
| + | mhi_chan@47 { | ||
| + | reg = < | ||
| + | label = " | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,ee = < | ||
| + | }; | ||
| + | |||
| + | mhi_chan@100 { | ||
| + | reg = < | ||
| + | label = " | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,ee = < | ||
| + | mhi, | ||
| + | }; | ||
| + | |||
| + | mhi_chan@101 { | ||
| + | reg = < | ||
| + | label = " | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,ee = < | ||
| + | }; | ||
| + | |||
| + | mhi_chan@102 { | ||
| + | reg = < | ||
| + | label = " | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,ee = < | ||
| + | mhi, | ||
| + | mhi, | ||
| + | }; | ||
| + | |||
| + | }; | ||
| + | |||
| + | mhi_events: | ||
| + | # | ||
| + | # | ||
| + | |||
| + | mhi_event@0 { | ||
| + | reg = < | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,msi = < | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | }; | ||
| + | |||
| + | mhi_event@1 { | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,msi = < | ||
| + | mhi, | ||
| + | mhi, | ||
| + | }; | ||
| + | |||
| + | mhi_event@2 { | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,msi = < | ||
| + | mhi, | ||
| + | mhi, | ||
| + | }; | ||
| + | |||
| + | mhi_event@3 { | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,msi = < | ||
| + | mhi, | ||
| + | mhi, | ||
| + | }; | ||
| + | |||
| + | mhi_event@4 { | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,msi = < | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | }; | ||
| + | |||
| + | mhi_event@5 { | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,msi = < | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | }; | ||
| + | |||
| + | |||
| + | mhi_event@6 { | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,msi = < | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | }; | ||
| + | |||
| + | mhi_event@7 { | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,msi = < | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | }; | ||
| + | |||
| + | |||
| + | mhi_event@8 { | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,msi = < | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | }; | ||
| + | |||
| + | mhi_event@9 { | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,msi = < | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | }; | ||
| + | |||
| + | mhi_event@10 { | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,msi = < | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | }; | ||
| + | |||
| + | mhi_event@11 { | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,msi = < | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | }; | ||
| + | |||
| + | mhi_event@12 { | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,msi = < | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | }; | ||
| + | |||
| + | mhi_event@13 { | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,msi = < | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi, | ||
| + | }; | ||
| + | }; | ||
| + | |||
| + | mhi_devices: | ||
| + | # | ||
| + | # | ||
| + | |||
| + | mhi_netdev_0: | ||
| + | reg = < | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,mru = < | ||
| + | mhi, | ||
| + | }; | ||
| + | |||
| + | mhi_rmnet@1 { | ||
| + | reg = < | ||
| + | mhi, | ||
| + | mhi,mru = < | ||
| + | mhi, | ||
| + | }; | ||
| + | |||
| + | mhi_netdev_2: | ||
| + | reg = < | ||
| + | mhi, | ||
| + | mhi, | ||
| + | mhi,mru = < | ||
| + | mhi, | ||
| + | }; | ||
| + | |||
| + | mhi_qrtr { | ||
| + | mhi, | ||
| + | qcom, | ||
| + | }; | ||
| + | }; | ||
| + | |||
| + | }; | ||
| + | }; | ||
| + | |||
| + | </ | ||
| + | </ | ||
| + | |||
| + | |||
| + | ===== Notes ===== | ||
| + | There is potential to exploit the HTTP U-Boot recovery method with a buffer overflow to run arbitrary shellcode: | ||
| + | https:// | ||
| + | |||
| + | The unit has 2x OS images on NAND flash, one image is for normal operation and the other one is for recovering | ||
| Line 2536: | Line 4621: | ||
| ===== Tags ===== | ===== Tags ===== | ||
| [[meta: | [[meta: | ||
| - | {{tag> | + | {{tag> |
| + | |||
| + | |||