<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/parport, branch linux-3.12.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.12.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.12.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2015-05-03T09:08:52Z</updated>
<entry>
<title>drivers: parport: Kconfig: exclude arm64 for PARPORT_PC</title>
<updated>2015-05-03T09:08:52Z</updated>
<author>
<name>Guenter Roeck</name>
</author>
<published>2015-04-23T05:23:54Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=647385a0a32db8bf075b1c6d03b01d0c24d55c91'/>
<id>urn:sha1:647385a0a32db8bf075b1c6d03b01d0c24d55c91</id>
<content type='text'>
Fix build problem seen with arm64:allmodconfig.

drivers/parport/parport_pc.c:67:25: fatal error: asm/parport.h: No such file or
directory

arm64 does not support PARPORT_PC.

Signed-off-by: Guenter Roeck &lt;linux@roeck-us.net&gt;
Signed-off-by: Jiri Slaby &lt;jslaby@suse.cz&gt;
</content>
</entry>
<entry>
<title>parport: parport_pc, do not remove parent devices early</title>
<updated>2015-02-16T15:10:57Z</updated>
<author>
<name>Jiri Slaby</name>
</author>
<published>2014-11-21T09:05:09Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=677984600a8de443ca9596998e96d70dfc8f5525'/>
<id>urn:sha1:677984600a8de443ca9596998e96d70dfc8f5525</id>
<content type='text'>
commit 91905b6f4afe51e23a3f58df93e4cdc5e49cf40c upstream.

When the parport_pc module is removed from the system, all parport
devices are iterated in parport_pc_exit and removed by a call to
parport_pc_unregister_port. Note that some parport devices have its
'struct device' parent, known as port-&gt;dev.  And when port-&gt;dev is a
platform device, it is destroyed in parport_pc_exit too.

Now, when parport_pc_unregister_port is called for a going port,
drv-&gt;detach(port) is called for every parport driver in the system.
ppdev can be one of them. ppdev's detach() tears down its per-port
sysfs directory, which established port-&gt;dev as a parent earlier.

But since parport_pc_exit kills port-&gt;dev parents before unregisters
ports proper, ppdev's sysfs directory has no living parent anymore.
This results in the following warning:

WARNING: CPU: 1 PID: 785 at fs/sysfs/group.c:219 sysfs_remove_group+0x9b/0xa0
sysfs group ffffffff81c69e20 not found for kobject 'parport1'
Modules linked in: parport_pc(E-) ppdev(E) [last unloaded: ppdev]
CPU: 1 PID: 785 Comm: rmmod Tainted: G        W   E  3.18.0-rc5-next-20141120+ #824
...
Call Trace:
...
 [&lt;ffffffff810aff76&gt;] warn_slowpath_fmt+0x46/0x50
 [&lt;ffffffff8123d81b&gt;] sysfs_remove_group+0x9b/0xa0
 [&lt;ffffffff814c27e7&gt;] dpm_sysfs_remove+0x57/0x60
 [&lt;ffffffff814b6ac9&gt;] device_del+0x49/0x240
 [&lt;ffffffff814b6ce2&gt;] device_unregister+0x22/0x70
 [&lt;ffffffff814b6dac&gt;] device_destroy+0x3c/0x50
 [&lt;ffffffffc012209a&gt;] pp_detach+0x4a/0x60 [ppdev]
 [&lt;ffffffff814b32dd&gt;] parport_remove_port+0x11d/0x150
 [&lt;ffffffffc0137328&gt;] parport_pc_unregister_port+0x28/0xf0 [parport_pc]
 [&lt;ffffffffc0138c0e&gt;] parport_pc_exit+0x76/0x468 [parport_pc]
 [&lt;ffffffff81128dbc&gt;] SyS_delete_module+0x18c/0x230

It is also easily reproducible on qemu with two dummy ports '-parallel
/dev/null -parallel /dev/null'.

So switch the order of killing the two structures. But since port is
freed by parport_pc_unregister_port, we have to remember port-&gt;dev
in a local variable.

Perhaps nothing worse than the warning happens thanks to the device
refcounting. We *should* be on the safe side.

