/* Attach winbond IDE interfaces by scanning the ports it may occupy.  */
static __init int winbond_init(void)
/* Attach winbond IDE interfaces by scanning the ports it may occupy.  */
static __init int winbond_init(void)
{
	static const unsigned long config[2] = { 0x130, 0x1B0 };
	int ct = 0;
	int i;
	if (probe_winbond == 0)
		return -ENODEV;
	for (i = 0; i < 2; i++) {
		if (probe_winbond & (1<<i)) {
			int ret = 0;
			unsigned long port = config[i];
			if (request_region(port, 2, "pata_winbond")) {
				ret = winbond_init_one(port);
				if (ret <= 0)
					release_region(port, 2);
				else ct+= ret;
			}
		}
	}
	if (ct != 0)
		return 0;
	return -ENODEV;
}