Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: Respeaker 2-Mic HAT on Alpine Linux #345

Open
muellerj opened this issue Oct 9, 2024 · 2 comments
Open

[Bug]: Respeaker 2-Mic HAT on Alpine Linux #345

muellerj opened this issue Oct 9, 2024 · 2 comments
Labels

Comments

@muellerj
Copy link

muellerj commented Oct 9, 2024

Describe the bug

I tried to get the 2-mic HAT working on Alpine Linux using pointers in #174 and the v6.6 branch from https://github.com/HinTak/seeed-voicecard. Most of the output looks ok, however the card is not listed properly and can't play/record.

Thanks

Thanks in advance for any help - I know the distro is not officially supported.

Platform

Relevant log output

$ dmesg
[    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
[    0.000000] Linux version 6.6.49-0-rpi (buildozer@build-3-20-aarch64) (gcc (Alpine 13.2.1_git20240309) 13.2.1 20240309, GNU ld (GNU Binutils) 2.42) #1-Alpine SMP PREEMPT Thu Sep  5 10:58:11 UTC 2024
[    0.000000] KASLR enabled
[    0.000000] random: crng init done
[    0.000000] Machine model: Raspberry Pi Zero 2 W Rev 1.0
[    0.000000] efi: UEFI not found.
[    0.000000] Reserved memory: created CMA memory pool at 0x0000000017800000, size 64 MiB
[    0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool
[    0.000000] OF: reserved mem: 0x0000000017800000..0x000000001b7fffff (65536 KiB) map reusable linux,cma
[    0.000000] Zone ranges:
[    0.000000]   DMA      [mem 0x0000000000000000-0x000000001bffffff]
[    0.000000]   DMA32    empty
[    0.000000]   Normal   empty
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000000000000-0x000000001bffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000001bffffff]
[    0.000000] On node 0, zone DMA: 16384 pages in unavailable ranges
[    0.000000] percpu: Embedded 30 pages/cpu s85224 r8192 d29464 u122880
[    0.000000] pcpu-alloc: s85224 r8192 d29464 u122880 alloc=30*4096
[    0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3
[    0.000000] Detected VIPT I-cache on CPU0
[    0.000000] CPU features: kernel page table isolation forced ON by KASLR
[    0.000000] CPU features: detected: Kernel page table isolation (KPTI)
[    0.000000] CPU features: detected: ARM erratum 843419
[    0.000000] CPU features: detected: ARM erratum 845719
[    0.000000] alternatives: applying boot alternatives
[    0.000000] Kernel command line: coherent_pool=1M 8250.nr_uarts=0 snd_bcm2835.enable_headphones=0 bcm2708_fb.fbwidth=656 bcm2708_fb.fbheight=416 bcm2708_fb.fbswap=1 smsc95xx.macaddr=B8:27:EB:80:92:02 vc_mem.mem_base=0x1ec00000 vc_mem.mem_size=0x20000000  root=UUID=1d0abd4e-397d-466c-9f0b-cf23b2d54340 modules=sd-mod,usb-storage,ext4 quiet rootfstype=ext4
[    0.000000] Unknown kernel command line parameters "modules=sd-mod,usb-storage,ext4", will be passed to user space.
[    0.000000] Dentry cache hash table entries: 65536 (order: 7, 524288 bytes, linear)
[    0.000000] Inode-cache hash table entries: 32768 (order: 6, 262144 bytes, linear)
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 112896
[    0.000000] mem auto-init: stack:all(zero), heap alloc:off, heap free:off
[    0.000000] Memory: 353512K/458752K available (12608K kernel code, 2208K rwdata, 4252K rodata, 3456K init, 1073K bss, 39704K reserved, 65536K cma-reserved)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] trace event string verifier disabled
[    0.000000] rcu: Preemptible hierarchical RCU implementation.
[    0.000000] rcu: 	RCU event tracing is enabled.
[    0.000000] rcu: 	RCU restricting CPUs from NR_CPUS=256 to nr_cpu_ids=4.
[    0.000000] 	Trampoline variant of Tasks RCU enabled.
[    0.000000] 	Tracing variant of Tasks RCU enabled.
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies.
[    0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=4
[    0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
[    0.000000] Root IRQ handler: bcm2836_arm_irqchip_handle_irq
[    0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
[    0.000000] arch_timer: cp15 timer(s) running at 19.20MHz (phys).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x46d987e47, max_idle_ns: 440795202767 ns
[    0.000001] sched_clock: 56 bits at 19MHz, resolution 52ns, wraps every 4398046511078ns
[    0.000395] Console: colour dummy device 80x25
[    0.000412] printk: console [tty0] enabled
[    0.000517] Calibrating delay loop (skipped), value calculated using timer frequency.. 38.40 BogoMIPS (lpj=76800)
[    0.000538] pid_max: default: 32768 minimum: 301
[    0.000803] LSM: initializing lsm=capability,integrity
[    0.001081] Mount-cache hash table entries: 1024 (order: 1, 8192 bytes, linear)
[    0.001106] Mountpoint-cache hash table entries: 1024 (order: 1, 8192 bytes, linear)
[    0.002177] cgroup: Disabling memory control group subsystem
[    0.004233] RCU Tasks: Setting shift to 2 and lim to 1 rcu_task_cb_adjust=1.
[    0.004358] RCU Tasks Trace: Setting shift to 2 and lim to 1 rcu_task_cb_adjust=1.
[    0.004675] rcu: Hierarchical SRCU implementation.
[    0.004684] rcu: 	Max phase no-delay instances is 1000.
[    0.006747] EFI services will not be available.
[    0.007126] smp: Bringing up secondary CPUs ...
[    0.007877] Detected VIPT I-cache on CPU1
[    0.008037] CPU1: Booted secondary processor 0x0000000001 [0x410fd034]
[    0.008918] Detected VIPT I-cache on CPU2
[    0.009026] CPU2: Booted secondary processor 0x0000000002 [0x410fd034]
[    0.009811] Detected VIPT I-cache on CPU3
[    0.009909] CPU3: Booted secondary processor 0x0000000003 [0x410fd034]
[    0.010017] smp: Brought up 1 node, 4 CPUs
[    0.010040] SMP: Total of 4 processors activated.
[    0.010050] CPU features: detected: 32-bit EL0 Support
[    0.010057] CPU features: detected: 32-bit EL1 Support
[    0.010067] CPU features: detected: CRC32 instructions
[    0.010187] CPU: All CPU(s) started at EL2
[    0.010207] alternatives: applying system-wide alternatives
[    0.013089] devtmpfs: initialized
[    0.026054] Enabled cp15_barrier support
[    0.026089] Enabled setend support
[    0.026339] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[    0.026366] futex hash table entries: 1024 (order: 4, 65536 bytes, linear)
[    0.029670] pinctrl core: initialized pinctrl subsystem
[    0.030431] DMI not present or invalid.
[    0.031127] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[    0.038264] DMA: preallocated 1024 KiB GFP_KERNEL pool for atomic allocations
[    0.038627] DMA: preallocated 1024 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
[    0.039203] DMA: preallocated 1024 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[    0.039372] audit: initializing netlink subsys (disabled)
[    0.039675] audit: type=2000 audit(0.036:1): state=initialized audit_enabled=0 res=1
[    0.040605] thermal_sys: Registered thermal governor 'step_wise'
[    0.040672] cpuidle: using governor menu
[    0.040947] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
[    0.041094] ASID allocator initialised with 32768 entries
[    0.042193] Serial: AMBA PL011 UART driver
[    0.047564] bcm2835-mbox 3f00b880.mailbox: mailbox enabled
[    0.056259] raspberrypi-firmware soc:firmware: Attached to firmware from 2024-08-30T19:19:11, variant start
[    0.060280] raspberrypi-firmware soc:firmware: Firmware hash is 2808975b80149bbfe86844655fe45c7de66fc078
[    0.068604] Modules: 2G module region forced by RANDOMIZE_MODULE_REGION_FULL
[    0.068619] Modules: 0 pages in range for non-PLT usage
[    0.068625] Modules: 518336 pages in range for PLT usage
[    0.072192] bcm2835-dma 3f007000.dma-controller: DMA legacy API manager, dmachans=0x1
[    0.073757] iommu: Default domain type: Translated
[    0.073769] iommu: DMA domain TLB invalidation policy: strict mode
[    0.075624] SCSI subsystem initialized
[    0.075917] usbcore: registered new interface driver usbfs
[    0.075973] usbcore: registered new interface driver hub
[    0.076055] usbcore: registered new device driver usb
[    0.076530] pps_core: LinuxPPS API ver. 1 registered
[    0.076540] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <[email protected]>
[    0.076574] PTP clock support registered
[    0.078123] vgaarb: loaded
[    0.078719] clocksource: Switched to clocksource arch_sys_counter
[    1.704852] VFS: Disk quotas dquot_6.6.0
[    1.704939] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[    1.705097] FS-Cache: Loaded
[    1.705393] CacheFiles: Loaded
[    1.716870] NET: Registered PF_INET protocol family
[    1.717079] IP idents hash table entries: 8192 (order: 4, 65536 bytes, linear)
[    1.718465] tcp_listen_portaddr_hash hash table entries: 256 (order: 0, 4096 bytes, linear)
[    1.718497] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
[    1.718521] TCP established hash table entries: 4096 (order: 3, 32768 bytes, linear)
[    1.718663] TCP bind hash table entries: 4096 (order: 5, 131072 bytes, linear)
[    1.718888] TCP: Hash tables configured (established 4096 bind 4096)
[    1.719186] MPTCP token hash table entries: 512 (order: 1, 12288 bytes, linear)
[    1.719266] UDP hash table entries: 256 (order: 1, 8192 bytes, linear)
[    1.719302] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes, linear)
[    1.719525] NET: Registered PF_UNIX/PF_LOCAL protocol family
[    1.720166] RPC: Registered named UNIX socket transport module.
[    1.720177] RPC: Registered udp transport module.
[    1.720185] RPC: Registered tcp transport module.
[    1.720191] RPC: Registered tcp-with-tls transport module.
[    1.720198] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    1.720229] PCI: CLS 0 bytes, default 64
[    1.720750] Trying to unpack rootfs image as initramfs...
[    1.722891] kvm [1]: IPA Size Limit: 40 bits
[    1.724676] kvm [1]: Hyp mode initialized successfully
[    1.728526] Initialise system trusted keyrings
[    1.730103] workingset: timestamp_bits=46 max_order=17 bucket_order=0
[    1.730212] zbud: loaded
[    1.732076] NFS: Registering the id_resolver key type
[    1.732124] Key type id_resolver registered
[    1.732133] Key type id_legacy registered
[    1.732168] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[    1.732179] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering...
[    1.733379] Key type asymmetric registered
[    1.733403] Asymmetric key parser 'x509' registered
[    1.733495] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 247)
[    1.733731] io scheduler mq-deadline registered
[    1.733747] io scheduler kyber registered
[    1.733809] io scheduler bfq registered
[    1.737653] pinctrl-bcm2835 3f200000.gpio: GPIO_OUT persistence: yes
[    1.741360] bcm2708_fb soc:fb: FB found 1 display(s)
[    1.749222] Console: switching to colour frame buffer device 82x26
[    1.752085] bcm2708_fb soc:fb: Registered framebuffer for display 0, size 656x416
[    1.761099] bcm2835-rng 3f104000.rng: hwrng registered
[    1.762142] vc-mem: phys_addr:0x00000000 mem_base=0x1ec00000 mem_size:0x20000000(512 MiB)
[    1.784210] brd: module loaded
[    1.795794] loop: module loaded
[    1.797053] Loading iSCSI transport class v2.0-870.
[    1.809212] usbcore: registered new device driver r8152-cfgselector
[    1.809283] usbcore: registered new interface driver r8152
[    1.809337] usbcore: registered new interface driver lan78xx
[    1.809389] usbcore: registered new interface driver smsc95xx
[    1.809658] dwc_otg: version 3.00a 10-AUG-2012 (platform bus)
[    2.058631] Freeing initrd memory: 5340K
[    2.537993] Core Release: 2.80a
[    2.538020] Setting default values for core params
[    2.538046] Finished setting default values for core params
[    2.738400] Using Buffer DMA mode
[    2.738409] Periodic Transfer Interrupt Enhancement - disabled
[    2.738416] Multiprocessor Interrupt Enhancement - disabled
[    2.738424] OTG VER PARAM: 0, OTG VER FLAG: 0
[    2.738440] Dedicated Tx FIFOs mode
[    2.738941]
[    2.738949] WARN::dwc_otg_hcd_init:1070: FIQ DMA bounce buffers: virt = ffffffc080481000 dma = 0x00000000d7c10000 len=9024
[    2.738988] FIQ FSM acceleration enabled for :
[    2.738988] Non-periodic Split Transactions
[    2.738988] Periodic Split Transactions
[    2.738988] High-Speed Isochronous Endpoints
[    2.738988] Interrupt/Control Split Transaction hack enabled
[    2.739002] dwc_otg: Microframe scheduler enabled
[    2.739032]
[    2.739037] WARN::hcd_init_fiq:496: MPHI regs_base at ffffffc080065000
[    2.739092] dwc_otg 3f980000.usb: DWC OTG Controller
[    2.739128] dwc_otg 3f980000.usb: new USB bus registered, assigned bus number 1
[    2.739168] dwc_otg 3f980000.usb: irq 74, io mem 0x00000000
[    2.739222] Init: Port Power? op_state=1
[    2.739230] Init: Power Port (0)
[    2.739500] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 6.06
[    2.739519] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    2.739533] usb usb1: Product: DWC OTG Controller
[    2.739545] usb usb1: Manufacturer: Linux 6.6.49-0-rpi dwc_otg_hcd
[    2.739556] usb usb1: SerialNumber: 3f980000.usb
[    2.740644] hub 1-0:1.0: USB hub found
[    2.740706] hub 1-0:1.0: 1 port detected
[    2.741431] dwc_otg: FIQ enabled
[    2.741441] dwc_otg: NAK holdoff enabled
[    2.741448] dwc_otg: FIQ split-transaction FSM enabled
[    2.741464] Module dwc_common_port init
[    2.743225] usbcore: registered new interface driver uas
[    2.743435] usbcore: registered new interface driver usb-storage
[    2.744445] mousedev: PS/2 mouse device common for all mice
[    2.749793] sdhci: Secure Digital Host Controller Interface driver
[    2.749818] sdhci: Copyright(c) Pierre Ossman
[    2.750307] sdhci-pltfm: SDHCI platform and OF driver helper
[    2.751874] ledtrig-cpu: registered to indicate activity on CPUs
[    2.752513] hid: raw HID events driver (C) Jiri Kosina
[    2.752619] usbcore: registered new interface driver usbhid
[    2.752626] usbhid: USB HID core driver
[    2.752749] bcm2835_vchiq 3f00b840.mailbox: there is not valid maps for state default
[    2.757711] hw perfevents: enabled with armv8_cortex_a53 PMU driver, 7 counters available
[    2.759624] Key type dns_resolver registered
[    2.797618] registered taskstats version 1
[    2.797881] Loading compiled-in X.509 certificates
[    2.809784] Key type .fscrypt registered
[    2.809802] Key type fscrypt-provisioning registered
[    2.817020] uart-pl011 3f201000.serial: cts_event_workaround enabled
[    2.817393] 3f201000.serial: ttyAMA1 at MMIO 0x3f201000 (irq = 99, base_baud = 0) is a PL011 rev2
[    2.818297] serial serial0: tty port ttyAMA1 registered
[    2.820862] bcm2835-wdt bcm2835-wdt: Broadcom BCM2835 watchdog timer
[    2.821142] bcm2835-power bcm2835-power: Broadcom BCM2835 power domains driver
[    2.824466] mmc-bcm2835 3f300000.mmcnr: mmc_debug:0 mmc_debug2:0
[    2.824487] mmc-bcm2835 3f300000.mmcnr: DMA channel allocated
[    2.847404] sdhost: log_buf @ 000000009c0457be (c32d1000)
[    2.895799] mmc0: sdhost-bcm2835 loaded - DMA enabled (>1)
[    2.897322] of_cfs_init
[    2.897424] of_cfs_init: OK
[    2.897614] clk: Disabling unused clocks
[    2.901560] Freeing unused kernel memory: 3456K
[    2.901702] Run /init as init process
[    2.901708]   with arguments:
[    2.901712]     /init
[    2.901716]   with environment:
[    2.901719]     HOME=/
[    2.901723]     TERM=linux
[    2.901727]     modules=sd-mod,usb-storage,ext4
[    2.934150] mmc0: host does not support reading read-only switch, assuming write-enable
[    2.936882] mmc0: Host Software Queue enabled
[    2.936915] mmc0: new high speed SDHC card at address 59b4
[    2.938074] mmcblk0: mmc0:59b4 SN32G 29.7 GiB
[    2.941503]  mmcblk0: p1 p2
[    2.942346] mmcblk0: mmc0:59b4 SN32G 29.7 GiB (quirks 0x00004000)
[    2.950933] Alpine Init 3.10.1-r0
[    2.954073] Loading boot drivers...
[    2.965296] Loading boot drivers: ok.
[    2.970659] mmc1: new high speed SDIO card at address 0001
[    2.972372] Mounting root...
[    4.033585] EXT4-fs (mmcblk0p2): orphan cleanup on readonly fs
[    4.037151] EXT4-fs (mmcblk0p2): mounted filesystem 1d0abd4e-397d-466c-9f0b-cf23b2d54340 ro with ordered data mode. Quota mode: none.
[    4.038134] Mounting root: ok.
[    7.926920] Bluetooth: Core ver 2.22
[    7.927021] NET: Registered PF_BLUETOOTH protocol family
[    7.927027] Bluetooth: HCI device and connection manager initialized
[    7.927047] Bluetooth: HCI socket layer initialized
[    7.927058] Bluetooth: L2CAP socket layer initialized
[    7.927074] Bluetooth: SCO socket layer initialized
[    7.945619] Bluetooth: HCI UART driver ver 2.3
[    7.945643] Bluetooth: HCI UART protocol H4 registered
[    7.945747] Bluetooth: HCI UART protocol Three-wire (H5) registered
[    7.945921] Bluetooth: HCI UART protocol Broadcom registered
[    7.946367] hci_uart_bcm serial0-0: supply vbat not found, using dummy regulator
[    7.946562] hci_uart_bcm serial0-0: supply vddio not found, using dummy regulator
[    8.066960] uart-pl011 3f201000.serial: no DMA platform data
[    8.295284] rpi-gpiomem 3f200000.gpiomem: window base 0x3f200000 size 0x00001000
[    8.295784] rpi-gpiomem 3f200000.gpiomem: initialised 1 regions as /dev/gpiomem
[    8.312915] Bluetooth: hci0: BCM: chip id 94
[    8.314918] Bluetooth: hci0: BCM: features 0x2e
[    8.318789] Bluetooth: hci0: BCM43430A1
[    8.318806] Bluetooth: hci0: BCM43430A1 (001.002.009) build 0000
[    8.327369] Bluetooth: hci0: BCM43430A1 'brcm/BCM43430A1.raspberrypi,model-zero-2-w.hcd' Patch
[    8.635502] wm8960 1-001a: supply DCVDD not found, using dummy regulator
[    8.635692] wm8960 1-001a: supply DBVDD not found, using dummy regulator
[    8.635887] wm8960 1-001a: supply SPKVDD1 not found, using dummy regulator
[    8.635932] wm8960 1-001a: supply SPKVDD2 not found, using dummy regulator
[    8.672229] mc: Linux media interface: v0.10
[    8.731018] videodev: Linux video capture interface: v2.00
[    8.758645] vc_sm_cma: module is from the staging directory, the quality is unknown, you have been warned.
[    8.760275] bcm2835_vc_sm_cma_probe: Videocore shared memory driver
[    8.760304] [vc_sm_connected_init]: start
[    8.767857] [vc_sm_connected_init]: installed successfully
[    8.775023] bcm2835_mmal_vchiq: module is from the staging directory, the quality is unknown, you have been warned.
[    8.790012] bcm2835_v4l2: module is from the staging directory, the quality is unknown, you have been warned.
[    8.826199] bcm2835_codec: module is from the staging directory, the quality is unknown, you have been warned.
[    8.830589] bcm2835-codec bcm2835-codec: Device registered as /dev/video10
[    8.830630] bcm2835-codec bcm2835-codec: Loaded V4L2 decode
[    8.832685] bcm2835-codec bcm2835-codec: Device registered as /dev/video11
[    8.832728] bcm2835-codec bcm2835-codec: Loaded V4L2 encode
[    8.835625] bcm2835-codec bcm2835-codec: Device registered as /dev/video12
[    8.835668] bcm2835-codec bcm2835-codec: Loaded V4L2 isp
[    8.840856] bcm2835-codec bcm2835-codec: Device registered as /dev/video18
[    8.840895] bcm2835-codec bcm2835-codec: Loaded V4L2 image_fx
[    8.847621] bcm2835-codec bcm2835-codec: Device registered as /dev/video31
[    8.847662] bcm2835-codec bcm2835-codec: Loaded V4L2 encode_image
[    8.860946] bcm2835_isp: module is from the staging directory, the quality is unknown, you have been warned.
[    8.870170] bcm2835-isp bcm2835-isp: Device node output[0] registered as /dev/video13
[    8.870895] bcm2835-isp bcm2835-isp: Device node capture[0] registered as /dev/video14
[    8.875084] bcm2835-isp bcm2835-isp: Device node capture[1] registered as /dev/video15
[    8.875363] bcm2835-isp bcm2835-isp: Device node stats[2] registered as /dev/video16
[    8.875384] bcm2835-isp bcm2835-isp: Register output node 0 with media controller
[    8.875405] bcm2835-isp bcm2835-isp: Register capture node 1 with media controller
[    8.875416] bcm2835-isp bcm2835-isp: Register capture node 2 with media controller
[    8.875428] bcm2835-isp bcm2835-isp: Register capture node 3 with media controller
[    8.880202] bcm2835-isp bcm2835-isp: Device node output[0] registered as /dev/video20
[    8.880632] bcm2835-isp bcm2835-isp: Device node capture[0] registered as /dev/video21
[    8.881056] bcm2835-isp bcm2835-isp: Device node capture[1] registered as /dev/video22
[    8.881530] bcm2835-isp bcm2835-isp: Device node stats[2] registered as /dev/video23
[    8.881561] bcm2835-isp bcm2835-isp: Register output node 0 with media controller
[    8.881576] bcm2835-isp bcm2835-isp: Register capture node 1 with media controller
[    8.881586] bcm2835-isp bcm2835-isp: Register capture node 2 with media controller
[    8.881608] bcm2835-isp bcm2835-isp: Register capture node 3 with media controller
[    8.881925] bcm2835-isp bcm2835-isp: Loaded V4L2 bcm2835-isp
[    8.893896] snd_bcm2835: module is from the staging directory, the quality is unknown, you have been warned.
[    9.008015] Bluetooth: hci0: BCM: features 0x2e
[    9.009462] Bluetooth: hci0: BCM43436 37.4MHz Class 1.5 RaspBerry Pi Zero2 [Version: 1017.1042]
[    9.009473] Bluetooth: hci0: BCM43430A1 (001.002.009) build 1042
[    9.009983] Bluetooth: hci0: BCM: Using default device address (43:43:a1:12:1f:ac)
[    9.038502] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[    9.052416] Loaded X.509 cert '[email protected]: 577e021cb980e0e820821ba7b54b4961b8b4fadf'
[    9.053349] Loaded X.509 cert '[email protected]: 3abbc6ec146e09d1b6016ab9d6cf71dd233f0328'
[    9.054248] Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[    9.055204] Loaded X.509 cert 'wens: 61c038651aabdcf94bd0ac7ff06c7248db18c600'
[    9.056249] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
[    9.056279] cfg80211: failed to load regulatory.db
[    9.152047] brcmfmac: F1 signature read @0x18000000=0x1541a9a6
[    9.156699] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43430-sdio for chip BCM43430/1
[    9.157204] usbcore: registered new interface driver brcmfmac
[    9.350042] brcmfmac: brcmf_c_process_txcap_blob: no txcap_blob available (err=-2)
[    9.350468] brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM43430/1 wl0: Jun 14 2023 07:27:45 version 7.45.96.s1 (gf031a129) FWID 01-70bd2af7 es7
[   10.522407] NET: Registered PF_PACKET protocol family
[   10.633771] NET: Registered PF_INET6 protocol family
[   10.634928] Segment Routing with IPv6
[   10.634963] In-situ OAM (IOAM) with IPv6
[   10.648004] snd_soc_seeed_voicecard: loading out-of-tree module taints kernel.
[   10.698335] i2c_dev: i2c /dev entries driver
[   11.175254] EXT4-fs (mmcblk0p2): re-mounted 1d0abd4e-397d-466c-9f0b-cf23b2d54340 r/w. Quota mode: none.
[   11.254878] EXT4-fs (mmcblk0p2): re-mounted 1d0abd4e-397d-466c-9f0b-cf23b2d54340 r/w. Quota mode: none.
[   12.192872] brcmfmac: brcmf_cfg80211_set_power_mgmt: power save enabled



