Commit f16295e7 authored by Robin Getz's avatar Robin Getz Committed by Bryan Wu
Browse files

Blackfin arch: Fix CCLK and SCLK checks



Fix CCLK and SCLK checks, combine all arch checks into one file
for maintance. Checkins that remove more lines than they add are always
good.

Signed-off-by: default avatarRobin Getz <robin.getz@analog.com>
Signed-off-by: default avatarBryan Wu <bryan.wu@analog.com>
parent b99ab54d
Loading
Loading
Loading
Loading
+113 −62
Original line number Diff line number Diff line
@@ -323,7 +323,7 @@ config CMDLINE
	  to the kernel, you may specify one here. As a minimum, you should specify
	  the memory size and the root device (e.g., mem=8M, root=/dev/nfs).

comment "Board Setup"
comment "Clock/PLL Setup"

config CLKIN_HZ
	int "Crystal Frequency in Hz"
@@ -335,6 +335,118 @@ config CLKIN_HZ
	help
	  The frequency of CLKIN crystal oscillator on the board in Hz.

config BFIN_KERNEL_CLOCK
	bool "Re-program Clocks while Kernel boots?"
	default n
	help
	  This option decides if kernel clocks are re-programed from the
	  bootloader settings. If the clocks are not set, the SDRAM settings
	  are also not changed, and the Bootloader does 100% of the hardware
	  configuration.

config PLL_BYPASS
        bool "Bypass PLL"
        depends on BFIN_KERNEL_CLOCK
        default n

config CLKIN_HALF
	bool "Half Clock In"
	depends on BFIN_KERNEL_CLOCK && (! PLL_BYPASS)
	default n
	help
	  If this is set the clock will be divided by 2, before it goes to the PLL.

config VCO_MULT
	int "VCO Multiplier"
	depends on BFIN_KERNEL_CLOCK && (! PLL_BYPASS)
	range 1 64
	default "22" if BFIN533_EZKIT
	default "45" if BFIN533_STAMP
	default "20" if BFIN537_STAMP
	default "22" if BFIN533_BLUETECHNIX_CM
	default "20" if BFIN537_BLUETECHNIX_CM
	default "20" if BFIN561_BLUETECHNIX_CM
	default "20" if BFIN561_EZKIT
	help
	  This controls the frequency of the on-chip PLL. This can be between 1 and 64.
	  PLL Frequency = (Crystal Frequency) * (this setting)

choice
	prompt "Core Clock Divider"
	depends on BFIN_KERNEL_CLOCK
	default CCLK_DIV_1
	help
	  This sets the frequency of the core. It can be 1, 2, 4 or 8
	  Core Frequency = (PLL frequency) / (this setting)

config CCLK_DIV_1
	bool "1"

config CCLK_DIV_2
	bool "2"

config CCLK_DIV_4
	bool "4"

config CCLK_DIV_8
	bool "8"
endchoice

config SCLK_DIV
	int "System Clock Divider"
	depends on BFIN_KERNEL_CLOCK
	range 1 15
	default 5 if BFIN533_EZKIT
	default 5 if BFIN533_STAMP
	default 4 if BFIN537_STAMP
	default 5 if BFIN533_BLUETECHNIX_CM
	default 4 if BFIN537_BLUETECHNIX_CM
	default 4 if BFIN561_BLUETECHNIX_CM
	default 5 if BFIN561_EZKIT
	help
	  This sets the frequency of the system clock (including SDRAM or DDR).
	  This can be between 1 and 15
	  System Clock = (PLL frequency) / (this setting)

#
# Max & Min Speeds for various Chips
#
config MAX_VCO_HZ
	int
	default 600000000 if BF522
	default 600000000 if BF525
	default 600000000 if BF527
	default 400000000 if BF531
	default 400000000 if BF532
	default 750000000 if BF533
	default 500000000 if BF534
	default 400000000 if BF536
	default 600000000 if BF537
	default 533000000 if BF538
	default 533000000 if BF539
	default 600000000 if BF542
	default 533000000 if BF544
	default 533000000 if BF549
	default 600000000 if BF561

config MIN_VCO_HZ
	int
	default 50000000

