SpecialePrestiti.

2011-12-16 Thread TERNET
SpecialePrestiti.
Nuove proposte per le famiglie e le aziende.
Visiti il sito
SpecialePrestiti.
per non ricevere ulteriori news clicchi qui

--
Learn Windows Azure Live!  Tuesday, Dec 13, 2011
Microsoft is holding a special Learn Windows Azure training event for 
developers. It will provide a great way to learn Windows Azure and what it 
provides. You can attend the event by watching it streamed LIVE online.  
Learn more at http://p.sf.net/sfu/ms-windowsazure
___
spi-devel-general mailing list
spi-devel-general@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/spi-devel-general


jusqu'à 80% d'économies : dernières livraisons avant Noel !

2011-12-16 Thread Cdiscount par Galeriedesmarques.fr
Pour voir le message, veuillez utiliser un lecteur de mail compatible HTML

Lien miroir : 
http://mail.mc10.fr/mc10_m/YT04JmI9Mzk4MyZjPTE5NjE2NDEmZD0yMDExLTEyLTE2IDE5OjIwOjAxJmU9MSZoPTM5ODMmZj0zOTgzJmc9Mzk4Mw==

Lien de désinscription : 
http://mail.mc10.fr/mc10_unsub/YT04JmI9Mzk4MyZjPTE5NjE2NDEmZD0yMDExLTEyLTE2IDE5OjIwOjAxJmU9MSZoPTM5ODMmZj0zOTgzJmc9Mzk4Mw==


--
Learn Windows Azure Live!  Tuesday, Dec 13, 2011
Microsoft is holding a special Learn Windows Azure training event for 
developers. It will provide a great way to learn Windows Azure and what it 
provides. You can attend the event by watching it streamed LIVE online.  
Learn more at http://p.sf.net/sfu/ms-windowsazure
___
spi-devel-general mailing list
spi-devel-general@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/spi-devel-general


Re: [PATCH v2] spi: Fix device unregistration when unregistering the bus master

2011-12-16 Thread Laurent Pinchart
Hi Grant,

On Friday 16 December 2011 17:59:20 Grant Likely wrote:
> On Fri, Dec 16, 2011 at 9:52 AM, Laurent Pinchart wrote:
> > On Wednesday 14 December 2011 00:45:20 Grant Likely wrote:
> >> On Mon, Dec 12, 2011 at 01:15:06AM +0100, Laurent Pinchart wrote:
> >> > Device are added as children of the bus master's parent device, but
> >> > spi_unregister_master() looks for devices to unregister in the bus
> >> > master's children. This results in the child devices not being
> >> > unregistered.
> >> > 
> >> > Fix this by registering devices as direct children of the bus master.
> >> > 
> >> > Signed-off-by: Laurent Pinchart 
> >> > ---
> >> > 
> >> >  drivers/spi/spi.c |2 +-
> >> >  1 files changed, 1 insertions(+), 1 deletions(-)
> >> > 
> >> > diff --git a/drivers/spi/spi.c b/drivers/spi/spi.c
> >> > index 2e13a14..b423fe9 100644
> >> > --- a/drivers/spi/spi.c
> >> > +++ b/drivers/spi/spi.c
> >> > @@ -318,7 +318,7 @@ struct spi_device *spi_alloc_device(struct
> >> > spi_master *master)
> >> > 
> >> > }
> >> > 
> >> > spi->master = master;
> >> > 
> >> > -   spi->dev.parent = dev;
> >> > +   spi->dev.parent = &master->dev;
> >> > 
> >> > spi->dev.bus = &spi_bus_type;
> >> > spi->dev.release = spidev_release;
> >> > device_initialize(&spi->dev);
> >> 
> >> Yes, I agree and I think this is the correct fix.  However, I'd like
> >> to make sure it behaves correctly.  Can you test and confirm that
> >> with this patch in place and an spi_device in use (bound to a driver)
> >> that the kernel will either refuse to unbind the driver, or correctly
> >> release the spi_driver from the spi_device?
> > 
> > $ ls -l /sys/bus/spi/devices/spi0.0/
> > lrwxrwxrwx1 root root0 Jan  1 01:23 driver ->
> > ../../../../../../bus/spi/drivers/m25p80
> > -r--r--r--1 root root 4096 Jan  1 01:23 modalias
> > drwxr-xr-x4 root root0 Jan  1 01:23 mtd
> > drwxr-xr-x2 root root0 Jan  1 01:23 power
> > lrwxrwxrwx1 root root0 Jan  1 01:23 subsystem ->
> > ../../../../../../bus/spi
> > -rw-r--r--1 root root 4096 Jan  1 01:23 uevent
> > 
> > $ ls -l /dev/mtd1*
> > crw-rw1 root root  90,   2 Jan  1 01:23 /dev/mtd1
> > crw-rw1 root root  90,   3 Jan  1 01:23 /dev/mtd1ro
> > 
> > $ echo spi0.0 > /sys/bus/spi/drivers/m25p80/unbind
> > 
> > $ ls -l /sys/bus/spi/devices/spi0.0/
> > -r--r--r--1 root root 4096 Jan  1 01:23 modalias
> > drwxr-xr-x2 root root0 Jan  1 01:23 power
> > lrwxrwxrwx1 root root0 Jan  1 01:23 subsystem ->
> > ../../../../../../bus/spi
> > -rw-r--r--1 root root 4096 Jan  1 01:23 uevent
> > 
> > $ ls -l /dev/mtd1*
> > ls: /dev/mtd1*: No such file or directory
> > 
> > Is that what you were asking for ?
> 
> Not really, I was referring to having an spi_device in use, and then
> attempting to unbind/remove the spi_master driver.