$ i2cdetect -y 1
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:                         -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- UU -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --

$ cat /boot/config.txt
kernel=vmlinuz-rpi
initramfs initramfs-rpi
arm_64bit=1
include usercfg.txt
dtparam=i2c_arm=on,i2s=on
dtoverlay=seeed-2mic-voicecard

$ lsmod
Module                  Size  Used by
i2c_dev                16384  0
snd_soc_ac108          61440  0
snd_soc_seeed_voicecard    16384  1 snd_soc_ac108
ipv6                  544768  18
af_packet              53248  8
brcmfmac_wcc           12288  0
brcmfmac              339968  1 brcmfmac_wcc
brcmutil               24576  1 brcmfmac
cfg80211              958464  1 brcmfmac
raspberrypi_hwmon      12288  0
snd_bcm2835            24576  0
bcm2835_isp            28672  0
bcm2835_codec          45056  0
v4l2_mem2mem           40960  1 bcm2835_codec
videobuf2_dma_contig    16384  2 bcm2835_codec,bcm2835_isp
bcm2835_v4l2           40960  0
bcm2835_mmal_vchiq     36864  3 bcm2835_codec,bcm2835_v4l2,bcm2835_isp
vc_sm_cma              28672  2 bcm2835_mmal_vchiq,bcm2835_isp
videobuf2_vmalloc      12288  1 bcm2835_v4l2
videobuf2_memops       12288  2 videobuf2_vmalloc,videobuf2_dma_contig
videobuf2_v4l2         32768  4 bcm2835_codec,bcm2835_v4l2,v4l2_mem2mem,bcm2835_isp
videodev              290816  5 bcm2835_codec,videobuf2_v4l2,bcm2835_v4l2,v4l2_mem2mem,bcm2835_isp
videobuf2_common       65536  8 bcm2835_codec,videobuf2_vmalloc,videobuf2_dma_contig,videobuf2_v4l2,bcm2835_v4l2,v4l2_mem2mem,videobuf2_memops,bcm2835_isp
mc                     61440  6 videodev,bcm2835_codec,videobuf2_v4l2,videobuf2_common,v4l2_mem2mem,bcm2835_isp
snd_soc_wm8960         45056  1
snd_soc_simple_card    16384  0
snd_soc_simple_card_utils    28672  2 snd_soc_seeed_voicecard,snd_soc_simple_card
snd_soc_bcm2835_i2s    12288  2
snd_soc_core          274432  6 snd_soc_seeed_voicecard,snd_soc_bcm2835_i2s,snd_soc_ac108,snd_soc_simple_card_utils,snd_soc_simple_card,snd_soc_wm8960
snd_compress           16384  1 snd_soc_core
snd_pcm_dmaengine      16384  1 snd_soc_core
snd_pcm               135168  7 snd_soc_bcm2835_i2s,snd_bcm2835,snd_compress,snd_soc_simple_card_utils,snd_soc_core,snd_soc_wm8960,snd_pcm_dmaengine
snd_timer              36864  1 snd_pcm
snd                   106496  6 snd_bcm2835,snd_timer,snd_compress,snd_soc_core,snd_pcm,snd_soc_wm8960
raspberrypi_gpiomem    12288  0
hci_uart               49152  0
btbcm                  24576  1 hci_uart
bluetooth             573440  3 hci_uart,btbcm
ecdh_generic           16384  1 bluetooth
ecc                    36864  1 ecdh_generic
rfkill                 32768  4 bluetooth,cfg80211
libaes                 12288  1 bluetooth
uio_pdrv_genirq        12288  0
uio                    20480  1 uio_pdrv_genirq