config MAX_SCLK_HZ
	int
	default 133000000

config MIN_SCLK_HZ
	int
	default 27000000

comment "Kernel Timer/Scheduler"

source kernel/Kconfig.hz

comment "Memory Setup"

config MEM_SIZE
	int "SDRAM Memory Size in MBytes"
	default  32 if BFIN533_EZKIT
@@ -448,10 +560,6 @@ endmenu

menu "Blackfin Kernel Optimizations"

comment "Timer Tick"

source kernel/Kconfig.hz

comment "Memory Optimizations"

config I_ENTRY_L1
@@ -672,63 +780,6 @@ config L1_MAX_PIECE
	  Set the max memory pieces for the L1 SRAM allocation algorithm.
	  Min value is 16. Max value is 1024.

menu "Clock Settings"


config BFIN_KERNEL_CLOCK
	bool "Re-program Clocks while Kernel boots?"
	default n
	help
	  This option decides if kernel clocks are re-programed from the
	  bootloader settings. If the clocks are not set, the SDRAM settings
	  are also not changed, and the Bootloader does 100% of the hardware
	  configuration.

config VCO_MULT
	int "VCO Multiplier"
	depends on BFIN_KERNEL_CLOCK
	default "22" if BFIN533_EZKIT
	default "45" if BFIN533_STAMP
	default "20" if BFIN537_STAMP
	default "22" if BFIN533_BLUETECHNIX_CM
	default "20" if BFIN537_BLUETECHNIX_CM
	default "20" if BFIN561_BLUETECHNIX_CM
	default "20" if BFIN561_EZKIT

config CCLK_DIV
	int "Core Clock Divider"
	depends on BFIN_KERNEL_CLOCK
	default 1 if BFIN533_EZKIT
	default 1 if BFIN533_STAMP
	default 1 if BFIN537_STAMP
	default 1 if BFIN533_BLUETECHNIX_CM
	default 1 if BFIN537_BLUETECHNIX_CM
	default 1 if BFIN561_BLUETECHNIX_CM
	default 1 if BFIN561_EZKIT

config SCLK_DIV
	int "System Clock Divider"
	depends on BFIN_KERNEL_CLOCK
	default 5 if BFIN533_EZKIT
	default 5 if BFIN533_STAMP
	default 4 if BFIN537_STAMP
	default 5 if BFIN533_BLUETECHNIX_CM
	default 4 if BFIN537_BLUETECHNIX_CM
	default 4 if BFIN561_BLUETECHNIX_CM
	default 5 if BFIN561_EZKIT

config CLKIN_HALF
	bool "Half ClockIn"
	depends on BFIN_KERNEL_CLOCK
	default n

config PLL_BYPASS
	bool "Bypass PLL"
	depends on BFIN_KERNEL_CLOCK
	default n

endmenu

comment "Asynchonous Memory Configuration"

menu "EBIU_AMBCTL Global Control"
+1 −0
Original line number Diff line number Diff line
@@ -32,6 +32,7 @@
#include <asm/blackfin.h>
#include <asm/trace.h>
#if CONFIG_BFIN_KERNEL_CLOCK
#include <asm/mach-common/clocks.h>
#include <asm/mach/mem_init.h>
#endif
#if CONFIG_DEBUG_KERNEL_START
+1 −0
Original line number Diff line number Diff line
@@ -33,6 +33,7 @@
#include <asm/trace.h>

#if CONFIG_BFIN_KERNEL_CLOCK
#include <asm/mach-common/clocks.h>
#include <asm/mach/mem_init.h>
#endif

+1 −0
Original line number Diff line number Diff line
@@ -31,6 +31,7 @@
#include <asm/blackfin.h>
#include <asm/trace.h>
#if CONFIG_BFIN_KERNEL_CLOCK
#include <asm/mach-common/clocks.h>
#include <asm/mach/mem_init.h>
#endif

+1 −0
Original line number Diff line number Diff line
@@ -33,6 +33,7 @@
#include <asm/trace.h>

#if CONFIG_BFIN_KERNEL_CLOCK
#include <asm/mach-common/clocks.h>
#include <asm/mach/mem_init.h>
#endif

Loading