Re: Voice calls working on N900 (*) (was Re: N900 modem support in 3.18-rc1)
Hi! > (*) for low values of working. > > Ok, so I got voice on n900 to work on 3.19-n900 tree.. Quality of incoming > voice is reasonable, quality of outgoing voice not so, I was told. > > So, you need patched kernel (pali's n900 tree) ofono etc, plus I'm > using ofone python script to control the modem, plus you need > libcmtspeechdata. I have this version: I put libcmtspeechdata at gitorious: g...@gitorious.org:libcmtspeechdata/libcmtspeechdata.git ofone control scripts are at: g...@gitorious.org:tui/tui.git Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Voice calls working on N900 (*) (was Re: N900 modem support in 3.18-rc1)
Hi! (*) for low values of working. Ok, so I got voice on n900 to work on 3.19-n900 tree.. Quality of incoming voice is reasonable, quality of outgoing voice not so, I was told. So, you need patched kernel (pali's n900 tree) ofono etc, plus I'm using ofone python script to control the modem, plus you need libcmtspeechdata. I have this version: commit 7f8f3ce357513e4849e1bf6d657980a514529c1a Author: Kai Vehmanen Date: Tue Mar 8 13:46:48 2011 +0200 cmtspeech_msgs: fix compiler warning Add parenthesis to make the code more readable and to kill a compiler warning. Signed-off-by: Kai Vehmanen Plus, apply the patch below. I could not get configure (etc) to work for me, so I build it by hand. cmtspeech_ofono_test can then be used to route the voice calls (if you feed it with audio data, see the "run" script). What is missing: * right setup of mixers. (I was actually running audio data to my desktop for some tests). What commandline tools can be used to set up mixers? I'm using "alsamixer", but it has text ui... * passing audio data using pipes is really a hack... and periodically discarding audio data is certainly not a good idea. Good luck, Pavel diff --git a/mkit b/mkit new file mode 100755 index 000..6fbd216 --- /dev/null +++ b/mkit @@ -0,0 +1,15 @@ +build_lib () { +for a in test_cmtspeech test_cmtspeech_msgs test_ring; do +echo $a +#gcc cmtspeech_backend_common.c cmtspeech_msgs.c cmtspeech_nokiamodem.c sal_debug.c $a.c -I. -lrt -o $a +done + +for a in cmtspeech_backend_common cmtspeech_msgs cmtspeech_nokiamodem sal_debug; do +gcc -fPIC $a.c -c -I. -o $a.o +done +ar rcs libcmtspeech.a cmtspeech_backend_common.o cmtspeech_msgs.o cmtspeech_nokiamodem.o sal_debug.o +} + +# build_lib +gcc -I . -I /usr/include/dbus-1.0/ -I /usr/lib/arm-linux-gnueabi/dbus-1.0/include/ utils/cmtspeech_ofono_test.c -lpthread -lrt libcmtspeech.a /usr/lib/arm-linux-gnueabi/libdbus-1.a -o cmtspeech_ofono_test + diff --git a/run b/run new file mode 100755 index 000..8cb1f9a --- /dev/null +++ b/run @@ -0,0 +1,2 @@ +#!/bin/bash +parec --rate=4000 --latency-msec=100 | ./cmtspeech_ofono_test -a -v | pacat --rate=4000 --latency-msec=100 diff --git a/utils/cmtspeech_ofono_test.c b/utils/cmtspeech_ofono_test.c index 4a6f080..ffb323f 100644 --- a/utils/cmtspeech_ofono_test.c +++ b/utils/cmtspeech_ofono_test.c @@ -48,6 +48,9 @@ #include #include +#include +#include + struct test_ctx { DBusConnection* dbus_conn; int dbus_fd; @@ -55,6 +58,9 @@ struct test_ctx { bool call_server_status; int verbose; cmtspeech_t *cmtspeech; + int source_fd; + int sink_fd; + int data_through; }; #define PREFIX "cmtspeech_ofono_test: " @@ -75,7 +81,7 @@ static dbus_bool_t priv_add_cb(DBusWatch *watch, void *data) ctx->dbus_fd = fd; ctx->dbus_watch = watch; - DEBUG(printf(PREFIX "priv_add_cb: socket %d, watch %p (tracking %p).\n", + DEBUG(fprintf(stderr, PREFIX "priv_add_cb: socket %d, watch %p (tracking %p).\n", fd, watch, ctx->dbus_watch)); return TRUE; @@ -85,7 +91,7 @@ static void priv_remove_cb(DBusWatch *watch, void *data) { struct test_ctx *ctx = (struct test_ctx*)data; - DEBUG(printf(PREFIX "priv_remove_cb: (%p).\n", (void*)watch)); + DEBUG(fprintf(stderr, PREFIX "priv_remove_cb: (%p).\n", (void*)watch)); if (ctx->dbus_watch == watch) { ctx->dbus_watch = NULL; @@ -99,7 +105,7 @@ static void priv_toggled_cb(DBusWatch *watch, void *data) dbus_bool_t enabled = dbus_watch_get_enabled(watch); - DEBUG(printf(PREFIX "priv_toggled_cb: (%p) enabled=%d.\n", (void*)watch, enabled)); + DEBUG(fprintf(stderr, PREFIX "priv_toggled_cb: (%p) enabled=%d.\n", (void*)watch, enabled)); if (ctx->dbus_watch == watch) { if (enabled == TRUE) @@ -132,7 +138,7 @@ DBusConnection *test_dbus_make_connection(struct test_ctx *ctx, DBusBusType dbus conn = dbus_bus_get(dbus_type, &dbus_error); if (dbus_error_is_set(&dbus_error) != TRUE) { -DEBUG(printf(PREFIX "Connection established to DBus (%d).\n", (int)dbus_type)); +DEBUG(fprintf(stderr, PREFIX "Connection established to DBus (%d).\n", (int)dbus_type)); } else { fprintf(stderr, PREFIX "ERROR: unable to connect to DBus\n"); @@ -184,6 +190,24 @@ static void test_dbus_release(struct test_ctx *ctx) } } +static void flush_input(struct test_ctx *ctx) +{ + char scratch[10240]; + int total = 0; + + fprintf(stderr, "Flushing input...\n"); + if (!ctx->sink_fd) +return; + while(1) { +int num; +num = read(ctx->source_fd, scratch, 10240); +if (num == -1) + break; +total += num; + } + fprintf(stderr, "Flushing input (%d)\n", total); +} + static bool test_handle_dbus_ofono(struct test_ctx *ctx, DBusMessage *msg) { const char* property = NULL; @@ -194,7 +218,7 @@ static bool test_handle_dbus_ofono(struct test_ctx *ctx, DBusMessage *msg) dbus_message_g
GPRS data on N900 working was Re: N900 modem support in 3.18-rc1
Hi! > Then go to /my/tui/ofone. Run "./run" -- that should start > pulseaudio. Run "./ofone", hit "lowlevel: online", hit "contacts", > enter phone number you want to call, hit the number, it should start > dialing. > > Wait a while, hit "lowlevel: hangup". I played a bit more, and now ofone can connect to GPRS. You'll need version from git, see https://gitorious.org/tui/tui/source/dff269a7ba419f573de5b90e8eea58227de8a9e6:ofone Good luck, Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: voice calls on N900 working (off-line) was Re: N900 modem support in 3.18-rc1
Hi! > Ok, so realtime audio does not work due to some pulseaudio problems, > but I was able to record a (silent) call and then replay it with > > pacat --rate 4000 ../../../pulseaudio2.raw > > on my PC. I have yet to do some testing on the microphone side. Did someone get pulseaudio to work on n900? It somehow works for me, but not enough to actually produce sound. root@n900:/my# pacat /my/pulseaudio2.raw Connection failure: Connection refused pa_context_connect() failed: Connection refused root@n900:/my# pacmd Welcome to PulseAudio! Use "help" for usage information. >>> list-modules 22 module(s) loaded. index: 0 name: argument: <> used: -1 load once: yes ... mpg123 actually works ok after adjusting the mixers. Any ideas? Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
voice calls on N900 working (off-line) was Re: N900 modem support in 3.18-rc1
Hi! > > REed pulseaudio modules that use cmtspeech will be ready sooner than later > > (I believe in 2-3 monts from now), see on gitorious how fast we progressed > > with -record and -music modules. Sure, -voice module is way more > > complicated, but lots of it is already opensourced, we just need to figure > > out a couple of DSP algorithms(drc, agc, aec, etc) related to call quality. > > But I don't think the driver should wait for those modules to be REed, they > > can be used as is even now, in their closed form for testing. > > https://gitorious.org/pulseaudio-modules-nemo/jusas-tanuk2-mer-packaging/source/6ed34611b49c99b007f614d9dff4d58369876345: > https://github.com/nemomobile/pulseaudio-module-cmtspeech-n9xx/commits/master > > It seems there is already cmtspeech code for pulseaudio? Yes, and it works; but see below. > > Unfortunately all my spare time is dedicated to that PA stuff, so > > I simply can't cleanup cmtspeech driver and send a patch for > > upstreaming. (Pavel, what about you?) > > If somebody gets audio working with your driver and documents the > steps needed in userland I will take care of upstreaming the driver. I got it to work. Ok, so realtime audio does not work due to some pulseaudio problems, but I was able to record a (silent) call and then replay it with pacat --rate 4000 ../../../pulseaudio2.raw on my PC. I have yet to do some testing on the microphone side. I'm using Debian 7 as a a base, and I suggest nfsroot. It seems that libcmtspeechdata + pulseaudio-module-cmtspeech-n9xx is enough to get calls to work. Now. I could not get configure on these packages to work, so I hard-coded build scripts (mkit). You'll need to symlink resulting .so to pulseaudio directory (see /my/pulseaudio-module-cmtspeech-n9xx/src/cmtspeech/mkit). I leave binaries in, since this is non-trivial to compile. Some memory allocation stuff was missing. I faked it; it seems it is not needed in the first call. untar in the root directory of n900. Reset n900, no need to log in into console, connect using ssh -X root@n900. Then go to /my/tui/ofone. Run "./run" -- that should start pulseaudio. Run "./ofone", hit "lowlevel: online", hit "contacts", enter phone number you want to call, hit the number, it should start dialing. Wait a while, hit "lowlevel: hangup". Now you should have: /my/pulseaudio2.raw you can play with pacat above, and /my/pulseaudio.log.*, which contains stuff that needs to be fixed. I've put the archive at http://atrey.karlin.mff.cuni.cz/~pavel/outgoing/n900-my.tgz Have fun! Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: N900 modem support in 3.18-rc1
Pavel Machek writes: > Thanks for the info. > > I added > > " > +Mainline has support for Mitac Mio A701, but that having only 64MiB > +RAM, QTopia is the software to use there. > " Thanks Pavel, that looks good. Cheers. -- Robert -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: N900 modem support in 3.18-rc1
On Sun 2014-11-16 13:29:50, Robert Jarzmik wrote: > Pavel Machek writes: > > > On Thu 2014-11-13 20:18:04, Aaro Koskinen wrote: > >> Hi, > >> > >> On Thu, Nov 13, 2014 at 09:45:36AM -0800, Tony Lindgren wrote: > >> > * Pavel Machek [141113 08:23]: > >> > > OTOH ofono seems pretty reasonable. So I played a bit, and result > >> > > is python/pygtk gui which can receive an sms, initiate a call, and > >> > > report missed call. If someone wants to play, source is at > >> > > > >> > > https://gitorious.org/tui/tui/source/b6141107e9341a1412720aed4b0d09143dfa2f4e:ofone > >> > > >> > Pavel, care to fill in the the following type patch with some > >> > instructions in the description now that you got it working? > >> > >> Could we even have some "permanent" instructions under Documentation/? > > > > Something like this? > > > > commit 375d8d9f17433ade6afae91d4f34e170f0af04c4 > > Author: Pavel > > Date: Sun Nov 16 11:10:59 2014 +0100 > > > > Add basic documentation for n900 testing. > > > > Signed-off-by: Pavel Machek > > > > diff --git a/Documentation/cellphones.txt b/Documentation/cellphones.txt > > new file mode 100644 > > index 000..d7e8e7a > > --- /dev/null > > +++ b/Documentation/cellphones.txt > > @@ -0,0 +1,90 @@ > > +Running Linux on Cellphones > > +=== > > + > > +At this moment (2014), there are no cellphones completely supported by > > +mainline kernel. Another problem is lack of hackable userspace to run > > +on cellphone, even when kernel support is available. > Hi Pavel, > > There is the Mitac Mio A701. Very old but still it is there, with the kernel > part maintained. > > Userspace was based on QTopia in 2008. I don't maintain that part anymore > though. > > The GSM part relies on a simple ttyS device (modem has its internal flash), no > real data at that time, or rather 2G only, but the 07.10 mux support was never > included in Qtopia ... Thanks for the info. I added " +Mainline has support for Mitac Mio A701, but that having only 64MiB +RAM, QTopia is the software to use there. " Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: N900 modem support in 3.18-rc1
Pavel Machek writes: > On Thu 2014-11-13 20:18:04, Aaro Koskinen wrote: >> Hi, >> >> On Thu, Nov 13, 2014 at 09:45:36AM -0800, Tony Lindgren wrote: >> > * Pavel Machek [141113 08:23]: >> > > OTOH ofono seems pretty reasonable. So I played a bit, and result >> > > is python/pygtk gui which can receive an sms, initiate a call, and >> > > report missed call. If someone wants to play, source is at >> > > >> > > https://gitorious.org/tui/tui/source/b6141107e9341a1412720aed4b0d09143dfa2f4e:ofone >> > >> > Pavel, care to fill in the the following type patch with some >> > instructions in the description now that you got it working? >> >> Could we even have some "permanent" instructions under Documentation/? > > Something like this? > > commit 375d8d9f17433ade6afae91d4f34e170f0af04c4 > Author: Pavel > Date: Sun Nov 16 11:10:59 2014 +0100 > > Add basic documentation for n900 testing. > > Signed-off-by: Pavel Machek > > diff --git a/Documentation/cellphones.txt b/Documentation/cellphones.txt > new file mode 100644 > index 000..d7e8e7a > --- /dev/null > +++ b/Documentation/cellphones.txt > @@ -0,0 +1,90 @@ > +Running Linux on Cellphones > +=== > + > +At this moment (2014), there are no cellphones completely supported by > +mainline kernel. Another problem is lack of hackable userspace to run > +on cellphone, even when kernel support is available. Hi Pavel, There is the Mitac Mio A701. Very old but still it is there, with the kernel part maintained. Userspace was based on QTopia in 2008. I don't maintain that part anymore though. The GSM part relies on a simple ttyS device (modem has its internal flash), no real data at that time, or rather 2G only, but the 07.10 mux support was never included in Qtopia ... Cheers. -- Robert -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: N900 modem support in 3.18-rc1
On Thu 2014-11-13 20:18:04, Aaro Koskinen wrote: > Hi, > > On Thu, Nov 13, 2014 at 09:45:36AM -0800, Tony Lindgren wrote: > > * Pavel Machek [141113 08:23]: > > > OTOH ofono seems pretty reasonable. So I played a bit, and result > > > is python/pygtk gui which can receive an sms, initiate a call, and > > > report missed call. If someone wants to play, source is at > > > > > > https://gitorious.org/tui/tui/source/b6141107e9341a1412720aed4b0d09143dfa2f4e:ofone > > > > Pavel, care to fill in the the following type patch with some > > instructions in the description now that you got it working? > > Could we even have some "permanent" instructions under Documentation/? Something like this? commit 375d8d9f17433ade6afae91d4f34e170f0af04c4 Author: Pavel Date: Sun Nov 16 11:10:59 2014 +0100 Add basic documentation for n900 testing. Signed-off-by: Pavel Machek diff --git a/Documentation/cellphones.txt b/Documentation/cellphones.txt new file mode 100644 index 000..d7e8e7a --- /dev/null +++ b/Documentation/cellphones.txt @@ -0,0 +1,90 @@ +Running Linux on Cellphones +=== + +At this moment (2014), there are no cellphones completely supported by +mainline kernel. Another problem is lack of hackable userspace to run +on cellphone, even when kernel support is available. + +Openmoko was first phone running Linux with X. GSM support there was +based on freesmartphone.org daemons. + +Sony has project to merge kernel support for Xperia Z1. + +Nokia N900 +-- + +Nokia N900 orignally shipped with Maemo-based userland, which is close +enough to GNU/X/apt based Linux; key components communicate using dbus +and application can be written in pygtk. Kernel patches were +relatively clean, and the core stuff is merged, unfortunately there's +quite a lot of non-core stuff and pieces of userland are closed +source; including some critical support such as bridge between CPU and +modem for voice calls. + +Unfortunately, that means that kernel development is hard, because it +is non-trivial to test all the various devices in the phone due to +lack of suitable userspace and userspace development is hard, because +there's no suitable kernel to work with. + +Here are instructions for getting usable userspace for kernel testing, +and suggestions for some tests. Setting up nfsroot (needs non-mainline +patch) is strongly recommended for development. + +I'm using Debian 7 for testing/development. It works well including +touchscreen and X support, as of 3.18-rc1. Instructions are here: + +https://wiki.debian.org/n900-wheezy-armhf +https://wiki.debian.org/MaemoAndSqueeze + +Following packages are useful on N900: + +libts-bin evtest ntpdate module-init-tools udev netbase ifupdown openssh-server +locales whiptail less mpg123 mplayer ofono gcc strace mdbus2 + +This calibrates display to usable state on recent kernel and Debian 7: + +DISPLAY=:0.0 xinput --set-prop --type=float 8 115 1.10 0.00 -0.05 0.00 1.18 -0.10 0.00 0.00 1.00 +DISPLAY=:0.0 xinput --set-prop --type=int 8 249 0 1 + +# Test vibrations +echo 5 | fftest /dev/input/event2 + +# Test LEDs +VAL=30 +echo $VAL > lp5523\:kb1/brightness +echo $VAL > lp5523\:kb1/brightness +echo $VAL > lp5523\:kb2/brightness +echo $VAL > lp5523\:kb3/brightness +echo $VAL > lp5523\:kb4/brightness +echo $VAL > lp5523\:kb5/brightness +echo $VAL > lp5523\:kb6/brightness +echo $VAL > lp5523\:r/brightness +echo $VAL > lp5523\:g/brightness +echo $VAL > lp5523\:b/brightness +echo 100 > /sys/class/backlight/acx565akm/brightness +echo mem > /sys/power/state + +# Display battery/charging state +cd /sys/bus/i2c/drivers/bq27x00-battery/2-0055/power_supply/bq27200-0 +grep -r . . + +# Startup ofono in debug mode +rmdir /dev/cmt +ln -s /sys/bus/hsi/devices/n900-modem/ /dev/cmt +killall ofonod +sleep .1 +ofonod --nodetach --debug & + +# Test modem works +# enable the modem +mdbus2 -s org.ofono /n900_0 org.ofono.Modem.SetProperty Powered true +# enable modem's RF parts +mdbus2 -s org.ofono /n900_0 org.ofono.Modem.SetProperty Online true +# scan for available networks (takes some time) +mdbus2 -s org.ofono /n900_0 org.ofono.NetworkRegistration.Scan + + + Good luck! + + Pavel + -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: N900 modem support in 3.18-rc1
Hi, On Fri, Nov 14, 2014 at 06:34:18PM +0100, Pali Rohár wrote: > Anyway what is /dev/cmt_speech doing? If it exports gsm voice > call data, [...] Right. > [...] should not it have alsa snd interface? Sounds also like a promising standardized kernel interface. I wonder why a custom interface has been chosen in the first place. > V4L2 interface is not for video/camera/capture/tv cards? The V4L2 interface is also used for radio interfaces (e.g. the N900's fm receiver/transmitter) and for software defined radio. -- Sebastian signature.asc Description: Digital signature
Re: N900 modem support in 3.18-rc1
Hi, On Fri, Nov 14, 2014 at 09:54:42PM +0200, Ivaylo Dimitrov wrote: > On 14.11.2014 19:20, Sebastian Reichel wrote: > >The patch looks ok. It does not cleanup the cmt-speech driver for > >mainline usage, but it should work. Before adding this driver to the > >mainline kernel there should be open source userspace support anyway. > > I am aware of that(patch not ready), it's one of the reasons this > patch still sits on gitorious IMO. > > libcmtspeechdata was opened by Nokia long ago, so I don't understand what > userspace support (for inclusion of the driver in the mainline kernel that > is) is needed. see > https://gitorious.org/meego-cellular/libcmtspeechdata/source/7f8f3ce357513e4849e1bf6d657980a514529c1a: ah cool. I assumed, that userland stuff is mostly closed. > REed pulseaudio modules that use cmtspeech will be ready sooner than later > (I believe in 2-3 monts from now), see on gitorious how fast we progressed > with -record and -music modules. Sure, -voice module is way more > complicated, but lots of it is already opensourced, we just need to figure > out a couple of DSP algorithms(drc, agc, aec, etc) related to call quality. > But I don't think the driver should wait for those modules to be REed, they > can be used as is even now, in their closed form for testing. https://gitorious.org/pulseaudio-modules-nemo/jusas-tanuk2-mer-packaging/source/6ed34611b49c99b007f614d9dff4d58369876345: https://github.com/nemomobile/pulseaudio-module-cmtspeech-n9xx/commits/master It seems there is already cmtspeech code for pulseaudio? > Unfortunately all my spare time is dedicated to that PA stuff, so > I simply can't cleanup cmtspeech driver and send a patch for > upstreaming. (Pavel, what about you?) If somebody gets audio working with your driver and documents the steps needed in userland I will take care of upstreaming the driver. > >Btw. I am aware that this would break existing pulse audio stuff, > >but wouldn't it make sense to export a V4L2 device instead of the > >custom /dev/cmt_speech ABI? > > Not to say that I agree with Pali's reply that working userspace should not > be broken just for the sake of it. Actually the mainline kernel never implemented that interface, so there is no regression/break and I don't think introducing userspace ABI's should be done carelessly - especially when there is also a standardized interface. > Nokia PA guys did a great job integrating lots of things related to audio > and honestly, I don't see a reason why should we reinvent the wheel. There > is lot more behind the scenes than simple PCM streaming (like audio policies > and routing, sideband audio, speakers protection, etc) and reiplementing all > this using different API wouldn't worth it IMO. What has speaker protection to do with the modem interface? Shouldn't this be two different PA modules? -- Sebastian signature.asc Description: Digital signature
Re: N900 modem support in 3.18-rc1
Hi! On Fri 2014-11-14 21:54:42, Ivaylo Dimitrov wrote: > On 14.11.2014 19:20, Sebastian Reichel wrote: > > > >The patch looks ok. It does not cleanup the cmt-speech driver for > >mainline usage, but it should work. Before adding this driver to the > >mainline kernel there should be open source userspace support anyway. > > > > I am aware of that(patch not ready), it's one of the reasons this patch > still sits on gitorious IMO. > > libcmtspeechdata was opened by Nokia long ago, so I don't understand what > userspace support (for inclusion of the driver in the mainline kernel that > is) is needed. see > https://gitorious.org/meego-cellular/libcmtspeechdata/source/7f8f3ce357513e4849e1bf6d657980a514529c1a: > > REed pulseaudio modules that use cmtspeech will be ready sooner than later > (I believe in 2-3 monts from now), see on gitorious how fast we progressed > with -record and -music modules. Sure, -voice module is way more > complicated, but lots of it is already opensourced, we just need to figure > out a couple of DSP algorithms(drc, agc, aec, etc) related to call quality. > But I don't think the driver should wait for those modules to be REed, they > can be used as is even now, in their closed form for testing. Unfortunately > all my spare time is dedicated to that PA stuff, so I simply can't cleanup > cmtspeech driver and send a patch for upstreaming. (Pavel, what >about you?) Hey, I can try. But there are two things I'd like to understand, first: a) how did Mer people solve this? Or did they just ship nokia binaries? b) do we really need those DSP algorithms? Can we just take data from microphone and send it down the GSM line, and take data from GSM line and put it to the speaker? If it will not work in the speakerphone mode, I can live with that... It should somehow work in normal-phone mode, and be definitely feasible with wired handsfree, no? Thanks, Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: N900 modem support in 3.18-rc1
On 14.11.2014 19:20, Sebastian Reichel wrote: The patch looks ok. It does not cleanup the cmt-speech driver for mainline usage, but it should work. Before adding this driver to the mainline kernel there should be open source userspace support anyway. I am aware of that(patch not ready), it's one of the reasons this patch still sits on gitorious IMO. libcmtspeechdata was opened by Nokia long ago, so I don't understand what userspace support (for inclusion of the driver in the mainline kernel that is) is needed. see https://gitorious.org/meego-cellular/libcmtspeechdata/source/7f8f3ce357513e4849e1bf6d657980a514529c1a: REed pulseaudio modules that use cmtspeech will be ready sooner than later (I believe in 2-3 monts from now), see on gitorious how fast we progressed with -record and -music modules. Sure, -voice module is way more complicated, but lots of it is already opensourced, we just need to figure out a couple of DSP algorithms(drc, agc, aec, etc) related to call quality. But I don't think the driver should wait for those modules to be REed, they can be used as is even now, in their closed form for testing. Unfortunately all my spare time is dedicated to that PA stuff, so I simply can't cleanup cmtspeech driver and send a patch for upstreaming. (Pavel, what about you?) Btw. I am aware that this would break existing pulse audio stuff, but wouldn't it make sense to export a V4L2 device instead of the custom /dev/cmt_speech ABI? Nokia PA guys did a great job integrating lots of things related to audio and honestly, I don't see a reason why should we reinvent the wheel. There is lot more behind the scenes than simple PCM streaming (like audio policies and routing, sideband audio, speakers protection, etc) and reiplementing all this using different API wouldn't worth it IMO. Not to say that I agree with Pali's reply that working userspace should not be broken just for the sake of it. Ivo -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: N900 modem support in 3.18-rc1
On Friday 14 November 2014 18:20:09 Sebastian Reichel wrote: > Hi, > > On Fri, Nov 14, 2014 at 09:04:23AM +0200, Ivaylo Dimitrov wrote: > > [...] > > https://gitorious.org/linux-n900/freemangordons-linux-n900/c > > ommits/30e9a5c498a89cea4c29523f69e436bf0af3c631 > > > > commits 89ce13b, b81d80d, ec4d0dc, 91256e2 and 8022a6d - > > e29f558 (no idea why gitorious shows those mixed with SGX > > stuff, on my local tree it is contiguous patch series) > > > > didn't test against the current upstream, but I see no > > reason why those should not apply, build and run. > > The patch looks ok. It does not cleanup the cmt-speech driver > for mainline usage, but it should work. Before adding this > driver to the mainline kernel there should be open source > userspace support anyway. > > Btw. I am aware that this would break existing pulse audio > stuff, but wouldn't it make sense to export a V4L2 device > instead of the custom /dev/cmt_speech ABI? > It is not good idea to break existing applications even if they are closed... And there are some open source meego/nemo pulseaudio modules which using cmt speech (but audio quality is worse). Anyway what is /dev/cmt_speech doing? If it exports gsm voice call data, should not it have alsa snd interface? V4L2 interface is not for video/camera/capture/tv cards? -- Pali Rohár pali.ro...@gmail.com signature.asc Description: This is a digitally signed message part.
Re: N900 modem support in 3.18-rc1
Hi, On Fri, Nov 14, 2014 at 09:04:23AM +0200, Ivaylo Dimitrov wrote: > [...] > https://gitorious.org/linux-n900/freemangordons-linux-n900/commits/30e9a5c498a89cea4c29523f69e436bf0af3c631 > > commits 89ce13b, b81d80d, ec4d0dc, 91256e2 and 8022a6d - e29f558 (no idea > why gitorious shows those mixed with SGX stuff, on my local tree it is > contiguous patch series) > > didn't test against the current upstream, but I see no reason why those > should not apply, build and run. The patch looks ok. It does not cleanup the cmt-speech driver for mainline usage, but it should work. Before adding this driver to the mainline kernel there should be open source userspace support anyway. Btw. I am aware that this would break existing pulse audio stuff, but wouldn't it make sense to export a V4L2 device instead of the custom /dev/cmt_speech ABI? > > >About the pulseaudio stuff - we're still in process of REing it, so > > >far there are 2 out of 3 closed Nokia modules ready > > >(https://gitorious.org/pulseaudio-nokia), but the last one, which is > > >the one used for voice calls is still not ready and will take it a > > >while :). > > > > Ok, is there a way I could help? Pretty much everything else works with > > opensource drivers... > > > > There is, though I am not sure you'll like it much - fire up IDA and join > the party :P. Ping me on IRC for more details in case you're interested. > > Regards, > Ivo -- Sebastian signature.asc Description: Digital signature
Re: N900 modem support in 3.18-rc1
On Fri, Nov 14, 2014 at 08:37:56AM +0100, Pavel Machek wrote: > I'm using nfsroot (no modules), .config is attached. Debian v7.7, > ofono installed. > > To launch ofono, I'm using: > > rmdir /dev/cmt > ln -s /sys/bus/hsi/devices/n900-modem/ /dev/cmt At least with Debian as base you can add this to your /etc/rc.local and be happy, since the link will be created before ofono starts via /etc/init.d/ ;) I did not send ofono guys a patch to use /sys/bus/hsi/devices/n900-modem/, since the kernel is supposed to handle the PM, so there will be another, simpler interface (I plan to use pm=2 for that). > killall ofonod > sleep .1 > ofonod --nodetach --debug & or just use "/etc/init.d/ofono restart". The above is mostly useful for getting debug output from ofono. > [...] The short description for .config: CONFIG_NOKIA_MODEM must not be disabled. It should depend on everything else needed: CONFIG_PHONET CONFIG_HSI CONFIG_OMAP_SSI CONFIG_OMAP_SSI_PORT CONFIG_SSI_PROTOCOL CONFIG_NOKIA_MODEM -- Sebastian signature.asc Description: Digital signature
Re: N900 modem support in 3.18-rc1
Hi! > > > > Do you have an example client that can talk to ofonod? > > > > > > I have not yet played with userland stuff. You could try > > > telepathy-ring, which integrates the ofono into the telepathy > > > framework. > > > > Ok, I took a look, and telepathy-ring is not in debian, and has > > a lot of dependencies. > > > > OTOH ofono seems pretty reasonable. So I played a bit, and result > > is python/pygtk gui which can receive an sms, initiate a call, and > > report missed call. If someone wants to play, source is at > > > > https://gitorious.org/tui/tui/source/b6141107e9341a1412720aed4b0d09143dfa2f4e:ofone > > Pavel, care to fill in the the following type patch with some > instructions in the description now that you got it working? > > I did not have luck yet when I tried. I got the /dev/cmt/* > entries after adding pm=1 param, but no luck scanning any networks. I'm using nfsroot (no modules), .config is attached. Debian v7.7, ofono installed. To launch ofono, I'm using: rmdir /dev/cmt ln -s /sys/bus/hsi/devices/n900-modem/ /dev/cmt killall ofonod sleep .1 ofonod --nodetach --debug & # enable the modem mdbus2 -s org.ofono /n900_0 org.ofono.Modem.SetProperty Powered true # enable modem's RF parts mdbus2 -s org.ofono /n900_0 org.ofono.Modem.SetProperty Online true # scan for available networks (takes some time) mdbus2 -s org.ofono /n900_0 org.ofono.NetworkRegistration.Scan I do have working SIM card in it. (Alternatively, ofone button "online" can be used). Good luck, Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html # # Automatically generated file; DO NOT EDIT. # Linux/arm 3.18.0-rc1 Kernel Configuration # CONFIG_ARM=y CONFIG_ARM_HAS_SG_CHAIN=y CONFIG_NEED_SG_DMA_LENGTH=y CONFIG_ARM_DMA_USE_IOMMU=y CONFIG_ARM_DMA_IOMMU_ALIGNMENT=8 CONFIG_MIGHT_HAVE_PCI=y CONFIG_SYS_SUPPORTS_APM_EMULATION=y CONFIG_HAVE_PROC_CPU=y CONFIG_STACKTRACE_SUPPORT=y CONFIG_HAVE_LATENCYTOP_SUPPORT=y CONFIG_LOCKDEP_SUPPORT=y CONFIG_TRACE_IRQFLAGS_SUPPORT=y CONFIG_RWSEM_XCHGADD_ALGORITHM=y CONFIG_ARCH_HAS_BANDGAP=y CONFIG_GENERIC_HWEIGHT=y CONFIG_GENERIC_CALIBRATE_DELAY=y CONFIG_NEED_DMA_MAP_STATE=y CONFIG_ARCH_SUPPORTS_UPROBES=y CONFIG_VECTORS_BASE=0x CONFIG_ARM_PATCH_PHYS_VIRT=y CONFIG_GENERIC_BUG=y CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" CONFIG_IRQ_WORK=y CONFIG_BUILDTIME_EXTABLE_SORT=y # # General setup # CONFIG_BROKEN_ON_SMP=y CONFIG_INIT_ENV_ARG_LIMIT=32 CONFIG_CROSS_COMPILE="" # CONFIG_COMPILE_TEST is not set CONFIG_LOCALVERSION="-omap3" CONFIG_LOCALVERSION_AUTO=y CONFIG_HAVE_KERNEL_GZIP=y CONFIG_HAVE_KERNEL_LZMA=y CONFIG_HAVE_KERNEL_XZ=y CONFIG_HAVE_KERNEL_LZO=y CONFIG_HAVE_KERNEL_LZ4=y # CONFIG_KERNEL_GZIP is not set CONFIG_KERNEL_LZMA=y # CONFIG_KERNEL_XZ is not set # CONFIG_KERNEL_LZO is not set # CONFIG_KERNEL_LZ4 is not set CONFIG_DEFAULT_HOSTNAME="(none)" CONFIG_SWAP=y CONFIG_SYSVIPC=y CONFIG_SYSVIPC_SYSCTL=y # CONFIG_POSIX_MQUEUE is not set # CONFIG_CROSS_MEMORY_ATTACH is not set # CONFIG_FHANDLE is not set CONFIG_USELIB=y # CONFIG_AUDIT is not set CONFIG_HAVE_ARCH_AUDITSYSCALL=y # # IRQ subsystem # CONFIG_GENERIC_IRQ_PROBE=y CONFIG_GENERIC_IRQ_SHOW=y CONFIG_HARDIRQS_SW_RESEND=y CONFIG_GENERIC_IRQ_CHIP=y CONFIG_IRQ_DOMAIN=y CONFIG_HANDLE_DOMAIN_IRQ=y # CONFIG_IRQ_DOMAIN_DEBUG is not set CONFIG_IRQ_FORCED_THREADING=y CONFIG_SPARSE_IRQ=y CONFIG_GENERIC_CLOCKEVENTS=y CONFIG_GENERIC_CLOCKEVENTS_BUILD=y # # Timers subsystem # CONFIG_TICK_ONESHOT=y CONFIG_NO_HZ_COMMON=y # CONFIG_HZ_PERIODIC is not set CONFIG_NO_HZ_IDLE=y CONFIG_NO_HZ=y CONFIG_HIGH_RES_TIMERS=y # # CPU/Task time and stats accounting # CONFIG_TICK_CPU_ACCOUNTING=y # CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set # CONFIG_IRQ_TIME_ACCOUNTING is not set CONFIG_BSD_PROCESS_ACCT=y # CONFIG_BSD_PROCESS_ACCT_V3 is not set # CONFIG_TASKSTATS is not set # # RCU Subsystem # CONFIG_TREE_PREEMPT_RCU=y CONFIG_PREEMPT_RCU=y # CONFIG_TASKS_RCU is not set CONFIG_RCU_STALL_COMMON=y CONFIG_RCU_FANOUT=32 CONFIG_RCU_FANOUT_LEAF=16 # CONFIG_RCU_FANOUT_EXACT is not set # CONFIG_TREE_RCU_TRACE is not set # CONFIG_RCU_BOOST is not set # CONFIG_RCU_NOCB_CPU is not set CONFIG_BUILD_BIN2C=y CONFIG_IKCONFIG=y CONFIG_IKCONFIG_PROC=y CONFIG_LOG_BUF_SHIFT=20 CONFIG_GENERIC_SCHED_CLOCK=y # CONFIG_CGROUPS is not set # CONFIG_CHECKPOINT_RESTORE is not set # CONFIG_NAMESPACES is not set # CONFIG_SCHED_AUTOGROUP is not set # CONFIG_SYSFS_DEPRECATED is not set # CONFIG_RELAY is not set # CONFIG_BLK_DEV_INITRD is not set # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set CONFIG_SYSCTL=y CONFIG_ANON_INODES=y CONFIG_HAVE_UID16=y CONFIG_EXPERT=y CONFIG_UID16=y # CONFIG_SGETMASK_SYSCALL is not set CONFIG_SYSFS_SYSCALL=y # CONFIG_SYSCTL_SYSCALL is not set CONFIG_KALLSYMS=y CONFIG_KALLSYMS_ALL=y CONFIG_PRINTK=y CONFIG_BUG=y CONFIG_ELF_CORE=y CONFIG_BASE_FULL=y CONFIG_FUTEX=y CONFIG_EPOLL=y CONFIG_SIGNALFD=y CON
Re: N900 modem support in 3.18-rc1
On 13.11.2014 18:24, Pavel Machek wrote: On Fri 2014-11-07 09:04:52, Ivaylo Dimitrov wrote: Sebastian is quiet, can we have the patch? :-). Sure, why not :) https://gitorious.org/linux-n900/freemangordons-linux-n900/commits/30e9a5c498a89cea4c29523f69e436bf0af3c631 commits 89ce13b, b81d80d, ec4d0dc, 91256e2 and 8022a6d - e29f558 (no idea why gitorious shows those mixed with SGX stuff, on my local tree it is contiguous patch series) didn't test against the current upstream, but I see no reason why those should not apply, build and run. About the pulseaudio stuff - we're still in process of REing it, so far there are 2 out of 3 closed Nokia modules ready (https://gitorious.org/pulseaudio-nokia), but the last one, which is the one used for voice calls is still not ready and will take it a while :). Ok, is there a way I could help? Pretty much everything else works with opensource drivers... There is, though I am not sure you'll like it much - fire up IDA and join the party :P. Ping me on IRC for more details in case you're interested. Regards, Ivo -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: N900 modem support in 3.18-rc1
Hi, On Thu, Nov 13, 2014 at 09:45:36AM -0800, Tony Lindgren wrote: > * Pavel Machek [141113 08:23]: > > OTOH ofono seems pretty reasonable. So I played a bit, and result > > is python/pygtk gui which can receive an sms, initiate a call, and > > report missed call. If someone wants to play, source is at > > > > https://gitorious.org/tui/tui/source/b6141107e9341a1412720aed4b0d09143dfa2f4e:ofone > > Pavel, care to fill in the the following type patch with some > instructions in the description now that you got it working? Could we even have some "permanent" instructions under Documentation/? > I did not have luck yet when I tried. I got the /dev/cmt/* > entries after adding pm=1 param, but no luck scanning any networks. I haven't tested anything yet, but looking forward to do that during the weekend... Sounds pretty exciting. :-) A. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: N900 modem support in 3.18-rc1
* Pavel Machek [141113 08:23]: > Hi! > > > > I actually had pm=0 on the command line, but I removed it now, and no > > > change: [...] > > > > > > Let me try with explicit =1. .. aha, that helps. Thanks! > > > > mh seems I actually missed to make 1 the default value. I will > > prepare a patch for that. > > > > I assume, that the example ofono commands work for you now? > > Yes, it now works great. > > > > Do you have an example client that can talk to ofonod? > > > > I have not yet played with userland stuff. You could try > > telepathy-ring, which integrates the ofono into the telepathy > > framework. > > Ok, I took a look, and telepathy-ring is not in debian, and has > a lot of dependencies. > > OTOH ofono seems pretty reasonable. So I played a bit, and result > is python/pygtk gui which can receive an sms, initiate a call, and > report missed call. If someone wants to play, source is at > > https://gitorious.org/tui/tui/source/b6141107e9341a1412720aed4b0d09143dfa2f4e:ofone Pavel, care to fill in the the following type patch with some instructions in the description now that you got it working? I did not have luck yet when I tried. I got the /dev/cmt/* entries after adding pm=1 param, but no luck scanning any networks. Regards, Tony 8< - ARM: omap2plus_defconfig: Enable n900 modem as loadable modules --- a/arch/arm/configs/omap2plus_defconfig +++ b/arch/arm/configs/omap2plus_defconfig @@ -88,6 +88,7 @@ CONFIG_IP_PNP_BOOTP=y CONFIG_IP_PNP_RARP=y # CONFIG_INET_LRO is not set CONFIG_NETFILTER=y +CONFIG_PHONET=m CONFIG_CAN=m CONFIG_CAN_C_CAN=m CONFIG_CAN_C_CAN_PLATFORM=m @@ -158,6 +159,7 @@ CONFIG_USB_ALI_M5632=y CONFIG_USB_AN2720=y CONFIG_USB_EPSON2888=y CONFIG_USB_KC2190=y +CONFIG_USB_CDC_PHONET=m CONFIG_LIBERTAS=m CONFIG_LIBERTAS_USB=m CONFIG_LIBERTAS_SDIO=m @@ -197,6 +199,11 @@ CONFIG_HW_RANDOM=y CONFIG_I2C_CHARDEV=y CONFIG_SPI=y CONFIG_SPI_OMAP24XX=y +CONFIG_HSI=m +CONFIG_OMAP_SSI=m +CONFIG_NOKIA_MODEM=m +CONFIG_SSI_PROTOCOL=m +CONFIG_HSI_CHAR=m CONFIG_PINCTRL_SINGLE=y CONFIG_DEBUG_GPIO=y CONFIG_GPIO_SYSFS=y @@ -312,9 +319,11 @@ CONFIG_USB_CONFIGFS_ECM=y CONFIG_USB_CONFIGFS_ECM_SUBSET=y CONFIG_USB_CONFIGFS_RNDIS=y CONFIG_USB_CONFIGFS_EEM=y +CONFIG_USB_CONFIGFS_PHONET=y CONFIG_USB_CONFIGFS_MASS_STORAGE=y CONFIG_USB_CONFIGFS_F_LB_SS=y CONFIG_USB_CONFIGFS_F_FS=y +CONFIG_USB_G_NOKIA=m CONFIG_MMC=y CONFIG_SDIO_UART=y CONFIG_MMC_OMAP=y @@ -359,6 +368,7 @@ CONFIG_MSDOS_FS=y CONFIG_VFAT_FS=y CONFIG_TMPFS=y CONFIG_TMPFS_POSIX_ACL=y +CONFIG_CONFIGFS_FS=y CONFIG_JFFS2_FS=y CONFIG_JFFS2_SUMMARY=y CONFIG_JFFS2_FS_XATTR=y -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: N900 modem support in 3.18-rc1
On Fri 2014-11-07 09:04:52, Ivaylo Dimitrov wrote: > On 7.11.2014 01:01, Pali Rohár wrote: > > > >For voice calls you need: > >* kernel driver cmt-speech (or it has some new name) > >* cmt-speech userspace library (communication with kernel) > >* pulseaudio modules which are using that library > > > >Freemangordon (Ivaylo Dimitrov, CCed) should know more about it, > >specially about pulseaudio modules... > > I have a patch for cmt-speech on top of nokia-modem driver living > somewhere on my HDD, but I guess it is better Sebastian to make such > a patch (Sebastian, no?). Sebastian is quiet, can we have the patch? :-). > About the pulseaudio stuff - we're still in process of REing it, so > far there are 2 out of 3 closed Nokia modules ready > (https://gitorious.org/pulseaudio-nokia), but the last one, which is > the one used for voice calls is still not ready and will take it a > while :). Ok, is there a way I could help? Pretty much everything else works with opensource drivers... Thanks, Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: N900 modem support in 3.18-rc1
Hi! > > I actually had pm=0 on the command line, but I removed it now, and no > > change: [...] > > > > Let me try with explicit =1. .. aha, that helps. Thanks! > > mh seems I actually missed to make 1 the default value. I will > prepare a patch for that. > > I assume, that the example ofono commands work for you now? Yes, it now works great. > > Do you have an example client that can talk to ofonod? > > I have not yet played with userland stuff. You could try > telepathy-ring, which integrates the ofono into the telepathy > framework. Ok, I took a look, and telepathy-ring is not in debian, and has a lot of dependencies. OTOH ofono seems pretty reasonable. So I played a bit, and result is python/pygtk gui which can receive an sms, initiate a call, and report missed call. If someone wants to play, source is at https://gitorious.org/tui/tui/source/b6141107e9341a1412720aed4b0d09143dfa2f4e:ofone Best regards, Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: N900 modem support in 3.18-rc1
On 7.11.2014 01:01, Pali Rohár wrote: For voice calls you need: * kernel driver cmt-speech (or it has some new name) * cmt-speech userspace library (communication with kernel) * pulseaudio modules which are using that library Freemangordon (Ivaylo Dimitrov, CCed) should know more about it, specially about pulseaudio modules... I have a patch for cmt-speech on top of nokia-modem driver living somewhere on my HDD, but I guess it is better Sebastian to make such a patch (Sebastian, no?). About the pulseaudio stuff - we're still in process of REing it, so far there are 2 out of 3 closed Nokia modules ready (https://gitorious.org/pulseaudio-nokia), but the last one, which is the one used for voice calls is still not ready and will take it a while :). Regards, Ivo -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: N900 modem support in 3.18-rc1
On Thursday 06 November 2014 23:50:05 Pavel Machek wrote: > > > What is needed to get voice calls to work? > > > > There's still a kernel driver missing in mainline for > > exchanging voice data between the modem and the cpu (called > > cmt-speech). > > > > BTW the CMT driver should be removed from your kernel tree; > > its a deprecated variant of mainline's nokia-modem driver. > > Thus I guess the cmt-speech driver, which is available in > > your kernel tree, is not properly integrated into the > > changes I did during mainlining the other modem related > > drivers. > > Aha, so CONFIG_CMT is the same thing as CONFIG_NOKIA_NODEM? > Ok, will disable that. Speech... if you'd have version I > could test, I'll happily do that. > > Thanks, > Pavel For voice calls you need: * kernel driver cmt-speech (or it has some new name) * cmt-speech userspace library (communication with kernel) * pulseaudio modules which are using that library Freemangordon (Ivaylo Dimitrov, CCed) should know more about it, specially about pulseaudio modules... -- Pali Rohár pali.ro...@gmail.com signature.asc Description: This is a digitally signed message part.
Re: N900 modem support in 3.18-rc1
Hi! > > I actually had pm=0 on the command line, but I removed it now, and no > > change: [...] > > > > Let me try with explicit =1. .. aha, that helps. Thanks! > > mh seems I actually missed to make 1 the default value. I will > prepare a patch for that. > > I assume, that the example ofono commands work for you now? Yes. I was able to get list of networks. It stops working after a while, for unknown reasons. BTW... I'm using Debian-7.7 and did XKBMODEL="nokiarx51" XKBLAYOUT="us" (from https://wiki.debian.org/MaemoAndSqueeze). Keyboard works well -- except "p" key. arrow-P (0) works ok. Do you see that, too? > > Do you have an example client that can talk to ofonod? > > I have not yet played with userland stuff. You could try > telepathy-ring, which integrates the ofono into the telepathy > framework. Thanks for the pointer. > > What is needed to get voice calls to work? > > There's still a kernel driver missing in mainline for exchanging > voice data between the modem and the cpu (called cmt-speech). > > BTW the CMT driver should be removed from your kernel tree; its a > deprecated variant of mainline's nokia-modem driver. Thus I guess > the cmt-speech driver, which is available in your kernel tree, is > not properly integrated into the changes I did during mainlining > the other modem related drivers. Aha, so CONFIG_CMT is the same thing as CONFIG_NOKIA_NODEM? Ok, will disable that. Speech... if you'd have version I could test, I'll happily do that. Thanks, Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: N900 modem support in 3.18-rc1
Hi, On Thu, Nov 06, 2014 at 01:47:11PM +0100, Pavel Machek wrote: > > On Wed, Nov 05, 2014 at 11:03:59PM +0100, Pavel Machek wrote: > > > > Maybe you need to enable modem? > > > > > > > > This is n900 init sequence from script: nokia-n900-configs.sh > > > > > > From the dts, it looks like this should somehow work without this. > > > > Right :) The n900-modem driver will take care of this if the "pm" > > parameter is set to 1 (which should be the default). > > I actually had pm=0 on the command line, but I removed it now, and no > change: [...] > > Let me try with explicit =1. .. aha, that helps. Thanks! mh seems I actually missed to make 1 the default value. I will prepare a patch for that. I assume, that the example ofono commands work for you now? > Do you have an example client that can talk to ofonod? I have not yet played with userland stuff. You could try telepathy-ring, which integrates the ofono into the telepathy framework. > What is needed to get voice calls to work? There's still a kernel driver missing in mainline for exchanging voice data between the modem and the cpu (called cmt-speech). BTW the CMT driver should be removed from your kernel tree; its a deprecated variant of mainline's nokia-modem driver. Thus I guess the cmt-speech driver, which is available in your kernel tree, is not properly integrated into the changes I did during mainlining the other modem related drivers. -- Sebastian signature.asc Description: Digital signature
Re: N900 modem support in 3.18-rc1
Hi! > On Wed, Nov 05, 2014 at 11:03:59PM +0100, Pavel Machek wrote: > > > Maybe you need to enable modem? > > > > > > This is n900 init sequence from script: nokia-n900-configs.sh > > > > From the dts, it looks like this should somehow work without this. > > Right :) The n900-modem driver will take care of this if the "pm" > parameter is set to 1 (which should be the default). I actually had pm=0 on the command line, but I removed it now, and no change: root@n900:~# find /sys/bus/hsi/devices/n900-modem/ /sys/bus/hsi/devices/n900-modem/ /sys/bus/hsi/devices/n900-modem/power /sys/bus/hsi/devices/n900-modem/power/control /sys/bus/hsi/devices/n900-modem/power/runtime_active_time /sys/bus/hsi/devices/n900-modem/power/autosuspend_delay_ms /sys/bus/hsi/devices/n900-modem/power/runtime_status /sys/bus/hsi/devices/n900-modem/power/runtime_suspended_time /sys/bus/hsi/devices/n900-modem/modalias /sys/bus/hsi/devices/n900-modem/driver /sys/bus/hsi/devices/n900-modem/subsystem /sys/bus/hsi/devices/n900-modem/uevent root@n900:~# cat /proc/cmdline root=/dev/nfs nfsroot=192.168.1.6:/srv/nfs/n900 rw ip=192.168.1.8::192.168.1.6:255.255.255.192::usb0: no-omap-wd no-ext-wd console=tty0 root@n900:~# Let me try with explicit =1. .. aha, that helps. Thanks! Do you have an example client that can talk to ofonod? What is needed to get voice calls to work? Best regards, Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: N900 modem support in 3.18-rc1
Hi, On Wed, Nov 05, 2014 at 11:03:59PM +0100, Pavel Machek wrote: > > Maybe you need to enable modem? > > > > This is n900 init sequence from script: nokia-n900-configs.sh > > From the dts, it looks like this should somehow work without this. Right :) The n900-modem driver will take care of this if the "pm" parameter is set to 1 (which should be the default). > I can try but.. is it safe? I'm using DT-based config, and interrupt > numbers definitely changed. If GPIO numbers changed, it will not be > funny. Can you provide the output from dmesg? -- Sebastian signature.asc Description: Digital signature
Re: N900 modem support in 3.18-rc1
Hi! > Maybe you need to enable modem? > > This is n900 init sequence from script: nokia-n900-configs.sh >From the dts, it looks like this should somehow work without this. I can try but.. is it safe? I'm using DT-based config, and interrupt numbers definitely changed. If GPIO numbers changed, it will not be funny. Thanks, Pavel > # set up the GPIO's for N900 modem: > echo 70 >/sys/class/gpio/export > echo low >/sys/class/gpio/gpio70/direction > echo 0 >/sys/class/gpio/gpio70/value > echo 73 >/sys/class/gpio/export > echo high >/sys/class/gpio/gpio73/direction > echo 0 >/sys/class/gpio/gpio73/value > echo 74 >/sys/class/gpio/export > echo low >/sys/class/gpio/gpio74/direction > echo 75 >/sys/class/gpio/export > echo low >/sys/class/gpio/gpio75/direction > echo 157 >/sys/class/gpio/export > echo low >/sys/class/gpio/gpio157/direction > echo 0 >/sys/class/gpio/gpio157/value > # create symlinks for ofono N900 plugin > mkdir -p /dev/cmt > ln -nsf /sys/class/gpio/gpio70 /dev/cmt/cmt_apeslpx > ln -nsf /sys/class/gpio/gpio74 /dev/cmt/cmt_en > ln -nsf /sys/class/gpio/gpio73 /dev/cmt/cmt_rst_rq > ln -nsf /sys/class/gpio/gpio75 /dev/cmt/cmt_rst > ln -nsf /sys/class/gpio/gpio157 /dev/cmt/cmt_bsi > -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: N900 modem support in 3.18-rc1
Maybe you need to enable modem? This is n900 init sequence from script: nokia-n900-configs.sh # set up the GPIO's for N900 modem: echo 70 >/sys/class/gpio/export echo low >/sys/class/gpio/gpio70/direction echo 0 >/sys/class/gpio/gpio70/value echo 73 >/sys/class/gpio/export echo high >/sys/class/gpio/gpio73/direction echo 0 >/sys/class/gpio/gpio73/value echo 74 >/sys/class/gpio/export echo low >/sys/class/gpio/gpio74/direction echo 75 >/sys/class/gpio/export echo low >/sys/class/gpio/gpio75/direction echo 157 >/sys/class/gpio/export echo low >/sys/class/gpio/gpio157/direction echo 0 >/sys/class/gpio/gpio157/value # create symlinks for ofono N900 plugin mkdir -p /dev/cmt ln -nsf /sys/class/gpio/gpio70 /dev/cmt/cmt_apeslpx ln -nsf /sys/class/gpio/gpio74 /dev/cmt/cmt_en ln -nsf /sys/class/gpio/gpio73 /dev/cmt/cmt_rst_rq ln -nsf /sys/class/gpio/gpio75 /dev/cmt/cmt_rst ln -nsf /sys/class/gpio/gpio157 /dev/cmt/cmt_bsi -- Pali Rohár pali.ro...@gmail.com signature.asc Description: This is a digitally signed message part.
Re: N900 modem support in 3.18-rc1
Hi! > Hello, have you enabled CONFIG_PHONET? Yes: CONFIG_PHONET=y And this: # SPI Protocol Masters # # CONFIG_SPI_SPIDEV is not set # CONFIG_SPI_TLE62X0 is not set # CONFIG_SPMI is not set CONFIG_HSI=y CONFIG_HSI_BOARDINFO=y # # HSI controllers # CONFIG_OMAP_SSI=y CONFIG_OMAP_SSI_PORT=y # # HSI clients # CONFIG_NOKIA_MODEM=y CONFIG_SSI_PROTOCOL=y CONFIG_HSI_CHAR=y CONFIG_HSI_CMT_SPEECH=y Best regards, Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: N900 modem support in 3.18-rc1
Hello, have you enabled CONFIG_PHONET? -- Pali Rohár pali.ro...@gmail.com signature.asc Description: This is a digitally signed message part.
Re: N900 modem support in 3.18-rc1
On Wed 2014-11-05 02:11:22, Sebastian Reichel wrote: > Hi Pavel, > > On Tue, Nov 04, 2014 at 09:51:17PM +0100, Pavel Machek wrote: > > I'd like to test a modem (and eventually to get it to work :-) ) on > > n900. So far I found: > > > > http://lwn.net/Articles/592485/ > > > > It says: > > > > # supported. Testing the patchset with ofono works like this: > > # > > # # provide cmt device for ofono > > # ln -sf /sys/bus/hsi/n900-modem /dev/cmt > > > > [...] > > > > That seemed to match, so I symlinked it. > > looks ok. You should have the following files: > > /dev/cmt/cmt_apeslpx > /dev/cmt/cmt_bsi > /dev/cmt/cmt_en > /dev/cmt/cmt_rst_rq > /dev/cmt/cmt_rst No, it is not ok :-(. I did enable CONFIG_CMT now (it was not enabled before, and wow, that entry has least helpful config help, ever; is it related?), but still can't see the required files: root@n900:/sys# find . | grep cmt ./bus/hsi/devices/cmt_speech ./bus/hsi/drivers/cmt_speech ./bus/hsi/drivers/cmt_speech/bind ./bus/hsi/drivers/cmt_speech/cmt_speech ./bus/hsi/drivers/cmt_speech/uevent ./bus/hsi/drivers/cmt_speech/unbind ./devices/virtual/misc/cmt_speech ./devices/virtual/misc/cmt_speech/dev ./devices/virtual/misc/cmt_speech/power ./devices/virtual/misc/cmt_speech/power/control ./devices/virtual/misc/cmt_speech/power/runtime_active_time ./devices/virtual/misc/cmt_speech/power/autosuspend_delay_ms ./devices/virtual/misc/cmt_speech/power/runtime_status ./devices/virtual/misc/cmt_speech/power/runtime_suspended_time ./devices/virtual/misc/cmt_speech/subsystem ./devices/virtual/misc/cmt_speech/uevent ./devices/6800.ocp/48058000.ssi-controller/ssi0/port0/cmt_speech ./devices/6800.ocp/48058000.ssi-controller/ssi0/port0/cmt_speech/power ./devices/6800.ocp/48058000.ssi-controller/ssi0/port0/cmt_speech/power/control ./devices/6800.ocp/48058000.ssi-controller/ssi0/port0/cmt_speech/power/runtime_active_time ./devices/6800.ocp/48058000.ssi-controller/ssi0/port0/cmt_speech/power/autosuspend_delay_ms ./devices/6800.ocp/48058000.ssi-controller/ssi0/port0/cmt_speech/power/runtime_status ./devices/6800.ocp/48058000.ssi-controller/ssi0/port0/cmt_speech/power/runtime_suspended_time ./devices/6800.ocp/48058000.ssi-controller/ssi0/port0/cmt_speech/modalias ./devices/6800.ocp/48058000.ssi-controller/ssi0/port0/cmt_speech/driver ./devices/6800.ocp/48058000.ssi-controller/ssi0/port0/cmt_speech/subsystem ./devices/6800.ocp/48058000.ssi-controller/ssi0/port0/cmt_speech/uevent ./class/misc/cmt_speech root@n900:/sys# (What does CMT mean? I should fix the help files, I guess...) > > root@n900:~# ofonod --nodetach --debug & > > [1] 3552 > > no output from ofono? Actually, a lot of output from ofonod, but nothing useful. > > root@n900:~# mdbus2 -s org.ofono /n900_0 xyz > > [ERR]: There is no method with name xyz on path /n900_0! > > > > [...] > > > > Any ideas? > > call mdbus2 with fewer arguments to see what is available on the > bus: > > mdbus2 -s => list all system services > mdbus2 -s org.ofono=> list all ofono objects > mdbus2 -s org.ofono /n900_0=> list all methods from n900 object root@n900:~# mdbus2 -s org.ofono / root@n900:~# But since I do not have required cmt_ files, I guess that's expected? Thanks, Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: N900 modem support in 3.18-rc1
Hi Pavel, On Tue, Nov 04, 2014 at 09:51:17PM +0100, Pavel Machek wrote: > I'd like to test a modem (and eventually to get it to work :-) ) on > n900. So far I found: > > http://lwn.net/Articles/592485/ > > It says: > > # supported. Testing the patchset with ofono works like this: > # > # # provide cmt device for ofono > # ln -sf /sys/bus/hsi/n900-modem /dev/cmt > > [...] > > That seemed to match, so I symlinked it. looks ok. You should have the following files: /dev/cmt/cmt_apeslpx /dev/cmt/cmt_bsi /dev/cmt/cmt_en /dev/cmt/cmt_rst_rq /dev/cmt/cmt_rst Apart from that the kernel should be provide a phonet0 network device. > # # start ofono > # ofono --nodetach --debug > > It it a typo and it wants ofonod? yes. > root@n900:~# ofonod --nodetach --debug & > [1] 3552 no output from ofono? > root@n900:~# mdbus2 -s org.ofono /n900_0 xyz > [ERR]: There is no method with name xyz on path /n900_0! > > [...] > > Any ideas? call mdbus2 with fewer arguments to see what is available on the bus: mdbus2 -s => list all system services mdbus2 -s org.ofono=> list all ofono objects mdbus2 -s org.ofono /n900_0=> list all methods from n900 object -- Sebastian signature.asc Description: Digital signature