static int card_blk_suspend(struct memory_card *card, pm_message_t state) { struct card_blk_data *card_data = card_get_drvdata(card); struct card_host *host = card->host; if (card_data) { card_queue_suspend(&card_data->queue); } if(!host->sdio_task_state) { host->sdio_task_state = 1; } if(!host->card_task_state) { host->card_task_state = 1; } if(card->card_suspend) { card->card_suspend(card); } if(card->card_type == CARD_SDIO) return 0; card->unit_state = CARD_UNIT_RESUMED; return 0; }
static int card_blk_suspend(struct memory_card *card, pm_message_t state) { struct card_blk_data *card_data = card_get_drvdata(card); struct card_host *host = card->host; printk("Enter %s suspend\n",card->name); printk("***Entered %s:%s\n", __FILE__,__func__); if (card_data) { card_queue_suspend(&card_data->queue); } if(!host->sdio_task_state) { host->sdio_task_state = 1; } if(!host->card_task_state) { host->card_task_state = 1; } if(card->card_suspend) { card->card_suspend(card); } if(card->card_type == CARD_SDIO) return 0; //card->unit_state = CARD_UNIT_NOT_READY; //host->slot_detector = CARD_REMOVED; card->unit_state = CARD_UNIT_RESUMED; return 0; }