diff options
| -rw-r--r-- | drivers/mtd/spi-nor/aspeed-smc.c | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/drivers/mtd/spi-nor/aspeed-smc.c b/drivers/mtd/spi-nor/aspeed-smc.c index 0106357421bd..8d3cbe27efb6 100644 --- a/drivers/mtd/spi-nor/aspeed-smc.c +++ b/drivers/mtd/spi-nor/aspeed-smc.c | |||
| @@ -621,19 +621,18 @@ static void aspeed_smc_chip_set_type(struct aspeed_smc_chip *chip, int type) | |||
| 621 | } | 621 | } |
| 622 | 622 | ||
| 623 | /* | 623 | /* |
| 624 | * The AST2500 FMC flash controller should be strapped by hardware, or | 624 | * The first chip of the AST2500 FMC flash controller is strapped by |
| 625 | * autodetected, but the AST2500 SPI flash needs to be set. | 625 | * hardware, or autodetected, but other chips need to be set. Enforce |
| 626 | * the 4B setting for all chips. | ||
| 626 | */ | 627 | */ |
| 627 | static void aspeed_smc_chip_set_4b(struct aspeed_smc_chip *chip) | 628 | static void aspeed_smc_chip_set_4b(struct aspeed_smc_chip *chip) |
| 628 | { | 629 | { |
| 629 | struct aspeed_smc_controller *controller = chip->controller; | 630 | struct aspeed_smc_controller *controller = chip->controller; |
| 630 | u32 reg; | 631 | u32 reg; |
| 631 | 632 | ||
| 632 | if (chip->controller->info == &spi_2500_info) { | 633 | reg = readl(controller->regs + CE_CONTROL_REG); |
| 633 | reg = readl(controller->regs + CE_CONTROL_REG); | 634 | reg |= 1 << chip->cs; |
| 634 | reg |= 1 << chip->cs; | 635 | writel(reg, controller->regs + CE_CONTROL_REG); |
| 635 | writel(reg, controller->regs + CE_CONTROL_REG); | ||
| 636 | } | ||
| 637 | } | 636 | } |
| 638 | 637 | ||
| 639 | /* | 638 | /* |
