diff options
Diffstat (limited to 'drivers')
| -rw-r--r-- | drivers/mmc/host/mmci.c | 8 | ||||
| -rw-r--r-- | drivers/video/cyber2000fb.c | 3 |
2 files changed, 9 insertions, 2 deletions
diff --git a/drivers/mmc/host/mmci.c b/drivers/mmc/host/mmci.c index 4917af96bae1..2ed435bd4b6c 100644 --- a/drivers/mmc/host/mmci.c +++ b/drivers/mmc/host/mmci.c | |||
| @@ -539,9 +539,13 @@ static int mmci_get_cd(struct mmc_host *mmc) | |||
| 539 | if (host->gpio_cd == -ENOSYS) | 539 | if (host->gpio_cd == -ENOSYS) |
| 540 | status = host->plat->status(mmc_dev(host->mmc)); | 540 | status = host->plat->status(mmc_dev(host->mmc)); |
| 541 | else | 541 | else |
| 542 | status = gpio_get_value(host->gpio_cd); | 542 | status = !gpio_get_value(host->gpio_cd); |
| 543 | 543 | ||
| 544 | return !status; | 544 | /* |
| 545 | * Use positive logic throughout - status is zero for no card, | ||
| 546 | * non-zero for card inserted. | ||
| 547 | */ | ||
| 548 | return status; | ||
| 545 | } | 549 | } |
| 546 | 550 | ||
| 547 | static const struct mmc_host_ops mmci_ops = { | 551 | static const struct mmc_host_ops mmci_ops = { |
diff --git a/drivers/video/cyber2000fb.c b/drivers/video/cyber2000fb.c index 3a561df2e8a2..0c1afd13ddd3 100644 --- a/drivers/video/cyber2000fb.c +++ b/drivers/video/cyber2000fb.c | |||
| @@ -388,6 +388,7 @@ cyber2000fb_setcolreg(u_int regno, u_int red, u_int green, u_int blue, | |||
| 388 | pseudo_val |= convert_bitfield(red, &var->red); | 388 | pseudo_val |= convert_bitfield(red, &var->red); |
| 389 | pseudo_val |= convert_bitfield(green, &var->green); | 389 | pseudo_val |= convert_bitfield(green, &var->green); |
| 390 | pseudo_val |= convert_bitfield(blue, &var->blue); | 390 | pseudo_val |= convert_bitfield(blue, &var->blue); |
| 391 | ret = 0; | ||
| 391 | break; | 392 | break; |
| 392 | } | 393 | } |
| 393 | 394 | ||
| @@ -436,6 +437,8 @@ static void cyber2000fb_write_ramdac_ctrl(struct cfb_info *cfb) | |||
| 436 | cyber2000fb_writeb(i | 4, 0x3cf, cfb); | 437 | cyber2000fb_writeb(i | 4, 0x3cf, cfb); |
| 437 | cyber2000fb_writeb(val, 0x3c6, cfb); | 438 | cyber2000fb_writeb(val, 0x3c6, cfb); |
| 438 | cyber2000fb_writeb(i, 0x3cf, cfb); | 439 | cyber2000fb_writeb(i, 0x3cf, cfb); |
| 440 | /* prevent card lock-up observed on x86 with CyberPro 2000 */ | ||
| 441 | cyber2000fb_readb(0x3cf, cfb); | ||
| 439 | } | 442 | } |
| 440 | 443 | ||
| 441 | static void cyber2000fb_set_timing(struct cfb_info *cfb, struct par_info *hw) | 444 | static void cyber2000fb_set_timing(struct cfb_info *cfb, struct par_info *hw) |