Sorry.

My board has a single SPI device, which is an MTD flash. I've tried keeping 
/dev/mtd1 open and unloading the SPI master driver. This unfortunately 
succeed, and accessing /dev/mtd1 then results in a kernel crash.

However, a probably even worse news is that my patch doesn't make things 
worse: the problem can be reproduced with a vanilla v3.0.

-- 
Regards,

Laurent Pinchart

--
Learn Windows Azure Live!  Tuesday, Dec 13, 2011
Microsoft is holding a special Learn Windows Azure training event for 
developers. It will provide a great way to learn Windows Azure and what it 
provides. You can attend the event by watching it streamed LIVE online.  
Learn more at http://p.sf.net/sfu/ms-windowsazure
___
spi-devel-general mailing list
spi-devel-general@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/spi-devel-general


Re: [PATCH v2] spi: Fix device unregistration when unregistering the bus master

2011-12-16 Thread Grant Likely
On Fri, Dec 16, 2011 at 9:52 AM, Laurent Pinchart
 wrote:
> Hi Grant,
>
> On Wednesday 14 December 2011 00:45:20 Grant Likely wrote:
>> On Mon, Dec 12, 2011 at 01:15:06AM +0100, Laurent Pinchart wrote:
>> > Device are added as children of the bus master's parent device, but
>> > spi_unregister_master() looks for devices to unregister in the bus
>> > master's children. This results in the child devices not being
>> > unregistered.
>> >
>> > Fix this by registering devices as direct children of the bus master.
>> >
>> > Signed-off-by: Laurent Pinchart 
>> > ---
>> >
>> >  drivers/spi/spi.c |    2 +-
>> >  1 files changed, 1 insertions(+), 1 deletions(-)
>> >
>> > diff --git a/drivers/spi/spi.c b/drivers/spi/spi.c
>> > index 2e13a14..b423fe9 100644
>> > --- a/drivers/spi/spi.c
>> > +++ b/drivers/spi/spi.c
>> > @@ -318,7 +318,7 @@ struct spi_device *spi_alloc_device(struct spi_master
>> > *master)
>> >
>> >     }
>> >
>> >     spi->master = master;
>> >
>> > -   spi->dev.parent = dev;
>> > +   spi->dev.parent = &master->dev;
>> >
>> >     spi->dev.bus = &spi_bus_type;
>> >     spi->dev.release = spidev_release;
>> >     device_initialize(&spi->dev);
>>
>> Yes, I agree and I think this is the correct fix.  However, I'd like
>> to make sure it behaves correctly.  Can you test and confirm that
>> with this patch in place and an spi_device in use (bound to a driver)
>> that the kernel will either refuse to unbind the driver, or correctly
>> release the spi_driver from the spi_device?
>
> $ ls -l /sys/bus/spi/devices/spi0.0/
> lrwxrwxrwx    1 root     root            0 Jan  1 01:23 driver ->
> ../../../../../../bus/spi/drivers/m25p80
> -r--r--r--    1 root     root         4096 Jan  1 01:23 modalias
> drwxr-xr-x    4 root     root            0 Jan  1 01:23 mtd
> drwxr-xr-x    2 root     root            0 Jan  1 01:23 power
> lrwxrwxrwx    1 root     root            0 Jan  1 01:23 subsystem ->
> ../../../../../../bus/spi
> -rw-r--r--    1 root     root         4096 Jan  1 01:23 uevent
>
> $ ls -l /dev/mtd1*
> crw-rw    1 root     root      90,   2 Jan  1 01:23 /dev/mtd1
> crw-rw    1 root     root      90,   3 Jan  1 01:23 /dev/mtd1ro
>
> $ echo spi0.0 > /sys/bus/spi/drivers/m25p80/unbind
>
> $ ls -l /sys/bus/spi/devices/spi0.0/
> -r--r--r--    1 root     root         4096 Jan  1 01:23 modalias
> drwxr-xr-x    2 root     root            0 Jan  1 01:23 power
> lrwxrwxrwx    1 root     root            0 Jan  1 01:23 subsystem ->
> ../../../../../../bus/spi
> -rw-r--r--    1 root     root         4096 Jan  1 01:23 uevent
>
> $ ls -l /dev/mtd1*
> ls: /dev/mtd1*: No such file or directory
>
> Is that what you were asking for ?

