|
@@ -62,31 +62,34 @@ mmc_bus_uevent(struct device *dev, char **envp, int num_envp, char *buf,
|
|
|
int buf_size)
|
|
|
{
|
|
|
struct mmc_card *card = dev_to_mmc_card(dev);
|
|
|
- int retval = 0, i = 0, length = 0;
|
|
|
-
|
|
|
-#define add_env(fmt,val) do { \
|
|
|
- retval = add_uevent_var(envp, num_envp, &i, \
|
|
|
- buf, buf_size, &length, \
|
|
|
- fmt, val); \
|
|
|
- if (retval) \
|
|
|
- return retval; \
|
|
|
-} while (0);
|
|
|
+ const char *type;
|
|
|
+ int i = 0, length = 0;
|
|
|
|
|
|
switch (card->type) {
|
|
|
case MMC_TYPE_MMC:
|
|
|
- add_env("MMC_TYPE=%s", "MMC");
|
|
|
+ type = "MMC";
|
|
|
break;
|
|
|
case MMC_TYPE_SD:
|
|
|
- add_env("MMC_TYPE=%s", "SD");
|
|
|
+ type = "SD";
|
|
|
break;
|
|
|
case MMC_TYPE_SDIO:
|
|
|
- add_env("MMC_TYPE=%s", "SDIO");
|
|
|
+ type = "SDIO";
|
|
|
break;
|
|
|
+ default:
|
|
|
+ type = NULL;
|
|
|
}
|
|
|
|
|
|
- add_env("MMC_NAME=%s", mmc_card_name(card));
|
|
|
+ if (type) {
|
|
|
+ if (add_uevent_var(envp, num_envp, &i,
|
|
|
+ buf, buf_size, &length,
|
|
|
+ "MMC_TYPE=%s", type))
|
|
|
+ return -ENOMEM;
|
|
|
+ }
|
|
|
|
|
|
-#undef add_env
|
|
|
+ if (add_uevent_var(envp, num_envp, &i,
|
|
|
+ buf, buf_size, &length,
|
|
|
+ "MMC_NAME=%s", mmc_card_name(card)))
|
|
|
+ return -ENOMEM;
|
|
|
|
|
|
envp[i] = NULL;
|
|
|
|