[PATCH 1/2] ALSA: hda - Configure XO-1.5 microphones at capture time
The XO-1.5 has a microphone LED designed to indicate to the user when something is being recorded. This light is controlled by the microphone bias voltage and it is currently coming on all the time. This patch defers the microphone port configuration until when recording is actually taking place, fixing the behaviour of the LED. Signed-off-by: Daniel Drake d...@laptop.org --- sound/pci/hda/patch_conexant.c | 125 +++- 1 files changed, 85 insertions(+), 40 deletions(-) diff --git a/sound/pci/hda/patch_conexant.c b/sound/pci/hda/patch_conexant.c index c578c28..9ad1219 100644 --- a/sound/pci/hda/patch_conexant.c +++ b/sound/pci/hda/patch_conexant.c @@ -111,8 +111,12 @@ struct conexant_spec { unsigned int dell_automute; unsigned int port_d_mode; - unsigned char ext_mic_bias; unsigned int dell_vostro; + + unsigned int ext_mic_present; + unsigned int recording; + void (*capture_prepare)(struct hda_codec *codec); + void (*capture_cleanup)(struct hda_codec *codec); }; static int conexant_playback_pcm_open(struct hda_pcm_stream *hinfo, @@ -185,6 +189,8 @@ static int conexant_capture_pcm_prepare(struct hda_pcm_stream *hinfo, struct snd_pcm_substream *substream) { struct conexant_spec *spec = codec-spec; + if (spec-capture_prepare) + spec-capture_prepare(codec); snd_hda_codec_setup_stream(codec, spec-adc_nids[substream-number], stream_tag, 0, format); return 0; @@ -196,6 +202,8 @@ static int conexant_capture_pcm_cleanup(struct hda_pcm_stream *hinfo, { struct conexant_spec *spec = codec-spec; snd_hda_codec_cleanup_stream(codec, spec-adc_nids[substream-number]); + if (spec-capture_cleanup) + spec-capture_cleanup(codec); return 0; } @@ -1966,53 +1974,53 @@ static int cxt5066_hp_master_sw_put(struct snd_kcontrol *kcontrol, return 1; } -/* toggle input of built-in and mic jack appropriately */ -static void cxt5066_automic(struct hda_codec *codec) +/* OLPC defers mic widget control until when capture is started because the + * microphone LED comes on as soon as these settings are put in place. if we + * did this before recording, it would give the false indication that recording + * is happening when it is not. */ +static void cxt5066_olpc_select_mic(struct hda_codec *codec) { struct conexant_spec *spec = codec-spec; - struct hda_verb ext_mic_present[] = { - /* enable external mic, port B */ - {0x1a, AC_VERB_SET_PIN_WIDGET_CONTROL, spec-ext_mic_bias}, - - /* switch to external mic input */ - {0x17, AC_VERB_SET_CONNECT_SEL, 0}, + if (!spec-recording) + return; - /* disable internal mic, port C */ - {0x1b, AC_VERB_SET_PIN_WIDGET_CONTROL, 0}, - {} - }; - static struct hda_verb ext_mic_absent[] = { - /* enable internal mic, port C */ - {0x1b, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_VREF80}, + /* external mic, port B */ + snd_hda_codec_write(codec, 0x1a, 0, AC_VERB_SET_PIN_WIDGET_CONTROL, + spec-ext_mic_present ? CXT5066_OLPC_EXT_MIC_BIAS : 0); - /* switch to internal mic input */ - {0x17, AC_VERB_SET_CONNECT_SEL, 1}, + /* internal mic, port C */ + snd_hda_codec_write(codec, 0x1b, 0, AC_VERB_SET_PIN_WIDGET_CONTROL, + spec-ext_mic_present ? 0 : PIN_VREF80); +} - /* disable external mic, port B */ - {0x1a, AC_VERB_SET_PIN_WIDGET_CONTROL, 0}, - {} - }; +/* toggle input of built-in and mic jack appropriately */ +static void cxt5066_olpc_automic(struct hda_codec *codec) +{ + struct conexant_spec *spec = codec-spec; unsigned int present; - present = snd_hda_jack_detect(codec, 0x1a); - if (present) { + present = snd_hda_codec_read(codec, 0x1a, 0, +AC_VERB_GET_PIN_SENSE, 0) 0x8000; + if (present) snd_printdd(CXT5066: external microphone detected\n); - snd_hda_sequence_write(codec, ext_mic_present); - } else { + else snd_printdd(CXT5066: external microphone absent\n); - snd_hda_sequence_write(codec, ext_mic_absent); - } + + snd_hda_codec_write(codec, 0x17, 0, AC_VERB_SET_CONNECT_SEL, + present ? 0 : 1); + spec-ext_mic_present = !!present; + + cxt5066_olpc_select_mic(codec); } /* toggle input of built-in digital mic and mic jack appropriately */ static void cxt5066_vostro_automic(struct hda_codec *codec) { - struct conexant_spec *spec = codec-spec; unsigned int present; struct hda_verb ext_mic_present[] = { /* enable external mic
[PATCH 2/2] ALSA: hda - support OLPC XO-1.5 DC input
The XO's audio hardware is wired up to allow DC sensors (e.g. light sensors, thermistors, etc) to be plugged in through the microphone jack. Add sound mixer controls to allow this mode to be enabled and tweaked. Signed-off-by: Daniel Drake d...@laptop.org --- sound/pci/hda/patch_conexant.c | 213 +++- 1 files changed, 190 insertions(+), 23 deletions(-) diff --git a/sound/pci/hda/patch_conexant.c b/sound/pci/hda/patch_conexant.c index 9ad1219..ffc609e 100644 --- a/sound/pci/hda/patch_conexant.c +++ b/sound/pci/hda/patch_conexant.c @@ -117,6 +117,16 @@ struct conexant_spec { unsigned int recording; void (*capture_prepare)(struct hda_codec *codec); void (*capture_cleanup)(struct hda_codec *codec); + + /* OLPC XO-1.5 supports DC input mode (e.g. for use with analog sensors) +* through the microphone jack. +* When the user enables this through a mixer switch, both internal and +* external microphones are disabled. Gain is fixed at 0dB. In this mode, +* we also allow the bias to be configured through a separate mixer +* control. */ + unsigned int dc_enable; + unsigned int dc_input_bias; /* offset into cxt5066_olpc_dc_bias */ + unsigned int mic_boost; /* offset into cxt5066_analog_mic_boost */ }; static int conexant_playback_pcm_open(struct hda_pcm_stream *hinfo, @@ -1974,6 +1984,26 @@ static int cxt5066_hp_master_sw_put(struct snd_kcontrol *kcontrol, return 1; } +static const struct hda_input_mux cxt5066_olpc_dc_bias = { + .num_items = 3, + .items = { + { Off, PIN_IN }, + { 50%, PIN_VREF50 }, + { 80%, PIN_VREF80 }, + }, +}; + +static int cxt5066_set_olpc_dc_bias(struct hda_codec *codec) +{ + struct conexant_spec *spec = codec-spec; + /* Even though port F is the DC input, the bias is controlled on port B. +* we also leave that port as an active input (but unselected) in DC mode +* just in case that is necessary to make the bias setting take effect. */ + return snd_hda_codec_write_cache(codec, 0x1a, 0, + AC_VERB_SET_PIN_WIDGET_CONTROL, + cxt5066_olpc_dc_bias.items[spec-dc_input_bias].index); +} + /* OLPC defers mic widget control until when capture is started because the * microphone LED comes on as soon as these settings are put in place. if we * did this before recording, it would give the false indication that recording @@ -1984,6 +2014,27 @@ static void cxt5066_olpc_select_mic(struct hda_codec *codec) if (!spec-recording) return; + if (spec-dc_enable) { + /* in DC mode we ignore presence detection and just use the jack +* through our special DC port */ + const struct hda_verb enable_dc_mode[] = { + /* disble internal mic, port C */ + {0x1b, AC_VERB_SET_PIN_WIDGET_CONTROL, 0}, + + /* enable DC capture, port F */ + {0x1e, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_IN}, + {}, + }; + + snd_hda_sequence_write(codec, enable_dc_mode); + /* port B input disabled (and bias set) through the following call */ + cxt5066_set_olpc_dc_bias(codec); + return; + } + + /* disable DC (port F) */ + snd_hda_codec_write(codec, 0x1e, 0, AC_VERB_SET_PIN_WIDGET_CONTROL, 0); + /* external mic, port B */ snd_hda_codec_write(codec, 0x1a, 0, AC_VERB_SET_PIN_WIDGET_CONTROL, spec-ext_mic_present ? CXT5066_OLPC_EXT_MIC_BIAS : 0); @@ -1999,6 +2050,9 @@ static void cxt5066_olpc_automic(struct hda_codec *codec) struct conexant_spec *spec = codec-spec; unsigned int present; + if (spec-dc_enable) /* don't do presence detection in DC mode */ + return; + present = snd_hda_codec_read(codec, 0x1a, 0, AC_VERB_GET_PIN_SENSE, 0) 0x8000; if (present) @@ -2073,13 +2127,16 @@ static void cxt5066_hp_automute(struct hda_codec *codec) /* unsolicited event for jack sensing */ static void cxt5066_olpc_unsol_event(struct hda_codec *codec, unsigned int res) { + struct conexant_spec *spec = codec-spec; snd_printdd(CXT5066: unsol event %x (%x)\n, res, res 26); switch (res 26) { case CONEXANT_HP_EVENT: cxt5066_hp_automute(codec); break; case CONEXANT_MIC_EVENT: - cxt5066_olpc_automic(codec); + /* ignore mic events in DC mode; we're always using the jack */ + if (!spec-dc_enable) + cxt5066_olpc_automic(codec); break; } } @@ -2109,6 +2166,15 @@ static const struct hda_input_mux cxt5066_analog_mic_boost = { }, }; +static int
Re: Sugar window managing UI (was: Re: Android, OLPC, and native hosting)
On Wed, 2010-01-06 at 11:49 +0100, Sascha Silbe wrote: a) is harder as every window switch currently involves saving current state to the DS (which resides on an abysmally slow SD card in my case), usually done synchronously. It also generates log messages, right? In which case, a fix for http://dev.laptop.org/ticket/9924 would help significantly. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: olpc-os-builder [PATCH] add a Quick Start to README and reformat
On Tue, 2010-01-05 at 13:50 +1100, James Cameron wrote: Tested olpc-os-builder on Fedora 11, and documented the steps required to produce a build in a Quick Start section of the README. Thanks, but I'm not so sure about getting users to run make install since that will put things in /usr rather than /usr/local. It's possible to use olpc-os-builder without installing it, so the instructions could be modified that way, but it's probably best to wait for Fedora inclusion: https://bugzilla.redhat.com/show_bug.cgi?id=551411 in which case the instructions become a lot simpler. If that doesn't get completed this week, perhaps its something you could take over. cheers Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: olpc-os-builder [PATCH] add a Quick Start to README and reformat
On Wed, 2010-01-06 at 07:24 +1100, James Cameron wrote: On Tue, Jan 05, 2010 at 10:45:10AM +, Daniel Drake wrote: Thanks, but I'm not so sure about getting users to run make install since that will put things in /usr rather than /usr/local. make apparently does nothing, and the README at the time said to use the olpc-os-builder command, so a make install was implied. make is needed to compile the support binaries. The README was written in preparation for being installed as the fedora package, and is already used for that purpose at https://bugzilla.redhat.com/show_bug.cgi?id=551411 make install should really use /usr/local or DESTDIR. It already supports DESTDIR but olpc-os-builder itself doesnt support being run in installed mode in anything other than /usr (this could be fixed, but its probably not worth it. lets just focus on the Fedora efforts...) Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: [Sugar-devel] Ticket 8104
On Mon, 2009-12-28 at 09:46 +0100, Martin Langhoff wrote: - Daniel Drake (cc'd) suspects the bug has not been fixed upstream (the latest NM/dbus pairing seems to have similar issues). So a similar issue may exist in the F11 images. I don't know if he's filed a corresponding ticket on dev.laptop.org --- we should have it filed, and the two bugs should mention eachother... In #9750 I did testing and found that even though the bug still exists in the latest code, it seems near-impossible to trigger. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: possible progress on XO-1 camera issues
On Wed, 2009-12-23 at 14:28 -0300, César D. Rodas wrote: Hello Everybody, After hard debugging with Raul, we've realized that the problem was in the Geode driver. I've changed a line within the memory buffer, and it seems to work now. Looking forward to get feedback (please don't be evil, it's my first patch :-) http://oficina.paraguayeduca.org/~crodas/0045-Fixed-Out-of-memory-error-on-XO-1.patch Can you add an explanation? It doesn't look correct to me. Here's my understanding: The task of this function is to create a new offscreen memory allocation of a certain size. The function goes through the list of existing allocations, looking at each entry. It calculates how much free space there is inbetween one entry in the list, and the next one. If there is enough free space, the new allocation can be inserted at this point. Otherwise, we have to carry on iterating through the list. In that specific section of code, gap is computed, in 2 stages, to be the amount of bytes inbetween the list entry currently being examined and the next one. if (ptr-next == NULL) gap = pGeode-offscreenSize + pGeode-offscreenStart; else gap = ptr-next-offset; This is the first step. It is setting the gap variable to the absolute address where the next allocation starts. In the first branch, we have reached the end of the list, therefore our upper bound is the top of the offscreen memory. In the 2nd branch, there is a following member in the list, so our upper bound is the address of where that memory allocation starts. And the offset variable is always absolute, so this is the correct calculation for the upper bound. As the 2nd stage of the calclation, the lower bound is considered (the end of the allocation currently being examined) to produce a final value of gap that represents the number of bytes inbetween the 2 consecutive list entries: gap = gap - (ptr-offset + ptr-size); To me, everything looks correct before your patch. What am I missing? Thanks, Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: Testing OS64 on XO1.5
On Tue, 2009-12-22 at 12:05 +, Ahmed MANSOUR wrote: The network was working but after my upgrade to OS64, I can no longer get connected so it is more a software issue and not only releasted to B2 hardware. What type of network are you trying to connect to? What is the failure condition? (is there an error message?) Which version of the OS worked for you before? Are you 100% sure that the machine has not been into suspend before you try to connect to the network? Note that the screen is on as usual when the system is in suspend, and the machine immediately wakes up to keyboard and mouse activity -- it is not obvious that the suspend has actually taken place. Thanks, Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: XO-1.5 video rendering not always smooth
2009/12/20 Mikus Grinbergs mi...@bga.com: In the new snow-1.xo Activity, the falling white spots are noticeably jerkier in os64 (XO-1.5) than in os10 (XO-1). Also, on os64 the (software?) cursor sometimes flickers annoyingly. It is always noticeable in the google-chrome browser (on Sugar), and for instance in the new version of the cartoonbuilder-7.xo Activity. In contrast, the (hardware?) cursor in the Opera browser operates smoothly in os64 (on Sugar). Thanks for the report. The support for the (brand new) video hardware found in the XO-1.5 is still in teething stages -- this is why the performance is bad. We've got the appropriate tickets open but it will take us some time to get there. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: secure boot- Can't mount root filesystem. Was: Problem with dracut-modules-olpc-0.2.4
On Thu, 2009-12-17 at 11:40 -0200, Esteban Bordón wrote: Hi Daniel, I'm testing secure boot in F11-XO1 (os10). Something else to keep in mind if you are working on this... http://dev.laptop.org/ticket/9916 ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: secure boot- Can't mount root filesystem. Was: Problem with dracut-modules-olpc-0.2.4
On Thu, 2009-12-17 at 11:40 -0200, Esteban Bordón wrote: Hi Daniel, I'm testing secure boot in F11-XO1 (os10). When XO boots in secure boot the lease file doesn't read from USB key. I disabled the activation in dracut and I reinstalled dracut-olpc-modules and kernel and I signed them. You'll need the latest version of dracut-modules-olpc for activation to work. [8.281613] usb8xxx: Firmware does not seem to support PS mode [8.287666] usbcore: registered new interface driver usb8xxx mount: you must specify the filesystem type Can't mount root filesystem Boot has failed, sleepeng forever I'll need your help debugging/fixing this. At the moment my work time is fully occupied by XO-1.5 and I don't have any spare time to dedicate. My first suggestion would be to insert echo debug statements throughout the initramfs code so that you can understand what is going on. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: possible progress on XO-1 camera issues
On Thu, 2009-12-17 at 15:11 +, Peter Robinson wrote: And we'll see where we need to go from there. If the problem appears to be in the geode driver, one thing you might consider doing is going back to the version that was shipped in 8.2. After 8.2, a new release was made with various improvements and new functionality but this isn't the first time that I've suspected regressions caused from that work. Going back to the old version of the driver is not trivial -- it will likely require adapting the old code to the new X.org internal graphics drivers APIs -- but probably an easy job for any experienced programmer. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: New F11 for XO-1.5 build 62
On Mon, 2009-12-14 at 19:54 -0500, Chris Ball wrote: (Not sure why this build lost 3MB compared to the last one without any package changes -- we should diff the tarball to find out.) Uncompressed, os61.tree.tar has identical size to os62.tree.tar So this is just a LZMA compression thing, no actual increase in size. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
a trac milestone for F11-for-XO1 work
Hi, Just wanted to point out that there is a new 1.0-software-future milestone in trac. I encourage those of you who are working on F11-for-XO1 to use that to coordinate on the outstanding issues. The disclaimer is that if someone puts a ticket there which additionally applies to XO-1.5, we might move it to an XO-1.5 milestone. But if we do that, it's probably because we're going to fix it soon, so hopefully you won't complain :) Also, once we get the XO-1.5 initial software release finished, I plan to rework our build system, and I'll make it so that both XO-1 and XO-1.5 builds can be made from the same codebase. Thanks! Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: [support-gang] Problems with build 59
On Sat, 2009-12-12 at 23:43 -0800, Caryl Bigenho wrote: Hi... Downloaded Build 59 this evening and tried to flash the XO-1.5. It appeared to work perfectly, but could not complete restart at the end. The outline of the XO man appears and dots slowly begin to surround him, but it stalls about 2/3 of the way around the circle. How long did you wait? If you press ctrl+alt+mesh you will reach a text console, perhaps you could transcribe the lowest few lines of text at this point. Thanks, Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
updated olpc.fth for XO-1.5
Hi Richard, Sorry to turn around on this -- we no longer want the XO-1.5-specific kernel parameters in olpc.fth since we are now building them into the kernel. For future XO-1.5 bootfw releases please replace olpc.fth with the one included here This isn't critical - everything still works fine even if all the parameters are duplicated, but it's something we should clean up Thanks Daniel \ OLPC boot script [ifndef] do-firmware-update : do-firmware-update ( img$ -- ) \ Keep .error from printing an input sream position report \ which makes a buffer@address show up in the error message ['] noop to show-error visible tuck flash-buf swap move ( len ) ['] ?image-valid catch ?dup if( ) visible red-letters . Bad firmware image file - .error . Continuing with old firmware cr black-letters exit then true to file-loaded? d# 12,000 wait-until \ Wait for EC to notice the battery ['] ?enough-power catch ?dup if visible red-letters . Unsafe to update firmware now - .error . Continuing with old firmware cr black-letters exit then Updating firmware ?lease-debug-cr ec-indexed-io-off? if visible . Restarting to enable SPI FLASH writing. cr d# 3000 ms ec-ixio-reboot security-failure then \ Latch alternate? flag for next startup alternate? if [char] A h# 82 cmos! then reflash \ Should power-off and reboot show-x Reflash returned, unexpectedly .security-failure ; [then] [ifndef] ?ofw-reflash \ Check for new firmware. : ?ofw-reflash ( -- ) ${DN}${PN}\bootfw.zip expand$ ['] (boot-read) catch if 2drop exit then img$ firmware-up-to-date? if exit then img$ do-firmware-update ; [then] : set-path-macros ( -- ) button-o game-key? if \boot-alt else \boot then pn-buf place /chosen find-package if ( phandle ) bootpath rot get-package-property 0= if ( propval$ ) get-encoded-string ( bootpath$ ) [char] \ left-parse-string 2nip( dn$ ) dn-buf place( ) then then ; : olpc-fth-boot-me set-path-macros ?ofw-reflash console=ttyS0,115200 console=tty0 fbcon=font:SUN12x22 expand$ to boot-file ${DN}${PN}\vmlinuzexpand$ to boot-device ${DN}${PN}\initrd.img expand$ to ramdisk boot ; olpc-fth-boot-me ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
possible progress on XO-1 camera issues
Hi, Jon Corbet's been working on the XO-1.5 camera driver for us, and while doing so he found a V4L2 bug which is probably one of the reasons that we're having problems with XO-1 camera on all post-8.2 builds. The workaround is to build the sensor driver into the kernel, and the camera driver as a module. I've made the equivalent change for the kernel that has been built here: http://xs-dev.laptop.org/~dsd/repos/f11-xo1/kernel-2.6.31_xo1-20091211.1834.1.olpc.813348c.i586.rpm Untested, just wanted to get the word out. Note that you may have to load the camera driver (cafe_ccic) manually, if it doesn't automatically get loaded. Word is going round that on a SoaS build for XO (which uses something close to OLPC's 2.6.30 kernel, I think), someone recently managed to capture a photo from the command line. If someone is up for a small task, it would be good to start changing these words going round to some actual solid information. Anyone want to head up these efforts and to start http://wiki.laptop.org/go/Reviving_XO1_camera ? At the very least it would be nice to have some solid documentation on where the problem is (and isn't). Is it in ov7670, cafe_ccic, v4l2, gstreamer, xf86-video-geode, or..? How can you tell? Does the above kernel help? What's the exact command you can use on F12 SoasXO to take a photo? What's the corresponding error if you do that on F11? etc. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: RPM trees frozen for XO-1.5 software release
On Thu, 2009-12-10 at 10:54 +, Daniel Drake wrote: Hi, This probably only applies for a couple of days while we tie up development for our initial XO-1.5 software release: Sounds like it will apply for a bit longer. RPM trees are now frozen as of os56 contents - including public_rpms If you've fixed something important and you'd like a new/updated package included in the build, assign the relevant trac ticket to me with action add to build Let's use add to release instead as we did for 8.2 -- all RPMs should have already been through a test in build stage before being pushed for inclusion, where you take an existing build, manually install your RPM, and test. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
RPM trees frozen for XO-1.5 software release
Hi, This probably only applies for a couple of days while we tie up development for our initial XO-1.5 software release: RPM trees are now frozen as of os56 contents - including public_rpms If you've fixed something important and you'd like a new/updated package included in the build, assign the relevant trac ticket to me with action add to build If it's a fedora package, submit a f11 testing update and point me there. If it's not a fedora package, put it in your public_rpms and point me to that. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
runin runs X before it has been configured
Hi Richard, I just tried to do a factory-simulation of your runin code. It failed because during boot when it launched X, the screen went a funny and then everything froze. I think this is because your script is launching X before X has been configured. Ordinarily, X is configured by the olpc-configure init script (which also mounts /boot). Maybe we should consider moving the runin tests to run after olpc-configure. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: 1.5 - gnome-packagekit?
On Wed, 2009-12-09 at 14:54 +0100, Martin Langhoff wrote: On Tue, Dec 8, 2009 at 10:52 AM, Daniel Drake d...@laptop.org wrote: 2009/12/8 Reuben K. Caron reu...@laptop.org: -Should we include gnome-packagekit to provide such functionality? -Or would including it increase the complexities of managing deployments? One disadvantage of doing this is that it would harm the use of olpc-update -- pristine updates would fail. Would they fail? Yes, then olpc-update would fall back to dirty update. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: 1.5 - gnome-packagekit?
2009/12/8 Reuben K. Caron reu...@laptop.org: -Should we include gnome-packagekit to provide such functionality? -Or would including it increase the complexities of managing deployments? One disadvantage of doing this is that it would harm the use of olpc-update -- pristine updates would fail. And also the software would be silently lost when an olpc-update happens, which is now something we're automating in various places. I think it shouldn't be included in the build although it can remain an option for deployments to add it. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: Alternative to Create a new wireless network
2009/12/8 Reuben K. Caron reu...@laptop.org: -Create three faux Mesh Channel # icons in the Network view -When the child wants to join a mesh network they will select one of the networks -Upon selection: the XO will: 1. Scan to see if that ad-hoc network already exists and 2. if it does not exist the XO will create the network allowing other children to join it. Joining an ad-hoc network is the same process as creating one, so this is even easier than you think. The one pitfall of this idea, and I'm not sure how much of an issue this would be, is also the pitfall of ad-hoc networks...when the initiator of the ad-hoc network leaves the network fails. This isn't true - the network keeps on running. It's a good idea and is doable, although not for friday. You should put it in trac (and the SL one too). The only thing to keep in mind is that ad-hoc networks are going to be (by design) even less reliable than the mesh. So we need to be careful which usage scenarios we push it for. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: GSM/CDMA Modems support
2009/12/3 Hal Murray hmur...@megapathdsl.net: Thanks. I think that you also need a driver for the specific device you want to use. In this case that is CONFIG_USB_SERIAL_OPTION. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: XO 1.5 - CONTENTION WINDOW
On Wed, 2009-12-02 at 09:33 -0200, Franco Miceli wrote: What I was expecting was to have CWmax closer to 1024. What I think happens when you set CWmax to 31 is that -as you have more and more machines trying to compete for the medium- you could be having more colisions -since they would wait less time slots to tx and collisions would be more likely to happen. When you set CWmax to a higher value you prevent this situation. Of course this is for a higher number of machines using the medium. Could you directly reference the code that you are referring to, and the register documentation that you are looking at? Thanks, Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: XO 1.5 - CONTENTION WINDOW
On Wed, 2009-12-02 at 10:06 -0200, Franco Miceli wrote: Now, this are the four queues I've read, and they have the values: CWmax = 31 CWmin = 7 The eight registers that follow this ones have the exact same pattern (7 31 7 31). That's why I mentioned eight queues (but I might be wrong and those other queues could be backups of the first ones). Ok, and what about the documentation? Are you sure that a value of 31 actually means 31 slots? On other wireless hardware I have worked with, this was not the case. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: 3D acceleration
2009/11/28 Tiago Marques tiago...@gmail.com: Well... it seems VIA has people working on 3D support but no one seems to want to review the code... http://sourceforge.net/mailarchive/forum.php?thread_name=62692B81D079DA49BA9287A3CDF6B41C9FD818%40exchtp12.taipei.via.com.twforum_name=dri-devel I don't see any indication that this code is for VX855, neither that this has anything to do with 3D. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: 3D acceleration
On Sat, 2009-11-28 at 15:51 +, Tiago Marques wrote: It seems to be DRM code necessary to support 3D in the actual driver. Am I wrong? It looks like small fixes to a standard video playback acceleration path to me. The mails even talk about an MPEG application that prompted the patches. Also it seems to be a patch against the unichrome DRM driver, whereas a separate DRM driver is needed for the Chrome9 hardware on the VX855. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: sensors and bias
On Fri, 2009-11-27 at 09:10 +, Daniel Drake wrote: On Fri, 2009-11-27 at 01:38 -0500, John Watlington wrote: The bias for port B is used for port F (the DC input). Port F has no bias generator, and would have to use another port's, regardless of whether it was DC coupled or not. Ok, thanks for the info. Do you think changing the bias on port B would have an effect even while it is disabled as an input? (this is currently how its configured when DC mode has been selected) To be safe, I'll leave port B as an active input in DC mode, just not the chosen input source at the 0x17 selector. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: OFW RPM packaging
On Wed, 2009-11-25 at 15:36 -0500, Richard A. Smith wrote: The person who build/releases the firmware (me or mitch) would modify the spec files we have for the firmware and then build the rpm. Editing the spec file is manual but I have some scripts that automate making and releasing the rpms. OK, thanks for the info. Would you be able to start that process again? The resultant RPMs should go in your ~/public_rpms/f11-xo1.5 on dev.laptop.org. Thanks, Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: OFW RPM packaging
On Thu, 2009-11-26 at 08:40 +, Daniel Drake wrote: On Wed, 2009-11-25 at 15:36 -0500, Richard A. Smith wrote: The person who build/releases the firmware (me or mitch) would modify the spec files we have for the firmware and then build the rpm. Editing the spec file is manual but I have some scripts that automate making and releasing the rpms. OK, thanks for the info. Would you be able to start that process again? The resultant RPMs should go in your ~/public_rpms/f11-xo1.5 on dev.laptop.org. Here is a new olpc.fth you can use. It's like the one for XO-1, but the kernel params are updated for XO-1.5 and the stuff that tried to determine and pass root= has been removed. Daniel \ OLPC boot script [ifndef] do-firmware-update : do-firmware-update ( img$ -- ) \ Keep .error from printing an input sream position report \ which makes a buffer@address show up in the error message ['] noop to show-error visible tuck flash-buf swap move ( len ) ['] ?image-valid catch ?dup if( ) visible red-letters . Bad firmware image file - .error . Continuing with old firmware cr black-letters exit then true to file-loaded? d# 12,000 wait-until \ Wait for EC to notice the battery ['] ?enough-power catch ?dup if visible red-letters . Unsafe to update firmware now - .error . Continuing with old firmware cr black-letters exit then Updating firmware ?lease-debug-cr ec-indexed-io-off? if visible . Restarting to enable SPI FLASH writing. cr d# 3000 ms ec-ixio-reboot security-failure then \ Latch alternate? flag for next startup alternate? if [char] A h# 82 cmos! then reflash \ Should power-off and reboot show-x Reflash returned, unexpectedly .security-failure ; [then] [ifndef] ?ofw-reflash \ Check for new firmware. : ?ofw-reflash ( -- ) ${DN}${PN}\bootfw.zip expand$ ['] (boot-read) catch if 2drop exit then img$ firmware-up-to-date? if exit then img$ do-firmware-update ; [then] : set-path-macros ( -- ) button-o game-key? if \boot-alt else \boot then pn-buf place /chosen find-package if ( phandle ) bootpath rot get-package-property 0= if ( propval$ ) get-encoded-string ( bootpath$ ) [char] \ left-parse-string 2nip( dn$ ) dn-buf place( ) then then ; : olpc-fth-boot-me set-path-macros ?ofw-reflash console=ttyS0,115200 console=tty0 fbcon=font:SUN12x22 video=viafb:viafb_mode=1200x900,viafb_bpp=24,viafb_active_dev=LCD,viafb_lcd_panel_id=23 no_console_suspend reboot=acpi selinux=0 expand$ to boot-file ${DN}${PN}\vmlinuzexpand$ to boot-device ${DN}${PN}\initrd.img expand$ to ramdisk boot ; olpc-fth-boot-me ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
sensors and bias
Hi, On XO-1, we had an ALSA switch that enabled mic bias. This was used by measure when being put into resistance sensor mode. However, on XO-1.5, when Mitch Bradley suggested how to implement sensor mode, his advice was disable bias, enable the DC port and select it as input Also, our DC input port does not seem to have any bias options. http://dev.laptop.org/~dsd/20090713/codec0.txt It is NID 0x1e. The only nodes that have bias options are 0x1a and 0x1b (the analog microphone inputs). Not knowing much about this area, I'm confused. Is bias useful or not when dealing with sensors? Have we excluded the possibility to control it on XO-1.5? (The current XO-1.5 kernel has a switch to control DC Input Bias but this was an oversight, it doesn't do anything because NID 0x1e has no bias settings.) Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
OFW RPM packaging
Hi, How did RPM packaging of OpenFirmware work in previous OLPC OS release cycles? Who did it, and how? We need to restart this process for http://dev.laptop.org/ticket/9573 http://dev.laptop.org/ticket/9628 I'm happy to help out, but knowing what happened previously would be useful. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Recent olpc-utils fixes
Hi Martin, Thanks for looking at olpc-utils. 2 comments: olpc-configure: use /etc/olpc-configure/devkey.html as template if exists (dlo#9731) Just curious, why is a .tmp file used here? olpc-configure: separate upg from firstboot, trigger activity upg (#9747) To fix #9747 I was planning just to remove that code altogether and not pop up a dialog. It was added in anticipation of G1G1 but (IMO) was never useful even for those users. For deployment users its just confusing, and we aren't preparing this OS release for anyone else. Other things in that commit look a bit suspicious. I think it will reintroduce the problems with SSH files because update_home_permissions_to_v6 is run after set_home_permissions And this seems contradictory: + if [ -z $olpc_home_version ]; then + ### upgrades only Surely $olpc_home_version would be set on an upgrade? My vote would be to just remove the .sugar-update creation, which I was already planning to do (pending a quick run-by-Chris). As for the rest of your changes in this commit, could you explain exactly what you're trying to achieve? Thanks! Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: [Sugar-devel] GSM/CDMA Modems support (part II)
On Wed, 2009-11-25 at 09:36 -0500, Martin Abente wrote: Would a patch that extends the allowed connection types be accepted in the 0.84 branch (that will be shipped with F11) ? Depends on the patch, but in general one requirement I've been putting on patches for OLPCs 0.84 fork is that the patches must already be in sugar master. So this should be your first port of call... Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
olpc-update server selection
Hi Martin, Going back to recent olpc-update changes... The current logic of choosing which server(s) to query is not really suitable for places where the OATS server is not the school server, but there are school servers online too. In these situations there will be a responsive OATS server on the schoolserver, but the one we want them to contact is at a different address. With the current logic, the fact that the school server responds means that the other one is not try. I propose we change the logic to this: - If a server can be read from ANTITHEFT_SERVER_FILE then use it. (this file will not be shipped in our builds, but deployments can add it) - Otherwise default to http://schoolserver Then the out-of-the-box configuration will still talk to the school server, and deployments can override that by creating the ANTITHEFT_SERVER_FILE when necessary. antitheft.laptop.org drops out of the picture, but that is not used by any deployment, and if we did want to use it for providing updates info to any possible future G1G1 customers then we could just ship the relevant ANTITHEFT_SERVER_FILE in a G1G1 build. Thoughts? Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: olpc-update server selection
On Wed, 2009-11-25 at 17:09 +0100, Martin Langhoff wrote: Ummm. Reading the current code in query(), both in master and in 8.2-fixes, it will try the local XS and the configured OATS server -- in that order. If the request to the local XS errors out or returns an invalid response (non 200) it attempts the next one. So what happens with the default XS if it is contacted over OATS? The laptops are registered and so on, and leases may or may not be available through xs-activation-server, but no key material has been loaded on the XS and it cannot generate leases. As far as I can see it will return a valid response with basically no information, which will cause the current olpc-update code to not check the other URL. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: olpc-update server selection
Another approach that I think would work for everyone: Build the URL list with up to 3 URLs, in this order. 1. Value from ANTITHEFT_SERVER_FILE if it exists 2. schoolserver 3. antitheft.laptop.org Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: some os9 impressions
On Mon, 2009-11-23 at 20:16 -0500, Mikus Grinbergs wrote: I'm a Terminal user - and I had to install Terminal myself. Some other popular (my opinion) activities not included were: irc, maze, and tamtam_mini. Speak speaks; Record records audio. Yeah, activities.sugarlabs.org seems to be having some issues. A build I made yesterday had the same problem. But today it seems OK. All activities launched (that were included in the build image) - I did not actually test their operation. When I closed Implode, it had a 'keep' error. Pippy was still missing pippy -- somehow I managed to get Pippy into a state where after I exited, the Pippy launch screen reappeared, and kept pulsing *forever* (until I restarted Sugar). Let's keep an eye open for these in XO-1.5 builds too. I think all these bugs are present there as well. Thanks, Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Customization stick for XO-1.5
I wrote a dracut module that can produce an initramfs for a customization stick. It's based on Michael's code for the currently-available customization stick. Released in dracut-modules-olpc-0.3.0. Build instructions here: http://wiki.laptop.org/go/Customization_stick_development We should build and sign one of these before first XO-1.5 OS release. http://dev.laptop.org/ticket/9738 I can do the building nearer the time, someone else will have to sign it. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
updates.laptop.org now serves F11-for-XO1.5 builds
Hi, updates.laptop.org now serves F11-for-XO1.5 builds through olpc-update. However, olpc-update is a little broken in the latest OS release. So, once os45 is released (today) you will have to install it using the usual reflash methods. From that point, you can upgrade to os46 and onwards using e.g. olpc-update f11_xo1.5-46 It should work as well as olpc-update worked before. Please help test it. The first person who tries to sync to a specific OS version will cause the updates.laptop.org server to go out, download and unpack the build locally, before serving it to you. So don't panic if it doesn't start for a minute or 2. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: updates.laptop.org now serves F11-for-XO1.5 builds
2009/11/24 Mikus Grinbergs mi...@bga.com: updates.laptop.org now serves F11-for-XO1.5 builds through olpc-update Long ago I was able to run olpc-update using an USB stick as input. Does the current olpc-update still support that mode ? Yes, as long as you have a usb image in the right shape. We don't have those at the moment. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: slimming icon theme caches
On Mon, 2009-11-23 at 13:32 -0500, C. Scott Ananian wrote: Yeah, I still think they're unnecessary for a flash device. Is it important enough to be worth maintaining a fork? Depends on whether small updates via something like the update-system are still important. Thanks for your input. As before it can be done without a fork - the icon caches can be rebuilt by the build scripts late in the build. So I'll put it back in place. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
more on trac
Hi, Here are some changes to trac that I suggest. I know that this is still work in progress. 1. Retriage the 11 open tickets in 1.5-hardware-B and close that milestone. We've already gone into B-production. 2. We recently closed some old milestones like 8.2.0 but there are still many tickets open in them. Move all those open tickets to Not triaged. 3. Fix the dates on the 1.5 milestones. 4. Personally I find http://dev.laptop.org/1.5 a bit hard to use, so I have set up a bootmark which sets Group by component and max items = 500. If other people find this useful then perhaps another redirect would be handy. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: more on trac
On Fri, 2009-11-20 at 21:50 +1100, James Cameron wrote: 2. We recently closed some old milestones like 8.2.0 but there are still many tickets open in them. Move all those open tickets to Not triaged. I'm unsure about this one. If the problems can be reproduced on XO-1.5 with F11, yes. I'm not proposing we work on them or put them in a 1.5 milestone, or even look at them. I'm saying they should just be moved from a place where they are not lost. 4. Personally I find http://dev.laptop.org/1.5 a bit hard to use, so I have set up a bootmark which sets Group by component and max items = 500. If other people find this useful then perhaps another redirect would be handy. I'd like to see the redirects as HTML so we don't have to change Apache configuration. ;-) They could also be turned into trac reports. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: New F11 for XO-1.5 build 43
On Fri, 2009-11-20 at 09:49 +0100, Christoph Derndorfer wrote: I was wondering whether it was possible to upgrade the software on XO-1.5s without having to completely reflash the machine (which as I understand it is what fs-update does)? So basically I'd be looking for something similar to olpc-update. olpc-update seems to be working but there is no server available yet. For now you have to use fs-update. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: more on trac
One more: I think 1.5-software-future should be renamed to 1.5-future. We can't put a date on this milestone and I don't think theres a value of splitting our medium-term goals into hardware/software/firmware as we already do that with the component field. And I propose this description for the milestone: Important issues which we are not able to address for the initial XO-1.5 production release, but intend to fix in 2010. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: more on trac
On Fri, 2009-11-20 at 13:12 +0100, Martin Langhoff wrote: Yes, please. I am planning to open a '8.2.3' milestone with all the bugs using keyword 'ml8.2.3' currently. Maintenance of old releases is important for very large deployments. Great! What happened to 8.2.2? We actually already have a milestone for that, but it was closed the other day. Maybe we should just move the bugs out and reopen. (well, the moving of bugs would already happen according to my suggestions) Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: New F11 for XO-1.5 build 43
On Fri, 2009-11-20 at 15:54 +0100, Martin Langhoff wrote: Not sure whar Daniel means when he'ssaying we have no server. Maybe just that we're not running one :-) Yeah, that's what I mean. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
[PATCH] Input: psmouse - Fix a synaptics protocol detection mistake
For configurations where synaptics hardware is present but the synaptics extensions support is not compiled in, the mouse is reprobed and a new device is allocated on every suspend/resume. During probe, psmouse_switch_protocol() calls psmouse_extensions() with set_properties=1. This calls the dummy synaptics_init() which returns an error code, instructing us not to use the synaptics extensions. During resume, psmouse_reconnect() calls psmouse_extensions() with set_properties=0. This caused PSMOUSE_SYNAPTICS to be returned as the supported extensions, and as this is a different result from earlier it then causes psmouse_reconnect() to fail and a full reprobe happens. Fix this by tweaking the set_properties=0 codepath in psmouse_extensions() to be more careful about offering PSMOUSE_SYNAPTICS extensions. Signed-off-by: Daniel Drake d...@laptop.org --- drivers/input/mouse/psmouse-base.c |6 +- drivers/input/mouse/synaptics.c| 10 ++ drivers/input/mouse/synaptics.h|1 + 3 files changed, 16 insertions(+), 1 deletions(-) diff --git a/drivers/input/mouse/psmouse-base.c b/drivers/input/mouse/psmouse-base.c index b407b35..85f052a 100644 --- a/drivers/input/mouse/psmouse-base.c +++ b/drivers/input/mouse/psmouse-base.c @@ -610,8 +610,12 @@ static int psmouse_extensions(struct psmouse *psmouse, synaptics_hardware = 1; if (max_proto PSMOUSE_IMEX) { - if (!set_properties || synaptics_init(psmouse) == 0) + /* be careful to only offer the synaptics protocol for use when +* the support is available */ + if (synaptics_supported() + (!set_properties || synaptics_init(psmouse) == 0)) return PSMOUSE_SYNAPTICS; + /* * Some Synaptics touchpads can emulate extended protocols (like IMPS/2). * Unfortunately Logitech/Genius probes confuse some firmware versions so diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c index c65e245..e0ed951 100644 --- a/drivers/input/mouse/synaptics.c +++ b/drivers/input/mouse/synaptics.c @@ -738,6 +738,11 @@ int synaptics_init(struct psmouse *psmouse) return -1; } +int synaptics_supported(void) +{ + return 1; +} + #else /* CONFIG_MOUSE_PS2_SYNAPTICS */ int synaptics_init(struct psmouse *psmouse) @@ -745,5 +750,10 @@ int synaptics_init(struct psmouse *psmouse) return -ENOSYS; } +int synaptics_supported(void) +{ + return 0; +} + #endif /* CONFIG_MOUSE_PS2_SYNAPTICS */ diff --git a/drivers/input/mouse/synaptics.h b/drivers/input/mouse/synaptics.h index 3023821..f85e644 100644 --- a/drivers/input/mouse/synaptics.h +++ b/drivers/input/mouse/synaptics.h @@ -108,5 +108,6 @@ struct synaptics_data { int synaptics_detect(struct psmouse *psmouse, int set_properties); int synaptics_init(struct psmouse *psmouse); void synaptics_reset(struct psmouse *psmouse); +int synaptics_supported(void); #endif /* _SYNAPTICS_H */ -- 1.6.2.5 ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: image-builder updates...
On Thu, 2009-11-19 at 14:14 +0100, Martin Langhoff wrote: - build.py: now adds a custom identifier (pass --buildid) to olpc_build, and stores logs of the customisation and a copy of the customisation script in /var/log/olpc_build /var/log is not accessible on a booted XO (a tmpfs is mounted on top) Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: image-builder updates...
On Thu, 2009-11-19 at 14:14 +0100, Martin Langhoff wrote: - build.py now passes the full path of the internal root to the customization script, so you no longer need to hardcode /pristine/802 everywhere. - build.py: now adds a custom identifier (pass --buildid) to olpc_build, and stores logs of the customisation and a copy of the customisation script in /var/log/olpc_build These 2 modifications will break pristine updates because you do them after regenerating the contents file. Also, updates will be made a bit bigger than usual with this script as the OLPC_EPOCH considerations from pilgrim/fedora-xo are not being applied. And there are probably some other considerations that need to be applied that are not immediately springing to mind. I think we need to add some warning notices about the use of this functionality. At least personally I'm uncomfortable about using any of it (beyond the activities/content customization) in any future scenario because of things like this. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: Problem with dracut-modules-olpc-0.2.4
On Thu, 2009-11-19 at 13:17 -0200, Esteban Bordón wrote: great! With the new version of dracut-modules-olpc (0.2.8) works fine, but XO boot only if I hold down the ckeck button ('✓') What happens if you don't hold it down? Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: Problem with dracut-modules-olpc-0.2.4
On Thu, 2009-11-19 at 14:06 -0200, Esteban Bordón wrote: Screen shows the first point arround X and get stuck The icon in the center of the screen, is it an XO, or is it the O with only half the X (sort of like an arrow pointing downwards)? Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: Problem with dracut-modules-olpc-0.2.4
On Wed, 2009-11-18 at 10:42 -0200, Esteban Bordón wrote: Hi, I have a problem with dracut-modules-olpc-0.2.4, I generated the file initrd-20091109... , I did an upgrade of kernel and I signed the files (initrd-20091109... and vmlinuz-20091109). If I try secure boot the firmware check the signatures and doesn't boot... I guess the firmware does not give way to the os, but I haven't any log of that. What's on the screen when it fails? How are you building your image? Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: Problem with dracut-modules-olpc-0.2.4
On Wed, 2009-11-18 at 11:12 -0200, Esteban Bordón wrote: The last messages that screen show is Trying nand:\boot\actrd.zip RD found -Signature valid then get stuck... I suspect you are either hitting #9100 or that there is something wrong in the way that you are generating the initramfs. It would be worth trying it in unsecure boot mode to at least rule out one factor. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: /boot/olpc_build - who reads it on our F9 builds?
On Wed, 2009-11-18 at 17:52 +0100, Martin Langhoff wrote: Exactly as stated. If a local team builds a slightly customised version, is it safe sane to write 802+nic001 in there? It's read from sugar, olpc-pwr-log, etc. Yes you can write anything there. For example the joyride builds would say joyride 1234 Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: XO-1.5 slow disk writes
On Tue, 2009-11-17 at 18:56 +0100, Sean DALY wrote: as a former audio engineer, I was surprised recently to see a unit like the Samson R16 for sale: http://www.samsontech.com/products/productpage.cfm?prodID=2009 which uses an SD Card as its main memory. 8 track linear PCM audio record, 16 track playback. Of course, it's a case of several large files not lots of little ones... but it struck me that there must be some kind of SD r/w optimization in a unit like that. Another possibility is that SD cards might generally work a lot better than miniSD ones. At least I have a Sandisk SD card here that considerably outperforms the Sandisk miniSD card in my XO-1.5. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: Mounting jffs2 images on F11 / kernel 2.6.31?
On Tue, 2009-11-17 at 19:11 +0100, Martin Langhoff wrote: Has this been seen before? Background: Turns out that using block2mtd, a loop device and some elbow grease, it is reasonably easy to mount jffs2 images on a normal linux host. (This is helping me simplify image-builder...) I saw this before while working with block2mtd on another project and was basically told not to use it. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: OS40 feedback
On Sun, 2009-11-15 at 22:48 -0500, Richard A. Smith wrote: I tried. It crashed on me when I both upgraded to Q3A16 and to OS40 at the same time. USB keyboard worked fine. The battery tricked made everything work fine again. So are either of you able to duplicate the the loss of keyboard or just sometimes? It appears to be associated with an upgrade? I just reproduced this by a fresh reflash of os39 on q3a15i. Stuck on the sugar name screen. However, without doing anything, the keyboard and mouse started working after about 20 seconds. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: [Sugar-devel] Rationale behind the JSON - CJSON switch in Sugar codebase?
On Fri, 2009-11-13 at 10:14 +0100, Martin Langhoff wrote: On Thu, Nov 12, 2009 at 4:40 PM, Tomeu Vizoso to...@sugarlabs.org wrote: Right now just using the json module in python 2.6 may be best as the parser is a C module (AFAIR). Is because of a bug in cjson why those files aren't being parsed? Re-reading this -- and given that yes, it's a bug in the cjson parser -- probably a revert is the sanest thing to do. It would be worth a quick look at fixing cjson yourself. And if that fails, we could report upstream and give them a couple of days to fix it, before moving forward with other options. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: OLPC developers in Tampa FL area?
On Fri, 2009-11-13 at 04:37 -0500, Justin Petro wrote: Thank you for finding this link... However, it indicates on that page that it can only be used if the lcd/backlight powers up. Mine sounds more like symptom 1. can that method be done blind (without a display)? or does it only work in cases where you can see the screen, and get an actual error message? You can't do it blind. The firmware crashes too early. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: [Sugar-devel] Rationale behind the JSON - CJSON switch in Sugar codebase?
On Fri, 2009-11-13 at 10:53 +0100, Martin Langhoff wrote: After a few tries, I did find that the same problem was reported in Debian, a patch proposed, and upstream rejected it: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=534709 As Tomeu mentions, Python 2.6 reduces the cjson/json performance advantage. OK, didn't see this. Yes, using python standard library seems like the way to go. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: [Sugar-devel] Rationale behind the JSON - CJSON switch in Sugar codebase?
On Fri, 2009-11-13 at 11:50 +0100, Tomeu Vizoso wrote: For past stable releases, deployers are the ones who should know best. If you are talking about 0.82, then we should go back to use simplejson. If this is 0.84 on F11, then we can use what python 2.6 provides. 0.82 doesn't have this bug - we're talking about an 0.84 regression introduced by the post-0.82 switch to cjson, right? If I'm going to maintain 0.84 further then the a requirement for anything included should be that it is already included in git master. So I'd still like your input on this, please, since we also want to fix in current/future releases :) Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: yum has problem with F11 repositories
On Thu, 2009-11-12 at 23:43 -0500, Mikus Grinbergs wrote: Both yesterday and today, I'm getting an error message about filelists.xml.gz on http://xs-dev.laptop.org/~dsd/repos/, from both the f11 and f11-xo1 repositories: [Errno -1] Metadata file does not match checksum Can't reproduce here. This is probably caused by a web cache inbetween you and xs-dev.laptop.org caching the metadata file but not the checksums file. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: versioned fs and /boot minor issues
On Tue, 2009-11-10 at 09:11 +, Daniel Drake wrote: Hi, I implemented the partitioned /boot layout based on the wiki notes and the end result is as follows: Code here: http://dev.laptop.org/git/projects/bitfrost/tree/bitfrost/update/setup.py frob_symlink_partitioned: http://dev.laptop.org/git/users/dsd/dracut-modules-olpc/tree/30olpc-boot/olpc-boot-prepivot.sh ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
manual SD OS install not working / hal crashing on boot
Hi Richard, I think I remember you talking about this exact problem on IRC a while back. Or maybe it was someone else. Either way, for the record: I installed os39 on a SD card by creating 2 partitions (ext2 32mb, ext3 ~3.5gb). I extracted the os39 tree tarball onto the big partition then manually copied over the files from /versions/pristine/39/boot to the ext2 partition, creating the layout described here http://wiki.laptop.org/go/Early_boot The commands I used for extracting the tarball were: cd mountpoint lzcat ../os39.tree.tar.lzma | tar -xp I then modified olpc.fth to use mmcblk1p2 to boot (#9457) I booted, and keyboard/mouse did not work in X. Not even with a USB keyboard. Serial console was OK. This was because HAL was failing to start on boot, so X couldn't figure out any information about input devices. HAL was failing to start due to bad permissions on /var/cache/hald (hal runs as the haldaemon user, not root). Why were these permissions bad? Simply because on my main linux system where I extracted the tarball, the haldaemon user has a different ID. So, on the XO-1.5, a non-existent user was the owner of this directory. The solution? Should have used this command to extract: lzcat ../os39.tree.tar.lzma | tar -xp --numeric-owner solution untested, but this explains it. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: Newer sugar package?
On Tue, 2009-11-10 at 18:41 +0100, Martin Langhoff wrote: The Sugar rpm on our F11 images is 0.84.5 (and updates/updates-testing doesn't seem to carry anything newer). SL has in the interim released 0.84.6 with some bugfixes and translation. Additionally there are several unreleased bugfixen on the 0.84 branch after that release. One at least is affecting us (SL#1098). Are there plans from the Fedora side to include a newer sugar from the 0.84 series? Is this something we're looking at packaging? I'll do a 0.84.7 tomorrow and push to F11. Thanks for your help with these issues! Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
[PATCH] ALSA: hda - Tweak OLPC XO-1.5 microphone bias
Our contacts at Conexant suggested that we reduce the external microphone bias to 50% in order to center the input signal with the DC input range of the codec. This is because the microphone port is DC coupled for potential use with sensors. Signed-off-by: Daniel Drake d...@laptop.org --- sound/pci/hda/patch_conexant.c | 15 --- 1 files changed, 12 insertions(+), 3 deletions(-) diff --git a/sound/pci/hda/patch_conexant.c b/sound/pci/hda/patch_conexant.c index 5d3a25d..ace8898 100644 --- a/sound/pci/hda/patch_conexant.c +++ b/sound/pci/hda/patch_conexant.c @@ -110,6 +110,7 @@ struct conexant_spec { unsigned int dell_automute; unsigned int port_d_mode; + unsigned char ext_mic_bias; }; static int conexant_playback_pcm_open(struct hda_pcm_stream *hinfo, @@ -1917,6 +1918,11 @@ static hda_nid_t cxt5066_adc_nids[3] = { 0x14, 0x15, 0x16 }; static hda_nid_t cxt5066_capsrc_nids[1] = { 0x17 }; #define CXT5066_SPDIF_OUT 0x21 +/* OLPC's microphone port is DC coupled for use with external sensors, + * therefore we use a 50% mic bias in order to center the input signal with + * the DC input range of the codec. */ +#define CXT5066_OLPC_EXT_MIC_BIAS PIN_VREF50 + static struct hda_channel_mode cxt5066_modes[1] = { { 2, NULL }, }; @@ -1970,9 +1976,10 @@ static int cxt5066_hp_master_sw_put(struct snd_kcontrol *kcontrol, /* toggle input of built-in and mic jack appropriately */ static void cxt5066_automic(struct hda_codec *codec) { - static struct hda_verb ext_mic_present[] = { + struct conexant_spec *spec = codec-spec; + struct hda_verb ext_mic_present[] = { /* enable external mic, port B */ - {0x1a, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_VREF80}, + {0x1a, AC_VERB_SET_PIN_WIDGET_CONTROL, spec-ext_mic_bias}, /* switch to external mic input */ {0x17, AC_VERB_SET_CONNECT_SEL, 0}, @@ -2225,7 +2232,7 @@ static struct hda_verb cxt5066_init_verbs_olpc[] = { {0x19, AC_VERB_SET_CONNECT_SEL, 0x00}, /* DAC1 */ /* Port B: external microphone */ - {0x1a, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_VREF80}, + {0x1a, AC_VERB_SET_PIN_WIDGET_CONTROL, CXT5066_OLPC_EXT_MIC_BIAS}, /* Port C: internal microphone */ {0x1b, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_VREF80}, @@ -2343,6 +2350,7 @@ static int patch_cxt5066(struct hda_codec *codec) spec-input_mux = cxt5066_capture_source; spec-port_d_mode = PIN_HP; + spec-ext_mic_bias = PIN_VREF80; spec-num_init_verbs = 1; spec-init_verbs[0] = cxt5066_init_verbs; @@ -2374,6 +2382,7 @@ static int patch_cxt5066(struct hda_codec *codec) spec-mixers[spec-num_mixers++] = cxt5066_mixer_master_olpc; spec-mixers[spec-num_mixers++] = cxt5066_mixers; spec-port_d_mode = 0; + spec-ext_mic_bias = CXT5066_OLPC_EXT_MIC_BIAS; /* no S/PDIF out */ spec-multiout.dig_out_nid = 0; -- 1.6.2.5 ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Fedora 12 build for XO-1.5
I built a F12 image based off our F11 distro in order to help diagnose one of our video problems. Here it is incase it's useful for any other efforts: http://dev.laptop.org/~dsd/f12-xo1.5/ ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
versioned partitioned upgrading: safety boot configuration
Hi Michael, I'm working on updating olpc-update and the initramfs to be able to work with a partitioned layout where /boot is separate from the rest of the system. Thanks for the good documentation at http://wiki.laptop.org/go/Early_boot This means I will probably be troubling you with a few questions :) First one, I'm implementing the Create a safety boot configuration bit. I guess the purpose of this is to ensure that the current running OS is marked as current, and to free up the other OS image (so that it can be deleted soon after to make space for the incoming update). So onto the bit I have to add: (If partitioned: Make /boot/alt point to ../$a.) I don't understand this part. Surely the instructions for /boot would be equivalent to what was done above, i.e. on the boot partition: 1. make sure that /boot points at boot-versions/$a 2. remove /boot/alt Or have I just answered my own question through writing this mail? Step 1 is deemed unnecessary (we can assume that it's already pointing to the right place), and your instructions are simply making the alternate boot configuration point to exactly the same one that is booted (hence there is no longer an alternative) Thanks, Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
versioned partitioned upgrading: clean up / config creation
Hi Michael, Last question for now: http://wiki.laptop.org/go/Early_boot#Clean_Up This part of the page seems to suggest that you only create a /versions/configs entry for systems where an unpartitioned layout is being used, and no config would be created for a partitioned layout. Am I reading that right? I'm having a bit of trouble getting my head around the whole system and perhaps I'm missing something obvious .. Perhaps you designed it so that boot configs in /versions/configs are not necessary when we are booting from a partitioned system, because the current and alt image hashes can be deduced from the symlinks on the boot partition at /boot and /boot/alt ? Thanks, Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: [Server-devel] xs-activation and OS update info
2009/11/4 Martin Langhoff martin.langh...@gmail.com: Hi Daniel, Working on unrelated code, I found that the iniparse module, which we ship on our F9 and F11 OSs, knows the ordering of the sections. Cool, indeed, their site makes it pretty clear that preserving order is a feature. Daniel ___ Server-devel mailing list server-de...@lists.laptop.org http://lists.laptop.org/listinfo/server-devel
Re: crond disabled?
2009/11/4 Hal Murray hmur...@megapathdsl.net: Do we really want to be running something like update which (I assume) takes significant resources without consulting with the user? Yes! Remember, these are not designed as normal laptops. They are for young children and for use in schools. The only time to do updates is when the child is at school, connected to the school server, and if updates are not fully automatic then they simply will not happen. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
public_rpms system for F11 builds
Hi, I've revived the old public_rpms system for the new F11 builds. For anyone that doesn't know, this is a way of making custom RPMs available for OLPC OS builds. Normally, RPMs come from regular Fedora repositories, but this system allows us to throw in RPMs from other sources. We aim to keep our delta from Fedora as small as possible, so this system should only ever see light use. Please question yourself thoroughly before adding a package to this system... (examples of what we put here: important OLPC-specific packages which can't be included in Fedora, OLPC's fork of the unmaintained Sugar-0.84, the OLPC kernel) There are 3 repos: 1. f11 - RPMs to be available to both F11-for-XO1 and F11-for-1.5 builds 2. f11-xo1.5 - RPMs for the XO-1.5 build (not for XO-1) 3. f11-xo1 - RPMs for the XO-1 build (not for XO-1.5) Any dev.laptop.org user can use this -- simply put RPM packages in ~/public_rpms/reponame e.g. I would put things in /home/dsd/public_rpms/f11 The f11-xo1 and f11-xo1.5 repos should only be used sparingly, since we want to be sharing as much as possible between the 2 builds. (the only reason for creating these 2 is because each XO HW version needs a different kernel) They are collected and turned into a single flat repository every 30 minutes here: http://xs-dev.laptop.org/~dsd/repos/ Packages you put here won't be *included* in the build unless they are listed in the fedora-xo build scripts (or unless they are a dependency of something listed there). What I'll be working on next: 1. I'll make the kernel autobuild scripts put the kernel packages here 2. I'll make it so that if you put a package here, this package will be automatically excluded from the F11 repositories during the OS build so that the F11 packages won't kick out the OLPC ones when version numbers get higher. 3. I'll work on making sure that the yum configuration (these repos and excludes) present on the system at the end of the build exactly matches the one used during the build. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: wlan interface (was: first play with new XO 1.5 machines)
2009/10/26 Albert Cahalan acaha...@gmail.com: The issue is that A and B are both hosting their own networks, they are both beacon masters, spewing beacons based off their own clocks. How is this any different than the mesh situation? Exactly how the XO-1 mesh functions on this level is frustratingly unknown, but when I did a couple of simple observations once before, the clocks appear to synchronize with the neighbours. Which clock? Do you mean one for the individual bits, or one for packet-level time division? I mean the clock in the 802.11 MAC sublayer. This defines the basis of the timing synchronization function (TSF) which is a core part of 802.11. Without synchronized clocks, nodes cannot communicate. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: [Server-devel] xs-activation and OS update info
2009/10/27 Martin Langhoff martin.langh...@gmail.com: Right... makes sense. I am a bit intrigued with the custom config file parser / writer (that is 3x the sloc of the whole xs-activation ;-) ). It's not really a custom config file parser. It's a trivial change to Python's own ConfigParser class. The only change is in the constructor IIRC, which now lets you use a custom dictionary type. I am guessing the key motivator is that YAML, JSON and other config formats won't preserve ordering correctly, right? I didn't feel that JSON is appropriate for a config file, especially so in oatslite (which allows more per-OS configuration). I don't know anything about YAML. - is MyConfigParser used anywhere else? I don't understand this question. My patch only adds it for xs-activation purposes. - odict is only needed on F9, correct? It is needed up until Python 3.0, unless you know of a python ordered dictionary class which is shipped with your distro-of-choice. (I don't know of any, meaning that it will still be needed even with F12) It's a bit ugly with these 2 classes but at least their importance is trivial to explain and they can sit independently, and we have a path for getting rid of them (Python 3.0). What is needed in terms of config parsing is pretty simple -- I suspect there are a couple of simple ways we could avoid depending on the ordering of the config file, with less code. Alternative implementations/suggestions welcome :) In my opinion the ordering is the main purpose of having to use a config file here. Daniel ___ Server-devel mailing list Server-devel@lists.laptop.org http://lists.laptop.org/listinfo/server-devel
Re: [Server-devel] xs-activation and OS update info
2009/10/30 Martin Langhoff martin.langh...@gmail.com: It is about avoiding maintaining a bespoke lib. If you say it is a variant on a python standard lib, do you think we can subclass it? Or is there a reason not to? Yeah it can probably be subclassed. It is needed up until Python 3.0, unless you know of a python ordered I saw a commend mentioning that something wouldn't be needed w 2.6. On F11 we have 2.6... but maybe I misunderstood. Ah yes, I forgot the specifics. odict is needed until Python 3.0, but Python 2.6 adds the dict_type constructor parameter for ConfigParser so MyConfigParser is not needed with python 2.6. Daniel ___ Server-devel mailing list Server-devel@lists.laptop.org http://lists.laptop.org/listinfo/server-devel
Re: [Server-devel] PolicyKit dependency chain for headless machines
2009/10/23 Martin Langhoff martin.langh...@gmail.com: Working on the OLPC XS rebase to F11 -- I end up with random bits of gnome and kde, brought in by PolicyKit, which wants a PolicyKit-authentication-agent. Yum only seems to know of KDE and Gnome authentication-agents. How does PK handle users logging in in a VT? What is the authentication agent there? The authentication agent is used only when a specific application requests an operation which the local authority has marked as requiring authorization. It is not used when logging in. I don't know of any command line applications that make policykit requests, and I don't know of any commandline authentication agents. Daniel ___ Server-devel mailing list Server-devel@lists.laptop.org http://lists.laptop.org/listinfo/server-devel
[Server-devel] minor xs-activation-httphandler bug
xs-activation-httphandler.py does: lease = myoat.get_lease(sn, 300) if lease is not None: myoat.mark_served_lease(sn) resp[lease] = lease However, get_lease doesn't look like it will ever return None. Instead, it returns False if there is no lease. So we get a response with lease:false and the lease is marked as served for that SN. Daniel ___ Server-devel mailing list Server-devel@lists.laptop.org http://lists.laptop.org/listinfo/server-devel
Re: [Server-devel] Nepal XS customizations
2009/10/23 Martin Langhoff martin.langh...@gmail.com: - a script to simplify eth0 configuration How does that work? http://hg.olenepal.org/NEXS_scripts/file/tip/netsetup.sh Notes on self test: - 32 tests performed, to check that: hostname has been set, both ethernet interfaces present, all the regular XS services running How does that work? Without the Nepal specific bits, that might be a nice addition to the XS... A bash test wrapper and a series of tests: http://hg.olenepal.org/NEXS_scripts/file/tip/tests - a clone of http://en.wiktionary.org - an English definition dictionary - a clone of www.nepalisabdakos.com - a Nepali definition dictionary How do you mirror those? Sabdakos: our personal contacts with the site sent us their db and source Wiktionary: blog entry coming up whenever I have time, there were a few challenges... Daniel ___ Server-devel mailing list Server-devel@lists.laptop.org http://lists.laptop.org/listinfo/server-devel
Re: [Testing] first play with new XO 1.5 machines
2009/10/22 Martin Langhoff martin.langh...@gmail.com: On Thu, Oct 22, 2009 at 4:03 AM, Daniel Drake d...@laptop.org wrote: We already discussed this a lot in another thread. It should not be automatic. The thread is titled [Sugar-devel] [Design] Ad-hoc networks - New Icons Yep -- I did read that thread, way back. In ad-hoc, there is just one beacon master. Due to cheap radios and interference etc, the beacon master will switch around frequently So there is a scheme for beacon master-y to switch around? If it works in practice -- that actually may do the right thing. It rarely does. Ad-hoc is based on the concept shout unless you hear someone else shouting. In reality it just ends up with a lot of shouting. 2. This kind of situation will happen frequently: A - B - C B can see both users A and C on his network view. A can only see B, and C can only see B. B shares an activity. Both A and C join. However, anything done by A cannot be seen by C and vice-versa, because they are too far apart. Ok, but if they are close enough it will work. The question is: if we tell all our nodes to use the same ESSID (or a set of 3 ESSIDs, one per freq), will independently created networks join and split reasonably well? No - ad-hoc is so simple that there is nothing in the design to make this happen. It could happen by coincidence though, if circumstances were to arise such that B were to become beacon master. This would only happen if the existing beacon master dropped out for a while *and* if B has a faster clock than the other remaining node. But then, a few minutes later, consider B becoming the beacon master, C hosting a shared activity with a new node D, which cannot see B. Same problem, and no coincidental solution other than everyone moving into good radio range of each another. If we wanted the unreliable mesh instead of the unreliable ad-hoc... On F11-XO-1.5 we are lacking - 802.11s driver/firmware (which could be sub'd by open80211s) - NM support (does it play ball w open80211s?) - Sugar support. For F-11 on XO-1 - NM support - Sugar support Would that be correct? Yes. The XO-1 stuff is pretty much done - Sugar patches are available, and the NM support is in NM-0.8 and scheduled to be included in NM-0.7 after the next release. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: [Testing] first play with new XO 1.5 machines
2009/10/22 Daniel Drake d...@laptop.org: Ok, but if they are close enough it will work. The question is: if we tell all our nodes to use the same ESSID (or a set of 3 ESSIDs, one per freq), will independently created networks join and split reasonably well? No - ad-hoc is so simple that there is nothing in the design to make this happen. It could happen by coincidence though, if circumstances were to arise such that B were to become beacon master. This would only happen if the existing beacon master dropped out for a while *and* if B has a faster clock than the other remaining node. But then, a few minutes later, consider B becoming the beacon master, C hosting a shared activity with a new node D, which cannot see B. Same problem, and no coincidental solution other than everyone moving into good radio range of each another. Oops, I misread the part of the mail you were responding too. Ignore my example :) But my point still remains - networks will split undesirably, there will be some joins too but you can't control them and they will be unlikely to be as desired. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: [Testing] first play with new XO 1.5 machines
2009/10/22 Martin Langhoff martin.langh...@gmail.com: That's my guess too. But the hard-to-answer question is how much more reliable? So we can answer is it worth the big effort? I think both the beaconing and the forwarding will have a big effect on the reliability of the network, but it still won't bring us to any degree of reliability. So, I don't think it's worth the effort. Not that we seem to have any resources to do this anyway - or are you volunteering? :) Plus for most of the time when the laptops are used in environments where they are in a position to network with others, the children are at school using infrastructure networks. IME, successful uses of under-a-tree are not using multi-hop -- at least not to any advantage. Why do you say 1-hop mesh would break significantly? For under a tree, it wouldn't. But in this scenario I feel like our only option is either mesh as we have it, or manually created ad-hoc. In every other scenario, it would fail quite badly, but I know that deployments and kids would try to use it. I think an automatically created global ad-hoc network would send the wrong message, and that conceptually it should be something that the UI communicates as a throwaway network. The other thing to note is that creating an ad-hoc network from sugar is *really* easy. Try it. You don't even have to name the network. I know that I'm usually advocating for making things require less than 1 click, but in this case I don't see a technically feasible option to do better, and the unreliable nature of the created network fits nicely with the concept of having to create it from the UI every time. One of the biggest headaches we have to deal with, even when we have infrastructure networks, is the bug where every XO has a different set of neighbours on the neighbourhood view. That is true from a user PoV, but in practice it lives higher in the stack -- Salut and Telepathy in general is where the issue lies. We still have bugs there that are hard to fix. Not in the case of networks like ad-hoc though - it will become a direct result of the network type, and nothing that can be fixed higher in the stack. Your connection to a network and your ability to see a certain neighbour will mean nothing in terms of the set of other neighbours you can see. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
tap-to-click feedback
Just wanted to communicate an experience from the deployment here: A while back, we (OLPC + community) discussed the behaviour of the new XO touchpads which have tap-to-click on by default. We debated including the fairly large software changes to be able to disable this functionality with the interest of retaining the behaviour of the old touchpad. We decided against it and shipped software with tap-to-click enabled, in hope that it wouldn't cause problems and users would adjust. Well, in my 3-4 months here in Nepal I've heard repeated cries for disabling this, since it is causing confusion for children and teachers in the schools. Really I think the biggest issue is that they press it by accident while typing or making other motions and have no idea why the screen has changed significantly (they don't understand that it's because they clicked, or that their hand was near the pad). Do other deployments share the same experience? Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: tap-to-click feedback
2009/10/22 Chris Ball c...@laptop.org: I might be wrong, but I think we just need the X driver -- yum install xorg-x11-drv-synaptics. Xorg drivers are generally not layered on top of kernel drivers, outside of the case of DRI. Didn't work for me: http://www.mail-archive.com/devel@lists.laptop.org/msg20268.html I think Paul is right but I have not confirmed. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
[Server-devel] Nepal XS customizations
Here are the customizations we're making on top of XS-0.6 here in Nepal. This version will start being distributed to the field on Monday. Kickstart file modifications: - no GUI, just use text mode - auto reboot at the end of installation - no interactivity during installation - timezone and root password hardcoded - packages added: dansguardian, dependencies for nepal's E-library system (www.pustakalaya.org) e.g. mysql, some php modules, ImageMagick, java - added a nepal-specific nexs-custom customization package, and a script from that package to run on firstboot (details below) - nepal-specific XS build number written to /etc/motd and /etc/issue Build scripts including the customization file can be found at http://hg.olenepal.org/NEXS-image-builder/ The customizations from nexs-custom: - udev rules to make sure that onboard LAN is eth1, and USB ethernet adapter (for WAN) is eth0 - apache configs to set up aliases for our various content components and E-library - mysql config file to enable storage in /library and 1-file-per-table innodb setting - a script to simplify eth0 configuration - a self test system (details below) - various usbmount scripts to enable automatic content installation from USB The firstboot script from nexs-custom: - configure and enable dansguardian - setup admin user account, with a predetermined SSH public key and password - configure and enable mysql - enable moodle admin account and set a predetermined password - beep and print some instructions to the screen Notes on self test: - 32 tests performed, to check that: hostname has been set, both ethernet interfaces present, all the regular XS services running, Nepal content has been installed - it runs on every boot, logging the test results and info into /var/log (max 500 logs kept) - it can also be run from a usbmount script which is triggered by a file named nexs-run-self-test on the USB disk. In this mode it will use aural beep codes to indicate test success and failure, in addition to logging the test results and info back to the USB disk. nexs-custom code is found at http://hg.olenepal.org/NEXS_scripts/ The content that we add: - Fedora Commons (www.fedora.info) and Fez frontend, and huge content collection -- a clone of pustakalaya.org - a clone of http://en.wiktionary.org - an English definition dictionary - a clone of www.nepalisabdakos.com - a Nepali definition dictionary - wikipedia for schools (http://schools-wikipedia.org/) - latest full version of OLE Nepal's huge educational content activity, including the whole years worth of lessons (this is also present on the XOs but only for a certain time period at a time -- the overall activity is split into 6 different XO activities which are distributed at different times through the year, the full version is too big to store on XO) - some world maps, an atlas, and educational videos some scripts we use for supporting the above content installation can be found at http://hg.olenepal.org/NEXC-maint/ Daniel ___ Server-devel mailing list Server-devel@lists.laptop.org http://lists.laptop.org/listinfo/server-devel
Re: [Testing] first play with new XO 1.5 machines
2009/10/21 Tabitha Roder tabi...@hrdnz.com: 2009/10/21 Mitch Bradley w...@laptop.org: /boot/olpc_version usually contains the right number. no such file or directory Maybe you don't have /boot mounted, or maybe there is a bug in the build system now that we moved to a separate boot partition. We should probably write the version on both partitions. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: [Testing] first play with new XO 1.5 machines
2009/10/21 Martin Langhoff martin.langh...@gmail.com: On Wed, Oct 21, 2009 at 8:37 AM, Daniel Drake d...@laptop.org wrote: Maybe you don't have /boot mounted, or maybe there is a bug in the build system now that we moved to a separate boot partition. We should probably write the version on both partitions. Yep - /etc/olpc_build is probably a good location for a 2nd copy. Makes sense that we've put it in /boot first -- it's important to also have it in /boot because then you can read it from OFW if the / partition is in a FS format that OFW doesn't know about. The other reason for it to stay there is that sugar reads it from /boot (but Sugar could be modified) Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: [Testing] first play with new XO 1.5 machines
2009/10/22 Martin Langhoff martin.langh...@gmail.com: They are -- but it's pretty awkward to activate. I am arguing that ad-hoc networking with a preset ESSID, and Salut should be the transparent fallback. Just like the mesh was on earlier releases. We already discussed this a lot in another thread. It should not be automatic. The thread is titled [Sugar-devel] [Design] Ad-hoc networks - New Icons The biggest headache about mesh is the cases where it sort-of-works, but not quite. Ad-hoc networking will be considerably less reliable than mesh was, for a few reasons: 1. In the mesh, everyone does their own beaconing. Sounds horrible but it actually works. In ad-hoc, there is just one beacon master. Due to cheap radios and interference etc, the beacon master will switch around frequently causing frequent network splits and communication failures. 2. This kind of situation will happen frequently: A - B - C B can see both users A and C on his network view. A can only see B, and C can only see B. B shares an activity. Both A and C join. However, anything done by A cannot be seen by C and vice-versa, because they are too far apart. 3. Another nasty situation A -- B A and B are outside of radio range, but are both setup to start an automatic network named olpc So they both setup their own ad-hoc networks, both becoming beacon masters. Another laptop C comes along A C -- B This laptop can see both of these independent laptops (each having its independent network). It can join one or the other. It cannot join both. Hence this XO can only communicate with A or B, but not both (even though the range is OK), and presenting this choice in the UI would be nasty. Ad-hoc will work well for the cases where the children get together in a small space and explicitly create a throwaway network. If it is created automatically, I predict we will just get an unreliable mess. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: [Testing] first play with new XO 1.5 machines
2009/10/22 Tabitha Roder tabi...@hrdnz.com: No mesh: Just checking this scenario I am a teacher and have just been handed 5 XOs for my students. I am told you can have a child start writing a story and then have the other children join in to write together. How does the teacher do this - in less than 100 words and not one word technical There are many answers to that. What's the network setup? Assuming you mean there is no infrastructure at all: The teacher will have to create an ad-hoc network (click wifi device in frame, click Create network) and the children will then have to go to the neighborhood view and click on that new network to connect to it. Then sharing works as usual, provided that all the laptops are close to each other. Yes, it's difficult in a classroom setting with young children. All of our current networking solutions are this way :( Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: [Testing] first play with new XO 1.5 machines [#9343]
2009/10/22 James Cameron qu...@laptop.org: You can manually establish an Ad-Hoc network between several XO-1.5's in build os32 using the following temporary procedure: 1. start Terminal and become root, eek! no need to get dirty; you can create an ad-hoc network from a single click in the frame, and then the others can join it from the neighborhood view. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: [Sugar-devel] incremental activity update
2009/10/15 Martin Langhoff martin.langh...@gmail.com: Would be interesting to know more on concrete issues (that lead to the feeling part :-) ). I guess the turning point in my thinking was when I realised that I had to update the .contents file inside the image after making non-activity customizations. This was after we had deployed this buggy image in the field. My realisation was that the more things we do with the image-builder script, the more complications we will have to duplicate from the real build system. And sometimes we might only discover the importance of those things when it is too late. The Pilgrim path is too hard and brittle. Have you tried to set it up? I haven't, but I get the impression from the team here that it is not as bad as you might expect. I'm sure it's not where we'd like it though. Looking forward, the F11 build system is easy to get running. I feel confident it's the kind of thing that can be documented on a single wiki page, which is my general threshold for [some] deployments can do it :) Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
incremental activity update
Hi, At OLE Nepal we have difficulties with updating activities because our main educational activity is so huge. Aayush Poudel implemented an incremental activity update which I have now merged with the standard software updater. When updating activities and content, the updater now only downloads the files of the new activity that have changed, greatly reducing time and bandwidth needed for updates. Patches at http://dev.sugarlabs.org/ticket/1499 We're also adding the patch I used in paraguay so that the updater does not try to go online when the school server has an activity available: http://dev.laptop.org/ticket/9259 I hope this is useful for other deployments too! Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: [Sugar-devel] incremental activity update
2009/10/14 Tomeu Vizoso to...@sugarlabs.org: Wonder how we could make it easier for other deployments to benefit from these changes. Do you have plans to push the changes to the sugar-update-control repo and spin new F9 rpms? No - my time is too tight and at least for Paraguay and Nepal it's easier to apply customizations as patches rather than to add RPMs. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
MANIFEST experiments
Today I ran a quick experiment on OLPC OS v8.2.1, based on the question: what are the activity MANIFEST files used for? I see sugar frequently complaining about MANIFEST inconsistencies in the logs, but I don't recall seeing it act on these inconsistencies in any way. I noticed that it even logs such inconsistencies during startup, meaning that it must be checking every file in every activity during a regular boot... So, I reflashed 2 XOs, booted for the first time, entered a name. On one, I modified sugar.bundle.ActivityBundle.read_manifest() to be a no-op, then turned it off. On the other, I just turned it off. Then I powered both on at the same time and started a stopwatch. I measured how long it takes for the XOs to reach the stage of boot where the XO stick figure and the activity icons are visible. The one with the modification reached this point *55* seconds faster than the other one! It basically zeroes the time where you can see the XO stick figure on screen but the activity icons on the home view have yet to appear. This was using OLE Nepal's customized build which includes a big activity with many manifest errors, so the difference might be less elsewhere. Tomeu points out that this behaviour has been improved in more recent sugar versions to the point where manifest checking probably is not happening in the startup path, but personally I question why we are even checking at all. Perhaps we should rip out all that code and leave MANIFESTs purely as a tool for developers to specify which files get included in a bundle or something like that. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: [Sugar-devel] incremental activity update
2009/10/15 Martin Langhoff martin.langh...@gmail.com: For the F9 series (8.2.1) my current plan is to work to polish the imagecreator scripts so that it is easier for deployents to - prepare a custom image (mostly covered) - base on an existing image (in place, even if the tar isn't available) - create and inject signatures with the local keys (ofw, initramfs, kernel) I know I myself hacked the image-builder script into this direction, but in hindsight I feel that it got too hacky and that was the wrong approach. It presented various surprises along the way and at the very end left me with the this is the wrong thing feeling. I feel that for making such customizations, the deployments should clone the build setup (pilgrim) and make changes there. It's more complex but works well and doesn't leave such a bad taste in the mouth. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
[Server-devel] create_user and re-registration
Hi, If an XO re-registers with the XS, its key is once again appended to .ssh/authorized_keys. Since introducing automatic registration in nepal we end up with many duplicate copies of the keys... any chance this small patch could be added? or that we could overwrite instead of append to the authorized_keys file? Thanks, Daniel create_user_keys.patch Description: Binary data ___ Server-devel mailing list Server-devel@lists.laptop.org http://lists.laptop.org/listinfo/server-devel
Re: [Server-devel] create_user and re-registration
2009/10/12 Martin Langhoff martin.langh...@gmail.com: Hi Daniel, Reasonable request... I reviewed the patch, expecting you'd be running `sort -u` over a tmp copy of authorized_keys, but it does nothing like that. How does it help, then? What does sort -u do? The man page doesn't make it very clear. The awk command I inserted simply removes all lines from a file that are a duplicate of another. Or at least I hope it does - I don't really know awk but have used this command in a handful of projects now! So if there are 3 copies of the key in the file, 2 of them will get removed. Daniel ___ Server-devel mailing list Server-devel@lists.laptop.org http://lists.laptop.org/listinfo/server-devel
Re: [Server-devel] XS-0.6 -
2009/10/7 Martin Langhoff martin.langh...@gmail.com: 65d0816e002fe83f4e0130b6a92577377b9fd2e3 OLPC-School-Server-0.6-i386.iso c872907f1f696ea7bb1bb6e95319fa27e62ce76c OLPC-School-Server-0.6-i386.img.gz Great! What's changed since 0.6d5? Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel