All of lore.kernel.org
 help / color / mirror / Atom feed
From: Hannes Reinecke <hare@suse.de>
To: Ondrej Zary <linux@zary.sk>,
	Damien Le Moal <damien.lemoal@opensource.wdc.com>
Cc: Christoph Hellwig <hch@lst.de>,
	Sergey Shtylyov <s.shtylyov@omp.ru>, Jens Axboe <axboe@kernel.dk>,
	Tim Waugh <tim@cyberelk.net>,
	linux-block@vger.kernel.org, linux-parport@lists.infradead.org,
	linux-ide@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2] pata_parport: add driver (PARIDE replacement)
Date: Tue, 24 Jan 2023 11:02:21 +0100	[thread overview]
Message-ID: <45e64c7c-8a78-d15c-0cc5-9ba465acf691@suse.de> (raw)
In-Reply-To: <20230121225314.32459-1-linux@zary.sk>

On 1/21/23 23:53, Ondrej Zary wrote:
> The pata_parport is a libata-based replacement of the old PARIDE
> subsystem - driver for parallel port IDE devices.
> It uses the original paride low-level protocol drivers but does not
> need the high-level drivers (pd, pcd, pf, pt, pg). The IDE devices
> behind parallel port adapters are handled by the ATA layer.
> 
> This will allow paride and its high-level drivers to be removed.
> 
> Unfortunately, libata drivers cannot sleep so pata_parport claims
> parport before activating the ata host and keeps it claimed (and
> protocol connected) until the ata host is removed. This means that
> no devices can be chained (neither other pata_parport devices nor
> a printer).
> 
> paride and pata_parport are mutually exclusive because the compiled
> protocol drivers are incompatible.
> 
> Tested with:
>   - Imation SuperDisk LS-120 and HP C4381A (EPAT)
>   - Freecom Parallel CD (FRPW)
>   - Toshiba Mobile CD-RW 2793008 w/Freecom Parallel Cable rev.903 (FRIQ)
>   - Backpack CD-RW 222011 and CD-RW 19350 (BPCK6)
> 
> The following bugs in low-level protocol drivers were found and will
> be fixed later:
> 
> Note: EPP-32 mode is buggy in EPAT - and also in all other protocol
> drivers - they don't handle non-multiple-of-4 block transfers
> correctly. This causes problems with LS-120 drive.
> There is also another bug in EPAT: EPP modes don't work unless a 4-bit
> or 8-bit mode is used first (probably some initialization missing?).
> Once the device is initialized, EPP works until power cycle.
> 
> So after device power on, you have to:
> echo "parport0 epat 0" >/sys/bus/pata_parport/new_device
> echo pata_parport.0 >/sys/bus/pata_parport/delete_device
> echo "parport0 epat 4" >/sys/bus/pata_parport/new_device
> (autoprobe will initialize correctly as it tries the slowest modes
> first but you'll get the broken EPP-32 mode)
> 
> Note: EPP modes are buggy in FRPW, only modes 0 and 1 work.
> Signed-off-by: Ondrej Zary <linux@zary.sk>
> ---
> 
> Changes in v2:
>   - keep device connected, remove disconnect timer
> 
>   Documentation/admin-guide/blockdev/paride.rst |  52 ++
>   drivers/Makefile                              |   2 +-
>   drivers/ata/Kconfig                           |  14 +
>   drivers/ata/Makefile                          |   2 +
>   drivers/ata/pata_parport.c                    | 783 ++++++++++++++++++
>   drivers/block/paride/Kconfig                  |  32 +-
>   drivers/block/paride/paride.h                 |  13 +
>   include/linux/pata_parport.h                  | 106 +++
>   8 files changed, 987 insertions(+), 17 deletions(-)
>   create mode 100644 drivers/ata/pata_parport.c
>   create mode 100644 include/linux/pata_parport.h
> 
Reviewed-by: Hannes Reinecke <hare@suse.de>

Cheers,

Hannes
-- 
Dr. Hannes Reinecke		           Kernel Storage Architect
hare@suse.de			                  +49 911 74053 688
SUSE Software Solutions Germany GmbH, Maxfeldstr. 5, 90409 Nürnberg
HRB 36809 (AG Nürnberg), GF: Felix Imendörffer


      parent reply	other threads:[~2023-01-24 10:03 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-01-21 22:53 [PATCH v2] pata_parport: add driver (PARIDE replacement) Ondrej Zary
2023-01-22  7:57 ` Christoph Hellwig
2023-01-22 18:14   ` [PATCH] paride: Mark PARIDE as deprecated, point to PATA_PARPORT Ondrej Zary
2023-01-22 19:11     ` Sergey Shtylyov
2023-01-22 20:10       ` [PATCH v2] " Ondrej Zary
2023-01-23  7:38     ` [PATCH] " Hannes Reinecke
2023-01-22 18:24   ` [PATCH v2] pata_parport: add driver (PARIDE replacement) Jens Axboe
2023-01-23  1:15     ` Damien Le Moal
2023-01-23  6:52     ` Christoph Hellwig
2023-01-23 14:05       ` Jens Axboe
2023-01-23  7:37     ` Hannes Reinecke
2023-01-23  1:03 ` Damien Le Moal
2023-01-23 19:09   ` [PATCH v3] " Ondrej Zary
2023-01-30  3:30     ` Damien Le Moal
2023-01-30  3:44       ` Jens Axboe
2023-01-30  6:48         ` Christoph Hellwig
2023-01-30  7:10           ` Damien Le Moal
2023-01-30 15:25             ` Jens Axboe
2023-01-30 23:18               ` Damien Le Moal
2023-01-30 15:24           ` Jens Axboe
2023-01-30 21:10       ` [PATCH 1/2] drivers/block: Remove PARIDE core and high-level protocols Ondrej Zary
2023-01-30 21:10         ` [PATCH 2/2] drivers/block: Move PARIDE protocol modules to drivers/ata/pata_parport Ondrej Zary
2023-01-30 23:24           ` Jens Axboe
2023-01-31  2:05           ` Damien Le Moal
2023-01-31 10:24             ` Ondrej Zary
2023-01-31 11:36               ` Damien Le Moal
2023-01-30 23:24         ` [PATCH 1/2] drivers/block: Remove PARIDE core and high-level protocols Jens Axboe
2023-01-23 19:13   ` [PATCH v2] pata_parport: add driver (PARIDE replacement) Ondrej Zary
2023-01-24 10:02 ` Hannes Reinecke [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=45e64c7c-8a78-d15c-0cc5-9ba465acf691@suse.de \
    --to=hare@suse.de \
    --cc=axboe@kernel.dk \
    --cc=damien.lemoal@opensource.wdc.com \
    --cc=hch@lst.de \
    --cc=linux-block@vger.kernel.org \
    --cc=linux-ide@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-parport@lists.infradead.org \
    --cc=linux@zary.sk \
    --cc=s.shtylyov@omp.ru \
    --cc=tim@cyberelk.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.