$ cat /etc/modules-load.d/seeed-voicecard.conf
i2c-dev
snd_soc_wm8960
snd_soc_seeed_voicecard

$ alsactl restore
alsa-lib main.c:1554:(snd_use_case_mgr_open) error: failed to import hw:0 use case configuration -2

$ aplay -L
null
    Discard all samples (playback) or generate zero samples (capture)
sysdefault:CARD=seeed2micvoicec
    seeed-2mic-voicecard, 3f203000.i2s-wm8960-hifi wm8960-hifi-0
    Default Audio Device
$ arecord -L
null
    Discard all samples (playback) or generate zero samples (capture)
sysdefault:CARD=seeed2micvoicec
    seeed-2mic-voicecard, 3f203000.i2s-wm8960-hifi wm8960-hifi-0
    Default Audio Device
$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: seeed2micvoicec [seeed-2mic-voicecard], device 0: 3f203000.i2s-wm8960-hifi wm8960-hifi-0 [3f203000.i2s-wm8960-hifi wm8960-hifi-0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
$ arecord -l
**** List of CAPTURE Hardware Devices ****
card 0: seeed2micvoicec [seeed-2mic-voicecard], device 0: 3f203000.i2s-wm8960-hifi wm8960-hifi-0 [3f203000.i2s-wm8960-hifi wm8960-hifi-0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

$ cat /etc/asound.conf
# The IPC key of dmix or dsnoop plugin must be unique
# If 555555 or 666666 is used by other processes, use another one


# use samplerate to resample as speexdsp resample is bad
defaults.pcm.rate_converter "samplerate"

pcm.!default {
    type asym
    playback.pcm "playback"
    capture.pcm "capture"
}

pcm.playback {
    type plug
    slave.pcm "dmixed"
}

pcm.capture {
    type plug
    slave.pcm "array"
}

pcm.dmixed {
    type dmix
    slave.pcm "hw:seeed2micvoicec"
    ipc_key 555555
}

pcm.array {
    type dsnoop
    slave {
        pcm "hw:seeed2micvoicec"
        channels 2
    }
    ipc_key 666666
}
@muellerj muellerj added the bug label Oct 9, 2024
@HinTak
Copy link
Contributor

HinTak commented Oct 9, 2024

Those sound like user / user-education issue - the 2-mic device is not capable of playback, and recording is sampled at specific rates. Anyway, there is no indication of a bug in the log - it is detected on i2c, so that confirms the device is responsive.

I am not going to comment any further, as I don't work for seeedstudio. Whatever I am willing to do, they are just provided as is, and I do not want to hear from people demanding more.

@muellerj
Copy link
Author

@HinTak: This abuse is completely uncalled for. I appreciate you not wanting to support hardware that you don't work for and I am not demanding any help. What I am demanding though, is manners in a public space.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants