summaryrefslogtreecommitdiff
path: root/drivers/ata/pata_parport
AgeCommit message (Collapse)Author
2023-03-23ata: pata_parport-bpck6: remove parallel port bit definesOndrej Zary
Remove port_stb, port_afd, cmd_stb, port_init, data_stb and port_sel defines and use standard PARPORT_CONTROL_* instead. Signed-off-by: Ondrej Zary <linux@zary.sk> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
2023-03-23ata: pata_parport-bpck6: remove struct ppc_storageOndrej Zary
Store the remaining two variables (cur_ctrl and ppc_flags) in struct ppc_storage directly in pi->private and remove struct ppc_storage. Signed-off-by: Ondrej Zary <linux@zary.sk> Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
2023-03-23ata: pata_parport-bpck6: remove mode from struct ppc_storageOndrej Zary
introduce mode_map[] that maps bpck6 modes to ppc6 modes and use it to replace mode in ppc_storage Signed-off-by: Ondrej Zary <linux@zary.sk> Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
2023-03-23ata: pata_parport-bpck6: remove org_* from struct ppc_storageOndrej Zary
org_data duplicates saved_r0 and org_ctrl duplicates saved_r2 in pi->unit. Remove them. Signed-off-by: Ondrej Zary <linux@zary.sk> Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
2023-03-23ata: pata_parport-bpck6: remove ppc_id from struct ppc_storageOndrej Zary
ppc_id duplicates pi->unit. Remove it. Signed-off-by: Ondrej Zary <linux@zary.sk> Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
2023-03-23ata: pata_parport-bpck6: remove lpt_addr from struct ppc_storageOndrej Zary
lpt_addr duplicates pi->port. Remove it. Signed-off-by: Ondrej Zary <linux@zary.sk> Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
2023-03-23ata: pata_parport-bpck6: pass around struct pi_adapter *Ondrej Zary
Remove Interface typedef, pass around struct pi_adapter * down to all functions instead. Remove PPCSTRUCT define. Signed-off-by: Ondrej Zary <linux@zary.sk> Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
2023-03-23ata: pata_parport-bpck6: don't cast pi->pardev to struct pardevice *Ondrej Zary
pi->pardev is struct pardevice *, no need to cast it to the same type. Also clean up the return mess. Signed-off-by: Ondrej Zary <linux@zary.sk> Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
2023-03-23ata: pata_parport-bpck6: remove useless range check from read/write_regrOndrej Zary
bpck6_read_regr() and bpck6_write_regr() check values of cont and reg but there's no point in doing that. They can only be called with a fixed set of values. Remove the checks. Signed-off-by: Ondrej Zary <linux@zary.sk> Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
2023-03-23ata: pata_parport-bpck6: remove useless definesOndrej Zary
Almost all the ATAPI_ defines are unused. Remove them and use ATA_REG_DATA instead of ATAPI_DATA. Signed-off-by: Ondrej Zary <linux@zary.sk> Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
2023-03-23ata: pata_parport: move pata_parport.h to drivers/ata/pata_parportOndrej Zary
Now that paride is gone, pata_parport.h does not need to be in include/linux. Move it to drivers/ata/pata_parport. Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru> Signed-off-by: Ondrej Zary <linux@zary.sk> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
2023-03-23ata: pata_parport: remove obsolete changelogsOndrej Zary
Remove obsolete changelogs from protocol drivers. Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru> Signed-off-by: Ondrej Zary <linux@zary.sk> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
2023-03-23ata: pata_parport: remove scratch parameter from test_proto()Ondrej Zary
Don't pass around a pointer to scratch buffer. Use local buffers in protocols that need it. Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru> Signed-off-by: Ondrej Zary <linux@zary.sk> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
2023-03-23ata: pata_parport: remove verbose parameter from test_proto()Ondrej Zary
verbose parameter of test_proto() is now unused, remove it. Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru> Signed-off-by: Ondrej Zary <linux@zary.sk> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
2023-03-23ata: pata_parport: remove bpck6 verbose parameterOndrej Zary
Remove now useless verbose parameter of bpck6 module. Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru> Signed-off-by: Ondrej Zary <linux@zary.sk> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
2023-03-23ata: pata_parport: simplify log_adapter prints, remove VERSION definesOndrej Zary
Merge log_adapter prints to single one, remove version print and meaningless VERSION defines. Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru> Signed-off-by: Ondrej Zary <linux@zary.sk> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
2023-03-23ata: pata_parport: use print_hex_*Ondrej Zary
Use print_hex_* for debug dumps. Signed-off-by: Ondrej Zary <linux@zary.sk> Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
2023-03-23ata: pata_parport: use dev_* instead of printkOndrej Zary
Use dev_info/dev_err/dev_dbg instead of printk. Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru> Signed-off-by: Ondrej Zary <linux@zary.sk> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
2023-03-23ata: pata_parport: remove scratch parameter from log_adapter()Ondrej Zary
scratch parameter of log_adapter() is only used by bpck driver. Remove it. Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru> Signed-off-by: Ondrej Zary <linux@zary.sk> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
2023-03-23ata: pata_parport: remove verbose parameter from log_adapter()Ondrej Zary
verbose parameter of log_adapter() is unused, remove it. Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru> Signed-off-by: Ondrej Zary <linux@zary.sk> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
2023-03-23ata: pata_parport: remove typedef struct PIAOndrej Zary
Remove typedef struct PIA and use struct pi_adapter directly. Fix formatting (excessive spaces) while at it. Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru> Signed-off-by: Ondrej Zary <linux@zary.sk> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
2023-03-23ata: pata_parport: remove device from struct pi_adapterOndrej Zary
device is never set in pata_parport, remove it. Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru> Signed-off-by: Ondrej Zary <linux@zary.sk> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
2023-03-23ata: pata_parport: remove devtype from struct pi_adapterOndrej Zary
Only bpck driver uses devtype but it never gets set in pata_parport. Remove it. As most bpck devices are CD-ROMs, always run the code that depends on devtype == PI_PCD. Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru> Signed-off-by: Ondrej Zary <linux@zary.sk> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
2023-03-23ata: pata_parport: Introduce module_pata_parport_driver macroOndrej Zary
Introduce module_pata_parport_driver macro and use it in protocol drivers to reduce boilerplate code. Remove paride_(un)register compatibility defines. Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru> Signed-off-by: Ondrej Zary <linux@zary.sk> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
2023-03-23ata: pata_parport: remove useless printks at module_init of bpck6Ondrej Zary
bpck6 prints some useless messages on module_init. Remove them. Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru> Signed-off-by: Ondrej Zary <linux@zary.sk> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
2023-03-23ata: pata_parport: Remove pi_swab16 and pi_swab32Ondrej Zary
Convert comm and kbic drivers to use standard swab16. Remove pi_swab16 and pi_swab32. Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru> Signed-off-by: Ondrej Zary <linux@zary.sk> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
2023-03-23ata: pata_parport: probe all units automaticallyOndrej Zary
Only unit 0 is probed after registering a protocol driver or attaching a new parport. This causes bpck and bpck6 devices to be not detected automatically. Probe all units just like in manual device creation (using sysfs). Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru> Signed-off-by: Ondrej Zary <linux@zary.sk> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
2023-03-23ata: pata_parport: fix EPAT C7/C8 KconfigOndrej Zary
CONFIG_PARIDE_EPATC8 was renamed to CONFIG_PATA_PARPORT_EPATC8 but epat.c was not updated to reflect that. Update it. Reported-by: Sergey Shtylyov <s.shtylyov@omp.ru> Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru> Signed-off-by: Ondrej Zary <linux@zary.sk> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
2023-03-16ata: pata_parport: fix memory leaksOndrej Zary
When ida_alloc() fails, "pi" is not freed although the misleading comment says otherwise. Move the ida_alloc() call up so we really don't have to free "pi" in case of ida_alloc() failure. Also move ida_free() call from pi_remove_one() to pata_parport_dev_release(). It was dereferencing already freed dev pointer. Testing revealed leak even in non-failure case which was tracked down to missing put_device() call after bus_find_device_by_name(). As a result, pata_parport_dev_release() was never called. Reported-by: kernel test robot <lkp@intel.com> Reported-by: Dan Carpenter <error27@gmail.com> Link: https://lore.kernel.org/r/202303111822.IHNchbkp-lkp@intel.com/ Signed-off-by: Ondrej Zary <linux@zary.sk> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
2023-03-15ata: pata_parport: fix parport release without claimOndrej Zary
When adapter is not found, pi->disconnect() is called without previous pi->connect(). This results in error like this: parport0: pata_parport tried to release parport when not owner Add missing out_disconnect label and use it correctly. Signed-off-by: Ondrej Zary <linux@zary.sk> Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
2023-02-07ata: pata_parport: Fix ida_alloc return value error checkOndrej Zary
pi->dev.id is unsigned so error checking of ida_alloc return value does not work. Fix it. Signed-off-by: Ondrej Zary <linux@zary.sk> Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
2023-01-31drivers/block: Move PARIDE protocol modules to drivers/ata/pata_parportOndrej Zary
Move PARIDE protocol modules out of drivers/block into drivers/ata/pata_parport and update the CONFIG_ symbol names to PATA_PARPORT. [Damien] The pata_parport driver file itsef is also moved together with the protocol modules in drivers/ata/pata_parport. Signed-off-by: Ondrej Zary <linux@zary.sk> Acked-by: Jens Axboe <axboe@kernel.dk> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>