brcm63xx: spi flash on legacy spi controller needs the workaround
Fixes generic SPI flash accesses on BCM6358/BCM6368. BCM6338 still needs additional fixes for M25P80, so it remains broken for now. Signed-off-by: Jonas Gorski <jogo@openwrt.org> SVN-Revision: 39266
This commit is contained in:
parent
af7e570c3b
commit
d9a20b6f46
2 changed files with 5 additions and 2 deletions
|
@ -68,7 +68,7 @@ Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
|
|||
switch (val & STRAPBUS_6368_BOOT_SEL_MASK) {
|
||||
case STRAPBUS_6368_BOOT_SEL_NAND:
|
||||
return BCM63XX_FLASH_TYPE_NAND;
|
||||
@@ -117,8 +143,11 @@ int __init bcm63xx_flash_register(void)
|
||||
@@ -117,8 +143,14 @@ int __init bcm63xx_flash_register(void)
|
||||
|
||||
return platform_device_register(&mtd_dev);
|
||||
case BCM63XX_FLASH_TYPE_SERIAL:
|
||||
|
@ -77,6 +77,9 @@ Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
|
|||
+ if (BCMCPU_IS_6328() || BCMCPU_IS_6362())
|
||||
+ bcm63xx_spi_flash_info[0].bus_num = 1;
|
||||
+
|
||||
+ if (BCMCPU_IS_6358() || BCMCPU_IS_6368())
|
||||
+ bcm63xx_flash_data.max_transfer_len = SPI_6358_MSG_DATA_SIZE;
|
||||
+
|
||||
+ return spi_register_board_info(bcm63xx_spi_flash_info,
|
||||
+ ARRAY_SIZE(bcm63xx_spi_flash_info));
|
||||
case BCM63XX_FLASH_TYPE_NAND:
|
||||
|
|
|
@ -97,7 +97,7 @@ Subject: [PATCH 38/59] MIPS: BCM63XX: store the flash type in global variable
|
|||
case BCM63XX_FLASH_TYPE_PARALLEL:
|
||||
/* read base address of boot chip select (0) */
|
||||
val = bcm_mpi_readl(MPI_CSBASE_REG(0));
|
||||
@@ -153,7 +166,7 @@ int __init bcm63xx_flash_register(void)
|
||||
@@ -156,7 +169,7 @@ int __init bcm63xx_flash_register(void)
|
||||
return -ENODEV;
|
||||
default:
|
||||
pr_err("flash detection failed for BCM%x: %d\n",
|
||||
|
|
Loading…
Reference in a new issue