What a shitty attitude. I don’t mind helping people out who appreciate the 
help, but why would anyone help you when you all you do is complain about the 
help. 

Regards,
John




> On Apr 20, 2016, at 1:18 AM, William Hermans <yyrk...@gmail.com> wrote:
> 
> I just don’t understand what you are asking for. The code is self explanatory 
> and with a little effort, you can make it work. My guess is you want me to 
> add the include headers and create the Makefile and Kconfig files. If that is 
> what you want, I can do it for you, but I thought you would know how to do 
> this yourself. Take a book and read about sigaction. I’m sure you will find 
> examples just like the ones I sent you. I’ve pulled code like this together 
> for year to understand how comms works between the kernel and user space.  
> Regards,
> John
> Dont do it for me, because I do not need it. Do it for all those interested 
> people you mentioned before. 
> 
> You say it's easy, and you're pasting in random code here in there, but I've 
> yet to see you come up with a real, and solid solution. You keep talking 
> around the subject like it's simple . . .so put your money where your mouth 
> is. 
> 
> Either that, or stop "talking", because you're not helping anyone.
> 
> 
> On Wed, Apr 20, 2016 at 12:59 AM, John Syne <john3...@gmail.com 
> <mailto:john3...@gmail.com>> wrote:
> I just don’t understand what you are asking for. The code is self explanatory 
> and with a little effort, you can make it work. My guess is you want me to 
> add the include headers and create the Makefile and Kconfig files. If that is 
> what you want, I can do it for you, but I thought you would know how to do 
> this yourself. Take a book and read about sigaction. I’m sure you will find 
> examples just like the ones I sent you. I’ve pulled code like this together 
> for year to understand how comms works between the kernel and user space.  
> 
> Regards,
> John
> 
> 
> 
> 
>> On Apr 20, 2016, at 12:45 AM, William Hermans <yyrk...@gmail.com 
>> <mailto:yyrk...@gmail.com>> wrote:
>> 
>> Well that is not how I'd do things, and I suppose that code if complete and 
>> integrated into the tps65217.c file, it might work . . .
>> 
>> But as I said that code is not complete, and is what looks like example code 
>> out of some Documentation/*txt file. 
>> 
>> On Tue, Apr 19, 2016 at 10:14 PM, John Syne <john3...@gmail.com 
>> <mailto:john3...@gmail.com>> wrote:
>> 
>>> On Apr 19, 2016, at 9:28 PM, William Hermans <yyrk...@gmail.com 
>>> <mailto:yyrk...@gmail.com>> wrote:
>>> 
>>> That's not what I was saying at all. I'm saying if all this is that easy 
>>> for you, then you should add this functionality, and be the community hero.
>>> 
>>> This sort of thing is definitely not above my pay grade, but I am not a 
>>> kernel hacker, and I do not know the file structure all that well. So it 
>>> would take me a while to to figure out everything I need to know, about 
>>> everything I'd need. So if this thing is really that easy for you, why 
>>> don't you make a new LKM, something that takes an argument, or two. LIke 
>>> g_multi where you pass in a path for the g_mass_storage bit of the driver. 
>>> Except of course, you want to be able to set a time out for a shutdown.
>>> 
>>> Second, a kernel module should not require a specific init daemon. That 
>>> goes against the whole point of Linux.
>>> 
>>> 
>>> FYI I could do this entirely in userspace, really easily. Except I would 
>>> have to poll, instead of using an interrupt, and I pretty much be writing 
>>> duplicate code, or code that does a duplicate job. But passed that I really 
>>> do not have to time for this, or to read through, and understand all the 
>>> required Linux kernel, and LKMs to do this "properly". It's a lot of work 
>>> for someone who really doesn't know what they're doing.
>> Yep, it can be done in user space as well. Simply add sigaction to the 
>> tps65217 mfd driver. Here is an example of a standalone KM with a user space 
>> app. So now we do not use input key, but send events via kernel signals 
>> (similar to kill -9 pid or ctrl-c).
>> 
>> Kernel Code:
>> 
>> ===
>> #define SIG_TEST 44  // we choose 44 as our signal number (real-time signals 
>> are in the range of 33 to 64)
>> 
>> struct dentry *file;
>> 
>> static ssize_t write_pid(struct file *file, const char __user *buf,
>>                                 size_t count, loff_t *ppos)
>> {
>>      char mybuf[10];
>>      int pid = 0;
>>      int ret;
>>      struct siginfo info;
>>      struct task_struct *t;
>>      /* read the value from user space */
>>      if(count > 10)
>>              return -EINVAL;
>>      copy_from_user(mybuf, buf, count);
>>      sscanf(mybuf, "%d", &pid);
>>      printk("pid = %d\n", pid);
>> 
>>      /* send the signal */
>>      memset(&info, 0, sizeof(struct siginfo));
>>      info.si <http://info.si/>_signo = SIG_TEST;
>>      info.si <http://info.si/>_code = SI_QUEUE;      // this is bit of a 
>> trickery: SI_QUEUE is normally used by sigqueue from user space,
>>                                      // and kernel space should use 
>> SI_KERNEL. But if SI_KERNEL is used the real_time data
>>                                      // is not delivered to the user space 
>> signal handler function.
>>      info.si <http://info.si/>_int = 1234;           //real time signals may 
>> have 32 bits of data.
>> 
>>      rcu_read_lock();
>> //   t = find_task_by_pid_type(PIDTYPE_PID, pid);  //find the task_struct 
>> associated with this pid
>>      t = pid_task(find_pid_ns(pid, &init_pid_ns), PIDTYPE_PID);
>>      if(t == NULL){
>>              printk("no such pid\n");
>>              rcu_read_unlock();
>>              return -ENODEV;
>>      }
>>      rcu_read_unlock();
>>      ret = send_sig_info(SIG_TEST, &info, t);    //send the signal
>>      if (ret < 0) {
>>              printk("error sending signal\n");
>>              return ret;
>>      }
>>      return count;
>> }
>> 
>> static const struct file_operations my_fops = {
>>      .write = write_pid,
>> };
>> 
>> static int __init signalexample_module_init(void)
>> {
>>      /* we need to know the pid of the user space process
>>       * -> we use debugfs for this. As soon as a pid is written to
>>       * this file, a signal is sent to that pid
>>       */
>>      /* only root can write to this file (no read) */
>>      file = debugfs_create_file("signalconfpid", 0200, NULL, NULL, &my_fops);
>>      return 0;
>> }
>> static void __exit signalexample_module_exit(void)
>> {
>>      debugfs_remove(file);
>> 
>> }
>> 
>> ===
>> 
>> 
>> User Space Code:
>> 
>> ===
>> #define SIG_TEST 44 /* we define our own signal, hard coded since SIGRTMIN 
>> is different in user and in kernel space */
>> 
>> void receiveData(int n, siginfo_t *info, void *unused) {
>>      printf("received value %i\n", info->si_int);
>> }
>> 
>> int main ( int argc, char **argv )
>> {
>>      int configfd;
>>      char buf[10];
>>      /* setup the signal handler for SIG_TEST
>>       * SA_SIGINFO -> we want the signal handler function with 3 arguments
>>       */
>>      struct sigaction sig;
>>      sig.sa_sigaction = receiveData;
>>      sig.sa_flags = SA_SIGINFO;
>>      sigaction(SIG_TEST, &sig, NULL);
>> 
>>      /* kernel needs to know our pid to be able to send us a signal ->
>>       * we use debugfs for this -> do not forget to mount the debugfs!
>>       */
>>      configfd = open("/sys/kernel/debug/signalconfpid", O_WRONLY);
>>      if(configfd < 0) {
>>              perror("open");
>>              return -1;
>>      }
>>      sprintf(buf, "%i", getpid());
>>      if (write(configfd, buf, strlen(buf) + 1) < 0) {
>>              perror("fwrite");
>>              return -1;
>>      }
>> 
>>      return 0;
>> }
>> ===
>>> 
>>> Lastly, when I say "really easily" I mean that I know it is possible and I 
>>> know how to go about doing it. I'd just have to research many things to 
>>> bring it all together. So would also take me a little while. Maybe a week, 
>>> maybe two. Assuming I had the time.
>>> 
>>> On Tue, Apr 19, 2016 at 8:51 PM, John Syne <john3...@gmail.com 
>>> <mailto:john3...@gmail.com>> wrote:
>>> Here is the problem with that. You use a different kernel to me and you 
>>> don’t like to use systemd. Hence I will explain how to get this working, 
>>> but you are going to have to do the coding and testing. To start with, 
>>> which kernel are you using?
>>> 
>>> From the TPS65217 datasheet the ACI bit in the INT register (0x02) will be 
>>> a 1 if the power status changed (either power on or power fail). The state 
>>> of the power is in the status register (0xA) which is 0 for no power and 1 
>>> for power in valid range. So looking at the Interrupt routing, both events 
>>> are reported. I would recommend changing the input key to something 
>>> different to KEY_POWER because we do not want to modify the pwr button 
>>> behavior. 
>>> 
>>> 
>>> if (int_reg & TPS65217_INT_ACI) {
>>>     /* Handle AC power status change */
>>>     dev_dbg(tps->dev, "AC power status change\n");
>>>     /* Press KEY_POWER when AC not present */
>>>     input_report_key(tps->pwr_but, KEY_POWER,
>>>                     ~status_reg & TPS65217_STATUS_ACPWR);
>>>     input_sync(tps->pwr_but);
>>> }
>>> 
>>> You might have to change input_report_key to input_report_switch as I’m not 
>>> sure if we can extract the status from EV_KEY.
>>> Using udev, the input key is linked to this systemd service poweroff.target
>>> 
>>> ===
>>> #  This file is part of systemd.
>>> #
>>> #  systemd is free software; you can redistribute it and/or modify it
>>> #  under the terms of the GNU Lesser General Public License as published by
>>> #  the Free Software Foundation; either version 2.1 of the License, or
>>> #  (at your option) any later version.
>>> 
>>> [Unit]
>>> Description=Power-Off
>>> Documentation=man:systemd.special(7)
>>> DefaultDependencies=no
>>> Requires=systemd-poweroff.service
>>> After=systemd-poweroff.service
>>> AllowIsolate=yes
>>> 
>>> [Install]
>>> Alias=ctrl-alt-del.target
>>> ===
>>> 
>>> Which in turn runs the systemd-poweroff.service
>>> 
>>> ===
>>> #  This file is part of systemd.
>>> #
>>> #  systemd is free software; you can redistribute it and/or modify it
>>> #  under the terms of the GNU Lesser General Public License as published by
>>> #  the Free Software Foundation; either version 2.1 of the License, or
>>> #  (at your option) any later version.
>>> 
>>> [Unit]
>>> Description=Power-Off
>>> Documentation=man:systemd-halt.service(8)
>>> DefaultDependencies=no
>>> Requires=shutdown.target umount.target final.target
>>> After=shutdown.target umount.target final.target
>>> 
>>> [Service]
>>> Type=oneshot
>>> ExecStart=/bin/systemctl --force poweroff
>>> ===
>>> 
>>> Which powers down the board.
>>> 
>>> So here is what you need to do. When you receive a input key assigned to 
>>> AC_Power, with a status of fail, start a daemon with a timer. If the timer 
>>> expires, do the same systemctl poweroff or shutdown -h now. If you get a 
>>> input key for AC_Power with status of power_good before the timer expires, 
>>> either kill the daemon or cancel the timer. 
>>> 
>>> Hope this helps.
>>> 
>>> Regards,
>>> John
>>> 
>>> 
>>> 
>>> 
>>>> On Apr 19, 2016, at 6:29 PM, William Hermans <yyrk...@gmail.com 
>>>> <mailto:yyrk...@gmail.com>> wrote:
>>>> 
>>>> Good, now add it.
>>>> 
>>>> On Tue, Apr 19, 2016 at 5:16 PM, John Syne <john3...@gmail.com 
>>>> <mailto:john3...@gmail.com>> wrote:
>>>> In my last e-mail on this issue, I said "Also, the interrupt routine does 
>>>> not report power good, so that would have to be added”. It is a simple 
>>>> thing to add.
>>>> 
>>>> Regards,
>>>> John
>>>> 
>>>> 
>>>> 
>>>> 
>>>>> On Apr 19, 2016, at 3:30 PM, William Hermans <yyrk...@gmail.com 
>>>>> <mailto:yyrk...@gmail.com>> wrote:
>>>>> 
>>>>> So there is apparently a bug related to this whole situation. Once the 
>>>>> input power goes away, whatever it may be. You lose USB, because the PMIC 
>>>>> is not longer able to supply 5V. You even get a kernel message in 
>>>>> relation to this from musb.
>>>>> 
>>>>> The problem is, once input power is restored, I see no indication that 5V 
>>>>> is restored to USB. So If you tail -f /var/log/messages, you'll see one 
>>>>> musb message when pulling power, but you will not see a corresponding 
>>>>> message when plugging power back in. Additionally if you pull power 
>>>>> multiple times. Only the first message is displayed. 
>>>>> 
>>>>> What this tells me is that the current kernel modules are not written to 
>>>>> deal / handle this yet. So for now, unless I'm wrong ( which i doubt ). 
>>>>> It's best just to power down period. After input power goes away, and 
>>>>> simply use an R/C network to "time" system up's, in case power goes up / 
>>>>> down rapidly. One, or more times consecutively. 
>>>>> 
>>>>> On Mon, Apr 18, 2016 at 6:26 PM, William Hermans <yyrk...@gmail.com 
>>>>> <mailto:yyrk...@gmail.com>> wrote:
>>>>> I have an interest in this.  It's way above my pay grade from a 
>>>>> programming perspective...
>>>>> 
>>>>> Mike
>>>>> 
>>>>> Hi Mike,
>>>>> 
>>>>> This is actually something I'm personally very interested in too. 
>>>>> However, at this moment in time, my buddy and I are actually in the 
>>>>> process of making two different capes for the beaglebone. So this is one 
>>>>> of those situations where you have to have priorities . . . and while I 
>>>>> obviously do not know everything involved to get this certain thing done, 
>>>>> it is not above my pay grade. 
>>>>> 
>>>>> So perhaps in the future, it may be something I'll revisit, and would be 
>>>>> something I'd contribute back to the community.
>>>>> 
>>>>> On Mon, Apr 18, 2016 at 2:26 PM, Mike <bellyac...@gmail.com 
>>>>> <mailto:bellyac...@gmail.com>> wrote:
>>>>> On 04/18/2016 03:31 PM, John Syne wrote:
>>>>>> That is OK if this doesn’t work for you, but there are other BBB users 
>>>>>> who might find this helpful. Currently the powerfail uses the same key 
>>>>>> function as the pwr button, so the first place to start would be 
>>>>>> changing the key function to something else. Also, the interrupt routine 
>>>>>> does not report power good, so that would have to be added. After that, 
>>>>>> a systemd service could take care of the rest. 
>>>>>> 
>>>>>> Regards,
>>>>>> John
>>>>>> 
>>>>>> 
>>>>> 
>>>>> I have an interest in this.  It's way above my pay grade from a 
>>>>> programming perspective...
>>>>> 
>>>>> Mike
>>>>> 
>>>>>> 
>>>>>> 
>>>>>>> On Apr 18, 2016, at 11:31 AM, William Hermans <yyrk...@gmail.com 
>>>>>>> <mailto:yyrk...@gmail.com>> wrote:
>>>>>>> 
>>>>>>> #1 
>>>>>>> william@beaglebone:~$ ls /etc/udev/rules.d/
>>>>>>> 50-hidraw.rules  50-spi.rules  60-omap-tty.rules  
>>>>>>> 70-persistent-net.rules  uio.rules
>>>>>>> 
>>>>>>> #2
>>>>>>> We do not care about the button press. We *did* care about what happens 
>>>>>>> when power is removed, while a battery is connected.
>>>>>>> 
>>>>>>> Now we do not care. We're not going to bother with it. It's too much 
>>>>>>> hassle for a result that is not really all that important. So what if 
>>>>>>> the power down routine is inefficient . . . it works.
>>>>>>> 
>>>>>>> On Mon, Apr 18, 2016 at 10:29 AM, John Syne < 
>>>>>>> <mailto:john3...@gmail.com>john3...@gmail.com 
>>>>>>> <mailto:john3...@gmail.com>> wrote:
>>>>>>> I asked Robert how the pwr button is processed and interestingly it is 
>>>>>>> done via udev and systemd. Also, there is some new code going 
>>>>>>> mainstream for the pwr button and battery charger. Perhaps you can 
>>>>>>> implement the timer delay via a custom systemd service. Here is what 
>>>>>>> Robert sent me:
>>>>>>> 
>>>>>>> Oh this is finally getting upstreamed:
>>>>>>> 
>>>>>>> https://www.spinics.net/lists/linux-omap/msg127184.html 
>>>>>>> <https://www.spinics.net/lists/linux-omap/msg127184.html>
>>>>>>> 
>>>>>>> I need to switch to their version, vs our 3.8.13 erra hack that's been 
>>>>>>> forward ported for years. ;)
>>>>>>> 
>>>>>>> Behind the scenes's that patch is reporting a key-event to systemd...
>>>>>>> 
>>>>>>> https://github.com/systemd/systemd/blob/09541e49ebd17b41482e447dd8194942f39788c0/src/login/70-power-switch.rules#L13
>>>>>>>  
>>>>>>> <https://github.com/systemd/systemd/blob/09541e49ebd17b41482e447dd8194942f39788c0/src/login/70-power-switch.rules#L13>
>>>>>>> 
>>>>>>> Regards,
>>>>>>> John
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>>> On Apr 17, 2016, at 11:06 PM, William Hermans < 
>>>>>>>> <mailto:yyrk...@gmail.com>yyrk...@gmail.com 
>>>>>>>> <mailto:yyrk...@gmail.com>> wrote:
>>>>>>>> 
>>>>>>>> There is no timer in that code. The timer would have to be added, and 
>>>>>>>> careful consideration would have to be given to exactly how that was 
>>>>>>>> implemented.
>>>>>>>> 
>>>>>>>> So in other words, you would, or should write a completely new kernel 
>>>>>>>> module, that is meant to replace what already exists - As an option.
>>>>>>>> 
>>>>>>>> On Sun, Apr 17, 2016 at 10:25 PM, evilwulfie < 
>>>>>>>> <mailto:evilwul...@gmail.com>evilwul...@gmail.com 
>>>>>>>> <mailto:evilwul...@gmail.com>> wrote:
>>>>>>>> Where in the code do you set that timer ?
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> On 4/17/2016 7:50 PM, John Syne wrote:
>>>>>>>>> One more thing, the power down sequence uses the RTC framework 
>>>>>>>>> (described earlier in this thread), so it will be possible to set a 
>>>>>>>>> timer for the shutdown and the wait for the power to return event to 
>>>>>>>>> cancel the timer. If the power on event does not occur, the shutdown 
>>>>>>>>> will occur.
>>>>>>>>> 
>>>>>>>>> Regards,
>>>>>>>>> John
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>> On Apr 17, 2016, at 7:18 PM, evilwulfie < 
>>>>>>>>>> <mailto:evilwul...@gmail.com>evilwul...@gmail.com 
>>>>>>>>>> <mailto:evilwul...@gmail.com>> wrote:
>>>>>>>>>> 
>>>>>>>>>> Interesting.  Too bad if you want the battery to act as a UPS it 
>>>>>>>>>> cant some how notify the kernel that AC has been removed
>>>>>>>>>> and have a routine to just chill a while to see if power comes back.
>>>>>>>>>> 
>>>>>>>>>> Be nice to have a variable that is user settable for the time 
>>>>>>>>>> between loss of AC and shutdown.
>>>>>>>>>> 
>>>>>>>>>> As it is now it sees the AC removed, shuts down and no easy way to 
>>>>>>>>>> restart on power restored. Requiring some other IC to monitor power 
>>>>>>>>>> and then press the pwr_but to restart the processor.
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> On 4/17/2016 7:10 PM, John Syne wrote:
>>>>>>>>>>> Yep, it is in the BB kernel:
>>>>>>>>>>> 
>>>>>>>>>>>  
>>>>>>>>>>> <https://github.com/RobertCNelson/bb-kernel/blob/am33x-v4.1/patches/beaglebone/dts/0006-tps65217-Enable-KEY_POWER-press-on-AC-loss-PWR_BUT.patch>https://github.com/RobertCNelson/bb-kernel/blob/am33x-v4.1/patches/beaglebone/dts/0006-tps65217-Enable-KEY_POWER-press-on-AC-loss-PWR_BUT.patch
>>>>>>>>>>>  
>>>>>>>>>>> <https://github.com/RobertCNelson/bb-kernel/blob/am33x-v4.1/patches/beaglebone/dts/0006-tps65217-Enable-KEY_POWER-press-on-AC-loss-PWR_BUT.patch>
>>>>>>>>>>> 
>>>>>>>>>>> So again, on line 164 is the Interrupt routing. It is this line:
>>>>>>>>>>> 
>>>>>>>>>>> +           input_report_key(tps->pwr_but, KEY_POWER,
>>>>>>>>>>> 
>>>>>>>>>>> +                           ~status_reg & TPS65217_STATUS_ACPWR);
>>>>>>>>>>> that send a power button pressed as an input key when the AC 5V 
>>>>>>>>>>> power is removed. 
>>>>>>>>>>> 
>>>>>>>>>>> Regards,
>>>>>>>>>>> John
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>>> On Apr 17, 2016, at 4:52 PM, William Hermans < 
>>>>>>>>>>>> <mailto:yyrk...@gmail.com>yyrk...@gmail.com 
>>>>>>>>>>>> <mailto:yyrk...@gmail.com>> wrote:
>>>>>>>>>>>> 
>>>>>>>>>>>> The real reason why our source trees do not match up. My source 
>>>>>>>>>>>> tree is based on 4.1.x, and yours seems to be 3.8.x. The patch you 
>>>>>>>>>>>> showed above would probably botch up my source tree . . .
>>>>>>>>>>>> 
>>>>>>>>>>>> On Sun, Apr 17, 2016 at 4:33 PM, William Hermans < 
>>>>>>>>>>>> <mailto:yyrk...@gmail.com>yyrk...@gmail.com 
>>>>>>>>>>>> <mailto:yyrk...@gmail.com>> wrote:
>>>>>>>>>>>> Yeah I recognize that code from source code not written by TI 
>>>>>>>>>>>> employees. The file is called tps65217_charger.c, and is written 
>>>>>>>>>>>> by an employee of another company.
>>>>>>>>>>>> 
>>>>>>>>>>>> Anyway, I think we're going to blow this off. The idea was to wait 
>>>>>>>>>>>> around without power for 5 minutes, to see if power comes back up. 
>>>>>>>>>>>> Before issuing a shutdown. Then, on the power up end, using a 
>>>>>>>>>>>> simple R/C circuit to ramp up voltage to 5v over a specific time 
>>>>>>>>>>>> period.
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>>  
>>>>>>>>>> <https://www.avast.com/en-us/lp-safe-emailing-2109?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient&utm_term=oa-2109-v2-a>
>>>>>>>>>>    Virus-free.  
>>>>>>>>>> <https://www.avast.com/en-us/lp-safe-emailing-2109?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient&utm_term=oa-2109-v2-a>www.avast.com
>>>>>>>>>>  <http://www.avast.com/>
>>>>>>>>>> 
>>>>>>>>>> -- 
>>>>>>>>>> For more options, visit  
>>>>>>>>>> <http://beagleboard.org/discuss>http://beagleboard.org/discuss 
>>>>>>>>>> <http://beagleboard.org/discuss>
>>>>>>>>>> --- 
>>>>>>>>>> You received this message because you are subscribed to the Google 
>>>>>>>>>> Groups "BeagleBoard" group.
>>>>>>>>>> To unsubscribe from this group and stop receiving emails from it, 
>>>>>>>>>> send an email to  
>>>>>>>>>> <mailto:beagleboard+unsubscr...@googlegroups.com>beagleboard+unsubscr...@googlegroups.com
>>>>>>>>>>  <mailto:beagleboard+unsubscr...@googlegroups.com>.
>>>>>>>>>> To view this discussion on the web visit  
>>>>>>>>>> <https://groups.google.com/d/msgid/beagleboard/571443FC.6020505%40gmail.com>https://groups.google.com/d/msgid/beagleboard/571443FC.6020505%40gmail.com
>>>>>>>>>>  
>>>>>>>>>> <https://groups.google.com/d/msgid/beagleboard/571443FC.6020505%40gmail.com>.
>>>>>>>>>> For more options, visit  
>>>>>>>>>> <https://groups.google.com/d/optout>https://groups.google.com/d/optout
>>>>>>>>>>  <https://groups.google.com/d/optout>.
>>>>>>>>> 
>>>>>>>>> -- 
>>>>>>>>> For more options, visit  
>>>>>>>>> <http://beagleboard.org/discuss>http://beagleboard.org/discuss 
>>>>>>>>> <http://beagleboard.org/discuss>
>>>>>>>>> --- 
>>>>>>>>> You received this message because you are subscribed to the Google 
>>>>>>>>> Groups "BeagleBoard" group.
>>>>>>>>> To unsubscribe from this group and stop receiving emails from it, 
>>>>>>>>> send an email to  
>>>>>>>>> <mailto:beagleboard+unsubscr...@googlegroups.com>beagleboard+unsubscr...@googlegroups.com
>>>>>>>>>  <mailto:beagleboard+unsubscr...@googlegroups.com>.
>>>>>>>>> To view this discussion on the web visit  
>>>>>>>>> <https://groups.google.com/d/msgid/beagleboard/2CC5F218-6933-45E8-8B84-2CEE08263AF5%40gmail.com>https://groups.google.com/d/msgid/beagleboard/2CC5F218-6933-45E8-8B84-2CEE08263AF5%40gmail.com
>>>>>>>>>  
>>>>>>>>> <https://groups.google.com/d/msgid/beagleboard/2CC5F218-6933-45E8-8B84-2CEE08263AF5%40gmail.com>.
>>>>>>>>> For more options, visit  
>>>>>>>>> <https://groups.google.com/d/optout>https://groups.google.com/d/optout
>>>>>>>>>  <https://groups.google.com/d/optout>.
>>>>>>>> 
>>>>>>>> 
>>>>>>>>  
>>>>>>>> <https://www.avast.com/en-us/lp-safe-emailing-2109?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient&utm_term=oa-2109-v2-a>
>>>>>>>>      Virus-free.  
>>>>>>>> <https://www.avast.com/en-us/lp-safe-emailing-2109?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient&utm_term=oa-2109-v2-a>www.avast.com
>>>>>>>>  <http://www.avast.com/>
>>>>>>>> 
>>>>>>>> -- 
>>>>>>>> For more options, visit  
>>>>>>>> <http://beagleboard.org/discuss>http://beagleboard.org/discuss 
>>>>>>>> <http://beagleboard.org/discuss>
>>>>>>>> --- 
>>>>>>>> You received this message because you are subscribed to the Google 
>>>>>>>> Groups "BeagleBoard" group.
>>>>>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>>>>>> an email to  
>>>>>>>> <mailto:beagleboard+unsubscr...@googlegroups.com>beagleboard+unsubscr...@googlegroups.com
>>>>>>>>  <mailto:beagleboard+unsubscr...@googlegroups.com>.
>>>>>>>> To view this discussion on the web visit  
>>>>>>>> <https://groups.google.com/d/msgid/beagleboard/57146FB7.5000301%40gmail.com?utm_medium=email&utm_source=footer>https://groups.google.com/d/msgid/beagleboard/57146FB7.5000301%40gmail.com
>>>>>>>>  
>>>>>>>> <https://groups.google.com/d/msgid/beagleboard/57146FB7.5000301%40gmail.com>.
>>>>>>>> 
>>>>>>>> For more options, visit  
>>>>>>>> <https://groups.google.com/d/optout>https://groups.google.com/d/optout 
>>>>>>>> <https://groups.google.com/d/optout>.
>>>>>>>> 
>>>>>>>> 
>>>>>>>> -- 
>>>>>>>> For more options, visit  
>>>>>>>> <http://beagleboard.org/discuss>http://beagleboard.org/discuss 
>>>>>>>> <http://beagleboard.org/discuss>
>>>>>>>> --- 
>>>>>>>> You received this message because you are subscribed to the Google 
>>>>>>>> Groups "BeagleBoard" group.
>>>>>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>>>>>> an email to  
>>>>>>>> <mailto:beagleboard+unsubscr...@googlegroups.com>beagleboard+unsubscr...@googlegroups.com
>>>>>>>>  <mailto:beagleboard+unsubscr...@googlegroups.com>.
>>>>>>>> To view this discussion on the web 
>>>>>>>> visithttps://groups.google.com/d/msgid/beagleboard/CALHSORqGgChYUiW8na9wJqDQNW3_tOXn4YW4Rrhqe0UyCzDGWg%40mail.gmail.com
>>>>>>>>  
>>>>>>>> <https://groups.google.com/d/msgid/beagleboard/CALHSORqGgChYUiW8na9wJqDQNW3_tOXn4YW4Rrhqe0UyCzDGWg%40mail.gmail.com?utm_medium=email&utm_source=footer>.
>>>>>>>> 
>>>>>>>> For more options, visit  
>>>>>>>> <https://groups.google.com/d/optout>https://groups.google.com/d/optout 
>>>>>>>> <https://groups.google.com/d/optout>.
>>>>>>> 
>>>>>>> 
>>>>>>> -- 
>>>>>>> For more options, visit http://beagleboard.org/discuss 
>>>>>>> <http://beagleboard.org/discuss>
>>>>>>> --- 
>>>>>>> You received this message because you are subscribed to the Google 
>>>>>>> Groups "BeagleBoard" group.
>>>>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>>>>> an email to  
>>>>>>> <mailto:beagleboard+unsubscr...@googlegroups.com>beagleboard+unsubscr...@googlegroups.com
>>>>>>>  <mailto:beagleboard+unsubscr...@googlegroups.com>.
>>>>>>> To view this discussion on the web visit  
>>>>>>> <https://groups.google.com/d/msgid/beagleboard/8482E576-E05F-4B45-8F30-87B0AFA8D211%40gmail.com?utm_medium=email&utm_source=footer>https://groups.google.com/d/msgid/beagleboard/8482E576-E05F-4B45-8F30-87B0AFA8D211%40gmail.com
>>>>>>>  
>>>>>>> <https://groups.google.com/d/msgid/beagleboard/8482E576-E05F-4B45-8F30-87B0AFA8D211%40gmail.com>.
>>>>>>> 
>>>>>>> For more options, visit  
>>>>>>> <https://groups.google.com/d/optout>https://groups.google.com/d/optout 
>>>>>>> <https://groups.google.com/d/optout>.
>>>>>>> 
>>>>>>> 
>>>>>>> -- 
>>>>>>> For more options, visit http://beagleboard.org/discuss 
>>>>>>> <http://beagleboard.org/discuss>
>>>>>>> --- 
>>>>>>> You received this message because you are subscribed to the Google 
>>>>>>> Groups "BeagleBoard" group.
>>>>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>>>>> an email to beagleboard+unsubscr...@googlegroups.com 
>>>>>>> <mailto:beagleboard+unsubscr...@googlegroups.com>.
>>>>>>> To view this discussion on the web visit  
>>>>>>> <https://groups.google.com/d/msgid/beagleboard/CALHSORqf9j0x91u0XAM1KJLBrc9zMwk_-yzvLMhT3LGagnahyQ%40mail.gmail.com?utm_medium=email&utm_source=footer>https://groups.google.com/d/msgid/beagleboard/CALHSORqf9j0x91u0XAM1KJLBrc9zMwk_-yzvLMhT3LGagnahyQ%40mail.gmail.com
>>>>>>>  
>>>>>>> <https://groups.google.com/d/msgid/beagleboard/CALHSORqf9j0x91u0XAM1KJLBrc9zMwk_-yzvLMhT3LGagnahyQ%40mail.gmail.com>.
>>>>>>> For more options, visit https://groups.google.com/d/optout 
>>>>>>> <https://groups.google.com/d/optout>.
>>>>>> 
>>>>>> -- 
>>>>>> For more options, visit http://beagleboard.org/discuss 
>>>>>> <http://beagleboard.org/discuss>
>>>>>> --- 
>>>>>> You received this message because you are subscribed to the Google 
>>>>>> Groups "BeagleBoard" group.
>>>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>>>> an email to beagleboard+unsubscr...@googlegroups.com 
>>>>>> <mailto:beagleboard+unsubscr...@googlegroups.com>.
>>>>>> To view this discussion on the web visit  
>>>>>> <https://groups.google.com/d/msgid/beagleboard/053B71E7-CF39-4B7C-A7A5-615C9EB197E7%40gmail.com?utm_medium=email&utm_source=footer>https://groups.google.com/d/msgid/beagleboard/053B71E7-CF39-4B7C-A7A5-615C9EB197E7%40gmail.com
>>>>>>  
>>>>>> <https://groups.google.com/d/msgid/beagleboard/053B71E7-CF39-4B7C-A7A5-615C9EB197E7%40gmail.com>.
>>>>>> For more options, visit https://groups.google.com/d/optout 
>>>>>> <https://groups.google.com/d/optout>.
>>>>> 
>>>>> 
>>>>> -- 
>>>>> For more options, visit http://beagleboard.org/discuss 
>>>>> <http://beagleboard.org/discuss>
>>>>> --- 
>>>>> You received this message because you are subscribed to the Google Groups 
>>>>> "BeagleBoard" group.
>>>>> To unsubscribe from this group and stop receiving emails from it, send an 
>>>>> email to beagleboard+unsubscr...@googlegroups.com 
>>>>> <mailto:beagleboard+unsubscr...@googlegroups.com>.
>>>>> To view this discussion on the web visit 
>>>>> https://groups.google.com/d/msgid/beagleboard/5715510F.8000408%40gmail.com
>>>>>  
>>>>> <https://groups.google.com/d/msgid/beagleboard/5715510F.8000408%40gmail.com?utm_medium=email&utm_source=footer>.
>>>>> 
>>>>> For more options, visit https://groups.google.com/d/optout 
>>>>> <https://groups.google.com/d/optout>.
>>>>> 
>>>>> 
>>>>> 
>>>>> -- 
>>>>> For more options, visit http://beagleboard.org/discuss 
>>>>> <http://beagleboard.org/discuss>
>>>>> --- 
>>>>> You received this message because you are subscribed to the Google Groups 
>>>>> "BeagleBoard" group.
>>>>> To unsubscribe from this group and stop receiving emails from it, send an 
>>>>> email to beagleboard+unsubscr...@googlegroups.com 
>>>>> <mailto:beagleboard+unsubscr...@googlegroups.com>.
>>>>> To view this discussion on the web visit 
>>>>> https://groups.google.com/d/msgid/beagleboard/CALHSORr_TRRtZSnUmo-xQFmh%2B8u_RcDXU5zEJjw7ONpg4eOZ5w%40mail.gmail.com
>>>>>  
>>>>> <https://groups.google.com/d/msgid/beagleboard/CALHSORr_TRRtZSnUmo-xQFmh%2B8u_RcDXU5zEJjw7ONpg4eOZ5w%40mail.gmail.com?utm_medium=email&utm_source=footer>.
>>>>> For more options, visit https://groups.google.com/d/optout 
>>>>> <https://groups.google.com/d/optout>.
>>>> 
>>>> 
>>>> -- 
>>>> For more options, visit http://beagleboard.org/discuss 
>>>> <http://beagleboard.org/discuss>
>>>> --- 
>>>> You received this message because you are subscribed to the Google Groups 
>>>> "BeagleBoard" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send an 
>>>> email to beagleboard+unsubscr...@googlegroups.com 
>>>> <mailto:beagleboard+unsubscr...@googlegroups.com>.
>>>> To view this discussion on the web visit 
>>>> https://groups.google.com/d/msgid/beagleboard/3FE12548-00AA-458C-9CB2-A47F0C8AB5A9%40gmail.com
>>>>  
>>>> <https://groups.google.com/d/msgid/beagleboard/3FE12548-00AA-458C-9CB2-A47F0C8AB5A9%40gmail.com?utm_medium=email&utm_source=footer>.
>>>> 
>>>> For more options, visit https://groups.google.com/d/optout 
>>>> <https://groups.google.com/d/optout>.
>>>> 
>>>> 
>>>> -- 
>>>> For more options, visit http://beagleboard.org/discuss 
>>>> <http://beagleboard.org/discuss>
>>>> --- 
>>>> You received this message because you are subscribed to the Google Groups 
>>>> "BeagleBoard" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send an 
>>>> email to beagleboard+unsubscr...@googlegroups.com 
>>>> <mailto:beagleboard+unsubscr...@googlegroups.com>.
>>>> To view this discussion on the web visit 
>>>> https://groups.google.com/d/msgid/beagleboard/CALHSORogR8Ahz1hmp0NAohsLGCO3XqTUowDPmAiPE0azY2AgdQ%40mail.gmail.com
>>>>  
>>>> <https://groups.google.com/d/msgid/beagleboard/CALHSORogR8Ahz1hmp0NAohsLGCO3XqTUowDPmAiPE0azY2AgdQ%40mail.gmail.com?utm_medium=email&utm_source=footer>.
>>>> For more options, visit https://groups.google.com/d/optout 
>>>> <https://groups.google.com/d/optout>.
>>> 
>>> 
>>> -- 
>>> For more options, visit http://beagleboard.org/discuss 
>>> <http://beagleboard.org/discuss>
>>> --- 
>>> You received this message because you are subscribed to the Google Groups 
>>> "BeagleBoard" group.
>>> To unsubscribe from this group and stop receiving emails from it, send an 
>>> email to beagleboard+unsubscr...@googlegroups.com 
>>> <mailto:beagleboard+unsubscr...@googlegroups.com>.
>>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/beagleboard/D0317723-FE78-4873-87FD-1DE8C5FAE57B%40gmail.com
>>>  
>>> <https://groups.google.com/d/msgid/beagleboard/D0317723-FE78-4873-87FD-1DE8C5FAE57B%40gmail.com?utm_medium=email&utm_source=footer>.
>>> 
>>> For more options, visit https://groups.google.com/d/optout 
>>> <https://groups.google.com/d/optout>.
>>> 
>>> 
>>> -- 
>>> For more options, visit http://beagleboard.org/discuss 
>>> <http://beagleboard.org/discuss>
>>> --- 
>>> You received this message because you are subscribed to the Google Groups 
>>> "BeagleBoard" group.
>>> To unsubscribe from this group and stop receiving emails from it, send an 
>>> email to beagleboard+unsubscr...@googlegroups.com 
>>> <mailto:beagleboard+unsubscr...@googlegroups.com>.
>>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/beagleboard/CALHSORrfjv%3DQcrLP%3DpbphSJAFe%2Bf%2B2seAQd%2Bpuq7gGomdM1UuQ%40mail.gmail.com
>>>  
>>> <https://groups.google.com/d/msgid/beagleboard/CALHSORrfjv%3DQcrLP%3DpbphSJAFe%2Bf%2B2seAQd%2Bpuq7gGomdM1UuQ%40mail.gmail.com?utm_medium=email&utm_source=footer>.
>>> For more options, visit https://groups.google.com/d/optout 
>>> <https://groups.google.com/d/optout>.
>> 
>> 
>> -- 
>> For more options, visit http://beagleboard.org/discuss 
>> <http://beagleboard.org/discuss>
>> --- 
>> You received this message because you are subscribed to the Google Groups 
>> "BeagleBoard" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to beagleboard+unsubscr...@googlegroups.com 
>> <mailto:beagleboard+unsubscr...@googlegroups.com>.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/beagleboard/E4F48D04-8F9A-4B26-8439-10E878DE2767%40gmail.com
>>  
>> <https://groups.google.com/d/msgid/beagleboard/E4F48D04-8F9A-4B26-8439-10E878DE2767%40gmail.com?utm_medium=email&utm_source=footer>.
>> 
>> For more options, visit https://groups.google.com/d/optout 
>> <https://groups.google.com/d/optout>.
>> 
>> 
>> -- 
>> For more options, visit http://beagleboard.org/discuss 
>> <http://beagleboard.org/discuss>
>> --- 
>> You received this message because you are subscribed to the Google Groups 
>> "BeagleBoard" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to beagleboard+unsubscr...@googlegroups.com 
>> <mailto:beagleboard+unsubscr...@googlegroups.com>.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/beagleboard/CALHSORoHsyHaqMnzK1C_E2Rt2zQcWE1PMASS0S6vgDxDiOxCGw%40mail.gmail.com
>>  
>> <https://groups.google.com/d/msgid/beagleboard/CALHSORoHsyHaqMnzK1C_E2Rt2zQcWE1PMASS0S6vgDxDiOxCGw%40mail.gmail.com?utm_medium=email&utm_source=footer>.
>> For more options, visit https://groups.google.com/d/optout 
>> <https://groups.google.com/d/optout>.
> 
> 
> -- 
> For more options, visit http://beagleboard.org/discuss 
> <http://beagleboard.org/discuss>
> --- 
> You received this message because you are subscribed to the Google Groups 
> "BeagleBoard" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to beagleboard+unsubscr...@googlegroups.com 
> <mailto:beagleboard+unsubscr...@googlegroups.com>.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/beagleboard/C3044AEC-BE7C-4510-B7D7-CF5B97E47806%40gmail.com
>  
> <https://groups.google.com/d/msgid/beagleboard/C3044AEC-BE7C-4510-B7D7-CF5B97E47806%40gmail.com?utm_medium=email&utm_source=footer>.
> 
> For more options, visit https://groups.google.com/d/optout 
> <https://groups.google.com/d/optout>.
> 
> 
> -- 
> For more options, visit http://beagleboard.org/discuss 
> <http://beagleboard.org/discuss>
> --- 
> You received this message because you are subscribed to the Google Groups 
> "BeagleBoard" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to beagleboard+unsubscr...@googlegroups.com 
> <mailto:beagleboard+unsubscr...@googlegroups.com>.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/beagleboard/CALHSORq1byP6i%2Bq8%3D_4H6REasjJDjGzcqZho5pHD8x2xaGN1Mg%40mail.gmail.com
>  
> <https://groups.google.com/d/msgid/beagleboard/CALHSORq1byP6i%2Bq8%3D_4H6REasjJDjGzcqZho5pHD8x2xaGN1Mg%40mail.gmail.com?utm_medium=email&utm_source=footer>.
> For more options, visit https://groups.google.com/d/optout 
> <https://groups.google.com/d/optout>.

-- 
For more options, visit http://beagleboard.org/discuss
--- 
You received this message because you are subscribed to the Google Groups 
"BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to beagleboard+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/beagleboard/147FA705-1647-42E1-9828-3B868F69E8D2%40gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to