Not really, I was referring to having an spi_device in use, and then
attempting to unbind/remove the spi_master driver.

g.

--
Learn Windows Azure Live!  Tuesday, Dec 13, 2011
Microsoft is holding a special Learn Windows Azure training event for 
developers. It will provide a great way to learn Windows Azure and what it 
provides. You can attend the event by watching it streamed LIVE online.  
Learn more at http://p.sf.net/sfu/ms-windowsazure
___
spi-devel-general mailing list
spi-devel-general@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/spi-devel-general


Re: [PATCH v2] spi: Fix device unregistration when unregistering the bus master

2011-12-16 Thread Laurent Pinchart
Hi Grant,

On Wednesday 14 December 2011 00:45:20 Grant Likely wrote:
> On Mon, Dec 12, 2011 at 01:15:06AM +0100, Laurent Pinchart wrote:
> > Device are added as children of the bus master's parent device, but
> > spi_unregister_master() looks for devices to unregister in the bus
> > master's children. This results in the child devices not being
> > unregistered.
> > 
> > Fix this by registering devices as direct children of the bus master.
> > 
> > Signed-off-by: Laurent Pinchart 
> > ---
> > 
> >  drivers/spi/spi.c |2 +-
> >  1 files changed, 1 insertions(+), 1 deletions(-)
> > 
> > diff --git a/drivers/spi/spi.c b/drivers/spi/spi.c
> > index 2e13a14..b423fe9 100644
> > --- a/drivers/spi/spi.c
> > +++ b/drivers/spi/spi.c
> > @@ -318,7 +318,7 @@ struct spi_device *spi_alloc_device(struct spi_master
> > *master)
> > 
> > }
> > 
> > spi->master = master;
> > 
> > -   spi->dev.parent = dev;
> > +   spi->dev.parent = &master->dev;
> > 
> > spi->dev.bus = &spi_bus_type;
> > spi->dev.release = spidev_release;
> > device_initialize(&spi->dev);
> 
> Yes, I agree and I think this is the correct fix.  However, I'd like
> to make sure it behaves correctly.  Can you test and confirm that
> with this patch in place and an spi_device in use (bound to a driver)
> that the kernel will either refuse to unbind the driver, or correctly
> release the spi_driver from the spi_device?

$ ls -l /sys/bus/spi/devices/spi0.0/
lrwxrwxrwx1 root root0 Jan  1 01:23 driver -> 
../../../../../../bus/spi/drivers/m25p80
-r--r--r--1 root root 4096 Jan  1 01:23 modalias
drwxr-xr-x4 root root0 Jan  1 01:23 mtd
drwxr-xr-x2 root root0 Jan  1 01:23 power
lrwxrwxrwx1 root root0 Jan  1 01:23 subsystem -> 
../../../../../../bus/spi
-rw-r--r--1 root root 4096 Jan  1 01:23 uevent

$ ls -l /dev/mtd1*
crw-rw1 root root  90,   2 Jan  1 01:23 /dev/mtd1
crw-rw1 root root  90,   3 Jan  1 01:23 /dev/mtd1ro

$ echo spi0.0 > /sys/bus/spi/drivers/m25p80/unbind

$ ls -l /sys/bus/spi/devices/spi0.0/
-r--r--r--1 root root 4096 Jan  1 01:23 modalias
drwxr-xr-x2 root root0 Jan  1 01:23 power
lrwxrwxrwx1 root root0 Jan  1 01:23 subsystem -> 
../../../../../../bus/spi
-rw-r--r--1 root root 4096 Jan  1 01:23 uevent

$ ls -l /dev/mtd1*
ls: /dev/mtd1*: No such file or directory

Is that what you were asking for ?

-- 
Regards,

Laurent Pinchart

--
Learn Windows Azure Live!  Tuesday, Dec 13, 2011
Microsoft is holding a special Learn Windows Azure training event for 
developers. It will provide a great way to learn Windows Azure and what it 
provides. You can attend the event by watching it streamed LIVE online.  
Learn more at http://p.sf.net/sfu/ms-windowsazure
___
spi-devel-general mailing list
spi-devel-general@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/spi-devel-general