On Sun, Apr 12, 2009 at 06:36:49PM +0200, Robert Jarzmik wrote:
I originaly thought we would change pxa_set_ac97_info(), to add a parameter which will be the platform data for the gpio.
Yes, this is the approach that should be adopted. The platform data should not change per board.
IOW, have something like : void __init pxa_set_ac97_info(struct pxa2xx_ac97_platform_data *pdata) { pxa_register_device(&pxa_device_ac97, ops); }
Note that we already have platform data for the PXA AC97 devices.
The trouble is, I saw references to the platform data as pxa2xx_audio_ops_t*, mostly to suspend and resume a card. I've seen them in pxa2xx_ac97_do_suspend(), pxa2xx_ac97_do_resume().
Mark, could you please have a glance at it, and tell us the right approach to have the struct pxa2xx_ac97_platform_data passed to pxa2xx-ac97 please ?
Those are platform data, currently the only mainline use I'm aware of is for mainstone - it's been present since before the pxa2xx-ac97-lib was introduced.
Looking at the code it appears we've broken mainstone, though unfortunately my mainstone has some independant problem with resume so I can't test but I'll make a patch merging the two structures on Monday.