Skip to content

Commit

Permalink
Blackfin arch: fix bug NOR Flash MTD mount fail
Browse files Browse the repository at this point in the history
Config EBIU flash mode properly. EBIU_MODE EBIU_FCTL
EBIU_MBSCTL register should be configurd to Flash
mode.

Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
Signed-off-by: Bryan Wu <bryan.wu@analog.com>
  • Loading branch information
Sonic Zhang authored and Bryan Wu committed Nov 21, 2007
1 parent 28a44d4 commit e40540b
Show file tree
Hide file tree
Showing 2 changed files with 35 additions and 0 deletions.
14 changes: 14 additions & 0 deletions arch/blackfin/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -866,6 +866,20 @@ config BANK_3
default 0x99B3
endmenu

config EBIU_MBSCTLVAL
hex "EBIU Bank Select Control Register"
depends on BF54x
default 0

config EBIU_MODEVAL
hex "Flash Memory Mode Control Register"
depends on BF54x
default 1

config EBIU_FCTLVAL
hex "Flash Memory Bank Control Register"
depends on BF54x
default 6
endmenu

#############################################################################
Expand Down
21 changes: 21 additions & 0 deletions arch/blackfin/mach-bf548/head.S
Original file line number Diff line number Diff line change
Expand Up @@ -158,6 +158,27 @@ ENTRY(__stext)
w[p2] = r0;
ssync;

p2.h = hi(EBIU_MBSCTL);
p2.l = lo(EBIU_MBSCTL);
r0.h = hi(CONFIG_EBIU_MBSCTLVAL);
r0.l = lo(CONFIG_EBIU_MBSCTLVAL);
[p2] = r0;
ssync;

p2.h = hi(EBIU_MODE);
p2.l = lo(EBIU_MODE);
r0.h = hi(CONFIG_EBIU_MODEVAL);
r0.l = lo(CONFIG_EBIU_MODEVAL);
[p2] = r0;
ssync;

p2.h = hi(EBIU_FCTL);
p2.l = lo(EBIU_FCTL);
r0.h = hi(CONFIG_EBIU_FCTLVAL);
r0.l = lo(CONFIG_EBIU_FCTLVAL);
[p2] = r0;
ssync;

/* This section keeps the processor in supervisor mode
* during kernel boot. Switches to user mode at end of boot.
* See page 3-9 of Hardware Reference manual for documentation.
Expand Down

0 comments on commit e40540b

Please sign in to comment.