/* Allocate and initialise a new SDIO function structure.  */
struct sdio_func* sdio_alloc_func(struct mmc_card *card)
/* Allocate and initialise a new SDIO function structure.  */
struct sdio_func* sdio_alloc_func(struct mmc_card *card)
{
	struct sdio_func *func;
	func = kzalloc(sizeof(struct sdio_func), GFP_KERNEL);
	if (!func)
		return ERR_PTR(-ENOMEM);
	func->card = card;
	device_initialize(&func->dev);
	func->dev.parent = &card->dev;
	func->dev.bus = &sdio_bus_type;
	func->dev.release = sdio_release_func;
	return func;
}