Subject: [PATCH] add PATA host controller support for Cirrus Logic's EP93xx CPUs

From: [email-masked] (Jeff Garzik)
Date: Mon, 14 Dec 2009 17:06:34 -0500

On 12/14/2009 04:40 PM, Ryan Mallon wrote:
> I have added some of my own debugging. The problem appears to be that
> __pata_ep93xx_write gets called from probe (via ata_host_activate), but
> ap->private_data (ata_timing) is still null. The timing private_data is
> set by pata_ep93xx_set_piomode, but that needs adev->pio_mode set, but I
> don't know where this happens. I assume the ATA core handles this. Do I
> need to call pata_ep93xx_set_piomode from pata_ep93xx_probe before
> ata_host_activate, or should the private_data timing be set to some
> default in the probe?

ap->private_data is traditionally initialized in the ->port_start() hook.

Likely, you should follow other drivers and allocate a useful data 
structure containing useful default values, which can then be adjusted 
in other hooks such as ->set_dmamode() or ->set_piomode()

	Jeff