pcmcia: allow for four multifunction subdevices (again)

Commit aa584ca4 broke what 6cf5be51 had already fixed: there may
be four multifunction devices, but just two pseudo-multifunction
devices per PCMCIA card.

Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
This commit is contained in:
Dominik Brodowski 2010-03-24 10:49:14 +01:00
parent 9713ab28ec
commit 7d7ba8d31e
1 changed files with 6 additions and 2 deletions

View File

@ -509,8 +509,12 @@ struct pcmcia_device *pcmcia_device_add(struct pcmcia_socket *s, unsigned int fu
p_dev->device_no = (s->device_count++);
mutex_unlock(&s->ops_mutex);
/* max of 2 devices per card */
if (p_dev->device_no >= 2)
/* max of 2 PFC devices */
if ((p_dev->device_no >= 2) && (function == 0))
goto err_free;
/* max of 4 devices overall */
if (p_dev->device_no >= 4)
goto err_free;
p_dev->socket = s;