Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3c25ddd9 authored by Hauke Mehrtens's avatar Hauke Mehrtens Committed by John W. Linville
Browse files

bcma: extract drv_cc in bcma_core_mips_flash_detect()



This makes the code more readable

Signed-off-by: default avatarHauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent e661b75a
Loading
Loading
Loading
Loading
+12 −11
Original line number Diff line number Diff line
@@ -181,34 +181,35 @@ EXPORT_SYMBOL(bcma_cpu_clock);
static void bcma_core_mips_flash_detect(struct bcma_drv_mips *mcore)
{
	struct bcma_bus *bus = mcore->core->bus;
	struct bcma_drv_cc *cc = &bus->drv_cc;

	switch (bus->drv_cc.capabilities & BCMA_CC_CAP_FLASHT) {
	switch (cc->capabilities & BCMA_CC_CAP_FLASHT) {
	case BCMA_CC_FLASHT_STSER:
	case BCMA_CC_FLASHT_ATSER:
		bcma_debug(bus, "Found serial flash\n");
		bcma_sflash_init(&bus->drv_cc);
		bcma_sflash_init(cc);
		break;
	case BCMA_CC_FLASHT_PARA:
		bcma_debug(bus, "Found parallel flash\n");
		bus->drv_cc.pflash.present = true;
		bus->drv_cc.pflash.window = BCMA_SOC_FLASH2;
		bus->drv_cc.pflash.window_size = BCMA_SOC_FLASH2_SZ;
		cc->pflash.present = true;
		cc->pflash.window = BCMA_SOC_FLASH2;
		cc->pflash.window_size = BCMA_SOC_FLASH2_SZ;

		if ((bcma_read32(bus->drv_cc.core, BCMA_CC_FLASH_CFG) &
		if ((bcma_read32(cc->core, BCMA_CC_FLASH_CFG) &
		     BCMA_CC_FLASH_CFG_DS) == 0)
			bus->drv_cc.pflash.buswidth = 1;
			cc->pflash.buswidth = 1;
		else
			bus->drv_cc.pflash.buswidth = 2;
			cc->pflash.buswidth = 2;
		break;
	default:
		bcma_err(bus, "Flash type not supported\n");
	}

	if (bus->drv_cc.core->id.rev == 38 ||
	if (cc->core->id.rev == 38 ||
	    bus->chipinfo.id == BCMA_CHIP_ID_BCM4706) {
		if (bus->drv_cc.capabilities & BCMA_CC_CAP_NFLASH) {
		if (cc->capabilities & BCMA_CC_CAP_NFLASH) {
			bcma_debug(bus, "Found NAND flash\n");
			bcma_nflash_init(&bus->drv_cc);
			bcma_nflash_init(cc);
		}
	}
}