xref: /linux-6.15/include/linux/ata_platform.h (revision 25df73d9)
1b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */
2f351b2d6SSaeed Bishara #ifndef __LINUX_ATA_PLATFORM_H
3f351b2d6SSaeed Bishara #define __LINUX_ATA_PLATFORM_H
40a87e3e9SJeff Garzik 
50a87e3e9SJeff Garzik struct pata_platform_info {
60a87e3e9SJeff Garzik 	/*
70a87e3e9SJeff Garzik 	 * I/O port shift, for platforms with ports that are
80a87e3e9SJeff Garzik 	 * constantly spaced and need larger than the 1-byte
90a87e3e9SJeff Garzik 	 * spacing used by ata_std_ports().
100a87e3e9SJeff Garzik 	 */
110a87e3e9SJeff Garzik 	unsigned int ioport_shift;
120a87e3e9SJeff Garzik };
130a87e3e9SJeff Garzik 
1417263905SAkinobu Mita struct scsi_host_template;
1517263905SAkinobu Mita 
16e389623aSGreg Kroah-Hartman extern int __pata_platform_probe(struct device *dev,
170a87e3e9SJeff Garzik 				 struct resource *io_res,
180a87e3e9SJeff Garzik 				 struct resource *ctl_res,
190a87e3e9SJeff Garzik 				 struct resource *irq_res,
200a87e3e9SJeff Garzik 				 unsigned int ioport_shift,
2117263905SAkinobu Mita 				 int __pio_mask,
22*25df73d9SBart Van Assche 				 const struct scsi_host_template *sht,
23f3d5e4f1SAlexander Shiyan 				 bool use16bit);
240a87e3e9SJeff Garzik 
25f351b2d6SSaeed Bishara /*
26f351b2d6SSaeed Bishara  * Marvell SATA private data
27f351b2d6SSaeed Bishara  */
28f351b2d6SSaeed Bishara struct mv_sata_platform_data {
29f351b2d6SSaeed Bishara 	int	n_ports; /* number of sata ports */
30f351b2d6SSaeed Bishara };
31f351b2d6SSaeed Bishara 
32f351b2d6SSaeed Bishara #endif /* __LINUX_ATA_PLATFORM_H */
33