pgid69 / bcm63xx-phone Goto Github PK
View Code? Open in Web Editor NEWTelephony driver for Broadcom 6358 running OpenWrt
Telephony driver for Broadcom 6358 running OpenWrt
Hi. I am back. I'm trying to compile on LEDE and seems that I get a error related to spi. Here it is:
make[3]: Entering directory '/home/alex/Desktop/openwrt-build/lede/feeds/fxs/bcm63xx-phone/bcm63xx-phone'
make -C "/home/alex/Desktop/openwrt-build/lede/build_dir/target-mips_mips32_musl-1.1.16/linux-brcm63xx_generic/linux-4.4.107" CROSS_COMPILE="mips-openwrt-linux-musl-" ARCH="mips" SUBDIRS="/home/alex/Desktop/openwrt-build/lede/build_dir/target-mips_mips32_musl-1.1.16/linux-brcm63xx_generic/bcm63xx-phone" BCMPH_EFLAGS="-DBCMPH_MODULE_NAME=bcm63xx_phone -DBCMPH_MODULE_VERSION=0.2 -DBCMPH_EXPORT_DEV_FILE -DBCMPH_DEBUG" modules V=1
make[4]: Entering directory '/home/alex/Desktop/openwrt-build/lede/build_dir/target-mips_mips32_musl-1.1.16/linux-brcm63xx_generic/linux-4.4.107'
test -e include/generated/autoconf.h -a -e include/config/auto.conf || (
echo >&2;
echo >&2 " ERROR: Kernel configuration is invalid.";
echo >&2 " include/generated/autoconf.h or include/config/auto.conf are missing.";
echo >&2 " Run 'make oldconfig && make prepare' on kernel src to fix it.";
echo >&2 ;
/bin/false)
mkdir -p /home/alex/Desktop/openwrt-build/lede/build_dir/target-mips_mips32_musl-1.1.16/linux-brcm63xx_generic/bcm63xx-phone/.tmp_versions ; rm -f /home/alex/Desktop/openwrt-build/lede/build_dir/target-mips_mips32_musl-1.1.16/linux-brcm63xx_generic/bcm63xx-phone/.tmp_versions/*
make -f ./scripts/Makefile.build obj=/home/alex/Desktop/openwrt-build/lede/build_dir/target-mips_mips32_musl-1.1.16/linux-brcm63xx_generic/bcm63xx-phone
mips-openwrt-linux-musl-gcc -Wp,-MD,/home/alex/Desktop/openwrt-build/lede/build_dir/target-mips_mips32_musl-1.1.16/linux-brcm63xx_generic/bcm63xx-phone/board/.board.o.d -nostdinc -isystem /home/alex/Desktop/openwrt-build/lede/staging_dir/toolchain-mips_mips32_gcc-5.4.0_musl-1.1.16/lib/gcc/mips-openwrt-linux-musl/5.4.0/include -I./arch/mips/include -Iarch/mips/include/generated/uapi -Iarch/mips/include/generated -Iinclude -I./arch/mips/include/uapi -Iarch/mips/include/generated/uapi -I./include/uapi -Iinclude/generated/uapi -include ./include/linux/kconfig.h -D__KERNEL__ -DVMLINUX_LOAD_ADDRESS=0xffffffff80010000 -DDATAOFFSET=0 -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -std=gnu89 -fno-PIE -mno-check-zero-division -mabi=32 -G 0 -mno-abicalls -fno-pic -pipe -mno-branch-likely -msoft-float -DGAS_HAS_SET_HARDFLOAT -Wa,-msoft-float -ffreestanding -march=mips32 -Wa,-mips32 -Wa,--trap -I./arch/mips/include/asm/mach-bcm63xx/ -I./arch/mips/include/asm/mach-generic -fno-delete-null-pointer-checks -Wno-maybe-uninitialized -Os -fno-caller-saves --param=allow-store-data-races=0 -DCC_HAVE_ASM_GOTO -Wframe-larger-than=1024 -fstack-protector -Wno-unused-but-set-variable -fomit-frame-pointer -fno-var-tracking-assignments -g -femit-struct-debug-baseonly -fno-var-tracking -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -fconserve-stack -Werror=implicit-int -Werror=strict-prototypes -Werror=date-time -Wall -I/home/alex/Desktop/openwrt-build/lede/build_dir/target-mips_mips32_musl-1.1.16/linux-brcm63xx_generic/bcm63xx-phone/inc -DBCMPH_MODULE_NAME=bcm63xx_phone -DBCMPH_MODULE_VERSION=0.2 -DBCMPH_EXPORT_DEV_FILE -DBCMPH_DEBUG -I/home/alex/Desktop/openwrt-build/lede/build_dir/target-mips_mips32_musl-1.1.16/linux-brcm63xx_generic/bcm63xx-phone/extern/zarlink/arch/bcm63xx -I/home/alex/Desktop/openwrt-build/lede/build_dir/target-mips_mips32_musl-1.1.16/linux-brcm63xx_generic/bcm63xx-phone/extern/zarlink/2.24.0.lite/api_lib/includes -I/home/alex/Desktop/openwrt-build/lede/build_dir/target-mips_mips32_musl-1.1.16/linux-brcm63xx_generic/bcm63xx-phone/extern/zarlink/2.24.0.lite/api_lib/vp880_api -DMODULE -mno-long-calls -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(board)" -D"KBUILD_MODNAME=KBUILD_STR(bcm63xx_phone)" -c -o /home/alex/Desktop/openwrt-build/lede/build_dir/target-mips_mips32_musl-1.1.16/linux-brcm63xx_generic/bcm63xx-phone/board/board.o /home/alex/Desktop/openwrt-build/lede/build_dir/target-mips_mips32_musl-1.1.16/linux-brcm63xx_generic/bcm63xx-phone/board/board.c
In file included from /home/alex/Desktop/openwrt-build/lede/build_dir/target-mips_mips32_musl-1.1.16/linux-brcm63xx_generic/bcm63xx-phone/extern/zarlink/arch/bcm63xx/vp_api_types.h:12:0,
from /home/alex/Desktop/openwrt-build/lede/build_dir/target-mips_mips32_musl-1.1.16/linux-brcm63xx_generic/bcm63xx-phone/extern/zarlink/2.24.0.lite/api_lib/includes/vp_api.h:43,
from /home/alex/Desktop/openwrt-build/lede/build_dir/target-mips_mips32_musl-1.1.16/linux-brcm63xx_generic/bcm63xx-phone/board/board.c:31:
/home/alex/Desktop/openwrt-build/lede/build_dir/target-mips_mips32_musl-1.1.16/linux-brcm63xx_generic/bcm63xx-phone/inc/mpi.h:17:42: fatal error: ../drivers/spi/spi-bcm63xx.h: No such file or directory
compilation terminated.
scripts/Makefile.build:258: recipe for target '/home/alex/Desktop/openwrt-build/lede/build_dir/target-mips_mips32_musl-1.1.16/linux-brcm63xx_generic/bcm63xx-phone/board/board.o' failed
make[5]: *** [/home/alex/Desktop/openwrt-build/lede/build_dir/target-mips_mips32_musl-1.1.16/linux-brcm63xx_generic/bcm63xx-phone/board/board.o] Error 1
Makefile:1405: recipe for target 'module/home/alex/Desktop/openwrt-build/lede/build_dir/target-mips_mips32_musl-1.1.16/linux-brcm63xx_generic/bcm63xx-phone' failed
make[4]: *** [module/home/alex/Desktop/openwrt-build/lede/build_dir/target-mips_mips32_musl-1.1.16/linux-brcm63xx_generic/bcm63xx-phone] Error 2
make[4]: Leaving directory '/home/alex/Desktop/openwrt-build/lede/build_dir/target-mips_mips32_musl-1.1.16/linux-brcm63xx_generic/linux-4.4.107'
Makefile:49: recipe for target '/home/alex/Desktop/openwrt-build/lede/build_dir/target-mips_mips32_musl-1.1.16/linux-brcm63xx_generic/bcm63xx-phone/.built' failed
make[3]: *** [/home/alex/Desktop/openwrt-build/lede/build_dir/target-mips_mips32_musl-1.1.16/linux-brcm63xx_generic/bcm63xx-phone/.built] Error 2
make[3]: Leaving directory '/home/alex/Desktop/openwrt-build/lede/feeds/fxs/bcm63xx-phone/bcm63xx-phone'
package/Makefile:105: recipe for target 'package/feeds/fxs/bcm63xx-phone/compile' failed
make[2]: *** [package/feeds/fxs/bcm63xx-phone/compile] Error 2
make[2]: Leaving directory '/home/alex/Desktop/openwrt-build/lede'
package/Makefile:101: recipe for target '/home/alex/Desktop/openwrt-build/lede/staging_dir/target-mips_mips32_musl-1.1.16/stamp/.package_compile' failed
make[1]: *** [/home/alex/Desktop/openwrt-build/lede/staging_dir/target-mips_mips32_musl-1.1.16/stamp/.package_compile] Error 2
make[1]: Leaving directory '/home/alex/Desktop/openwrt-build/lede'
/home/alex/Desktop/openwrt-build/lede/include/toplevel.mk:205: recipe for target 'world' failed
make: *** [world] Error 2
I applied the provided patches. I'm using LEDE 17.01 STABLE. Where could be wrong?
Compiling Environment: Ubuntu 17.10(64-bit), using 4gb RAM in VMWare Virtual Machine on a i5-2450M.
It seems that it can't find /home/alex/Desktop/openwrt-build/lede/build_dir/target-mips_mips32_musl-1.1.16/linux-brcm63xx_generic/bcm63xx-phone/drivers/spi/spi-bcm63xx.h
SPI is disabled.
First of all - thanks a lot for your effort. I have Huawei EchoLife HG553. I have read your README and closed issues. I have few question.
kmod-bcm63xx-phone - 4.9.86+0.2-1
kmod-bcm63xx-phone-dahdi - 4.9.86+0.2-1
asterisk13-chan-bcm63xx-phone - 4.9.86-4.9.86
kmod-dahdi - 4.9.86+2.11.1-20180111-2
kmod-dahdi-dummy - 4.9.86+2.11.1-20180111-2
kmod-dahdi-echocan-oslec - 4.9.86+2.11.1-20180111-2
kmod-echo - 4.9.86-1
Do you have any simplest config files for both configurations - both drivers ? Which one you are using ?
I mean all files need for asterisk to make call between soft sip client and FXS lines. Maybe somewhere in the forum or any other link ?
As I understand FXO port is not usable and there is no driver to use it in asterisk ?
And last question not full related but as you have this hardware. Have you heard about "SMP" working version ? Maybe someone is working on it - to enable second core?
https://downloads.openwrt.org/snapshots/targets/brcm63xx/smp/
thanks in advance for your answers
Hi, i've try to set
country = italy
on bcm63xx_phone.conf
I've already set
country=it
on indications.conf, but when i pick up the phone the configuration not work.
HW553 - asterisk11
Suggestions?
Thanks for all your work!
Thanks for your opensource project, that is really a good job.
the hg556a origin firmware support a sip client then we can register to sip server on the internet
can we port some sip stack to impliment that functions?
thanks,
bob
Default compiling works fine, but crash while insmod
[ 2217.812987] bcm63xx_phone: bcm63xx_phone: v0.2 [ 2217.817637] bcm63xx_phone bcm63xx_phone_init() 1021: bcm63xx_phone_init() [ 2217.824747] bcm63xx_phone board_init() 719: board_init() [ 2217.830250] bcm63xx_phone: CPU is Broadcom 6358 [ 2217.834979] bcm63xx_phone: Board is HW556 [ 2217.839158] bcm63xx_phone board_get_desc() 778: board_get_desc() [ 2217.848527] bcm63xx_phone bcm_periodic_timer_init() 249: bcm_periodic_timer_init() [ 2217.856431] bcm63xx_phone bcm_timer_init() 191: bcm_timer_init() [ 2217.862682] bcm63xx_phone bcm_period_init() 28: bcm_period_init() [ 2217.869075] bcm63xx_phone bcm63xx_phone_init() 1081: t->mm_desc.ioctl_param_off = 0, t->mm_desc.ioctl_param_size = 220 [ 2217.880201] bcm63xx_phone bcm63xx_phone_init() 1090: t->mm_desc.rbs[0].rx_ring_buf_desc_off = 224, t->mm_desc.rbs[0].rx_ring_buf_desc_size = 12 [ 2217.893550] bcm63xx_phone bcm63xx_phone_init() 1098: t->mm_desc.rbs[0].tx_ring_buf_desc_off = 240, t->mm_desc.rbs[0].tx_ring_buf_desc_size = 12 [ 2217.906909] bcm63xx_phone bcm63xx_phone_init() 1090: t->mm_desc.rbs[1].rx_ring_buf_desc_off = 256, t->mm_desc.rbs[1].rx_ring_buf_desc_size = 12 [ 2217.920512] bcm63xx_phone bcm63xx_phone_init() 1098: t->mm_desc.rbs[1].tx_ring_buf_desc_off = 272, t->mm_desc.rbs[1].tx_ring_buf_desc_size = 12 [ 2217.933949] bcm63xx_phone bcm63xx_phone_init() 1128: 8192 bytes of memory allocated, starting at address 0x82fa0000 [ 2217.944769] bcm63xx_phone bcm_phone_mgr_init() 1048: bcm_phone_mgr_init() [ 2217.951806] bcm63xx_phone bcm_periodic_work_init() 92: bcm_periodic_work_init() [ 2217.959376] bcm63xx_phone bcm_period_init() 28: bcm_period_init() [ 2217.965694] bcm63xx_phone bcm_phone_mgr_devs_init() 907: bcm_phone_mgr_devs_init() [ 2217.973557] bcm63xx_phone phone_device_alloc() 53: phone_device_alloc() [ 2217.980450] bcm63xx_phone phone_device_alloc() 82: 2032 bytes of memory allocated, starting at address 0x82eca800 [ 2217.991073] bcm63xx_phone phone_dev_le88266_init() 56: phone_dev_le88266_init() [ 2217.998651] bcm63xx_phone phone_dev_zarlink_ve880_init() 2021: phone_dev_zarlink_ve880_init() [ 2218.007483] bcm63xx_phone bcm_mpi_init() 875: bcm_mpi_init() [ 2218.013363] bcm63xx_phone: Error: Driver 'bcm63xx-spi' is already registered, aborting... [ 2218.021847] bcm63xx_phone bcm_periodic_work_deinit() 103: bcm_periodic_work_deinit() [ 2218.029865] bcm63xx_phone bcm_period_deinit() 33: bcm_period_deinit() [ 2218.036546] bcm63xx_phone bcm63xx_phone_init() 1207: Freeing mmap buffer used for RX, TX... [ 2218.045204] bcm63xx_phone bcm_periodic_timer_deinit() 265: bcm_periodic_timer_deinit() [ 2218.053404] bcm63xx_phone bcm_timer_stop() 167: bcm_timer_stop() [ 2218.059652] bcm63xx_phone board_deinit() 785: board_deinit()
i am Successfully install driver dahdi in router hg556
bcm63xx_phone_dahdi zarlink_wait_for_event() 340: Received VP_EVID_CAL_CMP event (i = 1180)
[ 37.750030] bcm63xx_phone_dahdi zarlink_wait_for_event() 354: Found event: pEvent.eventCategory = 2 pEvent.eventId = 64
[ 37.761351] bcm63xx_phone_dahdi zarlink_set_timeslot_and_codec() 272: zarlink_set_timeslot_and_codec(codec_type=0, ts=0)
[ 37.772829] bcm63xx_phone_dahdi zarlink_slic_line_init() 658: FXS line initialized OK
[ 37.780983] bcm63xx_phone_dahdi zarlink_slic_line_init() 586: zarlink_slic_line_init(country=0, codec=1, timeslot=2)
[ 37.794727] bcm63xx_phone_dahdi zarlink_wait_for_event() 316: zarlink_wait_for_event(evt_category=2, evt_id=2048)
[ 37.805535] bcm63xx_phone_dahdi zarlink_wait_for_event() 337: Received VP_LINE_EVID_LINE_INIT_CMP event (i = 0)
[ 37.816033] bcm63xx_phone_dahdi zarlink_wait_for_event() 354: Found event: pEvent.eventCategory = 2 pEvent.eventId = 2048
[ 37.828159] bcm63xx_phone_dahdi zarlink_wait_for_event() 316: zarlink_wait_for_event(evt_category=2, evt_id=64)
[ 39.888335] bcm63xx_phone_dahdi zarlink_wait_for_event() 340: Received VP_EVID_CAL_CMP event (i = 1180)
[ 39.898111] bcm63xx_phone_dahdi zarlink_wait_for_event() 354: Found event: pEvent.eventCategory = 2 pEvent.eventId = 64
[ 39.909414] bcm63xx_phone_dahdi zarlink_set_timeslot_and_codec() 272: zarlink_set_timeslot_and_codec(codec_type=0, ts=2)
[ 39.920887] bcm63xx_phone_dahdi zarlink_slic_line_init() 658: FXS line initialized OK
[ 39.929170] bcm63xx_phone_dahdi phone_dev_zarlink_get_hook_status() 1877: Line 0 is on hook
[ 39.938140] bcm63xx_phone_dahdi phone_dev_zarlink_get_hook_status() 1877: Line 1 is on hook
[ 39.947027] bcm63xx_phone_dahdi bcm_periodic_timer_add_work() 181: bcm_periodic_timer_add_work(period_in_us=10000)
[ 39.957777] bcm63xx_phone_dahdi bcm_period_set_period() 42: bcm_period_set_period(period_in_usecs=10000)
[ 39.967520] bcm63xx_phone_dahdi bcm_period_set_period() 61: one_jiffy_to_usecs=4000, period_in_jiffies=3, real_period=12000, drift_increment=2000
[ 39.981182] bcm63xx_phone_dahdi bcm_dahdi_startup() 914: bcm_dahdi_startup()
[ 39.988503] bcm63xx_phone_dahdi bcm_periodic_timer_add_work() 181: bcm_periodic_timer_add_work(period_in_us=1000)
[ 39.999127] bcm63xx_phone_dahdi bcm_period_set_period() 42: bcm_period_set_period(period_in_usecs=1000)
[ 40.008780] bcm63xx_phone_dahdi bcm_period_set_period() 61: one_jiffy_to_usecs=4000, period_in_jiffies=1, real_period=4000, drift_increment=3000
[ 40.022205] bcm63xx_phone_dahdi bcm63xx_phone_dahdi_init() 1188: bcm63xx_phone_dahdi successfully initialized
[ 40.047871] bcm63xx_phone_dahdi bcm_dahdi_set_line_mode() 481: bcm_dahdi_set_line_mode(line=0, mode=2, reverse_polarity=0)
[ 40.059425] bcm63xx_phone_dahdi bcm_dahdi_set_line_mode() 481: bcm_dahdi_set_line_mode(line=1, mode=2, reverse_polarity=0)
root@LEDE:/tmp/dahdi-tools-2.11.1/xpp# ./lsdahdi
1 unknown
2 unknown
root@LEDE:/tmp/dahdi-tools-2.11.1# ./dahdi_scan
[1]
active=yes
alarms=UNCONFIGURED
description=FXS driver for brcm63xx
name=bcm63xx_phone_dahdi
manufacturer=ACME
devicetype=bcm63xx_phone_dahdi
location=
basechan=1
totchans=2
irq=0
type=analog
port=1,FXS
port=2,FXS
root@LEDE:/tmp/dahdi-tools-2.11.1/xpp# ./dahdi_genconf
Failed probing type for channel 1 at perl_modules/Dahdi/Config/Gen/System.pm line 238
I have a rj11 viodotel i tested it and videocall at moment not supported message Unknow codec 126
i ask if is possible insert videocall h263+ and h264 for bcm63xx-phone
Hi,
first of all thanks and congratulations for this amazing project. I successfully compiled and made your driver work on a Pirelli A226m router, which also features a Le88266 VoIP chip.
Unfortunately in your src/board/board.c board-id check the A226m board-id is missing, thus leading natively to a non-working driver as the absence of a recognized board-id won't allow the driver to load.
I had to add this line at line 584 of src/board/board.c
to make the driver work:
|| (0 == strcmp(board6358_desc.name, "DWV-S0"))
The inclusion of the A226m board-id DWV-S0 in the allowed boards check would make life easier for those compiling your driver.
thanks
make -f ./scripts/Makefile.build obj=/mnt/openwrt/OpenwrtHG553/build_dir/target-mips_mips32_musl/linux-brcm63xx_generic/bcm63xx-phone
mips-openwrt-linux-musl-gcc -Wp,-MD,/mnt/openwrt/OpenwrtHG553/build_dir/target-mips_mips32_musl/linux-brcm63xx_generic/bcm63xx-phone/board/.board.o.d -nostdinc -isystem /mnt/openwrt/OpenwrtHG553/staging_dir/toolchain-mips_mips32_gcc-7.3.0_musl/lib/gcc/mips-openwrt-linux-musl/7.3.0/include -I./arch/mips/include -Iarch/mips/include/generated/uapi -Iarch/mips/include/generated -Iinclude -I./arch/mips/include/uapi -Iarch/mips/include/generated/uapi -I./include/uapi -Iinclude/generated/uapi -include ./include/linux/kconfig.h -D__KERNEL__ -DVMLINUX_LOAD_ADDRESS=0xffffffff80010000 -DDATAOFFSET=0 -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -std=gnu89 -fno-PIE -mno-check-zero-division -mabi=32 -G 0 -mno-abicalls -fno-pic -pipe -mno-branch-likely -msoft-float -DGAS_HAS_SET_HARDFLOAT -Wa,-msoft-float -ffreestanding -march=mips32 -Wa,-mips32 -Wa,--trap -I./arch/mips/include/asm/mach-bcm63xx/ -I./arch/mips/include/asm/mach-generic -fno-delete-null-pointer-checks -Wno-maybe-uninitialized -Wno-frame-address -Wno-format-truncation -Wno-format-overflow -Wno-int-in-bool-context -Os -fno-caller-saves --param=allow-store-data-races=0 -DCC_HAVE_ASM_GOTO -Wframe-larger-than=1024 -fstack-protector -Wno-unused-but-set-variable -Wno-unused-const-variable -fomit-frame-pointer -fno-var-tracking-assignments -g -femit-struct-debug-baseonly -fno-var-tracking -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -fno-stack-check -fconserve-stack -Werror=implicit-int -Werror=strict-prototypes -Werror=date-time -Wall -I/mnt/openwrt/OpenwrtHG553/build_dir/target-mips_mips32_musl/linux-brcm63xx_generic/bcm63xx-phone/inc -DBCMPH_MODULE_NAME=bcm63xx_phone -DBCMPH_MODULE_VERSION=0.2 -DBCMPH_EXPORT_DEV_FILE -DBCMPH_DEBUG -I/mnt/openwrt/OpenwrtHG553/build_dir/target-mips_mips32_musl/linux-brcm63xx_generic/bcm63xx-phone/extern/zarlink/arch/bcm63xx -I/mnt/openwrt/OpenwrtHG553/build_dir/target-mips_mips32_musl/linux-brcm63xx_generic/bcm63xx-phone/extern/zarlink/2.24.0.lite/api_lib/includes -I/mnt/openwrt/OpenwrtHG553/build_dir/target-mips_mips32_musl/linux-brcm63xx_generic/bcm63xx-phone/extern/zarlink/2.24.0.lite/api_lib/vp880_api -DMODULE -mno-long-calls -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(board)" -D"KBUILD_MODNAME=KBUILD_STR(bcm63xx_phone)" -c -o /mnt/openwrt/OpenwrtHG553/build_dir/target-mips_mips32_musl/linux-brcm63xx_generic/bcm63xx-phone/board/board.o /mnt/openwrt/OpenwrtHG553/build_dir/target-mips_mips32_musl/linux-brcm63xx_generic/bcm63xx-phone/board/board.c
In file included from /mnt/openwrt/OpenwrtHG553/build_dir/target-mips_mips32_musl/linux-brcm63xx_generic/bcm63xx-phone/extern/zarlink/arch/bcm63xx/vp_api_types.h:12:0,
from /mnt/openwrt/OpenwrtHG553/build_dir/target-mips_mips32_musl/linux-brcm63xx_generic/bcm63xx-phone/extern/zarlink/2.24.0.lite/api_lib/includes/vp_api.h:43,
from /mnt/openwrt/OpenwrtHG553/build_dir/target-mips_mips32_musl/linux-brcm63xx_generic/bcm63xx-phone/board/board.c:31:
/mnt/openwrt/OpenwrtHG553/build_dir/target-mips_mips32_musl/linux-brcm63xx_generic/bcm63xx-phone/inc/mpi.h:18:13: fatal error: ../drivers/spi/spi-bcm63xx.h: No such file or directory
# include <../drivers/spi/spi-bcm63xx.h>
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
scripts/Makefile.build:269: recipe for target '/mnt/openwrt/OpenwrtHG553/build_dir/target-mips_mips32_musl/linux-brcm63xx_generic/bcm63xx-phone/board/board.o' failed
make[5]: *** [/mnt/openwrt/OpenwrtHG553/build_dir/target-mips_mips32_musl/linux-brcm63xx_generic/bcm63xx-phone/board/board.o] Error 1
Makefile:1408: recipe for target '_module_/mnt/openwrt/OpenwrtHG553/build_dir/target-mips_mips32_musl/linux-brcm63xx_generic/bcm63xx-phone' failed
make[4]: *** [_module_/mnt/openwrt/OpenwrtHG553/build_dir/target-mips_mips32_musl/linux-brcm63xx_generic/bcm63xx-phone] Error 2
make[4]: Leaving directory '/mnt/openwrt/OpenwrtHG553/build_dir/target-mips_mips32_musl/linux-brcm63xx_generic/linux-4.4.121'
Makefile:49: recipe for target '/mnt/openwrt/OpenwrtHG553/build_dir/target-mips_mips32_musl/linux-brcm63xx_generic/bcm63xx-phone/.built' failed
make[3]: *** [/mnt/openwrt/OpenwrtHG553/build_dir/target-mips_mips32_musl/linux-brcm63xx_generic/bcm63xx-phone/.built] Error 2
make[3]: Leaving directory '/mnt/openwrt/OpenwrtHG553/custom-feed/bcm63xx-phone/bcm63xx-phone/bcm63xx-phone'
package/Makefile:107: recipe for target 'package/feeds/custom/bcm63xx-phone/compile' failed
make[2]: *** [package/feeds/custom/bcm63xx-phone/compile] Error 2
make[2]: Leaving directory '/mnt/openwrt/OpenwrtHG553'
package/Makefile:103: recipe for target '/mnt/openwrt/OpenwrtHG553/staging_dir/target-mips_mips32_musl/stamp/.package_compile' failed
make[1]: *** [/mnt/openwrt/OpenwrtHG553/staging_dir/target-mips_mips32_musl/stamp/.package_compile] Error 2
make[1]: Leaving directory '/mnt/openwrt/OpenwrtHG553'
/mnt/openwrt/OpenwrtHG553/include/toplevel.mk:216: recipe for target 'world' failed
make: *** [world] Error 2
Hi Dev,
Can you help me out with guide of installing the bcm63xx-phone driver in openwrt hg556a modem like to test the analog port in hg556a with asterisk 11
Thank you
please enable h263p h264 videosupport
hello
i'm using an huawei hg553 with lede 4.4.50
Bcm63xx-phone compiled corrcetly (kernel compiling without bcm63xx-spi)
when insmod bcm63xx-phone i get this (with dmesg):
[ 224.361392] bcm63xx-phone: bcm63xx-phone: v0.1
[ 224.366025] bcm63xx-phone bcm_drv_init() 1442: bcm_drv_init()
[ 224.372004] bcm63xx-phone board_init() 706: board_init()
[ 224.377509] bcm63xx-phone: CPU is Broadcom 6358
[ 224.382208] bcm63xx-phone: Board is HW553
[ 224.386380] bcm63xx-phone board_get_desc() 764: board_get_desc()
[ 224.392660] bcm63xx-phone bcm_drv_init() 1457: Initializing mutex
[ 224.398980] bcm63xx-phone bcm_drv_init() 1460: Initializing RX wait queue
[ 224.406009] bcm63xx-phone bcm_wait_queue_init() 32: bcm_wait_queue_init()
[ 224.413042] bcm63xx-phone bcm_drv_init() 1462: Initializing TX wait queue
[ 224.420074] bcm63xx-phone bcm_wait_queue_init() 32: bcm_wait_queue_init()
[ 224.427114] bcm63xx-phone bcm_drv_init() 1477: Registering device bcm63xx-phone
[ 224.435053] bcm63xx-phone pcm_init() 2482: pcm_init()
[ 224.440344] bcm63xx-phone pcm_init() 2550: Using 25 buffers of 256 bytes for RX
[ 224.447948] bcm63xx-phone pcm_init() 2586: Using 25 buffers of 256 bytes for TX
[ 224.455514] bcm63xx-phone pcm_get_shared_res() 1950: pcm_get_shared_res()
[ 224.462557] bcm63xx-phone pcm_get_mem_res() 1906: pcm_get_mem_res(id=pcm, addr=0xfffe1600, size=256)
[ 224.472033] bcm63xx-phone pcm_get_mem_res() 1906: pcm_get_mem_res(id=pcm_dma, addr=0xfffe1800, size=256)
[ 224.481867] bcm63xx-phone pcm_get_mem_res() 1906: pcm_get_mem_res(id=pcm_dmac, addr=0xfffe1900, size=32)
[ 224.491697] bcm63xx-phone pcm_get_mem_res() 1906: pcm_get_mem_res(id=pcm_dmas, addr=0xfffe1a00, size=32)
[ 224.977033] bcm63xx-phone pcm6358_pll_init() 970: pcm6358_pll_init()
[ 224.983692] bcm63xx-phone pcm6358_pll_init() 975: pll_ctrl1=f0010001, pll_ctrl2=53d47, pll_ctrl3=a85
[ 225.041014] bcm63xx-phone pcm6358_pll_init() 1028: pll_ctrl1=20001, pll_ctrl2=8492b, pll_ctrl3=1e1c
[ 225.050567] bcm63xx-phone pcm_regs_init() 1247: pcm_regs_init()
[ 225.056726] bcm63xx-phone pcm_regs_reset() 1192: pcm_regs_reset()
[ 225.063049] bcm63xx-phone pcm_regs_reset() 1228: PCM_CTRL_REG <- 0x23200101
[ 225.070263] bcm63xx-phone pcm_dma_init() 1502: pcm_dma_init()
[ 225.076225] bcm63xx-phone pcm_dma_init() 1535: Allocating 200 bytes of DMA memory for RX descs
[ 225.085212] bcm63xx-phone pcm_dma_init() 1546: 200 bytes of memory allocated, starting at address 0xa0d50000
[ 225.095396] bcm63xx-phone pcm_dma_init() 1552: Allocating 200 bytes of DMA memory for TX descs
[ 225.104439] bcm63xx-phone pcm_dma_init() 1563: 200 bytes of memory allocated, starting at address 0xa0d2b000
[ 225.114630] bcm63xx-phone pcm_dma_init() 1571: Allocating 12800 bytes of memory for RX and TX data buffers
[ 225.124643] bcm63xx-phone pcm_dma_init() 1578: 12800 bytes of memory allocated, starting at address 0x80d20000
[ 225.135004] bcm63xx-phone pcm_dma_init() 1604: Allocating 224 bytes of memory for DMA addresses
[ 225.144020] bcm63xx-phone pcm_dma_init() 1611: 224 bytes of memory allocated, starting at address 0x82da1700
[ 225.154189] bcm63xx-phone pcm_dma_init() 1618: Mapping DMA addresses of RX descs
[ 225.161871] bcm63xx-phone pcm_dma_init() 1635: Mapping DMA addresses of TX descs
[ 225.169551] bcm63xx-phone pcm_dma_rx_descs_reset() 1342: pcm_dma_rx_descs_reset()
[ 225.177387] bcm63xx-phone pcm_dma_tx_descs_reset() 1373: pcm_dma_tx_descs_reset()
[ 225.185241] bcm63xx-phone bcm_drv_init() 1527: t->mm_desc.ioctl_param_off = 0, t->mm_desc.ioctl_param_size = 208
[ 225.195796] bcm63xx-phone bcm_drv_init() 1537: t->mm_desc.rbs[0].rx_ring_buf_desc_off = 208, t->mm_desc.rbs[0].rx_ring_buf_d esc_size = 12
[ 225.208578] bcm63xx-phone bcm_drv_init() 1545: t->mm_desc.rbs[0].tx_ring_buf_desc_off = 224, t->mm_desc.rbs[0].tx_ring_buf_d esc_size = 12
[ 225.221355] bcm63xx-phone bcm_drv_init() 1537: t->mm_desc.rbs[1].rx_ring_buf_desc_off = 240, t->mm_desc.rbs[1].rx_ring_buf_d esc_size = 12
[ 225.234131] bcm63xx-phone bcm_drv_init() 1545: t->mm_desc.rbs[1].tx_ring_buf_desc_off = 256, t->mm_desc.rbs[1].tx_ring_buf_d esc_size = 12
[ 225.247025] bcm63xx-phone bcm_drv_init() 1567: 8192 bytes of memory allocated, starting at address 0x80d2e000
[ 225.257306] bcm63xx-phone bcm_phone_mgr_init() 851: bcm_phone_mgr_init()
[ 225.264254] bcm63xx-phone bcm_phone_mgr_devs_init() 725: bcm_phone_mgr_devs_init()
[ 225.272098] bcm63xx-phone phone_device_alloc() 55: phone_device_alloc()
[ 225.278995] bcm63xx-phone phone_device_alloc() 66: 2020 bytes of memory allocated, starting at address 0x82d93000
[ 225.289612] bcm63xx-phone phone_dev_le88221_init() 54: phone_dev_le88221_init()
[ 225.297184] bcm63xx-phone phone_dev_zarlink_ve880_init() 1948: phone_dev_zarlink_ve880_init()
[ 225.306006] bcm63xx-phone bcm_mpi_init() 919: bcm_mpi_init()
[ 225.312349] bcm63xx-phone bcm_mpi_init() 983: condition '((ret) && (0 == bcm_mpi_dev_data.ref_count)) || ((!ret) && (1 == bc m_mpi_dev_data.ref_count))' is false
[ 225.327220] bcm63xx-phone bcm_mpi_init() 990: condition 'bcm_mpi_dev_data.ref_count > 0' is false
[ 225.336503] CPU 0 Unable to handle kernel paging request at virtual address 00000054, epc == 801b4628, ra == 801b4ae8
[ 225.347490] Oops[#1]:
[ 225.349796] CPU: 0 PID: 4704 Comm: insmod Not tainted 4.4.50 #0
[ 225.355882] task: 82ec5e30 ti: 80cf6000 task.ti: 80cf6000
[ 225.361423] $ 0 : 00000000 00000001 80cf7b7c 00000001
[ 225.366797] $ 4 : 00000010 00000010 80cf7b80 00000002
[ 225.372173] $ 8 : 616c7365 6e74203e 20302720 69732066
[ 225.377548] $12 : 00000000 ffffff80 00000000 00000000
[ 225.382925] $16 : 00000010 00000033 80cf7b80 00000000
[ 225.388301] $20 : 82d9310c 82d9310c 0000000a 80de2c34
[ 225.393676] $24 : 00000000 8005141c
[ 225.399053] $28 : 80cf6000 80cf7b40 80de0000 801b4ae8
[ 225.404430] Hi : 00000000
[ 225.407388] Lo : 00000000
[ 225.410398] epc : 801b4628 dev_driver_string+0x0/0x38
[ 225.415746] ra : 801b4ae8 dev_printk+0x30/0x88
[ 225.420739] Status: 10008c03 KERNEL EXL IE
[ 225.425043] Cause : 00800008 (ExcCode 02)
[ 225.429162] BadVA : 00000054
[ 225.432122] PrId : 0002a010 (Broadcom BMIPS4350)
[ 225.436954] Modules linked in: bcm63xx_phone(+) qcserial pppoe ppp_async option iptable_nat cdc_mbim b43 usb_wwan sierra_net sierra rndis_host qmi_wwan pppox ppp_generic nf_nat_ipv4 nf_conntrack_ipv6 nf_conntrack_ipv4 mac80211 ipt_REJECT ipt_MASQUERAD E huawei_cdc_ncm cfg80211 cdc_ncm cdc_ether xt_time xt_tcpudp xt_tcpmss xt_statistic xt_state xt_recent xt_nat xt_multiport xt mark xt_mac xt_limit xt_length xt_hl xt_helper xt_ecn xt_dscp xt_conntrack xt_connmark xt_connlimit xt_connbytes xt_comment xt TCPMSS xt_REDIRECT xt_LOG xt_HL xt_DSCP xt_CLASSIFY usbserial usbnet usblp slhc nf_reject_ipv4 nf_nat_redirect nf_nat_masquerad e_ipv4 nf_nat nf_log_ipv4 nf_defrag_ipv6 nf_defrag_ipv4 nf_conntrack_rtcache iptable_mangle iptable_filter ipt_ECN ip_tables cr c_ccitt compat cdc_wdm fuse sch_cake nf_conntrack act_skbedit act_mirred em_u32 cls_u32 cls_tcindex cls_flow cls_route cls_fw s ch_tbf sch_htb sch_hfsc sch_ingress ledtrig_usbport xt_set ip_set_list_set ip_set_hash_netiface ip_set_hash_netport ip_set_hash _netnet ip_set_hash_net ip_set_hash_netportnet ip_set_hash_mac ip_set_hash_ipportnet ip_set_hash_ipportip ip_set_hash_ipport ip set_hash_ipmark ip_set_hash_ip ip_set_bitmap_port ip_set_bitmap_ipmac ip_set_bitmap_ip ip_set nfnetlink ip6t_REJECT nf_reject ipv6 nf_log_ipv6 nf_log_common ip6table_mangle ip6table_filter ip6_tables x_tables ifb tun vfat fat hfs nls_utf8 nls_iso8859_1 nls_cp437 usb_storage uhci_hcd ohci_platform ohci_hcd ehci_platform ehci_hcd sd_mod scsi_mod gpio_button_hotplug ext4 jbd2 mbca che exfat usbcore nls_base usb_common crc16 crc32c_generic crypto_hash
[ 225.579974] Process insmod (pid: 4704, threadinfo=80cf6000, task=82ec5e30, tls=77022d48)
[ 225.588288] Stack : 0000000a 80de2c34 80de0000 80059260 80de0000 80de7380 80de0000 80de705c
[ 225.588288] 80de0000 801b4c78 80de0000 80057164 80de0000 80059260 80526d62 80cf7b98
[ 225.588288] 80de0810 80cf7b7c 80de705c 80d98508 80de7050 80ddd4ec 80ddd4ec 00000002
[ 225.588288] 80de7050 80de0000 82d93000 80de7410 0000000a 80d9a124 00000000 80dddf5c
[ 225.588288] 0000079c 0000000a 00000000 80057164 80dddb10 82d93000 80de7050 00000002
[ 225.588288] ...
[ 225.624844] Call Trace:
[ 225.627399] [<801b4628>] dev_driver_string+0x0/0x38
[ 225.632402] [<801b4ae8>] __dev_printk+0x30/0x88
[ 225.637065] [<801b4c78>] dev_err+0x38/0x44
[ 225.641637] [<80d98508>] bcm_mpi_init+0x204/0x260 [bcm63xx_phone]
[ 225.648444] [<80d9a124>] phone_dev_zarlink_ve880_init+0x9c/0x100 [bcm63xx_phone]
[ 225.656598] [<80d99b3c>] phone_dev_le88221_init+0x110/0x288 [bcm63xx_phone]
[ 225.664302] [<80d993f8>] phone_device_alloc+0xac/0x154 [bcm63xx_phone]
[ 225.671550] [<80d99658>] bcm_phone_mgr_init+0x1b8/0x58c [bcm63xx_phone]
[ 225.678889] [<80d9a6c4>] init_module+0x48c/0x594 [bcm63xx_phone]
[ 225.685345] [<80019ad0>] do_one_initcall+0x200/0x22c
[ 225.690464] [<80075e78>] do_init_module+0x74/0x1c8
[ 225.695376] [<80077710>] load_module+0x16c8/0x1b70
[ 225.700304] [<80077cd0>] SyS_init_module+0x118/0x168
[ 225.705418] [<800129d8>] syscall_common+0x30/0x54
[ 225.710224]
[ 225.711740]
[ 225.711740] Code: 8fb00018 03e00008 27bd0030 <8c820044> 14400007 00000000 8c820040 14400004 00000000
[ 225.722091] ---[ end trace a991f10ae33ecc3d ]---
LEDE Reboot (17.01.4, r3560-79f57e422d)
Module bcm63xx-phone.ko
loads and initializes successfully but bcm63xx-phone-test
fails with:
ioctl(2149598476) failed. errno=22
Error starting
The parameters I used with bcm63xx-phone-test and some additional debug output ithat may be useful are below.
Using different values for the defaults didn't notice any difference either.
root@OpenWrt:~# modprobe /lib/modules/4.4.92/bcm63xx-phone.ko
root@OpenWrt:~# dmesg -c
[ 198.756476] bcm63xx_phone: bcm63xx_phone: v0.2
[ 198.761153] bcm63xx_phone bcm63xx_phone_init() 1021: bcm63xx_phone_init()
[ 198.768233] bcm63xx_phone board_init() 719: board_init()
[ 198.773737] bcm63xx_phone: CPU is Broadcom 6358
[ 198.778447] bcm63xx_phone: Board is HW556
[ 198.782617] bcm63xx_phone board_get_desc() 778: board_get_desc()
[ 198.788924] bcm63xx_phone bcm_periodic_timer_init() 249: bcm_periodic_timer_init()
[ 198.796778] bcm63xx_phone bcm_timer_init() 191: bcm_timer_init()
[ 198.803009] bcm63xx_phone bcm_period_init() 28: bcm_period_init()
[ 198.809343] bcm63xx_phone bcm63xx_phone_init() 1081: t->mm_desc.ioctl_param_off = 0, t->mm_desc.ioctl_param_size = 220
[ 198.820456] bcm63xx_phone bcm63xx_phone_init() 1090: t->mm_desc.rbs[0].rx_ring_buf_desc_off = 224, t->mm_desc.rbs[0].rx_ring_buf_desc_size = 12
[ 198.833783] bcm63xx_phone bcm63xx_phone_init() 1098: t->mm_desc.rbs[0].tx_ring_buf_desc_off = 240, t->mm_desc.rbs[0].tx_ring_buf_desc_size = 12
[ 198.847149] bcm63xx_phone bcm63xx_phone_init() 1090: t->mm_desc.rbs[1].rx_ring_buf_desc_off = 256, t->mm_desc.rbs[1].rx_ring_buf_desc_size = 12
[ 198.860468] bcm63xx_phone bcm63xx_phone_init() 1098: t->mm_desc.rbs[1].tx_ring_buf_desc_off = 272, t->mm_desc.rbs[1].tx_ring_buf_desc_size = 12
[ 198.873895] bcm63xx_phone bcm63xx_phone_init() 1128: 8192 bytes of memory allocated, starting at address 0x80c70000
[ 198.884705] bcm63xx_phone bcm_phone_mgr_init() 1048: bcm_phone_mgr_init()
[ 198.891745] bcm63xx_phone bcm_periodic_work_init() 92: bcm_periodic_work_init()
[ 198.899314] bcm63xx_phone bcm_period_init() 28: bcm_period_init()
[ 198.905633] bcm63xx_phone bcm_phone_mgr_devs_init() 907: bcm_phone_mgr_devs_init()
[ 198.913477] bcm63xx_phone phone_device_alloc() 53: phone_device_alloc()
[ 198.920372] bcm63xx_phone phone_device_alloc() 82: 2032 bytes of memory allocated, starting at address 0x82eb3000
[ 198.931024] bcm63xx_phone phone_dev_le88266_init() 56: phone_dev_le88266_init()
[ 198.938600] bcm63xx_phone phone_dev_zarlink_ve880_init() 2017: phone_dev_zarlink_ve880_init()
[ 198.947430] bcm63xx_phone bcm_mpi_init() 878: bcm_mpi_init()
[ 198.953472] bcm63xx_phone bcm63xx_spi_probe() 414: bcm63xx_spi_probe()
[ 198.960350] bcm63xx-spi bcm6358-spi: at 0xfffe0800 (irq 9, FIFOs size 542)
[ 198.967860] bcm63xx_phone phone_dev_zarlink_init() 678: phone_dev_zarlink_init()
[ 198.975563] bcm63xx_phone zarlink_reset() 162: zarlink_reset(gpio_num=0x8018)
[ 199.050732] bcm63xx_phone phone_device_init() 28: phone_device_init()
[ 199.057432] bcm63xx_phone zarlink_device_id_init() 456: zarlink_device_id_init()
[ 199.065151] bcm63xx_phone: 1 device(s) provides 2 FXS line(s)
[ 199.071132] bcm63xx_phone bcm_phone_mgr_init() 1072: Initializing event wait queue
[ 199.078984] bcm63xx_phone bcm_wait_queue_init() 31: bcm_wait_queue_init()
[ 199.086022] bcm63xx_phone bcm_drv_init() 1173: bcm_drv_init()
[ 199.091991] bcm63xx_phone bcm_drv_init() 1178: Initializing RX wait queue
[ 199.099032] bcm63xx_phone bcm_wait_queue_init() 31: bcm_wait_queue_init()
[ 199.106072] bcm63xx_phone bcm_drv_init() 1180: Initializing TX wait queue
[ 199.113130] bcm63xx_phone bcm_wait_queue_init() 31: bcm_wait_queue_init()
[ 199.120173] bcm63xx_phone bcm_drv_init() 1195: Registering device bcm63xx_phone
[ 199.128180] bcm63xx_phone pcm_init() 2531: pcm_init()
[ 199.133478] bcm63xx_phone pcm_init() 2607: Using 15 buffers of 256 bytes for RX
[ 199.141060] bcm63xx_phone pcm_init() 2649: Using 15 buffers of 256 bytes for TX
[ 199.148685] bcm63xx_phone pcm_get_shared_res() 1986: pcm_get_shared_res()
[ 199.155757] bcm63xx_phone pcm_get_mem_res() 1942: pcm_get_mem_res(id=pcm, addr=0xfffe1600, size=256)
[ 199.165236] bcm63xx_phone pcm_get_mem_res() 1942: pcm_get_mem_res(id=pcm_dma, addr=0xfffe1800, size=256)
[ 199.175070] bcm63xx_phone pcm_get_mem_res() 1942: pcm_get_mem_res(id=pcm_dmac, addr=0xfffe1900, size=32)
[ 199.184898] bcm63xx_phone pcm_get_mem_res() 1942: pcm_get_mem_res(id=pcm_dmas, addr=0xfffe1a00, size=32)
[ 199.282733] bcm63xx_phone pcm6358_pll_init() 1001: pcm6358_pll_init()
[ 199.289450] bcm63xx_phone pcm6358_pll_init() 1006: pll_ctrl1=f0010001, pll_ctrl2=53d47, pll_ctrl3=a85
[ 199.330741] bcm63xx_phone pcm6358_pll_init() 1059: pll_ctrl1=20001, pll_ctrl2=8492b, pll_ctrl3=1e1c
[ 199.340245] bcm63xx_phone pcm_regs_init() 1279: pcm_regs_init()
[ 199.346410] bcm63xx_phone pcm_regs_reset() 1223: pcm_regs_reset()
[ 199.352780] bcm63xx_phone pcm_regs_reset() 1260: PCM_CTRL_REG <- 0x23200101
[ 199.360020] bcm63xx_phone pcm_dma_init() 1538: pcm_dma_init()
[ 199.365986] bcm63xx_phone pcm_dma_init() 1571: Allocating 120 bytes of DMA memory for RX descs
[ 199.374973] bcm63xx_phone pcm_dma_init() 1582: 120 bytes of memory allocated, starting at address 0xa0c82000
[ 199.385153] bcm63xx_phone pcm_dma_init() 1588: Allocating 120 bytes of DMA memory for TX descs
[ 199.394135] bcm63xx_phone pcm_dma_init() 1599: 120 bytes of memory allocated, starting at address 0xa0c81000
[ 199.404323] bcm63xx_phone pcm_dma_init() 1607: Allocating 7680 bytes of memory for RX and TX data buffers
[ 199.414239] bcm63xx_phone pcm_dma_init() 1614: 7680 bytes of memory allocated, starting at address 0x82dc2000
[ 199.424518] bcm63xx_phone pcm_dma_init() 1640: Allocating 128 bytes of memory for DMA addresses
[ 199.433539] bcm63xx_phone pcm_dma_init() 1647: 128 bytes of memory allocated, starting at address 0x82d7d580
[ 199.443727] bcm63xx_phone pcm_dma_init() 1654: Mapping DMA addresses of RX descs
[ 199.451401] bcm63xx_phone pcm_dma_init() 1671: Mapping DMA addresses of TX descs
[ 199.459079] bcm63xx_phone pcm_dma_rx_descs_reset() 1374: pcm_dma_rx_descs_reset()
[ 199.466885] bcm63xx_phone pcm_dma_tx_descs_reset() 1405: pcm_dma_tx_descs_reset()
[ 199.474712] bcm63xx_phone bcm_periodic_timer_start() 156: bcm_periodic_timer_start()
[ 199.482758] bcm63xx_phone bcm_timer_start() 179: bcm_timer_start(period_in_usecs=10000)
[ 199.491051] bcm63xx_phone bcm_timer_stop() 167: bcm_timer_stop()
[ 199.497281] bcm63xx_phone bcm_period_set_period() 42: bcm_period_set_period(period_in_usecs=10000)
[ 199.506567] bcm63xx_phone bcm_period_set_period() 61: one_jiffy_to_usecs=4000, period_in_jiffies=3, real_period=12000, drift_increment=2000
[ 199.519529] bcm63xx_phone bcm63xx_phone_init() 1188: bcm63xx_phone successfully initialized
root@OpenWrt:~# bcm63xx-phone-test test=tone
ioctl(2149598476) failed. errno=22
Error starting
root@OpenWrt:~# dmesg -c
[ 222.230898] bcm63xx_phone bcm_drv_open() 997: bcm_drv_open()
[ 222.236856] bcm63xx_phone bcm_drv_unlocked_ioctl() 640: BCMPH_IOCTL_START
[ 222.243934] bcm63xx_phone bcm_drv_start() 949: bcm_drv_start()
[ 222.250024] bcm63xx_phone bcm_drv_stop() 850: bcm_drv_stop()
[ 222.255911] bcm63xx_phone pcm_stop() 2370: pcm_stop()
[ 222.261177] bcm63xx_phone pcm_dma_stop() 1506: pcm_dma_stop()
[ 222.267152] bcm63xx_phone pcm_stop() 2382: Halting TX DMA
[ 222.277852] bcm63xx_phone pcm_stop() 2389: TX DMA halted
[ 222.283387] bcm63xx_phone pcm_stop() 2404: Halting RX DMA
[ 222.293899] bcm63xx_phone pcm_stop() 2411: RX DMA halted
[ 222.299432] bcm63xx_phone pcm_stop() 2422: Disabling all PCM channels
[ 222.306141] bcm63xx_phone pcm_regs_reset() 1223: pcm_regs_reset()
[ 222.312471] bcm63xx_phone pcm_regs_reset() 1260: PCM_CTRL_REG <- 0x23200101
[ 222.319713] bcm63xx_phone pcm_dma_tx_descs_reset() 1405: pcm_dma_tx_descs_reset()
[ 222.327571] bcm63xx_phone pcm_pr_stats() 2100: ======= Stats =======
[ 222.334167] bcm63xx_phone pcm_pr_stats() 2101: rx_errors = 0
[ 222.341021] bcm63xx_phone pcm_pr_stats() 2102: rx_length_errors = 0
[ 222.347876] bcm63xx_phone pcm_pr_stats() 2103: rx_empty_errors = 0
[ 222.354730] bcm63xx_phone pcm_pr_stats() 2104: rx_good = 0
[ 222.361584] bcm63xx_phone pcm_pr_stats() 2105: rx_bytes = 0
[ 222.368460] bcm63xx_phone pcm_pr_stats() 2106: tx_errors = 0
[ 222.375313] bcm63xx_phone pcm_pr_stats() 2107: tx_good = 0
[ 222.382167] bcm63xx_phone pcm_pr_stats() 2108: tx_bytes = 0
[ 222.389043] bcm63xx_phone pcm_pr_stats() 2109: cnt_irq_rx = 0
[ 222.395932] bcm63xx_phone pcm_pr_stats() 2110: cnt_irq_tx = 0
[ 222.402787] bcm63xx_phone bcm_phone_mgr_stop() 773: bcm_phone_mgr_stop()
[ 222.409758] bcm63xx_phone bcm_periodic_timer_del_work() 199: bcm_periodic_timer_del_work()
[ 222.418320] bcm63xx_phone phone_dev_zarlink_ve880_stop() 2174: phone_dev_zarlink_ve880_stop()
[ 222.427174] bcm63xx_phone bcm_phone_mgr_get_first_timeslot_line() 143: bcm_phone_mgr_get_first_timeslot_line(line=0)
[ 222.438062] bcm63xx_phone: Echo cancellation can be enabled for line 0 so no other codec than linear is allowed
[ 222.456315] bcm63xx_phone bcm_drv_release() 1038: bcm_drv_release()
[ 222.462864] bcm63xx_phone bcm_drv_stop() 850: bcm_drv_stop()
[ 222.468788] bcm63xx_phone pcm_stop() 2370: pcm_stop()
[ 222.474104] bcm63xx_phone pcm_dma_stop() 1506: pcm_dma_stop()
[ 222.480072] bcm63xx_phone pcm_stop() 2382: Halting TX DMA
[ 222.489849] bcm63xx_phone pcm_stop() 2389: TX DMA halted
[ 222.495535] bcm63xx_phone pcm_stop() 2404: Halting RX DMA
[ 222.505889] bcm63xx_phone pcm_stop() 2411: RX DMA halted
[ 222.511434] bcm63xx_phone pcm_stop() 2422: Disabling all PCM channels
[ 222.518138] bcm63xx_phone pcm_regs_reset() 1223: pcm_regs_reset()
[ 222.524510] bcm63xx_phone pcm_regs_reset() 1260: PCM_CTRL_REG <- 0x23200101
[ 222.531753] bcm63xx_phone pcm_dma_tx_descs_reset() 1405: pcm_dma_tx_descs_reset()
[ 222.539558] bcm63xx_phone pcm_pr_stats() 2100: ======= Stats =======
[ 222.546151] bcm63xx_phone pcm_pr_stats() 2101: rx_errors = 0
[ 222.553009] bcm63xx_phone pcm_pr_stats() 2102: rx_length_errors = 0
[ 222.559877] bcm63xx_phone pcm_pr_stats() 2103: rx_empty_errors = 0
[ 222.566739] bcm63xx_phone pcm_pr_stats() 2104: rx_good = 0
[ 222.573617] bcm63xx_phone pcm_pr_stats() 2105: rx_bytes = 0
[ 222.580475] bcm63xx_phone pcm_pr_stats() 2106: tx_errors = 0
[ 222.587336] bcm63xx_phone pcm_pr_stats() 2107: tx_good = 0
[ 222.594214] bcm63xx_phone pcm_pr_stats() 2108: tx_bytes = 0
[ 222.601094] bcm63xx_phone pcm_pr_stats() 2109: cnt_irq_rx = 0
[ 222.607955] bcm63xx_phone pcm_pr_stats() 2110: cnt_irq_tx = 0
[ 222.614817] bcm63xx_phone bcm_phone_mgr_stop() 773: bcm_phone_mgr_stop()
[ 222.621776] bcm63xx_phone bcm_periodic_timer_del_work() 199: bcm_periodic_timer_del_work()
[ 222.630347] bcm63xx_phone phone_dev_zarlink_ve880_stop() 2174: phone_dev_zarlink_ve880_stop()
root@OpenWrt:~# bcm63xx-phone-test test=echo output=/tmp/echo.dat
ioctl(2149598476) failed. errno=22
Error starting
root@OpenWrt:~# dmesg -c
[ 256.091886] bcm63xx_phone bcm_drv_open() 997: bcm_drv_open()
[ 256.100085] bcm63xx_phone bcm_drv_unlocked_ioctl() 640: BCMPH_IOCTL_START
[ 256.107227] bcm63xx_phone bcm_drv_start() 949: bcm_drv_start()
[ 256.113312] bcm63xx_phone bcm_drv_stop() 850: bcm_drv_stop()
[ 256.119192] bcm63xx_phone pcm_stop() 2370: pcm_stop()
[ 256.124449] bcm63xx_phone pcm_dma_stop() 1506: pcm_dma_stop()
[ 256.130419] bcm63xx_phone pcm_stop() 2382: Halting TX DMA
[ 256.140671] bcm63xx_phone pcm_stop() 2389: TX DMA halted
[ 256.146218] bcm63xx_phone pcm_stop() 2404: Halting RX DMA
[ 256.156719] bcm63xx_phone pcm_stop() 2411: RX DMA halted
[ 256.162249] bcm63xx_phone pcm_stop() 2422: Disabling all PCM channels
[ 256.168957] bcm63xx_phone pcm_regs_reset() 1223: pcm_regs_reset()
[ 256.175290] bcm63xx_phone pcm_regs_reset() 1260: PCM_CTRL_REG <- 0x23200101
[ 256.182582] bcm63xx_phone pcm_dma_tx_descs_reset() 1405: pcm_dma_tx_descs_reset()
[ 256.190433] bcm63xx_phone pcm_pr_stats() 2100: ======= Stats =======
[ 256.197023] bcm63xx_phone pcm_pr_stats() 2101: rx_errors = 0
[ 256.203871] bcm63xx_phone pcm_pr_stats() 2102: rx_length_errors = 0
[ 256.210728] bcm63xx_phone pcm_pr_stats() 2103: rx_empty_errors = 0
[ 256.217583] bcm63xx_phone pcm_pr_stats() 2104: rx_good = 0
[ 256.224436] bcm63xx_phone pcm_pr_stats() 2105: rx_bytes = 0
[ 256.231293] bcm63xx_phone pcm_pr_stats() 2106: tx_errors = 0
[ 256.238145] bcm63xx_phone pcm_pr_stats() 2107: tx_good = 0
[ 256.245000] bcm63xx_phone pcm_pr_stats() 2108: tx_bytes = 0
[ 256.251853] bcm63xx_phone pcm_pr_stats() 2109: cnt_irq_rx = 0
[ 256.258709] bcm63xx_phone pcm_pr_stats() 2110: cnt_irq_tx = 0
[ 256.265565] bcm63xx_phone bcm_phone_mgr_stop() 773: bcm_phone_mgr_stop()
[ 256.272506] bcm63xx_phone bcm_periodic_timer_del_work() 199: bcm_periodic_timer_del_work()
[ 256.281074] bcm63xx_phone phone_dev_zarlink_ve880_stop() 2174: phone_dev_zarlink_ve880_stop()
[ 256.289925] bcm63xx_phone bcm_phone_mgr_get_first_timeslot_line() 143: bcm_phone_mgr_get_first_timeslot_line(line=0)
[ 256.300834] bcm63xx_phone: Echo cancellation can be enabled for line 0 so no other codec than linear is allowed
[ 256.318703] bcm63xx_phone bcm_drv_release() 1038: bcm_drv_release()
[ 256.325267] bcm63xx_phone bcm_drv_stop() 850: bcm_drv_stop()
[ 256.331165] bcm63xx_phone pcm_stop() 2370: pcm_stop()
[ 256.336440] bcm63xx_phone pcm_dma_stop() 1506: pcm_dma_stop()
[ 256.342415] bcm63xx_phone pcm_stop() 2382: Halting TX DMA
[ 256.352661] bcm63xx_phone pcm_stop() 2389: TX DMA halted
[ 256.358176] bcm63xx_phone pcm_stop() 2404: Halting RX DMA
[ 256.368712] bcm63xx_phone pcm_stop() 2411: RX DMA halted
[ 256.374250] bcm63xx_phone pcm_stop() 2422: Disabling all PCM channels
[ 256.380951] bcm63xx_phone pcm_regs_reset() 1223: pcm_regs_reset()
[ 256.387345] bcm63xx_phone pcm_regs_reset() 1260: PCM_CTRL_REG <- 0x23200101
[ 256.394593] bcm63xx_phone pcm_dma_tx_descs_reset() 1405: pcm_dma_tx_descs_reset()
[ 256.402419] bcm63xx_phone pcm_pr_stats() 2100: ======= Stats =======
[ 256.409011] bcm63xx_phone pcm_pr_stats() 2101: rx_errors = 0
[ 256.415867] bcm63xx_phone pcm_pr_stats() 2102: rx_length_errors = 0
[ 256.422723] bcm63xx_phone pcm_pr_stats() 2103: rx_empty_errors = 0
[ 256.429578] bcm63xx_phone pcm_pr_stats() 2104: rx_good = 0
[ 256.436431] bcm63xx_phone pcm_pr_stats() 2105: rx_bytes = 0
[ 256.443288] bcm63xx_phone pcm_pr_stats() 2106: tx_errors = 0
[ 256.450141] bcm63xx_phone pcm_pr_stats() 2107: tx_good = 0
[ 256.456996] bcm63xx_phone pcm_pr_stats() 2108: tx_bytes = 0
[ 256.463849] bcm63xx_phone pcm_pr_stats() 2109: cnt_irq_rx = 0
[ 256.470705] bcm63xx_phone pcm_pr_stats() 2110: cnt_irq_tx = 0
[ 256.477560] bcm63xx_phone bcm_phone_mgr_stop() 773: bcm_phone_mgr_stop()
[ 256.484504] bcm63xx_phone bcm_periodic_timer_del_work() 199: bcm_periodic_timer_del_work()
[ 256.493119] bcm63xx_phone phone_dev_zarlink_ve880_stop() 2174: phone_dev_zarlink_ve880_stop()
root@OpenWrt:~# bcm63xx-phone-test test=loopback
pcm_regs =>
ctlr = 0x0
chan_ctrl = 0x0
int_pending = 0x0
int_mask = 0x0
pll_ctrl1 = 0x20001
pll_ctrl2 = 0x8492b
pll_ctrl3 = 0x1e1c
pll_ctrl4 = 0x0
pll_stat = 0x1
slot_alloc_tbl[0] = 0x0
slot_alloc_tbl[1] = 0x0
slot_alloc_tbl[2] = 0x0
slot_alloc_tbl[3] = 0x0
slot_alloc_tbl[4] = 0x0
slot_alloc_tbl[5] = 0x0
slot_alloc_tbl[6] = 0x0
slot_alloc_tbl[7] = 0x0
slot_alloc_tbl[8] = 0x0
slot_alloc_tbl[9] = 0x0
slot_alloc_tbl[10] = 0x0
slot_alloc_tbl[11] = 0x0
slot_alloc_tbl[12] = 0x0
slot_alloc_tbl[13] = 0x0
slot_alloc_tbl[14] = 0x0
slot_alloc_tbl[15] = 0x0
dma_cfg = 0x1000000
dma_channels[0].dma_flowcl = 0x0
dma_channels[0].dma_flowch = 0x0
dma_channels[0].dma_bufalloc = 0x0
dma_channels[0].dmac_chancfg = 0x0
dma_channels[0].dmac_ir = 0x0
dma_channels[0].dmac_irmask = 0x0
dma_channels[0].dmac_maxburst = 0x10
dma_channels[0].dmas_rstart = 0xc82000
dma_channels[0].dmas_sram2 = 0x0
dma_channels[0].dmas_sram3 = 0x0
dma_channels[0].dmas_sram4 = 0x0
dma_channels[1].dma_flowcl = 0x0
dma_channels[1].dma_flowch = 0x0
dma_channels[1].dma_bufalloc = 0x0
dma_channels[1].dmac_chancfg = 0x0
dma_channels[1].dmac_ir = 0x0
dma_channels[1].dmac_irmask = 0x0
dma_channels[1].dmac_maxburst = 0x10
dma_channels[1].dmas_rstart = 0xc81000
dma_channels[1].dmas_sram2 = 0x0
dma_channels[1].dmas_sram3 = 0x0
dma_channels[1].dmas_sram4 = 0x0
ioctl(2149598476) failed. errno=22
Error starting
root@OpenWrt:~# dmesg -c
[ 281.561133] bcm63xx_phone bcm_drv_open() 997: bcm_drv_open()
[ 281.587114] bcm63xx_phone bcm_drv_unlocked_ioctl() 640: BCMPH_IOCTL_START
[ 281.594210] bcm63xx_phone bcm_drv_start() 949: bcm_drv_start()
[ 281.600287] bcm63xx_phone bcm_drv_stop() 850: bcm_drv_stop()
[ 281.606202] bcm63xx_phone pcm_stop() 2370: pcm_stop()
[ 281.611448] bcm63xx_phone pcm_dma_stop() 1506: pcm_dma_stop()
[ 281.617422] bcm63xx_phone pcm_stop() 2382: Halting TX DMA
[ 281.627810] bcm63xx_phone pcm_stop() 2389: TX DMA halted
[ 281.633356] bcm63xx_phone pcm_stop() 2404: Halting RX DMA
[ 281.643873] bcm63xx_phone pcm_stop() 2411: RX DMA halted
[ 281.649406] bcm63xx_phone pcm_stop() 2422: Disabling all PCM channels
[ 281.656106] bcm63xx_phone pcm_regs_reset() 1223: pcm_regs_reset()
[ 281.662441] bcm63xx_phone pcm_regs_reset() 1260: PCM_CTRL_REG <- 0x23200101
[ 281.669697] bcm63xx_phone pcm_dma_tx_descs_reset() 1405: pcm_dma_tx_descs_reset()
[ 281.677517] bcm63xx_phone pcm_pr_stats() 2100: ======= Stats =======
[ 281.684170] bcm63xx_phone pcm_pr_stats() 2101: rx_errors = 0
[ 281.691048] bcm63xx_phone pcm_pr_stats() 2102: rx_length_errors = 0
[ 281.697907] bcm63xx_phone pcm_pr_stats() 2103: rx_empty_errors = 0
[ 281.704773] bcm63xx_phone pcm_pr_stats() 2104: rx_good = 0
[ 281.711624] bcm63xx_phone pcm_pr_stats() 2105: rx_bytes = 0
[ 281.718477] bcm63xx_phone pcm_pr_stats() 2106: tx_errors = 0
[ 281.725331] bcm63xx_phone pcm_pr_stats() 2107: tx_good = 0
[ 281.732186] bcm63xx_phone pcm_pr_stats() 2108: tx_bytes = 0
[ 281.739038] bcm63xx_phone pcm_pr_stats() 2109: cnt_irq_rx = 0
[ 281.745915] bcm63xx_phone pcm_pr_stats() 2110: cnt_irq_tx = 0
[ 281.752770] bcm63xx_phone bcm_phone_mgr_stop() 773: bcm_phone_mgr_stop()
[ 281.759726] bcm63xx_phone bcm_periodic_timer_del_work() 199: bcm_periodic_timer_del_work()
[ 281.768296] bcm63xx_phone phone_dev_zarlink_ve880_stop() 2174: phone_dev_zarlink_ve880_stop()
[ 281.777147] bcm63xx_phone bcm_phone_mgr_get_first_timeslot_line() 143: bcm_phone_mgr_get_first_timeslot_line(line=0)
[ 281.788037] bcm63xx_phone: Echo cancellation can be enabled for line 0 so no other codec than linear is allowed
[ 281.806383] bcm63xx_phone bcm_drv_release() 1038: bcm_drv_release()
[ 281.812936] bcm63xx_phone bcm_drv_stop() 850: bcm_drv_stop()
[ 281.818832] bcm63xx_phone pcm_stop() 2370: pcm_stop()
[ 281.824120] bcm63xx_phone pcm_dma_stop() 1506: pcm_dma_stop()
[ 281.830095] bcm63xx_phone pcm_stop() 2382: Halting TX DMA
[ 281.843797] bcm63xx_phone pcm_stop() 2389: TX DMA halted
[ 281.849351] bcm63xx_phone pcm_stop() 2404: Halting RX DMA
[ 281.859792] bcm63xx_phone pcm_stop() 2411: RX DMA halted
[ 281.865334] bcm63xx_phone pcm_stop() 2422: Disabling all PCM channels
[ 281.872035] bcm63xx_phone pcm_regs_reset() 1223: pcm_regs_reset()
[ 281.878386] bcm63xx_phone pcm_regs_reset() 1260: PCM_CTRL_REG <- 0x23200101
[ 281.885671] bcm63xx_phone pcm_dma_tx_descs_reset() 1405: pcm_dma_tx_descs_reset()
[ 281.893504] bcm63xx_phone pcm_pr_stats() 2100: ======= Stats =======
[ 281.900096] bcm63xx_phone pcm_pr_stats() 2101: rx_errors = 0
[ 281.906953] bcm63xx_phone pcm_pr_stats() 2102: rx_length_errors = 0
[ 281.913810] bcm63xx_phone pcm_pr_stats() 2103: rx_empty_errors = 0
[ 281.920672] bcm63xx_phone pcm_pr_stats() 2104: rx_good = 0
[ 281.927525] bcm63xx_phone pcm_pr_stats() 2105: rx_bytes = 0
[ 281.934382] bcm63xx_phone pcm_pr_stats() 2106: tx_errors = 0
[ 281.941244] bcm63xx_phone pcm_pr_stats() 2107: tx_good = 0
[ 281.948097] bcm63xx_phone pcm_pr_stats() 2108: tx_bytes = 0
[ 281.954970] bcm63xx_phone pcm_pr_stats() 2109: cnt_irq_rx = 0
[ 281.961826] bcm63xx_phone pcm_pr_stats() 2110: cnt_irq_tx = 0
[ 281.968681] bcm63xx_phone bcm_phone_mgr_stop() 773: bcm_phone_mgr_stop()
[ 281.975633] bcm63xx_phone bcm_periodic_timer_del_work() 199: bcm_periodic_timer_del_work()
[ 281.984200] bcm63xx_phone phone_dev_zarlink_ve880_stop() 2174: phone_dev_zarlink_ve880_stop()
root@OpenWrt:~# bcm63xx-phone-test test=loopback_mm
pcm_regs =>
ctlr = 0x0
chan_ctrl = 0x0
int_pending = 0x0
int_mask = 0x0
pll_ctrl1 = 0x20001
pll_ctrl2 = 0x8492b
pll_ctrl3 = 0x1e1c
pll_ctrl4 = 0x0
pll_stat = 0x1
slot_alloc_tbl[0] = 0x0
slot_alloc_tbl[1] = 0x0
slot_alloc_tbl[2] = 0x0
slot_alloc_tbl[3] = 0x0
slot_alloc_tbl[4] = 0x0
slot_alloc_tbl[5] = 0x0
slot_alloc_tbl[6] = 0x0
slot_alloc_tbl[7] = 0x0
slot_alloc_tbl[8] = 0x0
slot_alloc_tbl[9] = 0x0
slot_alloc_tbl[10] = 0x0
slot_alloc_tbl[11] = 0x0
slot_alloc_tbl[12] = 0x0
slot_alloc_tbl[13] = 0x0
slot_alloc_tbl[14] = 0x0
slot_alloc_tbl[15] = 0x0
dma_cfg = 0x1000000
dma_channels[0].dma_flowcl = 0x0
dma_channels[0].dma_flowch = 0x0
dma_channels[0].dma_bufalloc = 0x0
dma_channels[0].dmac_chancfg = 0x0
dma_channels[0].dmac_ir = 0x0
dma_channels[0].dmac_irmask = 0x0
dma_channels[0].dmac_maxburst = 0x10
dma_channels[0].dmas_rstart = 0xc82000
dma_channels[0].dmas_sram2 = 0x0
dma_channels[0].dmas_sram3 = 0x0
dma_channels[0].dmas_sram4 = 0x0
dma_channels[1].dma_flowcl = 0x0
dma_channels[1].dma_flowch = 0x0
dma_channels[1].dma_bufalloc = 0x0
dma_channels[1].dmac_chancfg = 0x0
dma_channels[1].dmac_ir = 0x0
dma_channels[1].dmac_irmask = 0x0
dma_channels[1].dmac_maxburst = 0x10
dma_channels[1].dmas_rstart = 0xc81000
dma_channels[1].dmas_sram2 = 0x0
dma_channels[1].dmas_sram3 = 0x0
dma_channels[1].dmas_sram4 = 0x0
ioctl(536888589) failed. errno=22
Error starting
root@OpenWrt:~# dmesg -c
[ 314.887481] bcm63xx_phone bcm_drv_open() 997: bcm_drv_open()
[ 314.893447] bcm63xx_phone bcm_drv_unlocked_ioctl() 731: BCMPH_IOCTL_GET_MMAP_DESC
[ 314.902083] bcm63xx_phone bcm_drv_mmap() 1097: bcm_drv_mmap()
[ 314.907945] bcm63xx_phone bcm_drv_mm_open() 1067: bcm_drv_mm_open()
[ 314.935421] bcm63xx_phone bcm_drv_unlocked_ioctl() 665: BCMPH_IOCTL_START_MM
[ 314.942798] bcm63xx_phone bcm_drv_start() 949: bcm_drv_start()
[ 314.948874] bcm63xx_phone bcm_drv_stop() 850: bcm_drv_stop()
[ 314.954762] bcm63xx_phone pcm_stop() 2370: pcm_stop()
[ 314.960065] bcm63xx_phone pcm_dma_stop() 1506: pcm_dma_stop()
[ 314.966072] bcm63xx_phone pcm_stop() 2382: Halting TX DMA
[ 314.978988] bcm63xx_phone pcm_stop() 2389: TX DMA halted
[ 314.984532] bcm63xx_phone pcm_stop() 2404: Halting RX DMA
[ 314.994995] bcm63xx_phone pcm_stop() 2411: RX DMA halted
[ 315.000525] bcm63xx_phone pcm_stop() 2422: Disabling all PCM channels
[ 315.007237] bcm63xx_phone pcm_regs_reset() 1223: pcm_regs_reset()
[ 315.013588] bcm63xx_phone pcm_regs_reset() 1260: PCM_CTRL_REG <- 0x23200101
[ 315.020822] bcm63xx_phone pcm_dma_tx_descs_reset() 1405: pcm_dma_tx_descs_reset()
[ 315.028636] bcm63xx_phone pcm_pr_stats() 2100: ======= Stats =======
[ 315.035240] bcm63xx_phone pcm_pr_stats() 2101: rx_errors = 0
[ 315.042111] bcm63xx_phone pcm_pr_stats() 2102: rx_length_errors = 0
[ 315.048979] bcm63xx_phone pcm_pr_stats() 2103: rx_empty_errors = 0
[ 315.055846] bcm63xx_phone pcm_pr_stats() 2104: rx_good = 0
[ 315.062756] bcm63xx_phone pcm_pr_stats() 2105: rx_bytes = 0
[ 315.069672] bcm63xx_phone pcm_pr_stats() 2106: tx_errors = 0
[ 315.076540] bcm63xx_phone pcm_pr_stats() 2107: tx_good = 0
[ 315.083397] bcm63xx_phone pcm_pr_stats() 2108: tx_bytes = 0
[ 315.090250] bcm63xx_phone pcm_pr_stats() 2109: cnt_irq_rx = 0
[ 315.097106] bcm63xx_phone pcm_pr_stats() 2110: cnt_irq_tx = 0
[ 315.103960] bcm63xx_phone bcm_phone_mgr_stop() 773: bcm_phone_mgr_stop()
[ 315.110928] bcm63xx_phone bcm_periodic_timer_del_work() 199: bcm_periodic_timer_del_work()
[ 315.119497] bcm63xx_phone phone_dev_zarlink_ve880_stop() 2174: phone_dev_zarlink_ve880_stop()
[ 315.128356] bcm63xx_phone bcm_phone_mgr_get_first_timeslot_line() 143: bcm_phone_mgr_get_first_timeslot_line(line=0)
[ 315.139245] bcm63xx_phone: Echo cancellation can be enabled for line 0 so no other codec than linear is allowed
[ 315.157509] bcm63xx_phone bcm_drv_mm_close() 1072: bcm_drv_mm_close()
[ 315.164784] bcm63xx_phone bcm_drv_release() 1038: bcm_drv_release()
[ 315.171409] bcm63xx_phone bcm_drv_stop() 850: bcm_drv_stop()
[ 315.177299] bcm63xx_phone pcm_stop() 2370: pcm_stop()
[ 315.182562] bcm63xx_phone pcm_dma_stop() 1506: pcm_dma_stop()
[ 315.188527] bcm63xx_phone pcm_stop() 2382: Halting TX DMA
[ 315.199002] bcm63xx_phone pcm_stop() 2389: TX DMA halted
[ 315.204540] bcm63xx_phone pcm_stop() 2404: Halting RX DMA
[ 315.215039] bcm63xx_phone pcm_stop() 2411: RX DMA halted
[ 315.220585] bcm63xx_phone pcm_stop() 2422: Disabling all PCM channels
[ 315.227306] bcm63xx_phone pcm_regs_reset() 1223: pcm_regs_reset()
[ 315.233648] bcm63xx_phone pcm_regs_reset() 1260: PCM_CTRL_REG <- 0x23200101
[ 315.240897] bcm63xx_phone pcm_dma_tx_descs_reset() 1405: pcm_dma_tx_descs_reset()
[ 315.248715] bcm63xx_phone pcm_pr_stats() 2100: ======= Stats =======
[ 315.255325] bcm63xx_phone pcm_pr_stats() 2101: rx_errors = 0
[ 315.262191] bcm63xx_phone pcm_pr_stats() 2102: rx_length_errors = 0
[ 315.269106] bcm63xx_phone pcm_pr_stats() 2103: rx_empty_errors = 0
[ 315.276010] bcm63xx_phone pcm_pr_stats() 2104: rx_good = 0
[ 315.282865] bcm63xx_phone pcm_pr_stats() 2105: rx_bytes = 0
[ 315.289768] bcm63xx_phone pcm_pr_stats() 2106: tx_errors = 0
[ 315.296628] bcm63xx_phone pcm_pr_stats() 2107: tx_good = 0
[ 315.303481] bcm63xx_phone pcm_pr_stats() 2108: tx_bytes = 0
[ 315.310334] bcm63xx_phone pcm_pr_stats() 2109: cnt_irq_rx = 0
[ 315.317190] bcm63xx_phone pcm_pr_stats() 2110: cnt_irq_tx = 0
[ 315.324062] bcm63xx_phone bcm_phone_mgr_stop() 773: bcm_phone_mgr_stop()
[ 315.331011] bcm63xx_phone bcm_periodic_timer_del_work() 199: bcm_periodic_timer_del_work()
[ 315.339583] bcm63xx_phone phone_dev_zarlink_ve880_stop() 2174: phone_dev_zarlink_ve880_stop()
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.356000] bcm63xx-phone pcm_stop() 2362: RX DMA halted
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.360000] bcm63xx-phone pcm_stop() 2373: Disabling all PCM channels
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.368000] bcm63xx-phone pcm_regs_reset() 1192: pcm_regs_reset()
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.372000] bcm63xx-phone pcm_regs_reset() 1228: PCM_CTRL_REG <- 0x23200101
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.380000] bcm63xx-phone pcm_dma_tx_descs_reset() 1373: pcm_dma_tx_descs_reset()
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.388000] bcm63xx-phone pcm_pr_stats() 2053: ======= Stats =======
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.396000] bcm63xx-phone pcm_pr_stats() 2054: rx_errors = 0
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.400000] bcm63xx-phone pcm_pr_stats() 2055: rx_length_errors = 0
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.408000] bcm63xx-phone pcm_pr_stats() 2056: rx_empty_errors = 0
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.416000] bcm63xx-phone pcm_pr_stats() 2057: rx_good = 0
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.424000] bcm63xx-phone pcm_pr_stats() 2058: rx_bytes = 0
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.428000] bcm63xx-phone pcm_pr_stats() 2059: tx_errors = 0
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.436000] bcm63xx-phone pcm_pr_stats() 2060: tx_good = 0
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.444000] bcm63xx-phone pcm_pr_stats() 2061: tx_bytes = 0
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.452000] bcm63xx-phone pcm_pr_stats() 2062: cnt_irq_rx = 0
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.456000] bcm63xx-phone pcm_pr_stats() 2063: cnt_irq_tx = 0
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.464000] bcm63xx-phone pcm_dma_deinit() 1798: pcm_dma_deinit()
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.472000] bcm63xx-phone pcm_dma_deinit() 1820: Unmapping DMA addresses of TX descs
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.480000] bcm63xx-phone pcm_dma_deinit() 1825: Unmapping DMA addresses of RX descs
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.488000] bcm63xx-phone pcm_dma_deinit() 1872: Freeing memory of RX and TX data buffers
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.496000] bcm63xx-phone pcm_dma_deinit() 1876: Freeing memory for DMA adresses
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.504000] bcm63xx-phone pcm_dma_deinit() 1881: Freeing DMA memory of RX descs
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.512000] bcm63xx-phone pcm_dma_deinit() 1890: Freeing DMA memory of TX descs
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.520000] bcm63xx-phone pcm_regs_deinit() 1259: pcm_regs_deinit()
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.524000] bcm63xx-phone pcm_regs_reset() 1192: pcm_regs_reset()
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.532000] bcm63xx-phone pcm_regs_reset() 1228: PCM_CTRL_REG <- 0x23200101
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.540000] bcm63xx-phone pcm6358_pll_deinit() 1037: pcm6358_pll_deinit()
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.636000] bcm63xx-phone pcm_release_shared_res() 2001: pcm_release_shared_res()
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.644000] bcm63xx-phone pcm_release_mem_res() 1936: pcm_release_mem_res(addr=0xfffe1a00, size=32)
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.652000] bcm63xx-phone pcm_release_mem_res() 1936: pcm_release_mem_res(addr=0xfffe1900, size=32)
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.660000] bcm63xx-phone pcm_release_mem_res() 1936: pcm_release_mem_res(addr=0xfffe1800, size=256)
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.672000] bcm63xx-phone pcm_release_mem_res() 1936: pcm_release_mem_res(addr=0xfffe1600, size=256)
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.680000] bcm63xx-phone bcm_drv_init() 1590: Unregistering device
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.688000] bcm63xx-phone bcm_wait_queue_deinit() 39: bcm_wait_queue_deinit()
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.696000] bcm63xx-phone bcm_wait_queue_deinit() 39: bcm_wait_queue_deinit()
Sun Jun 7 20:30:24 2015 kern.info kernel: [ 366.704000] bcm63xx-phone board_deinit() 622: board_deinit()
Sun Jun 7 22:04:52 2015 kern.info kernel: [ 6034.976000] bcm63xx-phone: bcm63xx-phone: v0.1
Sun Jun 7 22:04:52 2015 kern.info kernel: [ 6034.984000] bcm63xx-phone bcm_drv_init() 1439: bcm_drv_init()
Sun Jun 7 22:04:52 2015 kern.info kernel: [ 6034.988000] bcm63xx-phone board_init() 561: board_init()
Sun Jun 7 22:04:52 2015 kern.info kernel: [ 6034.996000] bcm63xx-phone: CPU is Broadcom 6358
Sun Jun 7 22:04:52 2015 kern.info kernel: [ 6035.000000] bcm63xx-phone: Board is HW556
Sun Jun 7 22:04:52 2015 kern.info kernel: [ 6035.004000] bcm63xx-phone board_get_desc() 615: board_get_desc()
Sun Jun 7 22:04:52 2015 kern.info kernel: [ 6035.008000] bcm63xx-phone bcm_drv_init() 1454: Initializing mutex
Sun Jun 7 22:04:52 2015 kern.info kernel: [ 6035.016000] bcm63xx-phone bcm_drv_init() 1457: Initializing RX wait queue
Sun Jun 7 22:04:52 2015 kern.info kernel: [ 6035.024000] bcm63xx-phone bcm_wait_queue_init() 32: bcm_wait_queue_init()
Sun Jun 7 22:04:52 2015 kern.info kernel: [ 6035.032000] bcm63xx-phone bcm_drv_init() 1459: Initializing TX wait queue
Sun Jun 7 22:04:52 2015 kern.info kernel: [ 6035.036000] bcm63xx-phone bcm_wait_queue_init() 32: bcm_wait_queue_init()
Sun Jun 7 22:04:52 2015 kern.info kernel: [ 6035.044000] bcm63xx-phone bcm_drv_init() 1474: Registering device bcm63xx-phone
Sun Jun 7 22:04:52 2015 kern.info kernel: [ 6035.052000] bcm63xx-phone pcm_init() 2482: pcm_init()
Sun Jun 7 22:04:52 2015 kern.info kernel: [ 6035.056000] bcm63xx-phone pcm_init() 2550: Using 25 buffers of 256 bytes for RX
Sun Jun 7 22:04:52 2015 kern.info kernel: [ 6035.064000] bcm63xx-phone pcm_init() 2586: Using 25 buffers of 256 bytes for TX
Sun Jun 7 22:04:52 2015 kern.info kernel: [ 6035.072000] bcm63xx-phone pcm_get_shared_res() 1950: pcm_get_shared_res()
Sun Jun 7 22:04:52 2015 kern.info kernel: [ 6035.080000] bcm63xx-phone pcm_get_mem_res() 1906: pcm_get_mem_res(id=pcm, addr=0xfffe1600, size=256)
Sun Jun 7 22:04:52 2015 kern.info kernel: [ 6035.088000] bcm63xx-phone pcm_get_mem_res() 1906: pcm_get_mem_res(id=pcm_dma, addr=0xfffe1800, size=256)
Sun Jun 7 22:04:52 2015 kern.info kernel: [ 6035.100000] bcm63xx-phone pcm_get_mem_res() 1906: pcm_get_mem_res(id=pcm_dmac, addr=0xfffe1900, size=32)
Sun Jun 7 22:04:52 2015 kern.info kernel: [ 6035.108000] bcm63xx-phone pcm_get_mem_res() 1906: pcm_get_mem_res(id=pcm_dmas, addr=0xfffe1a00, size=32)
Sun Jun 7 22:04:52 2015 kern.info kernel: [ 6035.208000] bcm63xx-phone pcm6358_pll_init() 970: pcm6358_pll_init()
Sun Jun 7 22:04:52 2015 kern.info kernel: [ 6035.212000] bcm63xx-phone pcm6358_pll_init() 975: pll_ctrl1=f0010001, pll_ctrl2=53d47, pll_ctrl3=a85
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.256000] bcm63xx-phone pcm6358_pll_init() 1028: pll_ctrl1=20001, pll_ctrl2=8492b, pll_ctrl3=1e1c
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.264000] bcm63xx-phone pcm_regs_init() 1247: pcm_regs_init()
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.268000] bcm63xx-phone pcm_regs_reset() 1192: pcm_regs_reset()
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.276000] bcm63xx-phone pcm_regs_reset() 1228: PCM_CTRL_REG <- 0x23200101
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.284000] bcm63xx-phone pcm_dma_init() 1502: pcm_dma_init()
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.288000] bcm63xx-phone pcm_dma_init() 1535: Allocating 200 bytes of DMA memory for RX descs
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.300000] bcm63xx-phone pcm_dma_init() 1546: 200 bytes of memory allocated, starting at address 0xa2e77000
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.308000] bcm63xx-phone pcm_dma_init() 1552: Allocating 200 bytes of DMA memory for TX descs
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.316000] bcm63xx-phone pcm_dma_init() 1563: 200 bytes of memory allocated, starting at address 0xa2e76000
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.328000] bcm63xx-phone pcm_dma_init() 1571: Allocating 12800 bytes of memory for RX and TX data buffers
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.340000] bcm63xx-phone pcm_dma_init() 1578: 12800 bytes of memory allocated, starting at address 0x82e04000
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.348000] bcm63xx-phone pcm_dma_init() 1604: Allocating 224 bytes of memory for DMA addresses
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.356000] bcm63xx-phone pcm_dma_init() 1611: 224 bytes of memory allocated, starting at address 0x82df0800
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.368000] bcm63xx-phone pcm_dma_init() 1618: Mapping DMA addresses of RX descs
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.376000] bcm63xx-phone pcm_dma_init() 1635: Mapping DMA addresses of TX descs
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.384000] bcm63xx-phone pcm_dma_rx_descs_reset() 1342: pcm_dma_rx_descs_reset()
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.392000] bcm63xx-phone pcm_dma_tx_descs_reset() 1373: pcm_dma_tx_descs_reset()
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.400000] bcm63xx-phone bcm_drv_init() 1524: t->mm_desc.ioctl_param_off = 0, t->mm_desc.ioctl_param_size = 208
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.408000] bcm63xx-phone bcm_drv_init() 1534: t->mm_desc.rbs[0].rx_ring_buf_desc_off = 208, t->mm_desc.rbs[0].rx_ring_buf_desc_size = 12
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.424000] bcm63xx-phone bcm_drv_init() 1542: t->mm_desc.rbs[0].tx_ring_buf_desc_off = 224, t->mm_desc.rbs[0].tx_ring_buf_desc_size = 12
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.436000] bcm63xx-phone bcm_drv_init() 1534: t->mm_desc.rbs[1].rx_ring_buf_desc_off = 240, t->mm_desc.rbs[1].rx_ring_buf_desc_size = 12
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.448000] bcm63xx-phone bcm_drv_init() 1542: t->mm_desc.rbs[1].tx_ring_buf_desc_off = 256, t->mm_desc.rbs[1].tx_ring_buf_desc_size = 12
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.460000] bcm63xx-phone bcm_drv_init() 1564: 8192 bytes of memory allocated, starting at address 0x82e00000
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.472000] bcm63xx-phone bcm_phone_mgr_init() 850: bcm_phone_mgr_init()
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.480000] bcm63xx-phone bcm_phone_mgr_devs_init() 724: bcm_phone_mgr_devs_init()
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.488000] bcm63xx-phone phone_device_alloc() 55: phone_device_alloc()
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.492000] bcm63xx-phone phone_device_alloc() 84: 2020 bytes of memory allocated, starting at address 0x832d4800
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.504000] bcm63xx-phone phone_dev_le88266_init() 54: phone_dev_le88266_init()
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.512000] bcm63xx-phone phone_dev_zarlink_ve880_init() 1948: phone_dev_zarlink_ve880_init()
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.520000] bcm63xx-phone bcm_mpi_init() 862: bcm_mpi_init()
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.536000] bcm63xx-phone bcm_drv_init() 1584: Freeing mmap buffer used for RX, TX...
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.544000] bcm63xx-phone pcm_deinit() 2684: pcm_deinit()
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.548000] bcm63xx-phone pcm_stop() 2321: pcm_stop()
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.552000] bcm63xx-phone pcm_dma_stop() 1470: pcm_dma_stop()
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.560000] bcm63xx-phone pcm_stop() 2333: Halting TX DMA
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.572000] bcm63xx-phone pcm_stop() 2340: TX DMA halted
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.576000] bcm63xx-phone pcm_stop() 2355: Halting RX DMA
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.588000] bcm63xx-phone pcm_stop() 2362: RX DMA halted
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.592000] bcm63xx-phone pcm_stop() 2373: Disabling all PCM channels
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.600000] bcm63xx-phone pcm_regs_reset() 1192: pcm_regs_reset()
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.604000] bcm63xx-phone pcm_regs_reset() 1228: PCM_CTRL_REG <- 0x23200101
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.612000] bcm63xx-phone pcm_dma_tx_descs_reset() 1373: pcm_dma_tx_descs_reset()
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.620000] bcm63xx-phone pcm_pr_stats() 2053: ======= Stats =======
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.628000] bcm63xx-phone pcm_pr_stats() 2054: rx_errors = 0
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.632000] bcm63xx-phone pcm_pr_stats() 2055: rx_length_errors = 0
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.640000] bcm63xx-phone pcm_pr_stats() 2056: rx_empty_errors = 0
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.648000] bcm63xx-phone pcm_pr_stats() 2057: rx_good = 0
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.656000] bcm63xx-phone pcm_pr_stats() 2058: rx_bytes = 0
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.660000] bcm63xx-phone pcm_pr_stats() 2059: tx_errors = 0
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.668000] bcm63xx-phone pcm_pr_stats() 2060: tx_good = 0
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.676000] bcm63xx-phone pcm_pr_stats() 2061: tx_bytes = 0
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.684000] bcm63xx-phone pcm_pr_stats() 2062: cnt_irq_rx = 0
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.688000] bcm63xx-phone pcm_pr_stats() 2063: cnt_irq_tx = 0
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.696000] bcm63xx-phone pcm_dma_deinit() 1798: pcm_dma_deinit()
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.704000] bcm63xx-phone pcm_dma_deinit() 1820: Unmapping DMA addresses of TX descs
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.712000] bcm63xx-phone pcm_dma_deinit() 1825: Unmapping DMA addresses of RX descs
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.720000] bcm63xx-phone pcm_dma_deinit() 1872: Freeing memory of RX and TX data buffers
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.728000] bcm63xx-phone pcm_dma_deinit() 1876: Freeing memory for DMA adresses
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.736000] bcm63xx-phone pcm_dma_deinit() 1881: Freeing DMA memory of RX descs
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.744000] bcm63xx-phone pcm_dma_deinit() 1890: Freeing DMA memory of TX descs
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.752000] bcm63xx-phone pcm_regs_deinit() 1259: pcm_regs_deinit()
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.756000] bcm63xx-phone pcm_regs_reset() 1192: pcm_regs_reset()
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.764000] bcm63xx-phone pcm_regs_reset() 1228: PCM_CTRL_REG <- 0x23200101
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.772000] bcm63xx-phone pcm6358_pll_deinit() 1037: pcm6358_pll_deinit()
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.864000] bcm63xx-phone pcm_release_shared_res() 2001: pcm_release_shared_res()
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.872000] bcm63xx-phone pcm_release_mem_res() 1936: pcm_release_mem_res(addr=0xfffe1a00, size=32)
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.880000] bcm63xx-phone pcm_release_mem_res() 1936: pcm_release_mem_res(addr=0xfffe1900, size=32)
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.888000] bcm63xx-phone pcm_release_mem_res() 1936: pcm_release_mem_res(addr=0xfffe1800, size=256)
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.900000] bcm63xx-phone pcm_release_mem_res() 1936: pcm_release_mem_res(addr=0xfffe1600, size=256)
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.908000] bcm63xx-phone bcm_drv_init() 1590: Unregistering device
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.916000] bcm63xx-phone bcm_wait_queue_deinit() 39: bcm_wait_queue_deinit()
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.924000] bcm63xx-phone bcm_wait_queue_deinit() 39: bcm_wait_queue_deinit()
Sun Jun 7 22:04:53 2015 kern.info kernel: [ 6035.932000] bcm63xx-phone board_deinit() 622: board_deinit()
Hello! I recently found the firmware of the Vodafone Huawei Echo-Life Hg556 Leaked on github. It has some C files out there waiting for exploration. I found a couple of them that gives me confidence that there could be the zarlink drivers. Here is the repository. https://github.com/cubieb/hg556a_source Thank you and have a good day! Au revoir!
When i dial "100" from a SIP phone, i want FXS line1 ring.
How to config extensions.conf ?
[bcmph-line-1]
exten => 100,1,Dial(?[to FXS line1])
exten => 200,1,Dial(SIP/Mytest)
I`m not familiar with the asterisk. Thank you.
Could add support to the Le88010, have a board that mount it and would try this
Thanks for everything
Hi there. I am updating my LEDE firmware of the VoIP box(of course, it runs bcm63xx-phone), and it seems that the patch files aren't working anymore and also, it stopped compiling properly. It mentioned something about struct condition done in the mpi file.
How we can fix this?
BR,
Talnaci Alexandru
Hello! I'm flafyrex(also in OpenWRT Forums) and I tried to compile the bcm63xx-phone. The kernel module and phone-test got installed, but ast-chan doesn't want to install(WARNING: No feed for package 'bcm63xx-ast-chan' found, maybe it's already part of the standard packages?). I'm compiling on Debian Jessie 8. Please help me quickly. Thank you.
I tested on a HG553 (Vodafone Station). It works very well but I think that 2 updates could be done and I could do it for community if you can give me some suggestions.
I tried to check source code where I could be these updates but I am not really sure.
Hello,
I'm using lede snapshot and I compiled my own image loading bcm63xx-phone kernel module and removing bcm63xx-spi kernel module. When I load the kernel module it is correctly loaded:
root@LEDE:~# insmod bcm63xx-phone
root@LEDE:~# lsmod | grep bcm
bcm63xx_phone 169334 0
as you can see from the log:
Wed May 24 14:44:52 2017 kern.info kernel: [ 7499.546182] bcm63xx-phone: bcm63xx-phone: v0.1
Wed May 24 14:44:52 2017 kern.info kernel: [ 7499.550853] bcm63xx-phone bcm_drv_init() 1442: bcm_drv_init()
Wed May 24 14:44:52 2017 kern.info kernel: [ 7499.556803] bcm63xx-phone board_init() 706: board_init()
Wed May 24 14:44:52 2017 kern.info kernel: [ 7499.562272] bcm63xx-phone: CPU is Broadcom 6358
Wed May 24 14:44:52 2017 kern.info kernel: [ 7499.566940] bcm63xx-phone: Board is DWV-S0
Wed May 24 14:44:52 2017 kern.info kernel: [ 7499.571201] bcm63xx-phone board_get_desc() 764: board_get_desc()
Wed May 24 14:44:52 2017 kern.info kernel: [ 7499.577394] bcm63xx-phone bcm_drv_init() 1457: Initializing mutex
Wed May 24 14:44:52 2017 kern.info kernel: [ 7499.583674] bcm63xx-phone bcm_drv_init() 1460: Initializing RX wait queue
Wed May 24 14:44:52 2017 kern.info kernel: [ 7499.590672] bcm63xx-phone bcm_wait_queue_init() 32: bcm_wait_queue_init()
Wed May 24 14:44:52 2017 kern.info kernel: [ 7499.597668] bcm63xx-phone bcm_drv_init() 1462: Initializing TX wait queue
Wed May 24 14:44:52 2017 kern.info kernel: [ 7499.604666] bcm63xx-phone bcm_wait_queue_init() 32: bcm_wait_queue_init()
Wed May 24 14:44:52 2017 kern.info kernel: [ 7499.611667] bcm63xx-phone bcm_drv_init() 1477: Registering device bcm63xx-phone
Wed May 24 14:44:52 2017 kern.info kernel: [ 7499.619530] bcm63xx-phone pcm_init() 2482: pcm_init()
Wed May 24 14:44:52 2017 kern.info kernel: [ 7499.624777] bcm63xx-phone pcm_init() 2550: Using 25 buffers of 256 bytes for RX
Wed May 24 14:44:52 2017 kern.info kernel: [ 7499.632332] bcm63xx-phone pcm_init() 2586: Using 25 buffers of 256 bytes for TX
Wed May 24 14:44:52 2017 kern.info kernel: [ 7499.639864] bcm63xx-phone pcm_get_shared_res() 1950: pcm_get_shared_res()
Wed May 24 14:44:52 2017 kern.info kernel: [ 7499.646870] bcm63xx-phone pcm_get_mem_res() 1906: pcm_get_mem_res(id=pcm, addr=0xfffe1600, size=256)
Wed May 24 14:44:52 2017 kern.info kernel: [ 7499.656310] bcm63xx-phone pcm_get_mem_res() 1906: pcm_get_mem_res(id=pcm_dma, addr=0xfffe1800, size=256)
Wed May 24 14:44:52 2017 kern.info kernel: [ 7499.666110] bcm63xx-phone pcm_get_mem_res() 1906: pcm_get_mem_res(id=pcm_dmac, addr=0xfffe1900, size=32)
Wed May 24 14:44:52 2017 kern.info kernel: [ 7499.675904] bcm63xx-phone pcm_get_mem_res() 1906: pcm_get_mem_res(id=pcm_dmas, addr=0xfffe1a00, size=32)
Wed May 24 14:44:52 2017 kern.info kernel: [ 7499.770580] bcm63xx-phone pcm6358_pll_init() 970: pcm6358_pll_init()
Wed May 24 14:44:52 2017 kern.info kernel: [ 7499.777150] bcm63xx-phone pcm6358_pll_init() 975: pll_ctrl1=f0010001, pll_ctrl2=53d47, pll_ctrl3=a85
Wed May 24 14:44:53 2017 kern.info kernel: [ 7499.818566] bcm63xx-phone pcm6358_pll_init() 1028: pll_ctrl1=20001, pll_ctrl2=8492b, pll_ctrl3=1e1c
Wed May 24 14:44:53 2017 kern.info kernel: [ 7499.828005] bcm63xx-phone pcm_regs_init() 1247: pcm_regs_init()
Wed May 24 14:44:53 2017 kern.info kernel: [ 7499.834117] bcm63xx-phone pcm_regs_reset() 1192: pcm_regs_reset()
Wed May 24 14:44:53 2017 kern.info kernel: [ 7499.840404] bcm63xx-phone pcm_regs_reset() 1228: PCM_CTRL_REG <- 0x23200101
Wed May 24 14:44:53 2017 kern.info kernel: [ 7499.847590] bcm63xx-phone pcm_dma_init() 1502: pcm_dma_init()
Wed May 24 14:44:53 2017 kern.info kernel: [ 7499.853526] bcm63xx-phone pcm_dma_init() 1535: Allocating 200 bytes of DMA memory for RX descs
Wed May 24 14:44:53 2017 kern.info kernel: [ 7499.862483] bcm63xx-phone pcm_dma_init() 1546: 200 bytes of memory allocated, starting at address 0xa0cfe000
Wed May 24 14:44:53 2017 kern.info kernel: [ 7499.872633] bcm63xx-phone pcm_dma_init() 1552: Allocating 200 bytes of DMA memory for TX descs
Wed May 24 14:44:53 2017 kern.info kernel: [ 7499.881588] bcm63xx-phone pcm_dma_init() 1563: 200 bytes of memory allocated, starting at address 0xa0c74000
Wed May 24 14:44:53 2017 kern.info kernel: [ 7499.891739] bcm63xx-phone pcm_dma_init() 1571: Allocating 12800 bytes of memory for RX and TX data buffers
Wed May 24 14:44:53 2017 kern.info kernel: [ 7499.901716] bcm63xx-phone pcm_dma_init() 1578: 12800 bytes of memory allocated, starting at address 0x80d40000
Wed May 24 14:44:53 2017 kern.info kernel: [ 7499.912046] bcm63xx-phone pcm_dma_init() 1604: Allocating 224 bytes of memory for DMA addresses
Wed May 24 14:44:53 2017 kern.info kernel: [ 7499.921033] bcm63xx-phone pcm_dma_init() 1611: 224 bytes of memory allocated, starting at address 0x81b42100
Wed May 24 14:44:53 2017 kern.info kernel: [ 7499.931179] bcm63xx-phone pcm_dma_init() 1618: Mapping DMA addresses of RX descs
Wed May 24 14:44:53 2017 kern.info kernel: [ 7499.938834] bcm63xx-phone pcm_dma_init() 1635: Mapping DMA addresses of TX descs
Wed May 24 14:44:53 2017 kern.info kernel: [ 7499.946483] bcm63xx-phone pcm_dma_rx_descs_reset() 1342: pcm_dma_rx_descs_reset()
Wed May 24 14:44:53 2017 kern.info kernel: [ 7499.954290] bcm63xx-phone pcm_dma_tx_descs_reset() 1373: pcm_dma_tx_descs_reset()
Wed May 24 14:44:53 2017 kern.info kernel: [ 7499.962117] bcm63xx-phone bcm_drv_init() 1527: t->mm_desc.ioctl_param_off = 0, t->mm_desc.ioctl_param_size = 208
Wed May 24 14:44:53 2017 kern.info kernel: [ 7499.972637] bcm63xx-phone bcm_drv_init() 1537: t->mm_desc.rbs[0].rx_ring_buf_desc_off = 208, t->mm_desc.rbs[0].rx_ring_buf_desc_size = 12
Wed May 24 14:44:53 2017 kern.info kernel: [ 7499.985391] bcm63xx-phone bcm_drv_init() 1545: t->mm_desc.rbs[0].tx_ring_buf_desc_off = 224, t->mm_desc.rbs[0].tx_ring_buf_desc_size = 12
Wed May 24 14:44:53 2017 kern.info kernel: [ 7499.998145] bcm63xx-phone bcm_drv_init() 1537: t->mm_desc.rbs[1].rx_ring_buf_desc_off = 240, t->mm_desc.rbs[1].rx_ring_buf_desc_size = 12
Wed May 24 14:44:53 2017 kern.info kernel: [ 7500.010895] bcm63xx-phone bcm_drv_init() 1545: t->mm_desc.rbs[1].tx_ring_buf_desc_off = 256, t->mm_desc.rbs[1].tx_ring_buf_desc_size = 12
Wed May 24 14:44:53 2017 kern.info kernel: [ 7500.023755] bcm63xx-phone bcm_drv_init() 1567: 8192 bytes of memory allocated, starting at address 0x80cfc000
Wed May 24 14:44:53 2017 kern.info kernel: [ 7500.034007] bcm63xx-phone bcm_phone_mgr_init() 851: bcm_phone_mgr_init()
Wed May 24 14:44:53 2017 kern.info kernel: [ 7500.040937] bcm63xx-phone bcm_phone_mgr_devs_init() 725: bcm_phone_mgr_devs_init()
Wed May 24 14:44:53 2017 kern.info kernel: [ 7500.048754] bcm63xx-phone phone_device_alloc() 55: phone_device_alloc()
Wed May 24 14:44:53 2017 kern.info kernel: [ 7500.055611] bcm63xx-phone phone_device_alloc() 84: 2020 bytes of memory allocated, starting at address 0x80fa9000
Wed May 24 14:44:53 2017 kern.info kernel: [ 7500.066207] bcm63xx-phone phone_dev_le88266_init() 54: phone_dev_le88266_init()
Wed May 24 14:44:53 2017 kern.info kernel: [ 7500.073750] bcm63xx-phone phone_dev_zarlink_ve880_init() 1948: phone_dev_zarlink_ve880_init()
Wed May 24 14:44:53 2017 kern.info kernel: [ 7500.082554] bcm63xx-phone bcm_mpi_init() 919: bcm_mpi_init()
Wed May 24 14:44:53 2017 kern.info kernel: [ 7500.088537] bcm63xx-phone bcm63xx_spi_probe() 412: bcm63xx_spi_probe()
Wed May 24 14:44:53 2017 kern.info kernel: [ 7500.095392] bcm6358-spi bcm6358-spi: at 0xfffe0800 (irq 9, FIFOs size 542)
Wed May 24 14:44:53 2017 kern.info kernel: [ 7500.102887] bcm63xx-phone phone_dev_zarlink_init() 674: phone_dev_zarlink_init()
Wed May 24 14:44:53 2017 kern.info kernel: [ 7500.110573] bcm63xx-phone zarlink_reset() 164: zarlink_reset(gpio_num=0x8018)
Wed May 24 14:44:53 2017 kern.info kernel: [ 7500.182561] bcm63xx-phone phone_device_init() 30: phone_device_init()
Wed May 24 14:44:53 2017 kern.info kernel: [ 7500.189215] bcm63xx-phone zarlink_device_id_init() 458: zarlink_device_id_init()
Wed May 24 14:44:53 2017 kern.info kernel: [ 7500.196889] bcm63xx-phone: 1 device(s) provides 2 FXS line(s)
Wed May 24 14:44:53 2017 kern.info kernel: [ 7500.202822] bcm63xx-phone bcm_phone_mgr_init() 869: Initializing event wait queue
Wed May 24 14:44:53 2017 kern.info kernel: [ 7500.210548] bcm63xx-phone bcm_wait_queue_init() 32: bcm_wait_queue_init()
Wed May 24 14:44:53 2017 kern.info kernel: [ 7500.219133] bcm63xx-phone bcm_timer_init() 135: bcm_timer_init()
Wed May 24 14:44:53 2017 kern.info kernel: [ 7500.225394] bcm63xx-phone bcm_drv_init() 1581: bcm63xx-phone successfully initialized
but when asterisk load the module receive the error:
bcmph_do_ioctl: ioctl(536888589) failed. errno=1
as you can see from asterisk log:
[May 24 12:46:53] DEBUG[1359]: asterisk-13-chan-bcm63xx-phone/src/chan_bcm63xx_phone.c:2652 bcmph_open_device: Opening device '/dev/bcm63xx-phone'
[May 24 12:46:53] DEBUG[1359]: asterisk-13-chan-bcm63xx-phone/src/chan_bcm63xx_phone.c:2664 bcmph_open_device: Getting mmap description
[May 24 12:46:53] DEBUG[1359]: asterisk-13-chan-bcm63xx-phone/src/chan_bcm63xx_phone.c:2682 bcmph_open_device: Mapping memory region (size = 8192)
[May 24 12:46:53] DEBUG[1359]: asterisk-13-chan-bcm63xx-phone/src/chan_bcm63xx_phone.c:2692 bcmph_open_device: Configuring the device
[May 24 12:46:54] ERROR[1359]: asterisk-13-chan-bcm63xx-phone/src/chan_bcm63xx_phone.c:895 bcmph_do_ioctl: ioctl(536888589) failed. errno=1
[May 24 12:46:54] ERROR[1359]: asterisk-13-chan-bcm63xx-phone/src/chan_bcm63xx_phone.c:2740 bcmph_open_device: Unable to start device
[May 24 12:46:55] DEBUG[1359]: asterisk-13-chan-bcm63xx-phone/src/chan_bcm63xx_phone.c:3953 __unload_module: Unregistering channel
[May 24 12:46:55] DEBUG[1359]: asterisk-13-chan-bcm63xx-phone/src/chan_bcm63xx_phone.c:3911 bcmph_hangup_all_lines: Hanging up all the lines
[May 24 12:46:55] DEBUG[1359]: asterisk-13-chan-bcm63xx-phone/src/chan_bcm63xx_phone.c:2557 bcmph_stop_monitor: Stopping the monitor
[May 24 12:46:55] DEBUG[1359]: asterisk-13-chan-bcm63xx-phone/src/chan_bcm63xx_phone.c:2588 bcmph_stop_monitor: Monitor not running
[May 24 12:46:55] DEBUG[1359]: asterisk-13-chan-bcm63xx-phone/src/chan_bcm63xx_phone.c:3911 bcmph_hangup_all_lines: Hanging up all the lines
[May 24 12:46:55] DEBUG[1359]: asterisk-13-chan-bcm63xx-phone/src/chan_bcm63xx_phone.c:3984 __unload_module: Destroying all the lines
[May 24 12:46:55] DEBUG[1359]: loader.c:1294 load_resource_list: START: chan_bcm63xx_phone.so -1 0
I also tried to use your test program but I receive the same error:
root@LEDE:~# bcm63xx-phone-test test=loopback
pcm_regs =>
ctlr = 0x0
chan_ctrl = 0x0
int_pending = 0x0
int_mask = 0x0
pll_ctrl1 = 0x20001
pll_ctrl2 = 0x8492b
pll_ctrl3 = 0x1e1c
pll_ctrl4 = 0x0
pll_stat = 0x1
slot_alloc_tbl[0] = 0x0
slot_alloc_tbl[1] = 0x0
slot_alloc_tbl[2] = 0x0
slot_alloc_tbl[3] = 0x0
slot_alloc_tbl[4] = 0x0
slot_alloc_tbl[5] = 0x0
slot_alloc_tbl[6] = 0x0
slot_alloc_tbl[7] = 0x0
slot_alloc_tbl[8] = 0x0
slot_alloc_tbl[9] = 0x0
slot_alloc_tbl[10] = 0x0
slot_alloc_tbl[11] = 0x0
slot_alloc_tbl[12] = 0x0
slot_alloc_tbl[13] = 0x0
slot_alloc_tbl[14] = 0x0
slot_alloc_tbl[15] = 0x0
dma_cfg = 0x1000000
dma_channels[0].dma_flowcl = 0x0
dma_channels[0].dma_flowch = 0x0
dma_channels[0].dma_bufalloc = 0x0
dma_channels[0].dmac_chancfg = 0x0
dma_channels[0].dmac_ir = 0x0
dma_channels[0].dmac_irmask = 0x0
dma_channels[0].dmac_maxburst = 0x8
dma_channels[0].dmas_rstart = 0xcfe000
dma_channels[0].dmas_sram2 = 0x0
dma_channels[0].dmas_sram3 = 0x0
dma_channels[0].dmas_sram4 = 0x0
dma_channels[1].dma_flowcl = 0x0
dma_channels[1].dma_flowch = 0x0
dma_channels[1].dma_bufalloc = 0x0
dma_channels[1].dmac_chancfg = 0x0
dma_channels[1].dmac_ir = 0x0
dma_channels[1].dmac_irmask = 0x0
dma_channels[1].dmac_maxburst = 0x8
dma_channels[1].dmas_rstart = 0xc74000
dma_channels[1].dmas_sram2 = 0x0
dma_channels[1].dmas_sram3 = 0x0
dma_channels[1].dmas_sram4 = 0x0
ioctl(2149074188) failed. errno=1
Error starting
Hi,
it seems that with the transition to linux-4.4.28 on bm63xx platform, disappeared some essentials headers.
/data/devel/router/lede/source/build_dir/target-mips_mips32_musl-1.1.15/bcm63xx-phone/mpi/mpi.c:185:28: error: 'SPI_CLK_CFG' undeclared (first use in this function)
reg = bcm_spi_readb(bs, SPI_CLK_CFG);
^
/data/devel/router/lede/source/build_dir/target-mips_mips32_musl-1.1.15/bcm63xx-phone/mpi/mpi.c:185:28: note: each undeclared identifier is reported only once for each function it appears in
/data/devel/router/lede/source/build_dir/target-mips_mips32_musl-1.1.15/bcm63xx-phone/mpi/mpi.c: In function 'bcm_mpi_set_fill_byte':
/data/devel/router/lede/source/build_dir/target-mips_mips32_musl-1.1.15/bcm63xx-phone/mpi/mpi.c:198:34: error: 'SPI_FILL_BYTE' undeclared (first use in this function)
bcm_spi_writeb(bs, fill_byte, SPI_FILL_BYTE);
^
/data/devel/router/lede/source/build_dir/target-mips_mips32_musl-1.1.15/bcm63xx-phone/mpi/mpi.c: In function 'bcm_mpi_rw_buf':
/data/devel/router/lede/source/build_dir/target-mips_mips32_musl-1.1.15/bcm63xx-phone/mpi/mpi.c:229:26: error: 'SPI_INT_MASK' undeclared (first use in this function)
bcm_spi_writeb(bs, 0, SPI_INT_MASK);
^
/data/devel/router/lede/source/build_dir/target-mips_mips32_musl-1.1.15/bcm63xx-phone/mpi/mpi.c:273:38: error: 'SPI_MSG_CTL' undeclared (first use in this function)
bcm_spi_writeb(bs, msg_ctl, SPI_MSG_CTL);
^
/data/devel/router/lede/source/build_dir/target-mips_mips32_musl-1.1.15/bcm63xx-phone/mpi/mpi.c:283:43: error: 'SPI_INT_STATUS' undeclared (first use in this function)
bcm_spi_writeb(bs, SPI_INTR_CLEAR_ALL, SPI_INT_STATUS);
^
/data/devel/router/lede/source/build_dir/target-mips_mips32_musl-1.1.15/bcm63xx-phone/mpi/mpi.c:290:28: error: 'SPI_CMD' undeclared (first use in this function)
bcm_spi_writew(bs, cmd, SPI_CMD);
^
/data/devel/router/lede/source/build_dir/target-mips_mips32_musl-1.1.15/bcm63xx-phone/mpi/mpi.c:306:35: error: 'SPI_RX_TAIL' undeclared (first use in this function)
rx_tail = bcm_spi_readb(bs, SPI_RX_TAIL);
^
/data/devel/router/lede/source/build_dir/target-mips_mips32_musl-1.1.15/bcm63xx-phone/mpi/mpi.c: In function 'bcm63xx_spi_interrupt':
/data/devel/router/lede/source/build_dir/target-mips_mips32_musl-1.1.15/bcm63xx-phone/mpi/mpi.c:327:29: error: 'SPI_INT_STATUS' undeclared (first use in this function)
intr = bcm_spi_readb(bs, SPI_INT_STATUS);
^
/data/devel/router/lede/source/build_dir/target-mips_mips32_musl-1.1.15/bcm63xx-phone/mpi/mpi.c:329:26: error: 'SPI_INT_MASK' undeclared (first use in this function)
bcm_spi_writeb(bs, 0, SPI_INT_MASK);
I have a Huawei HG556A can anyone share the config files to enable fxs on it.
thank you
OpenWRT Barrier Breaker 14.07
HG55VDFA VER.C Router version B (see https://wiki.openwrt.org/toh/huawei/hg556a)
Patched for disable SPI - its very important.:
-CONFIG_SPI_BCM63XX=y
+CONFIG_SPI_BCM63XX=n
It also can be possibly by the manual editing /openwrt/target/linux/brcm63xx/config-3.10
or by the disabling in "make kernel_menuconfig" -> Device Drivers -> SPI support -> Broadcom BCM63xx SPI controller
You have to load bcm63xx-phone.ko before start asterisk:
my rc.local starting script:
insmod bcm63xx-phone.ko
sleep 10
/etc/init.d/asterisk start
exit 0
Asterisk 11, excelent voice quality.
Thanks to pgid69
I compiled but in dmesg at boot I have:
[ 0.000000] bcm63xx_nvram: nvram checksum failed, contents may be invalid (expected 33303336, got fc05ed45)
[ 0.380000] bcm63xx_uart.0: ttyS0 at MMIO 0xfffe0100 (irq = 10, base_baud = 1562500) is a bcm63xx_uart
[ 0.432000] bcm63xxpart: CFE boot tag found with version 7 and board type HW553
[ 0.440000] 5 bcm63xxpart partitions found on MTD device 1e000000.nor
[ 0.512000] bcm63xx-spi bcm63xx-spi: at 0xfffe0800 (irq 9, FIFOs size 542)
[ 0.552000] libphy: bcm63xx_enet MII bus: probed
[ 0.632000] bcm63xx_enet bcm63xx_enet.1: attached PHY at address 0 [Broadcom B53 (1)]
[ 0.640000] bcm63xx-wdt bcm63xx-wdt: started, timer margin: 30 sec
insmod bcm63xx-phone.ko gives me: failed to insert bcm63xx-phone.ko
with this log:
[ 356.672000] bcm63xx-phone: bcm63xx-phone: v0.1
[ 356.676000] bcm63xx-phone bcm_drv_init() 1439: bcm_drv_init()
[ 356.680000] bcm63xx-phone board_init() 706: board_init()
[ 356.688000] bcm63xx-phone: CPU is Broadcom 6358
[ 356.692000] bcm63xx-phone: Board is HW553
[ 356.696000] bcm63xx-phone board_get_desc() 764: board_get_desc()
[ 356.704000] bcm63xx-phone bcm_drv_init() 1454: Initializing mutex
[ 356.708000] bcm63xx-phone bcm_drv_init() 1457: Initializing RX wait queue
[ 356.716000] bcm63xx-phone bcm_wait_queue_init() 32: bcm_wait_queue_init()
[ 356.724000] bcm63xx-phone bcm_drv_init() 1459: Initializing TX wait queue
[ 356.728000] bcm63xx-phone bcm_wait_queue_init() 32: bcm_wait_queue_init()
[ 356.736000] bcm63xx-phone bcm_drv_init() 1474: Registering device bcm63xx-phone
[ 356.744000] bcm63xx-phone pcm_init() 2482: pcm_init()
[ 356.752000] bcm63xx-phone pcm_init() 2550: Using 25 buffers of 256 bytes for RX
[ 356.756000] bcm63xx-phone pcm_init() 2586: Using 25 buffers of 256 bytes for TX
[ 356.764000] bcm63xx-phone pcm_get_shared_res() 1950: pcm_get_shared_res()
[ 356.772000] bcm63xx-phone pcm_get_mem_res() 1906: pcm_get_mem_res(id=pcm, addr=0xfffe1600, size=256)
[ 356.780000] bcm63xx-phone pcm_get_mem_res() 1906: pcm_get_mem_res(id=pcm_dma, addr=0xfffe1800, size=256)
[ 356.792000] bcm63xx-phone pcm_get_mem_res() 1906: pcm_get_mem_res(id=pcm_dmac, addr=0xfffe1900, size=32)
[ 356.800000] bcm63xx-phone pcm_get_mem_res() 1906: pcm_get_mem_res(id=pcm_dmas, addr=0xfffe1a00, size=32)
[ 356.900000] bcm63xx-phone pcm6358_pll_init() 970: pcm6358_pll_init()
[ 356.904000] bcm63xx-phone pcm6358_pll_init() 975: pll_ctrl1=f0010001, pll_ctrl2=53d47, pll_ctrl3=a85
[ 356.948000] bcm63xx-phone pcm6358_pll_init() 1028: pll_ctrl1=20001, pll_ctrl2=8492b, pll_ctrl3=1e1c
[ 356.956000] bcm63xx-phone pcm_regs_init() 1247: pcm_regs_init()
[ 356.960000] bcm63xx-phone pcm_regs_reset() 1192: pcm_regs_reset()
[ 356.968000] bcm63xx-phone pcm_regs_reset() 1228: PCM_CTRL_REG <- 0x23200101
[ 356.976000] bcm63xx-phone pcm_dma_init() 1502: pcm_dma_init()
[ 356.980000] bcm63xx-phone pcm_dma_init() 1535: Allocating 200 bytes of DMA memory for RX descs
[ 356.992000] bcm63xx-phone pcm_dma_init() 1546: 200 bytes of memory allocated, starting at address 0xa2477000
[ 357.000000] bcm63xx-phone pcm_dma_init() 1552: Allocating 200 bytes of DMA memory for TX descs
[ 357.008000] bcm63xx-phone pcm_dma_init() 1563: 200 bytes of memory allocated, starting at address 0xa2476000
[ 357.020000] bcm63xx-phone pcm_dma_init() 1571: Allocating 12800 bytes of memory for RX and TX data buffers
[ 357.028000] bcm63xx-phone pcm_dma_init() 1578: 12800 bytes of memory allocated, starting at address 0x8247c000
[ 357.040000] bcm63xx-phone pcm_dma_init() 1604: Allocating 224 bytes of memory for DMA addresses
[ 357.048000] bcm63xx-phone pcm_dma_init() 1611: 224 bytes of memory allocated, starting at address 0x83364a00
[ 357.060000] bcm63xx-phone pcm_dma_init() 1618: Mapping DMA addresses of RX descs
[ 357.068000] bcm63xx-phone pcm_dma_init() 1635: Mapping DMA addresses of TX descs
[ 357.076000] bcm63xx-phone pcm_dma_rx_descs_reset() 1342: pcm_dma_rx_descs_reset()
[ 357.084000] bcm63xx-phone pcm_dma_tx_descs_reset() 1373: pcm_dma_tx_descs_reset()
[ 357.092000] bcm63xx-phone bcm_drv_init() 1524: t->mm_desc.ioctl_param_off = 0, t->mm_desc.ioctl_param_size = 208
[ 357.100000] bcm63xx-phone bcm_drv_init() 1534: t->mm_desc.rbs[0].rx_ring_buf_desc_off = 208, t->mm_desc.rbs[0].rx_ring_buf_desc_size = 12
[ 357.112000] bcm63xx-phone bcm_drv_init() 1542: t->mm_desc.rbs[0].tx_ring_buf_desc_off = 224, t->mm_desc.rbs[0].tx_ring_buf_desc_size = 12
[ 357.128000] bcm63xx-phone bcm_drv_init() 1534: t->mm_desc.rbs[1].rx_ring_buf_desc_off = 240, t->mm_desc.rbs[1].rx_ring_buf_desc_size = 12
[ 357.140000] bcm63xx-phone bcm_drv_init() 1542: t->mm_desc.rbs[1].tx_ring_buf_desc_off = 256, t->mm_desc.rbs[1].tx_ring_buf_desc_size = 12
[ 357.152000] bcm63xx-phone bcm_drv_init() 1564: 8192 bytes of memory allocated, starting at address 0x82468000
[ 357.164000] bcm63xx-phone bcm_phone_mgr_init() 850: bcm_phone_mgr_init()
[ 357.168000] bcm63xx-phone bcm_phone_mgr_devs_init() 724: bcm_phone_mgr_devs_init()
[ 357.176000] bcm63xx-phone phone_device_alloc() 55: phone_device_alloc()
[ 357.184000] bcm63xx-phone phone_device_alloc() 66: 2020 bytes of memory allocated, starting at address 0x8337e800
[ 357.196000] bcm63xx-phone phone_dev_le88221_init() 54: phone_dev_le88221_init()
[ 357.204000] bcm63xx-phone phone_dev_zarlink_ve880_init() 1948: phone_dev_zarlink_ve880_init()
[ 357.212000] bcm63xx-phone bcm_mpi_init() 862: bcm_mpi_init()
[ 357.216000] bcm63xx-phone: Error: Driver 'bcm63xx-spi' is already registered, aborting...
[ 357.224000] bcm63xx-phone bcm_drv_init() 1584: Freeing mmap buffer used for RX, TX...
[ 357.232000] bcm63xx-phone pcm_deinit() 2684: pcm_deinit()
[ 357.240000] bcm63xx-phone pcm_stop() 2321: pcm_stop()
[ 357.244000] bcm63xx-phone pcm_dma_stop() 1470: pcm_dma_stop()
[ 357.252000] bcm63xx-phone pcm_stop() 2333: Halting TX DMA
[ 357.264000] bcm63xx-phone pcm_stop() 2340: TX DMA halted
[ 357.268000] bcm63xx-phone pcm_stop() 2355: Halting RX DMA
[ 357.280000] bcm63xx-phone pcm_stop() 2362: RX DMA halted
[ 357.284000] bcm63xx-phone pcm_stop() 2373: Disabling all PCM channels
[ 357.292000] bcm63xx-phone pcm_regs_reset() 1192: pcm_regs_reset()
[ 357.296000] bcm63xx-phone pcm_regs_reset() 1228: PCM_CTRL_REG <- 0x23200101
[ 357.304000] bcm63xx-phone pcm_dma_tx_descs_reset() 1373: pcm_dma_tx_descs_reset()
[ 357.312000] bcm63xx-phone pcm_pr_stats() 2053: ======= Stats =======
[ 357.320000] bcm63xx-phone pcm_pr_stats() 2054: rx_errors = 0
[ 357.324000] bcm63xx-phone pcm_pr_stats() 2055: rx_length_errors = 0
[ 357.332000] bcm63xx-phone pcm_pr_stats() 2056: rx_empty_errors = 0
[ 357.340000] bcm63xx-phone pcm_pr_stats() 2057: rx_good = 0
[ 357.344000] bcm63xx-phone pcm_pr_stats() 2058: rx_bytes = 0
[ 357.352000] bcm63xx-phone pcm_pr_stats() 2059: tx_errors = 0
[ 357.360000] bcm63xx-phone pcm_pr_stats() 2060: tx_good = 0
[ 357.368000] bcm63xx-phone pcm_pr_stats() 2061: tx_bytes = 0
[ 357.372000] bcm63xx-phone pcm_pr_stats() 2062: cnt_irq_rx = 0
[ 357.380000] bcm63xx-phone pcm_pr_stats() 2063: cnt_irq_tx = 0
[ 357.388000] bcm63xx-phone pcm_dma_deinit() 1798: pcm_dma_deinit()
[ 357.392000] bcm63xx-phone pcm_dma_deinit() 1820: Unmapping DMA addresses of TX descs
[ 357.400000] bcm63xx-phone pcm_dma_deinit() 1825: Unmapping DMA addresses of RX descs
[ 357.408000] bcm63xx-phone pcm_dma_deinit() 1872: Freeing memory of RX and TX data buffers
[ 357.416000] bcm63xx-phone pcm_dma_deinit() 1876: Freeing memory for DMA adresses
[ 357.424000] bcm63xx-phone pcm_dma_deinit() 1881: Freeing DMA memory of RX descs
[ 357.432000] bcm63xx-phone pcm_dma_deinit() 1890: Freeing DMA memory of TX descs
[ 357.440000] bcm63xx-phone pcm_regs_deinit() 1259: pcm_regs_deinit()
[ 357.448000] bcm63xx-phone pcm_regs_reset() 1192: pcm_regs_reset()
[ 357.452000] bcm63xx-phone pcm_regs_reset() 1228: PCM_CTRL_REG <- 0x23200101
[ 357.460000] bcm63xx-phone pcm6358_pll_deinit() 1037: pcm6358_pll_deinit()
[ 357.556000] bcm63xx-phone pcm_release_shared_res() 2001: pcm_release_shared_res()
[ 357.560000] bcm63xx-phone pcm_release_mem_res() 1936: pcm_release_mem_res(addr=0xfffe1a00, size=32)
[ 357.572000] bcm63xx-phone pcm_release_mem_res() 1936: pcm_release_mem_res(addr=0xfffe1900, size=32)
[ 357.580000] bcm63xx-phone pcm_release_mem_res() 1936: pcm_release_mem_res(addr=0xfffe1800, size=256)
[ 357.592000] bcm63xx-phone pcm_release_mem_res() 1936: pcm_release_mem_res(addr=0xfffe1600, size=256)
[ 357.600000] bcm63xx-phone bcm_drv_init() 1590: Unregistering device
[ 357.608000] bcm63xx-phone bcm_wait_queue_deinit() 39: bcm_wait_queue_deinit()
[ 357.612000] bcm63xx-phone bcm_wait_queue_deinit() 39: bcm_wait_queue_deinit()
[ 357.620000] bcm63xx-phone board_deinit() 771: board_deinit()
Kernel is 3.18.29 and Openwrt 15.05. What's wrong?
Hello, I have this error, any suggestion?
mkdir -p /opt/chaos_calmer/build_dir/target-mips_mips32_uClibc-0.9.33.2/linux-brcm63xx_generic/bcm63xx-phone/.tmp_versions ; rm -f /opt/chaos_calmer/build_dir/target-mips_mips32_uClibc-0.9.33.2/linux-brcm63xx_generic/bcm63xx-phone/.tmp_versions/*
make -f ./scripts/Makefile.build obj=/opt/chaos_calmer/build_dir/target-mips_mips32_uClibc-0.9.33.2/linux-brcm63xx_generic/bcm63xx-phone
mips-openwrt-linux-uclibc-gcc -Wp,-MD,/opt/chaos_calmer/build_dir/target-mips_mips32_uClibc-0.9.33.2/linux-brcm63xx_generic/bcm63xx-phone/mpi/.mpi.o.d -nostdinc -isystem /opt/chaos_calmer/staging_dir/toolchain-mips_mips32_gcc-4.8-linaro_uClibc-0.9.33.2/lib/gcc/mips-openwrt-linux-uclibc/4.8.3/include -I./arch/mips/include -Iarch/mips/include/generated -Iinclude -I./arch/mips/include/uapi -Iarch/mips/include/generated/uapi -I./include/uapi -Iinclude/generated/uapi -include ./include/linux/kconfig.h -D__KERNEL__ -DVMLINUX_LOAD_ADDRESS=0xffffffff80010000 -DDATAOFFSET=0 -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -std=gnu89 -mno-check-zero-division -mabi=32 -G 0 -mno-abicalls -fno-pic -pipe -mno-branch-likely -msoft-float -DGAS_HAS_SET_HARDFLOAT -Wa,-msoft-float -ffreestanding -march=mips32 -Wa,-mips32 -Wa,--trap -I./arch/mips/include/asm/mach-bcm63xx/ -I./arch/mips/include/asm/mach-generic -fno-delete-null-pointer-checks -fno-PIE -Os -fno-caller-saves -Wno-maybe-uninitialized --param=allow-store-data-races=0 -Wframe-larger-than=1024 -fno-stack-protector -Wno-unused-but-set-variable -fomit-frame-pointer -fno-var-tracking-assignments -g -femit-struct-debug-baseonly -fno-var-tracking -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -fno-stack-check -fconserve-stack -Werror=implicit-int -Werror=strict-prototypes -DCC_HAVE_ASM_GOTO -Wall -I/opt/chaos_calmer/build_dir/target-mips_mips32_uClibc-0.9.33.2/linux-brcm63xx_generic/bcm63xx-phone/inc -DBCMPH_MODULE_NAME=bcm63xx_phone -DBCMPH_MODULE_VERSION=0.2 -DBCMPH_EXPORT_DEV_FILE -DBCMPH_DEBUG -I/opt/chaos_calmer/build_dir/target-mips_mips32_uClibc-0.9.33.2/linux-brcm63xx_generic/bcm63xx-phone/extern/zarlink/arch/bcm63xx -I/opt/chaos_calmer/build_dir/target-mips_mips32_uClibc-0.9.33.2/linux-brcm63xx_generic/bcm63xx-phone/extern/zarlink/2.24.0.lite/api_lib/includes -I/opt/chaos_calmer/build_dir/target-mips_mips32_uClibc-0.9.33.2/linux-brcm63xx_generic/bcm63xx-phone/extern/zarlink/2.24.0.lite/api_lib/vp880_api -DMODULE -mno-long-calls -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(mpi)" -D"KBUILD_MODNAME=KBUILD_STR(bcm63xx_phone)" -c -o /opt/chaos_calmer/build_dir/target-mips_mips32_uClibc-0.9.33.2/linux-brcm63xx_generic/bcm63xx-phone/mpi/mpi.o /opt/chaos_calmer/build_dir/target-mips_mips32_uClibc-0.9.33.2/linux-brcm63xx_generic/bcm63xx-phone/mpi/mpi.c
/opt/chaos_calmer/build_dir/target-mips_mips32_uClibc-0.9.33.2/linux-brcm63xx_generic/bcm63xx-phone/mpi/mpi.c:566:7: error: unknown field 'probe_type' specified in initializer
.probe_type = PROBE_FORCE_SYNCHRONOUS,
^
/opt/chaos_calmer/build_dir/target-mips_mips32_uClibc-0.9.33.2/linux-brcm63xx_generic/bcm63xx-phone/mpi/mpi.c:566:21: error: 'PROBE_FORCE_SYNCHRONOUS' undeclared here (not in a function)
.probe_type = PROBE_FORCE_SYNCHRONOUS,
^
make[5]: *** [/opt/chaos_calmer/build_dir/target-mips_mips32_uClibc-0.9.33.2/linux-brcm63xx_generic/bcm63xx-phone/mpi/mpi.o] Error 1
make[4]: *** [module/opt/chaos_calmer/build_dir/target-mips_mips32_uClibc-0.9.33.2/linux-brcm63xx_generic/bcm63xx-phone] Error 2
make[4]: Leaving directory /opt/chaos_calmer/build_dir/target-mips_mips32_uClibc-0.9.33.2/linux-brcm63xx_generic/linux-3.18.92' make[3]: *** [/opt/chaos_calmer/build_dir/target-mips_mips32_uClibc-0.9.33.2/linux-brcm63xx_generic/bcm63xx-phone/.built] Error 2 make[3]: Leaving directory
/opt/custom-feed/bcm63xx-phone/bcm63xx-phone/bcm63xx-phone'
make[2]: *** [package/feeds/customfeed/bcm63xx-phone/compile] Error 2
make[2]: Leaving directory /opt/chaos_calmer' make[1]: *** [/opt/chaos_calmer/staging_dir/target-mips_mips32_uClibc-0.9.33.2/stamp/.package_compile] Error 2 make[1]: Leaving directory
/opt/chaos_calmer'
make: *** [world] Errore 2
Hi,
I would create a driver for the SiLabs chips.
I have read a bit of this driver source but I cannot fully understand the flow path.
Can you provide me a starting point?
Hi there. After successfully compilation of this driver, I started the router, flashed the firmware and everything was ok. Then, I ssh-d into it, ran insmod bcm63xx-phone and once I ran that command, the router froze(so it crashed) and it rebooted.
Router is Huawei EchoLife HG556a Version C.
LEDE is latest Version
OS compilation environment is Linux Mint 19(Tara) or as known as Ubuntu 18.
Can you help me debug and fix this?
My Serial is not working atm.
BR,
Talnaci Alexandru
Hi! After the recent updates, the first line stopped working!
The second one still works.
Could we debug this?
Thank you!
BR,
Talnaci Alexandru
can we add LE89116 support to HG655b/d ?
B.R
Hello, I am trying now to compile your driver with Lede 17.01.4. I cannot understand the modiffy I need to do for spi. With no modify, when I start module I have
[ 261.983861] bcm63xx_phone phone_dev_le88221_init() 56: phone_dev_le88221_init()
[ 261.991439] bcm63xx_phone phone_dev_zarlink_ve880_init() 2017: phone_dev_zarlink_ve880_init()
[ 262.000269] bcm63xx_phone bcm_mpi_init() 878: bcm_mpi_init()
[ 262.006147] bcm63xx_phone: Error: Driver 'bcm63xx-spi' is already registered, aborting...
[ 262.014633] bcm63xx_phone bcm_periodic_work_deinit() 103: bcm_periodic_work_deinit()
[ 262.022650] bcm63xx_phone bcm_period_deinit() 33: bcm_period_deinit()
[ 262.029332] bcm63xx_phone bcm63xx_phone_init() 1207: Freeing mmap buffer used for RX, TX...
[ 262.037992] bcm63xx_phone bcm_periodic_timer_deinit() 265: bcm_periodic_timer_deinit()
[ 262.046189] bcm63xx_phone bcm_timer_stop() 167: bcm_timer_stop()
Cna you please explain which patch I need when I compile Lede?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.