diff -u linux/drivers/mmc/mmc_sysfs.c linux/drivers/mmc/mmc_sysfs.c --- linux/drivers/mmc/mmc_sysfs.c Mon Jul 18 16:33:46 2005 +++ linux/drivers/mmc/mmc_sysfs.c Mon Jul 18 18:27:04 2005 @@ -263,10 +263,9 @@ { static unsigned int host_num; - snprintf(host->host_name, sizeof(host->host_name), - "mmc%d", host_num++); - - strlcpy(host->class_dev.class_id, host->host_name, BUS_ID_SIZE); + snprintf(host->class_dev.class_id, BUS_ID_SIZE, + "mmc%d", host_num++); + return class_device_add(&host->class_dev); } diff -u linux/include/linux/mmc/host.h linux/include/linux/mmc/host.h --- linux/include/linux/mmc/host.h Mon Jul 18 15:44:56 2005 +++ linux/include/linux/mmc/host.h Mon Jul 18 18:28:51 2005 @@ -68,7 +68,6 @@ unsigned int f_min; unsigned int f_max; u32 ocr_avail; - char host_name[8]; /* host specific block data */ unsigned int max_seg_size; /* see blk_queue_max_segment_size */ @@ -98,7 +97,7 @@ #define mmc_priv(x) ((void *)((x) + 1)) #define mmc_dev(x) ((x)->dev) -#define mmc_hostname(x) ((x)->host_name) +#define mmc_hostname(x) ((x)->class_dev.class_id) extern int mmc_suspend_host(struct mmc_host *, pm_message_t); extern int mmc_resume_host(struct mmc_host *);