小米互联网音响拆解与浅析
本帖最后由 瘦网虫 于 2019-7-26 21:23 编辑最近入了二手小米互联网音响一台,听了一天觉得不错,拆之以示敬意。
https://gss1.bdstatic.com/9vo3dSag_xI4khGkpoWK1HF6hhy/baike/c0%3Dbaike80%2C5%2C5%2C80%2C26/sign=b08d82e58b025aafc73f76999a84c001/14ce36d3d539b6005b6dcb92e050352ac65cb770.jpg
拆机帖网络搜下,太多。
例如:
小米互联网音箱,拆开一探究竟,看如何发烧|拆机乐园 - 数码之家
http://bbs.mydigit.cn/read.php?tid=2078819
别人都是拆了就装回去了,但是我不,因为这不符合极客的态度。
光是看看可不能满足好奇心,继续观察主板,看看有没有留下什么接口,毕竟是“为发烧而生”的。
观察了一圈,唯一的2个接口也就在这里了:
放大了看看:
一个三针,一个7针。先瞎猜一下,3针的是uart端口,7针的是jtag端口,反正猜错了也不影响什么。
焊盘已经被封死,不过这难不倒现在的我了,焊它几根线出来!
黑色线是GND,另外两个呢,测试下呗。
不是很美观,但是这也很极客了。
既然猜了是串口,先串口助手帮助一下:
居然一次就猜对了,通讯速率115200,8n1格式。
上putty,表示下敬意,启动后的界面:
嗯。是OpenWrt系统没跑了,然后怎么玩呢?
待续。。。 TE : 14341
BT : 19:45:35 Mar 14 2018
0x000000c8
00=0x00000000
01=0x00000000
02=0x00000320
03=0x00000180
04=0x00000320
05=0x00000000
06=0x00000000
07=0x000000c8
08=0x00000000
09=0x00000000
0a=0x00000000
0b=0x00000000
0c=0x00000000
0d=0x00000000
0e=0x00000000
0f=0x00000000
10=0x00000000
11=0x00000000
12=0x00000000
13=0x00000000
14=0x00000018
15=0x00000000
16=0x00000000
17=0x00000000
18=0x00000000
19=0x00000000
1a=0x00000000
1b=0x00000000
1c=0x00000000
1d=0x00000000
1e=0x00000180
1f=0x00000320
20=0x00000000
21=0x00000000
22=0x00000000
23=0x00000000
24=0x00000000
25=0x00000000
26=0x00000000
27=0x00000000
28=0x00000000
29=0x00000000
2a=0x00000000
2b=0x00000000
2c=0x00000000
2d=0x00000000
CPU clock is 800MHz
wait pll-0x03 target is 01d4 now it is 0x000001d4
wait pll-0x1e target is 01d4 now it is 0x000001d4
set ddr clock ok!
Mar 14 201819:45:35PHY trainning Result=0x00000000
Stage 00 Result 00000000
Stage 01 Result 00000000
Stage 02 Result 00000000
DDR init use : 30955 us
HHH
Boot From SDIO C
ucl decompress
decompress true
0x12345678
Boot from internal device 1st SDIO C
TE : 1252668
System Started
U-boot-00000-gf7838d6(m3_f40@f7838d60) (Mar 14 2018 - 19:45:31)
aml_rtc_init
DRAM:128 MiB
relocation Offset is: 05df0000
show partition table:
part: 0, name : dtb, size : 100000
part: 1, name : boot, size : 800000
part: 2, name : system, size : 8000000
part: 3, name : dtb1, size : 100000
part: 4, name : boot1, size : 800000
part: 5, name : system1, size : 8000000
part: 6, name : cache, size : 8000000
part: 7, name : userdata, size : 8000000
part: 8, name : media, size : end
aml_card_type=0x200
MMC: add mmc dev_num=0, port=1, if_type=6
add mmc dev_num=1, port=2, if_type=6
SDIO Port B: 0, SDIO Port C: 1
reboot times 0
reboot times 1
enter emmc boot
SDIO Port C:1, if_type=6, initialized OK!
skip cache partition.
Partition table get from SPL is :
name offset size flag
===================================================================================
0: bootloader 0 100000 0
1: reserved 100000 100000 0
2: cache 200000 8000000 1
3: env 8200000 100000 0
4: dtb 8300000 100000 1
5: boot 8400000 800000 1
6: system 8c00000 8000000 1
7: dtb1 10c00000 100000 1
8: boot1 10d00000 800000 1
9: system1 11500000 8000000 1
10: userdata 19500000 8000000 1
11: media 21500000 1b0b00000 4
mmc read lba=0x800, blocks=0x1
mmc read lba=0x801, blocks=0x1
mmc_read_partition_tbl: mmc read partition OK!
eMMC/TSD partition table have been checked OK!
i=0,register --- emmc_key
device_boot_flag=2
MMC BOOT, emmc_env_relocate_spec : env_relocate_spec 74
set_storage_device_flag: store 2
In: serial
Out: serial
Err: serial
done.
init suspend firmware done. (ret:0)
## Error: "upgrade_check" not defined
Hit Enter key to stop autoboot -- :0
exit abortboot: 0
## Booting kernel from Legacy Image at 82000000 ...
Image Name: Linux-3.10.33
Image Type: ARM Linux Kernel Image (gzip compressed)
Data Size: 4079704 Bytes = 3.9 MiB
Load Address: 80008000
Entry Point:80008000
Verifying Checksum ... OK
## Flattened Device Tree blob at 83000000
Booting using the fdt blob at 0x83000000
Uncompressing Kernel Image ... OK
uboot time: 3585776 us.
machid from environment: 0xb8e
EFUSE machid is not set.
Using machid 0xb8e from environment
From device tree /memory/ node aml_reserved_end property, for relocate ramdisk and fdt, relocate_addr: 0x84007001
Loading Device Tree to 84000000, end 84006238 ... OK
Starting kernel ...
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 3.10.33 (jenkins@3023ab9de008) (gcc version 4.8.3 (OpenWrt/Linaro GCC 4.8-2014.04 unknown) ) #1 PREEMPT Wed Sep 26 02:58:29 UTC 2018
[ 0.000000] CPU: ARMv7 Processor revision 4 (ARMv7), cr=10c5387d
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[ 0.000000] Machine: Amlogic Meson3, model: AMLOGIC
[ 0.000000] physical memory start address is 0x80000000
[ 0.000000] reserved_end is 853fffff
[ 0.000000]reserved 0x87ef0000-0x87f00000 1M memory for firmware
[ 0.000000] Total memory is128 MiB
[ 0.000000] Reserved low memory from 0x85000000 to 0x853fffff, size: 4 MiB
[ 0.000000]mesonfb0(low) : 0x85100000 - 0x85300000 (2 MiB)
[ 0.000000]mesonfb1(low) : 0x85300000 - 0x85400000 (1 MiB)
[ 0.000000] storage_flag=2
[ 0.000000] Memory policy: ECC disabled, Data cache writeback
[ 0.000000] On node 0 totalpages: 31488
[ 0.000000] free_area_init_node: node 0, pgdat c07c2708, node_mem_map c081c000
[ 0.000000] Normal zone: 254 pages used for memmap
[ 0.000000] Normal zone: 0 pages reserved
[ 0.000000] Normal zone: 31488 pages, LIFO batch:7
[ 0.000000] CPU: All CPU(s) started in SVC mode.
[ 0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768
[ 0.000000] pcpu-alloc: 0
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on.Total pages: 31234
[ 0.000000] Kernel command line: root=/dev/mmcblk0p10 rootfstype=ext4 rootwait init=/sbin/init console=ttyS0,115200n8 no_console_suspend debug nohlt a9_clk=600M clk81=200M storage=2
[ 0.000000] PID hash table entries: 512 (order: -1, 2048 bytes)
[ 0.000000] Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
[ 0.000000] Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
[ 0.000000] Memory: 80MB 43MB = 123MB total
[ 0.000000] Memory: 116416k/116416k available, 9536k reserved, 0K highmem
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] vector: 0xffff0000 - 0xffff1000 ( 4 kB)
[ 0.000000] fixmap: 0xfff00000 - 0xfffe0000 ( 896 kB)
[ 0.000000] vmalloc : 0xc8000000 - 0xff000000 ( 880 MB)
[ 0.000000] lowmem: 0xc0000000 - 0xc7f00000 ( 127 MB)
[ 0.000000] pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
[ 0.000000] modules : 0xbf000000 - 0xbfe00000 (14 MB)
[ 0.000000] .text : 0xc0008000 - 0xc0749090 (7429 kB)
[ 0.000000] .init : 0xc074a000 - 0xc077684c ( 179 kB)
[ 0.000000] .data : 0xc0778000 - 0xc07c31c0 ( 301 kB)
[ 0.000000] .bss : 0xc07c31c0 - 0xc081ba88 ( 355 kB)
[ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[ 0.000000] Preemptible hierarchical RCU implementation.
[ 0.000000] NR_IRQS:128
[ 0.000000] sched_clock: 32 bits at 1000kHz, resolution 1000ns, wraps every 4294967ms
[ 0.000000] Global timer: MESON TIMER-A (c0788b80) initialized
[ 0.000000] Disable timerA
[ 0.000000] Console: colour dummy device 80x30
[ 0.000000] meson_serial_console_setup
[ 0.000000] console enabled
[ 0.277401] Calibrating delay loop... 795.44 BogoMIPS (lpj=3977216)
[ 0.320062] pid_max: default: 32768 minimum: 301
[ 0.321839] Security Framework initialized
[ 0.325807] SELinux:Initializing.
[ 0.329321] SELinux:Starting in permissive mode
[ 0.334057] Mount-cache hash table entries: 512
[ 0.339419] CPU: Testing write buffer coherency: ok
[ 0.343811] Setting up static identity map for 0xc0587eb8 - 0xc0587f10
[ 0.350107] L310 cache controller enabled
[ 0.353899] l2x0: 8 ways, 512 sets, CACHE_ID 0x4100a0c8,Cache size: 131072 B
[ 0.361142] AUX_CTRL 0x3e420000, PERFETCH_CTRL 0x30000006, POWER_CTRL0x00000000
[ 0.369121] TAG_LATENCY 0x00000111, DATA_LATENCY 0x00000111
[ 0.376232] devtmpfs: initialized
[ 0.380096] clkrate [ xtal ] : 24000000
[ 0.382437] clkrate [ pll_sys ] : 800000000
[ 0.386764] clkrate [ pll_fixed ] : 800000000
[ 0.391217] clkrate [ pll_ddr ] : 468000000
[ 0.395462] clkrate [ a9_clk ] : 800000000
[ 0.399637] clkrate [ clk81] : 200000000
[ 0.404910] pinctrl core: initialized pinctrl subsystem
[ 0.409151] NET: Registered protocol family 16
[ 0.414112] DMA: preallocated 256 KiB pool for atomic coherent allocations
[ 0.434534] amlogic_gpio gpio: Probed amlogic meson3 GPIO driver
[ 0.435261] register lm device lm-root
[ 0.438959] register lm device lm0
[ 0.443219] Init pinux probe!
[ 0.445522] pinmux-m3 pinmux: Probed amlogic pinctrl driver
[ 0.451205] aml_i2c version: 20140813
[ 0.454326] plat->state_name:default
[ 0.457800] master_no = 1, master_regs=f1108500
[ 0.462920] aml-i2c i2c-A: add adapter aml_i2c_adap1(c79520a8)
[ 0.468141] aml-i2c i2c-A: aml i2c bus driver.
[ 0.526615] bio: create slab <bio-0> at 0
[ 0.528420] SCSI subsystem initialized
[ 0.529295] usbcore: registered new interface driver usbfs
[ 0.535110] usbcore: registered new interface driver hub
[ 0.539847] usbcore: registered new device driver usb
[ 0.549962] Advanced Linux Sound Architecture Driver Initialized.
[ 0.552054] Bluetooth: Core ver 2.16
[ 0.554536] NET: Registered protocol family 31
[ 0.558662] Bluetooth: HCI device and connection manager initialized
[ 0.565287] Bluetooth: HCI socket layer initialized
[ 0.569891] Bluetooth: L2CAP socket layer initialized
[ 0.575042] Bluetooth: SCO socket layer initialized
[ 0.580770] cfg80211: Calling CRDA to update world regulatory domain
[ 0.587758] Switching to clocksource Timer-E
[ 0.622212] NET: Registered protocol family 2
[ 0.622761] TCP established hash table entries: 1024 (order: 1, 8192 bytes)
[ 0.627918] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.634763] TCP: Hash tables configured (established 1024 bind 1024)
[ 0.640849] TCP: reno registered
[ 0.643828] UDP hash table entries: 256 (order: 0, 4096 bytes)
[ 0.649655] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[ 0.656181] NET: Registered protocol family 1
[ 0.660366] wifi_dev_probe
[ 0.663049] wifi_dt : interrupt_pin=GPIOA_17
[ 0.667227] wifi_dt : irq_num=null
[ 0.670612] wifi_dt : irq_trigger_type=GPIO_IRQ_HIGH
[ 0.675602] wifi_dt : power_on_pin=GPIOX_10
[ 0.679750] wifi_dt : clock_32k_pin=GPIOAO_11
[ 0.684118] interrupt_pin=153, irq_num=4, irq_trigger_type=0, power_on_pin=33,clock_32k_pin=175
[ 0.695188] audit: initializing netlink socket (disabled)
[ 0.698237] type=2000 audit(0.630:1): initialized
[ 0.716226] VFS: Disk quotas dquot_6.5.2
[ 0.716645] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[ 0.725326] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[ 0.727515] exFAT: Core Version 1.2.4
[ 0.730521] exFAT: FS Version 1.2.4
[ 0.735043] NTFS driver 2.1.30 .
[ 0.739016] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[ 0.749311] fuse init (API version 7.22)
[ 0.753354] msgmni has been set to 227
[ 0.755713] SELinux:Registering netfilter hooks
[ 0.762961] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 252)
[ 0.767763] io scheduler noop registered
[ 0.771862] io scheduler deadline registered
[ 0.776317] io scheduler cfq registered (default)
[ 0.780955] meson3-pwm meson_pwm: pinctrl_name = meson3-pwm1
[ 0.786291] meson3-pwm meson_pwm: register pwm device.. meson_pwm_probe
[ 1.005066] loop: module loaded
[ 1.007041] tun: Universal TUN/TAP device driver, 1.6
[ 1.007615] tun: (C) 1999-2004 Max Krasnyansky <[email protected]>
[ 1.014722] PPP generic driver version 2.4.2
[ 1.018714] PPP BSD Compression module registered
[ 1.023130] PPP Deflate Compression module registered
[ 1.027815] PPP MPPE Compression module registered
[ 1.032747] NET: Registered protocol family 24
[ 1.038129] usbcore: registered new interface driver usb-storage
[ 1.044048] mousedev: PS/2 mouse device common for all mice
[ 1.049722] i2c /dev entries driver
[ 1.052893] Bluetooth: HCI UART driver ver 2.2
[ 1.056511] Bluetooth: HCI H4 protocol initialized
[ 1.063254] zram: Created 1 device(s) ...
[ 1.065771] ashmem: initialized
[ 1.068847] aml_wdt_driver_init,303
[ 1.072126] ** disable watchdog
[ 1.075207] one-secod=100000,min_timeout=1,max_timeout=41,default_timeout=10,reset_watchdog_method=0,reset_watchdog_time=2,shutdown_timeout=10,firmware_timeout=6,suspend_timeout=6
[ 1.092041] AML Watchdog Timer probed done
[ 1.095612] keys===========================================
[ 1.100941] keys_devno=fa00000
[ 1.104509] securitykey: device aml_keys created
[ 1.108471] amlkeys=0
[ 1.111075] platform_driver_register--aml_keys_driver--------------------
[ 1.118198] set uart_ao pinmux use pinctrl subsystem
[ 1.122716] P_AO_RTI_PIN_MUX_REG:1800
[ 1.126142] start uart_ao_ttyS0:(irq = 90)
[ 1.130198] register uart_ao ok
[ 1.134040] set uart_a pinmux use pinctrl subsystem
[ 1.138202] P_AO_RTI_PIN_MUX_REG:1800
[ 1.142032] start uart_a_ttyS1:(irq = 26)
[ 1.145858] register uart_a ok
[ 1.149215] dwc_otg: version 2.20a 13-Jan-2012
[ 1.153522] dwc_otg lm-root: dwc_otg_driver_probe(c794c000)
[ 1.158913] dwc_otg_driver_probe NOT match
[ 1.163098] dwc_otg lm0: dwc_otg_driver_probe(c794c200)
[ 1.168259] usb0: type: 1, speed: 0, config: 0, dma: 0, id: 1, phy: f1108404, ctrl: f9040000
[ 1.176782] USB use clock source: XTAL input
[ 1.183363] dwc_otg lm0: core work at High speed.
[ 1.185619] dwc_otg lm0: DMA config: DISABLE
[ 1.600704] dwc_otg lm0: Working on port type = HOST
[ 1.600750] DWC_otg: Using DMA mode
[ 1.603517] dwc_otg lm0: DWC OTG Controller
[ 1.607716] dwc_otg lm0: new USB bus registered, assigned bus number 1
[ 1.614280] dwc_otg lm0: irq 30, io mem 0x00000000
[ 1.619034] DWC_otg: Init: Port Power? op_state=1
[ 1.623720] DWC_otg: Init: Power Port (0)
[ 1.627698] set usb port power on (board gpio 143)!
[ 1.633726] hub 1-0:1.0: USB hub found
[ 1.636341] hub 1-0:1.0: 1 port detected
[ 1.640892] Amlogic nand flash Kernel driver, Version K1.06.015 (c) 2010 Amlogic Inc.
[ 1.648057] ####Version of Uboot must be newer than U1.06.011!!!!!
[ 1.654478] ===========================================m3_nand_probe:1306,nand device tree ok,dev-name:nand2
[ 1.664177] m3_get_nand_platform:1750,find enable pad finished
[ 1.669981] m3_get_nand_platform:1763,find busy_pad finished
[ 1.675713] m3_get_nand_platform:1775,find timming_mode finished
[ 1.681690] m3_get_nand_platform:1787,find bch_mode finished
[ 1.687295] m3_get_nand_platform:1799,find plane_modefinished
[ 1.693073] m3_get_nand_platform:1855,parse dts
[ 1.697564] chip->controller=c080f740
[ 1.701245] ###plat->platform_nand_data.chip.nr_chips =1
[ 1.706530] init bus_cycle=17, bus_timing=10, start_cycle=10, end_cycle=10,system=5.0ns
[ 1.714753] No NAND device found
[ 1.717924] NAND device id: 8 e8 e8 e8 e8 e8
[ 1.722141] No NAND device found!!!
[ 1.725610] m3_get_nand_platform:1750,find enable pad finished
[ 1.731535] m3_get_nand_platform:1763,find busy_pad finished
[ 1.737061] m3_get_nand_platform:1775,find timming_mode finished
[ 1.743095] m3_get_nand_platform:1787,find bch_mode finished
[ 1.748717] m3_get_nand_platform:1799,find plane_modefinished
[ 1.754491] m3_get_nand_platform:1855,parse dts
[ 1.758984] chip->controller=c080f740
[ 1.762653] ###plat->platform_nand_data.chip.nr_chips =1
[ 1.767950] init bus_cycle=17, bus_timing=10, start_cycle=10, end_cycle=10,system=5.0ns
[ 1.776118] No NAND device found
[ 1.779335] NAND device id: 8 e8 e8 e8 e8 e8
[ 1.783549] No NAND device found!!!
[ 1.787457] efuse===========================================
[ 1.793419] efuse: device efuse created
[ 1.796743] efuse--------------------------------------------
[ 1.802351] SARADC Driver init.
[ 1.805693] __saradc_probe__
[ 1.950805] saradc calibration: ref_val = 511
[ 1.950837] saradc calibration: ref_nominal = 512
[ 1.954216] saradc calibration: coef = 4096
[ 1.958659] ADC Keypad Driver init.
[ 1.962091] ==kp_probe==
[ 1.964427] chan #4 used for ADC key
[ 1.967964] volup key(103) registed.
[ 1.971608] voldn key(108) registed.
[ 1.975098] chann key(106) registed.
[ 1.978665] chanp key(105) registed.
[ 1.982668] input: adc_keypad as /devices/platform/adc_keypad.4/input/input0
[ 1.989739] adc keypad register input device completed.
[ 1.994739] adc keypad major:248
[ 1.998775] Encoder Keypad Driver init.
[ 2.001932] Enter encoder_key_probe
[ 2.005274] encoder_key_probe: key_num = 4
[ 2.009290] encoder_key_probe: key->plus_code = 75
[ 2.014454] encoder_key_probe: key->minus_code = 77
[ 2.019469] encoder_key_probe: key->A_pin = 150
[ 2.024349] encoder_key_probe: key->B_pin = 149
[ 2.029039] encoder_key_probe: key->rising_irq = 1
[ 2.034131] encoder_key_probe: key->falling_irq = 0
[ 2.039218] encoder_key_probe: key->plus_code = 72
[ 2.044295] encoder_key_probe: key->minus_code = 80
[ 2.049396] encoder_key_probe: key->A_pin = 148
[ 2.054209] encoder_key_probe: key->B_pin = 147
[ 2.058966] encoder_key_probe: key->rising_irq = 3
[ 2.064179] encoder_key_probe: key->falling_irq = 2
[ 2.069249] report_key_func 138 :
[ 2.072451] encoder_key_probe 575 : key(75) registed.
[ 2.077583] encoder_key_probe 576 : [ 2.081015] 77 key
[ 2.082982] report_key_func 138 : 75 key
[ 2.087072] key(77) registed.
[ 2.090024] encoder_key_probe 575 : key(72) registed.
[ 2.095071] encoder_key_probe 576 : key(80) registed.
[ 2.100529] input: encoder_keypad as /devices/platform/encoder_keypad.5/input/input1
[ 2.108439] encoder_key_probe: Encoder keypad major:247
[ 2.114249] GPIO Keypad Driver init.
[ 2.116769] gpio_key_probe
[ 2.119449] 1 key registed.
[ 2.122280] 28 key registed.
[ 2.124999] 32 key registed.
[ 2.127869] 59 key registed.
[ 2.130829] 60 key registed.
[ 2.133611] 61 key registed.
[ 2.136890] input: gpio_keypad as /devices/platform/gpio_keypad.7/input/input2
[ 2.144350] gpio keypad register input device completed.
[ 2.149111] gpio keypad major:246
[ 2.153564] wake_src_probe
[ 2.155120] 200 key registed.
[ 2.158058] 201 key registed.
[ 2.161318] 202 key registed.
[ 2.163975] 203 key registed.
[ 2.166932] 204 key registed.
[ 2.169890] 205 key registed.
[ 2.173322] input: wake_src as /devices/platform/wake_src.8/input/input3
[ 2.180028] register input device completed.
[ 2.184135] register_wakesrc_dev major:245
[ 2.188858] wake_src_init wake up source Driver init 0.
[ 2.193495] mmc driver version: 1.07, 2014-06-30: eMMC add hw reset function
[ 2.201049] host->base f1108c20
[ 2.203454] pdata->caps 107
[ 2.206170] pdata->caps2 0
[ 2.208869] get property: port, value:0x00000002
[ 2.215487] get property: ocr_avail, value:0x00200000
[ 2.221631] get property: f_min, value:0x000493e0
[ 2.227921] get property: f_max, value:0x02faf080
[ 2.234339] get property: f_max_w, value:0x02faf080
[ 2.240624] get property: max_req_size, value:0x00020000
[ 2.247025] get property: pinname, str:emmc
[ 2.252663] get property: card_type, value:0x00000001
[ 2.258986] get property: gpio_dat3, str:BOOT_3
[ 2.264969] host->storage_flag=2, POR_BOOT_VALUE=3
[ 2.316132] pdata->caps 107
[ 2.316163] pdata->caps2 0
[ 2.316183] get property: port, value:0x00000001
[ 2.324598] get property: ocr_avail, value:0x00200000
[ 2.328728] get property: f_min, value:0x000493e0
[ 2.335097] get property: f_max, value:0x01c9c380
[ 2.341511] get property: f_max_w, value:0x01c9c380
[ 2.347842] get property: max_req_size, value:0x00020000
[ 2.354264] get property: pinname, str:sd
[ 2.359684] get property: card_type, value:0x00000003
[ 2.377226] emmc: BKOPS_EN bit is not set
[ 2.377257] ###check hw reset function is already enabled here
[ 2.383484] emmc: new high speed MMC card at address 0001, clock 50000000, 4-bit-bus-width
[ 2.390347] mmcblk0: emmc:0001 8GME4R 7.28 GiB
[ 2.394489] mmcblk0boot0: emmc:0001 8GME4R partition 1 4.00 MiB
[ 2.400283] mmcblk0boot1: emmc:0001 8GME4R partition 2 4.00 MiB
[ 2.421827]mmcblk0: p1
[ 2.422903] Delete invalid mbr partition part c7a95c00, part->partno 1
[ 2.426274] emmc read lba=0x800, blocks=0x1 OK!
[ 2.430317] emmc read lba=0x801, blocks=0x1 OK!
[ 2.434404] mmc read partition OK!
[ 2.439859] add_emmc_partition
[ 2.442967] aml_sdio_probe() success!
[ 2.448835] device name=nand_key open error
[ 2.452564] bootloaderoffset 0x000000000000, size 0x000000100000
[ 2.460972] aml_keys: version 0 can not be init c07ab6c4
[ 2.465877] device name=emmc_key open error
[ 2.470137] aml_keys: version 0 can not be init c07ab6c4
[ 2.475820] reservedoffset 0x000000100000, size 0x000000100000
[ 2.484328] cacheoffset 0x000000200000, size 0x000008000000
[ 2.493218] aml_rtc rtc.0: rtc core: registered aml_rtc as rtc0
[ 2.499133] envoffset 0x000008200000, size 0x000000100000
[ 2.506957] amlogic rfkill init
[ 2.509369] enter bt_probe of_node
[ 2.513353] not get gpio_en
[ 2.515464] not get gpio_wake
[ 2.518554] dtboffset 0x000008300000, size 0x000000100000
[ 2.527326] bootoffset 0x000008400000, size 0x000000800000
[ 2.535523] systemoffset 0x000008c00000, size 0x000008000000
[ 2.543655] BT_RADIO going: on
[ 2.546260] BCM_BT: going ON
[ 2.549600] dtb1offset 0x000010c00000, size 0x000000100000
[ 2.557961] boot1offset 0x000010d00000, size 0x000000800000
[ 2.566392] system1offset 0x000011500000, size 0x000008000000
[ 2.574571] userdataoffset 0x000019500000, size 0x000008000000
[ 2.582764] mediaoffset 0x000021500000, size 0x0001b0b00000
[ 2.590496] card key: card_blk_probe.
[ 2.594347] emmc_key_init:428 emmc key lba_start:0x820,lba_end:0xa20
[ 2.600639] i=0,register --- emmc_key
[ 2.604377] wifi_request_32k_clk : OFF-->ON for bt_rfkill
[ 2.609687] clock_32k_pin(175) : (null)
[ 2.613582] key 1 up
[ 2.615691] key 28 up
[ 2.617949] key 32 up
[ 2.620211] key 59 up
[ 2.622544] emmc key: emmc_key_init:450 ok.
[ 2.626967] Exit aml_emmc_partition_ops OK.
[ 2.631062] key 60 up
[ 2.633176] key 61 down
[ 2.635686] clock_32k_pin(175) : sdio_wifi
[ 2.641160] key 0 up
[ 2.642044]mmcblk0boot1: p1
[ 2.644880] mmcblk0boot1: p1 start 16065 is beyond EOD, truncated
[ 2.653626]mmcblk0boot0: p1
[ 2.653927] mmcblk0boot0: p1 start 16065 is beyond EOD, truncated
[ 2.741024] Bluetooth: BlueSleep Mode Driver Ver 1.2
[ 2.741162] Bluetooth: bt_host_wake 154, bt_ext_wake 45
[ 2.745603] Bluetooth: host_wake_irq 5, polarity 1
[ 2.750851] Interrupt for sound system Driver init.
[ 2.755334] Enter int_sound_probe
[ 2.758537] ====== int_sound_probe int num 1
[ 2.763049] int_sound_probe: int_num = 1
[ 2.766711] int_sound_probe: key->I_pin = 41
[ 2.771368] register_int_sound_dev major:244
[ 2.778094] *****enter pcm2bt_codec_probe
[ 2.779514] pcm2bt_codec_probe ok!
[ 2.783447] enter aml_dai_probe
[ 2.786418] aml_spdif_probe
[ 2.790644] aml: Failed to create debugfs directory
[ 2.795637] enter spdif_dit_probe
[ 2.798466] aml_spdif_unmute
[ 2.801987] --------aml_m3_codec_platform_probe---
[ 2.806632] enter aml_m3_audio_probe
[ 3.440733] aml_m3_codec aml_m3_codec.0: ASoC: Failed to add LINEOUT Playback Volume: -16
[ 3.443588] enter aml_set_bias_level level: 1
[ 3.447627] enter aml_set_bias_level level: 2
[ 3.452069] enter aml_set_bias_level level: 1
[ 3.456467] enter aml_set_bias_level level: 1
[ 3.460877] enter aml_set_bias_level level: 1
[ 3.465025] enter aml_set_bias_level level: 2
[ 3.469406] enter aml_set_bias_level level: 2
[ 3.473832] enter aml_asoc_init
[ 3.477111] enter aml_set_bias_level level: 1
[ 3.481438] enter aml_set_bias_level level: 1
[ 3.485646] enter aml_set_bias_level level: 2
[ 3.489997] enter aml_set_bias_level level: 1
[ 3.494448] enter aml_set_bias_level level: 2
[ 3.498711] enter aml_set_bias_level level: 2
[ 3.503235] rtd c780c010
[ 3.505654] cpu_dai c7af4600
[ 3.508611] codec_dai c7af4a00
[ 3.511938] enter aml_platform_pcm_new (codec_dai: AML-M3 0 cpu_dai: aml-dai0 0)
[ 3.519988] aml-i2s 0:playback preallocate_dma_buffer: area=c80d7000, addr=87000000, size=524288
[ 3.528778] aml-i2s 1:capture preallocate_dma_buffer: area=c8159000, addr=87100000, size=262144
[ 3.536742] aml_m3_card aml_m3_sound_card.2:AML-M3 <-> aml-dai0 mapping ok
[ 3.543757] enter aml_set_bias_level level: 1
[ 3.548024] enter aml_set_bias_level level: 2
[ 3.552437] enter aml_set_bias_level level: 1
[ 3.556724] enter aml_set_bias_level level: 2
[ 3.561233] enter aml_set_bias_level level: 1
[ 3.565423] enter aml_set_bias_level level: 2
[ 3.569959] rtd c780c5d4
[ 3.572440] cpu_dai c7af4800
[ 3.575340] codec_dai c7af4900
[ 3.578476] enter aml_platform_pcm_new (codec_dai: dit-hifi 0 cpu_dai: aml-spdif-dai.0 0)
[ 3.587542] aml-i2s 0:playback preallocate_dma_buffer: area=c81da000, addr=87200000, size=524288
[ 3.596335] aml-i2s 1:capture preallocate_dma_buffer: area=c825c000, addr=87180000, size=262144
[ 3.604227] aml_m3_card aml_m3_sound_card.2:dit-hifi <-> aml-spdif-dai.0 mapping ok
[ 3.612205] enter aml_set_bias_level level: 1
[ 3.616320] enter aml_set_bias_level level: 2
[ 3.620727] enter aml_set_bias_level level: 1
[ 3.625019] enter aml_set_bias_level level: 2
[ 3.629393] enter aml_set_bias_level level: 1
[ 3.633757] enter aml_set_bias_level level: 2
[ 3.638220] rtd c780cb98
[ 3.640706] cpu_dai c7af4700
[ 3.643635] codec_dai c7af4500
[ 3.646770] enter aml_platform_pcm_new (codec_dai: pcm2bt-pcm 0 cpu_dai: aml-dai1 1)
[ 3.654561] enter aml_pcm_preallocate_dma_buffer stream: 0
[ 3.660132] aml_pcm_preallocate_dma_buffer allcoate buf->area: c82dd000 buf->addr: 0x87290000 buf->bytes: 65536
[ 3.670244] enter aml_pcm_preallocate_dma_buffer stream: 1
[ 3.675731] aml_pcm_preallocate_dma_buffer allcoate buf->area: c82ee000 buf->addr: 0x870d0000 buf->bytes: 65536
[ 3.685683] aml_m3_card aml_m3_sound_card.2:pcm2bt-pcm <-> aml-dai1 mapping ok
[ 3.693133] enter aml_set_bias_level level: 1
[ 3.697403] enter aml_set_bias_level level: 2
[ 3.701805] enter aml_set_bias_level level: 1
[ 3.706103] enter aml_set_bias_level level: 2
[ 3.710473] enter aml_set_bias_level level: 1
[ 3.714960] enter aml_set_bias_level level: 2
[ 3.719224] enter aml_set_bias_level level: 1
[ 3.723537] enter aml_set_bias_level level: 1
[ 3.727853] enter aml_set_bias_level level: 2
[ 3.732231] enter aml_set_bias_level level: 1
[ 3.736552] enter aml_set_bias_level level: 2
[ 3.740947] enter aml_set_bias_level level: 2
[ 3.748621] input: AML-M3 hp switch as /devices/platform/aml_m3_sound_card.2/sound/card0/input4
[ 3.755056] enter aml_set_bias_level level: 1
[ 3.758305] enter aml_set_bias_level level: 2
[ 3.762773] enter aml_set_bias_level level: 1
[ 3.767004] enter aml_set_bias_level level: 2
[ 3.771544] enter aml_set_bias_level level: 1
[ 3.775703] enter aml_set_bias_level level: 2
[ 3.780319] =aml_m3_pinmux_init==,aml_m3_pinmux_init done,---0
[ 3.786768] GACT probability NOT on
[ 3.789369] Mirror/redirect action on
[ 3.793194] u32 classifier
[ 3.795711] Actions configured
[ 3.799110] Netfilter messages via NETLINK v0.30.
[ 3.803957] nf_conntrack version 0.5.0 (1819 buckets, 7276 max)
[ 3.810880] ctnetlink v0.93: registering with nfnetlink.
[ 3.815093] NF_TPROXY: Transparent proxy support initialized, version 4.1.0
[ 3.822255] NF_TPROXY: Copyright (c) 2006-2007 BalaBit IT Ltd.
[ 3.828861] xt_time: kernel timezone is -0000
[ 3.832733] ip_tables: (C) 2000-2006 Netfilter Core Team
[ 3.837605] arp_tables: (C) 2002 David S. Miller
[ 3.842312] TCP: cubic registered
[ 3.845390] Initializing XFRM netlink socket
[ 3.851308] NET: Registered protocol family 10
[ 3.854924] mip6: Mobile IPv6
[ 3.857089] ip6_tables: (C) 2000-2006 Netfilter Core Team
[ 3.862997] sit: IPv6 over IPv4 tunneling driver
[ 3.869140] NET: Registered protocol family 17
[ 3.871787] NET: Registered protocol family 15
[ 3.876037] Bridge firewalling registered
[ 3.879970] NET: Registered protocol family 35
[ 3.884697] Key type dns_resolver registered
[ 3.888862] VFP support v0.3: implementor 41 architecture 3 part 30 variant 9 rev 4
[ 3.896315] Registering SWP/SWPB emulation handler
[ 3.901277] enter meson_pm_probe!
[ 3.908088] aml_rtc rtc.0: setting system clock to 1970-01-01 00:00:08 UTC (8)
[ 3.912054] meson_cpufreq: no voltage_control prop
[ 3.916382] voltage_control = 0
[ [ 3.925507] config uart_ao_ttyS0:: Character length 8bits/char
[ 3.940830] Changing uart_ao_ttyS0: baud from 0 to 115200
[ 3.962392] force enable DISCARD here for ext4 fs
[ 3.966248] checked enable EXT4 DISCARD here
[ 3.966290] EXT4-fs (mmcblk0p10): mounting with "discard" option, but the device does not support discard
[ 3.975999] EXT4-fs (mmcblk0p10): mounted filesystem without journal. Opts: (null)
[ 3.982950] VFS: Mounted root (ext4 filesystem) readonly on device 179:10.
[ 3.995260] devtmpfs: mounted
[ 3.995541] Freeing unused kernel memory: 176K (c074a000 - c0776000)
procd: Console is alive
[ 4.152657] ** enable watchdog
procd: - watchd[ 4.152996] ** enable watchdog
og -
procd: - preinit -
e2fsck 1.42.4 (12-June-2012)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/mmcblk0p7: 1945/6016 files (0.2% non-contiguous), 17851/32768 blocks
e2fsck 1.42.4 (12-June-2012)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/mmcblk0p10: 1949/6016 files (0.2% non-contiguous), 17816/32768 blocks
Press the key and hit to enter failsafe mode
Press the , , or key and hit to select the debug level
mounting /dev/root
[ 8.174667] EXT4-fs (mmcblk0p10): re-mounted. Opts: (null)
procd: - early -
procd: - watchdog -
[ 8.185033] ** enable watchdog
procd: - ubus -
procd: - init -
Please press Enter to activate this console.
[ 11.550882] force enable DISCARD here for ext4 fs
[ 11.567219] checked enable EXT4 DISCARD here
[ 11.567262] EXT4-fs (mmcblk0p11): mounting with "discard" option, but the device does not support discard
[ 11.580920] EXT4-fs (mmcblk0p11): mounted filesystem with ordered data mode. Opts: nodelalloc
[ 11.596267] name=emmc_key nand_key
[ 11.596306] device name=nand_key open error
[ 11.598292] aml_keys: version 0 can not be init c07ab6c4
[ 11.613442] name=emmc_key emmc_key
[ 11.620645] emmc read lba=0x820, blocks=0x100 OK!
[ 11.628325] emmc read lba=0x820, blocks=0x100 OK!
[ 11.628957] register_aes_algorithm:482,old way
[ 13.386271] force enable DISCARD here for ext4 fs
[ 13.401224] checked enable EXT4 DISCARD here
[ 13.401267] EXT4-fs (mmcblk0p12): mounting with "discard" option, but the device does not support discard
[ 13.409410] EXT4-fs (mmcblk0p12): mounted filesystem with ordered data mode. Opts: nodelalloc
ledserver: mode 0(normal), start :23:00 stop: 08:00
ledserver: mode 0(normal), start :23:00 stop: 08:00
ledserver: show and push light 4
ledserver: *****led_light_s6.c 183 light_show_effect
ledserver: *****led_light_s6.c 55 light_one_color
ledserver: *****led_light_s6.c 183 light_show_effect
procd: - init complete -
procd:
MSTC_R_SystemInitDone
BusyBox v1.22.1 (2018-09-26 02:45:38 UTC) built-in shell (ash)
Enter 'help' for a list of built-in commands.
root@OpenWrt:/#
root@OpenWrt:/# ls
bin etc media proc sbin usr
data lib mnt rom sys var
dev lost+foundoverlay root tmp www
root@OpenWrt:/# ps
PID USER VSZ STAT COMMAND
1 root 2316 S /sbin/procd
2 root 0 SW
3 root 0 SW
4 root 0 SW
5 root 0 SW<
6 root 0 SW
7 root 0 SW
8 root 0 SW
9 root 0 SW
10 root 0 SW<
11 root 0 SW
12 root 0 SW
16 root 0 SW<
297 root 0 SW<
299 root 0 SW<
301 root 0 SW<
309 root 0 SW
328 root 0 SW<
329 root 0 SW
420 root 0 SW
466 root 0 SW
489 root 0 SW<
1054 root 0 SW<
1104 root 0 SW
1107 root 0 SW
1111 root 0 SW
1112 root 0 SW
1113 root 0 SW
1122 root 0 SW<
1157 root 0 SW
1158 root 0 SW
1188 root 0 SW<
1193 root 0 SW<
1194 root 0 SW<
2053 root 1620 S /sbin/ubusd
2054 root 2676 S /bin/ash --login
2055 root 1636 S /sbin/askfirst tty1 /bin/ash --login
2135 root 0 SW
2137 root 0 SW<
2253 root 0 SW
2255 root 0 SW<
2299 root 11072 S </bin/ledserver
2348 root 1848 S /sbin/logd -S 16
2493 root 2096 S /sbin/netifd
2533 root 2672 S /usr/sbin/crond -f -c /etc/crontabs -l 5
2586 root 1980 S /usr/sbin/dropbear -F -P /var/run/dropbear.1.pid -s
2597 root 5084 S {syslog-ng} supervising syslog-ng
2599 root 5084 S /usr/sbin/syslog-ng
2980 root 10980 S </usr/bin/bsa_server -d /dev/ttyS1 -r 13 -pp /etc/bt/
2981 root 7788 S /usr/bin/mibt_ble
3040 root 2204 S /usr/sbin/dbus-daemon --system
3064 nobody 2528 S avahi-daemon: running
3348 root 0 SW
3350 root 0 SW
3351 root 0 SW
3352 root 0 SW
3370 root 0 SW
3392 root 2596 S udhcpc -f -s /bin/simple_dhcp.sh -R -t 0 -i wlan0 -H
3394 root 2596 S {wifi_check_ccmp} /bin/sh /bin/wifi_check_ccmp.sh
3402 root 2700 S /usr/sbin/wpa_supplicant -Dnl80211 -iwlan0 -c/data/w
3420 root 2788 S /usr/bin/alarmd
3430 root 38676 S </usr/bin/mediaplayer
3448 root 128m S /usr/bin/messagingagent --handler_threads 8
3457 root 5220 S /usr/bin/statpoints_daemon
3599 root 1704 S </usr/bin/mipns-s6
3637 root 3944 S /usr/bin/linein
3646 root 1724 S /bin/touchpad
3687 nobody 1808 S /usr/sbin/dnsmasq -C /var/etc/dnsmasq.conf -k -x /va
3721 root 5556 S /usr/bin/mibrain_service
3742 root 1616 S /usr/bin/nano_httpd
3754 root 16968 S /usr/bin/dlna
3766 root 3452 S /usr/bin/pns_ubus_helper
3780 root 4224 S /usr/bin/quickplayer
3800 root 1820 S /usr/sbin/wpa_cli -a/bin/wpa_action.sh
3814 root 2752 S /usr/sbin/ntpd -n -p cn.pool.ntp.org -p 0.openwrt.po
3816 root 2596 S {miio_client_hel} /bin/sh /usr/bin/miio_client_helpe
3817 root 11312 S /usr/bin/miio_client -L /dev/null
3892 root 3992 S /usr/sbin/nmbd -D -s /var/etc/smb.conf
3895 root 3904 S /usr/sbin/smbd -D -s /var/etc/smb.conf
3943 root 1364 S /usr/bin/miio_recv_line
3988 root 1836 S /usr/bin/miio_service
4545 root 0 Z
4568 root 2464 S sleep 5
4569 root 2676 R ps
root@OpenWrt:/#
这篇文章很有参考价值:
小米AI音响的拆解及简要系统分析 - LeeKwen的专栏 - CSDN博客
https://blog.csdn.net/leekwen/article/details/82378639 本帖最后由 瘦网虫 于 2019-7-27 10:18 编辑
测试播放网络上的音乐命令:
root@OpenWrt:/# /usr/bin/mphelper tone http://ip.h5.ri01.sycdn.kuwo.cn/3caa21ef5b67863097f4a2ffeb5a92f6/5d3b0d4e/resource/n1/86/49/1761808846.mp3
:lol
有空试下这个:
让你的黑板小爱支持MQTT
https://bbs.hassbian.com/thread-7115-1-1.html 看了你写的《小米互联网音响拆解与浅析》,受益匪浅。我有一个想法,设法将自带8G大小EMMC更换为3G甚至更大的存储,用来存储本地歌曲。基本思路是取下原EMMC,通过安国主控,利用WINHEX克隆至32G大小的EMMC,然后在LINUX环境下利用GPATER调整分区大小,最后装回改好的EMMC,实现扩容。按此思路进行了偿试,除分区没有找到调整方法外,其它均已实现,更换后可正常工作,只是本地存储容量没有提高。有没有兴趣一起探讨下?我已将EMMC数据提取出来。微信号13185059090 ybewu 发表于 2020-5-15 16:00
看了你写的《小米互联网音响拆解与浅析》,受益匪浅。我有一个想法,设法将自带8G大小EMMC更换为3G甚至更 ...
不打算继续折腾这个了。玩其它的东东去了。:lol
页:
[1]