Signed-off-by: Jiri Slaby &lt;jslaby@suse.cz&gt;
Reviewed-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Tested-by: Martin Pluskal &lt;mpluskal@suse.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
Signed-off-by: Jiri Slaby &lt;jslaby@suse.cz&gt;
</content>
</entry>
<entry>
<title>parport: Add support for the WCH353 1S/1P multi-IO card</title>
<updated>2014-11-19T22:30:56Z</updated>
<author>
<name>Ezequiel Garcia</name>
</author>
<published>2014-05-24T18:24:51Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=8d6960fa02a523485d20ae8bd4bf3b6731f00937'/>
<id>urn:sha1:8d6960fa02a523485d20ae8bd4bf3b6731f00937</id>
<content type='text'>
commit feb5814254094c306429fe6d7b9c534fa0250f4c upstream.

This Multi-IO card has one serial 16550-like and one parallel port connector.
Here's the lspci output, after this commit is applied:

03:07.0 Serial controller: Device 4348:5053 (rev 10) (prog-if 02 [16550])
	Subsystem: Device 4348:5053
	Control: I/O+ Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
	Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium &gt;TAbort- &lt;TAbort- &lt;MAbort- &gt;SERR- &lt;PERR- INTx-
	Interrupt: pin A routed to IRQ 21
	Region 0: I/O ports at cf00 [size=8]
	Region 1: I/O ports at ce00 [size=8]
	Kernel driver in use: parport_serial
	Kernel modules: 8250_pci, parport_serial

This commit adds an entry with the device ID to the blacklist declared in
8250_pci to prevent the driver from taking ownership. Also, and as was done
for the 2S/1P variant, add a quirk to skip autodetection and set the correct
type to 16550A clone.

Proper entries are added to parport_serial, to support the device parallel
and serial ports.

Cc: Gianluca Anzolin &lt;gianluca@sottospazio.it&gt;
Cc: Alan Cox &lt;alan@linux.intel.com&gt;
Cc: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
Signed-off-by: Ezequiel Garcia &lt;ezequiel.garcia@free-electrons.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
Signed-off-by: Jiri Slaby &lt;jslaby@suse.cz&gt;
</content>
</entry>
<entry>
<title>parport: parport_pc: remove double PCI ID for NetMos</title>
<updated>2014-02-06T19:22:18Z</updated>
<author>
<name>Sebastian Andrzej Siewior</name>
</author>
<published>2013-11-27T16:43:43Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=205744c9418264b706f6e753b5cc62ecb38a6804'/>
<id>urn:sha1:205744c9418264b706f6e753b5cc62ecb38a6804</id>
<content type='text'>
commit d6a484520c5572a4170fa915109ccfc0c38f5008 upstream.

In commit 85747f ("PATCH] parport: add NetMOS 9805 support") Max added
the PCI ID for NetMOS 9805 based on a Debian bug report from 2k4 which
was at the v2.4.26 time frame. The patch made into 2.6.14.
Shortly before that patch akpm merged commit 296d3c783b ("[PATCH] Support
NetMOS based PCI cards providing serial and parallel ports") which made
into v2.6.9-rc1.
Now we have two different entries for the same PCI id.
I have here the NetMos 9805 which claims to support SPP/EPP/ECP mode.
This patch takes Max's entry for titan_1284p1 (base != -1 specifies the
ioport for ECP mode) and replaces akpm's entry for netmos_9805 which
specified -1 (=none). Both share the same PCI-ID (my card has subsystem
0x1000 / 0x0020 so it should match PCI_ANY).

While here I also drop the entry for titan_1284p2 which is the same as
netmos_9815.

Cc: Maximilian Attems &lt;maks@stro.at&gt;
Signed-off-by: Sebastian Andrzej Siewior &lt;bigeasy@linutronix.de&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>drivers: parport: Kconfig: exclude h8300 for PARPORT_PC</title>
<updated>2013-08-30T19:08:04Z</updated>
<author>
<name>Chen Gang</name>
</author>
<published>2013-08-30T04:09:57Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d94bb2d756e525a7c67fa71762227533d48b03c9'/>
<id>urn:sha1:d94bb2d756e525a7c67fa71762227533d48b03c9</id>
<content type='text'>
h8300 does not support PARPORT_PC.

The related error (with allmodconfig for h8300):

    CC [M]  drivers/parport/parport_pc.o
  drivers/parport/parport_pc.c:67:25: fatal error: asm/parport.h: No such file or directory

Signed-off-by: Chen Gang &lt;gang.chen@asianux.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>parport: amiga: remove unnecessary platform_set_drvdata()</title>
<updated>2013-08-28T04:39:16Z</updated>
<author>
<name>Jingoo Han</name>
</author>
<published>2013-08-22T02:14:43Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c06ca9ae8445fbda04f2d8b55863c84e43acde31'/>
<id>urn:sha1:c06ca9ae8445fbda04f2d8b55863c84e43acde31</id>
<content type='text'>
The driver core clears the driver data to NULL after device_release
or on probe failure. Thus, it is not needed to manually clear the
device driver data to NULL.

Signed-off-by: Jingoo Han &lt;jg1.han@samsung.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>Merge branch 'akpm' (updates from Andrew Morton)</title>
<updated>2013-07-04T00:12:13Z</updated>
<author>
<name>Linus Torvalds</name>
</author>
<published>2013-07-04T00:12:13Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=7f0ef0267e20d62d45d527911a993b1e998f4968'/>
<id>urn:sha1:7f0ef0267e20d62d45d527911a993b1e998f4968</id>
<content type='text'>
Merge first patch-bomb from Andrew Morton:
 - various misc bits
 - I'm been patchmonkeying ocfs2 for a while, as Joel and Mark have been
   distracted.  There has been quite a bit of activity.
 - About half the MM queue
 - Some backlight bits
 - Various lib/ updates
 - checkpatch updates
 - zillions more little rtc patches
 - ptrace
 - signals
 - exec
 - procfs
 - rapidio
 - nbd
 - aoe
 - pps
 - memstick
 - tools/testing/selftests updates

* emailed patches from Andrew Morton &lt;akpm@linux-foundation.org&gt;: (445 commits)
  tools/testing/selftests: don't assume the x bit is set on scripts
  selftests: add .gitignore for kcmp
  selftests: fix clean target in kcmp Makefile
  selftests: add .gitignore for vm
  selftests: add hugetlbfstest
  self-test: fix make clean
  selftests: exit 1 on failure
  kernel/resource.c: remove the unneeded assignment in function __find_resource
  aio: fix wrong comment in aio_complete()
  drivers/w1/slaves/w1_ds2408.c: add magic sequence to disable P0 test mode
  drivers/memstick/host/r592.c: convert to module_pci_driver
  drivers/memstick/host/jmb38x_ms: convert to module_pci_driver
  pps-gpio: add device-tree binding and support
  drivers/pps/clients/pps-gpio.c: convert to module_platform_driver
  drivers/pps/clients/pps-gpio.c: convert to devm_* helpers
  drivers/parport/share.c: use kzalloc
  Documentation/accounting/getdelays.c: avoid strncpy in accounting tool
  aoe: update internal version number to v83
  aoe: update copyright date
  aoe: perform I/O completions in parallel
  ...
</content>
</entry>
<entry>
<title>drivers/parport/share.c: use kzalloc</title>
<updated>2013-07-03T23:08:06Z</updated>
<author>
<name>Alexandru Gheorghiu</name>
</author>
<published>2013-07-03T22:09:09Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c32df4e182e5bf40edde45da247318986d3cbf91'/>
<id>urn:sha1:c32df4e182e5bf40edde45da247318986d3cbf91</id>
<content type='text'>
Replaced calls to kmalloc and memset with kzalloc.
Patch found using coccinelle.

Signed-off-by: Alexandru Gheorghiu &lt;gheorghiuandru@gmail.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>parport: disable PC-style parallel port support on cris</title>
<updated>2013-06-16T11:47:44Z</updated>
<author>
<name>Geert Uytterhoeven</name>
</author>
<published>2013-05-15T20:51:15Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=cb1ff5f90e1550d5752521205506b99f1aa8b1e0'/>
<id>urn:sha1:cb1ff5f90e1550d5752521205506b99f1aa8b1e0</id>
<content type='text'>
Signed-off-by: Geert Uytterhoeven &lt;geert@linux-m68k.org&gt;
</content>
</entry>
<entry>
<title>parisc: parport0: fix this legacy no-device port driver!</title>
<updated>2013-06-01T12:46:42Z</updated>
<author>
<name>Helge Deller</name>
</author>
<published>2013-05-30T21:06:39Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4edb38695d9a3cd62739f8595e21f36f0aabf4c2'/>
<id>urn:sha1:4edb38695d9a3cd62739f8595e21f36f0aabf4c2</id>
<content type='text'>
Fix the above kernel error from parport_announce_port() on 32bit GSC
machines (e.g. B160L). The parport driver requires now a pointer to the
device struct.

Signed-off-by: Helge Deller &lt;deller@gmx.de&gt;
</content>
</entry>
</feed>
