[U-Boot] [PATCH] nios2: Set CONFIG_SYS_HZ to 1000 all nios2 boards.

CONFIG_SYS_HZ was being calculated (incorrectly) in nios2 configuration headers. Updated comments to accurately describe timebase macros.
Signed-off-by: Scott McNutt smcnutt@psyent.com --- include/configs/EP1C20.h | 14 ++++++++------ include/configs/EP1S10.h | 14 ++++++++------ include/configs/EP1S40.h | 14 ++++++++------ include/configs/PCI5441.h | 14 ++++++++------ include/configs/PK1C20.h | 14 ++++++++------ 5 files changed, 40 insertions(+), 30 deletions(-)
diff --git a/include/configs/EP1C20.h b/include/configs/EP1C20.h index dc82e54..3920d35 100644 --- a/include/configs/EP1C20.h +++ b/include/configs/EP1C20.h @@ -124,14 +124,16 @@ * TIMEBASE -- * * The high res timer defaults to 1 msec. Since it includes the period - * registers, we can slow it down to 10 msec using TMRCNT. If the default - * period is acceptable, TMRCNT can be left undefined. + * registers, the interrupt frequency can be reduced using TMRCNT. + * If the default period is acceptable, TMRCNT can be left undefined. + * TMRMS represents the desired mecs per tick (msecs per interrupt). *----------------------------------------------------------------------*/ +#define CONFIG_SYS_HZ 1000 /* Always 1000 */ #define CONFIG_SYS_NIOS_TMRBASE 0x02120820 /* Tick timer base addr */ -#define CONFIG_SYS_NIOS_TMRIRQ 3 /* Timer IRQ num */ -#define CONFIG_SYS_NIOS_TMRMS 10 /* 10 msec per tick */ -#define CONFIG_SYS_NIOS_TMRCNT (CONFIG_SYS_NIOS_TMRMS * (CONFIG_SYS_CLK_FREQ/1000)) -#define CONFIG_SYS_HZ (CONFIG_SYS_CLK_FREQ/(CONFIG_SYS_NIOS_TMRCNT + 1)) +#define CONFIG_SYS_NIOS_TMRIRQ 3 /* Timer IRQ num */ +#define CONFIG_SYS_NIOS_TMRMS 10 /* Desired period (msec)*/ +#define CONFIG_SYS_NIOS_TMRCNT \ + (CONFIG_SYS_NIOS_TMRMS * (CONFIG_SYS_CLK_FREQ/1000))
/*------------------------------------------------------------------------ * STATUS LED -- Provides a simple blinking led. For Nios2 each board diff --git a/include/configs/EP1S10.h b/include/configs/EP1S10.h index 498f26d..bfbf8c1 100644 --- a/include/configs/EP1S10.h +++ b/include/configs/EP1S10.h @@ -119,14 +119,16 @@ * TIMEBASE -- * * The high res timer defaults to 1 msec. Since it includes the period - * registers, we can slow it down to 10 msec using TMRCNT. If the default - * period is acceptable, TMRCNT can be left undefined. + * registers, the interrupt frequency can be reduced using TMRCNT. + * If the default period is acceptable, TMRCNT can be left undefined. + * TMRMS represents the desired mecs per tick (msecs per interrupt). *----------------------------------------------------------------------*/ +#define CONFIG_SYS_HZ 1000 /* Always 1000 */ #define CONFIG_SYS_NIOS_TMRBASE 0x02120820 /* Tick timer base addr */ -#define CONFIG_SYS_NIOS_TMRIRQ 3 /* Timer IRQ num */ -#define CONFIG_SYS_NIOS_TMRMS 10 /* 10 msec per tick */ -#define CONFIG_SYS_NIOS_TMRCNT (CONFIG_SYS_NIOS_TMRMS * (CONFIG_SYS_CLK_FREQ/1000)) -#define CONFIG_SYS_HZ (CONFIG_SYS_CLK_FREQ/(CONFIG_SYS_NIOS_TMRCNT + 1)) +#define CONFIG_SYS_NIOS_TMRIRQ 3 /* Timer IRQ num */ +#define CONFIG_SYS_NIOS_TMRMS 10 /* Desired period (msec)*/ +#define CONFIG_SYS_NIOS_TMRCNT \ + (CONFIG_SYS_NIOS_TMRMS * (CONFIG_SYS_CLK_FREQ/1000))
/*------------------------------------------------------------------------ * STATUS LED -- Provides a simple blinking led. For Nios2 each board diff --git a/include/configs/EP1S40.h b/include/configs/EP1S40.h index 4ad65d8..4d905fe 100644 --- a/include/configs/EP1S40.h +++ b/include/configs/EP1S40.h @@ -119,14 +119,16 @@ * TIMEBASE -- * * The high res timer defaults to 1 msec. Since it includes the period - * registers, we can slow it down to 10 msec using TMRCNT. If the default - * period is acceptable, TMRCNT can be left undefined. + * registers, the interrupt frequency can be reduced using TMRCNT. + * If the default period is acceptable, TMRCNT can be left undefined. + * TMRMS represents the desired mecs per tick (msecs per interrupt). *----------------------------------------------------------------------*/ +#define CONFIG_SYS_HZ 1000 /* Always 1000 */ #define CONFIG_SYS_NIOS_TMRBASE 0x02120820 /* Tick timer base addr */ -#define CONFIG_SYS_NIOS_TMRIRQ 3 /* Timer IRQ num */ -#define CONFIG_SYS_NIOS_TMRMS 10 /* 10 msec per tick */ -#define CONFIG_SYS_NIOS_TMRCNT (CONFIG_SYS_NIOS_TMRMS * (CONFIG_SYS_CLK_FREQ/1000)) -#define CONFIG_SYS_HZ (CONFIG_SYS_CLK_FREQ/(CONFIG_SYS_NIOS_TMRCNT + 1)) +#define CONFIG_SYS_NIOS_TMRIRQ 3 /* Timer IRQ num */ +#define CONFIG_SYS_NIOS_TMRMS 10 /* Desired period (msec) */ +#define CONFIG_SYS_NIOS_TMRCNT \ + (CONFIG_SYS_NIOS_TMRMS * (CONFIG_SYS_CLK_FREQ/1000))
/*------------------------------------------------------------------------ * STATUS LED -- Provides a simple blinking led. For Nios2 each board diff --git a/include/configs/PCI5441.h b/include/configs/PCI5441.h index d06b7f8..c60a9f7 100644 --- a/include/configs/PCI5441.h +++ b/include/configs/PCI5441.h @@ -114,14 +114,16 @@ * TIMEBASE -- * * The high res timer defaults to 1 msec. Since it includes the period - * registers, we can slow it down to 10 msec using TMRCNT. If the default - * period is acceptable, TMRCNT can be left undefined. + * registers, the interrupt frequency can be reduced using TMRCNT. + * If the default period is acceptable, TMRCNT can be left undefined. + * TMRMS represents the desired mecs per tick (msecs per interrupt). *----------------------------------------------------------------------*/ +#define CONFIG_SYS_HZ 1000 /* Always 1000 */ #define CONFIG_SYS_NIOS_TMRBASE 0x00920860 /* Tick timer base addr */ -#define CONFIG_SYS_NIOS_TMRIRQ 3 /* Timer IRQ num */ -#define CONFIG_SYS_NIOS_TMRMS 10 /* 10 msec per tick */ -#define CONFIG_SYS_NIOS_TMRCNT (CONFIG_SYS_NIOS_TMRMS * (CONFIG_SYS_CLK_FREQ/1000)) -#define CONFIG_SYS_HZ (CONFIG_SYS_CLK_FREQ/(CONFIG_SYS_NIOS_TMRCNT + 1)) +#define CONFIG_SYS_NIOS_TMRIRQ 3 /* Timer IRQ num */ +#define CONFIG_SYS_NIOS_TMRMS 10 /* Desired period (msec)*/ +#define CONFIG_SYS_NIOS_TMRCNT \ + (CONFIG_SYS_NIOS_TMRMS * (CONFIG_SYS_CLK_FREQ/1000))
/* diff --git a/include/configs/PK1C20.h b/include/configs/PK1C20.h index 165dde0..874c20b 100644 --- a/include/configs/PK1C20.h +++ b/include/configs/PK1C20.h @@ -124,14 +124,16 @@ * TIMEBASE -- * * The high res timer defaults to 1 msec. Since it includes the period - * registers, we can slow it down to 10 msec using TMRCNT. If the default - * period is acceptable, TMRCNT can be left undefined. + * registers, the interrupt frequency can be reduced using TMRCNT. + * If the default period is acceptable, TMRCNT can be left undefined. + * TMRMS represents the desired mecs per tick (msecs per interrupt). *----------------------------------------------------------------------*/ +#define CONFIG_SYS_HZ 1000 /* Always 1000 */ #define CONFIG_SYS_NIOS_TMRBASE 0x02120820 /* Tick timer base addr */ -#define CONFIG_SYS_NIOS_TMRIRQ 3 /* Timer IRQ num */ -#define CONFIG_SYS_NIOS_TMRMS 10 /* 10 msec per tick */ -#define CONFIG_SYS_NIOS_TMRCNT (CONFIG_SYS_NIOS_TMRMS * (CONFIG_SYS_CLK_FREQ/1000)) -#define CONFIG_SYS_HZ (CONFIG_SYS_CLK_FREQ/(CONFIG_SYS_NIOS_TMRCNT + 1)) +#define CONFIG_SYS_NIOS_TMRIRQ 3 /* Timer IRQ num */ +#define CONFIG_SYS_NIOS_TMRMS 10 /* Desired period */ +#define CONFIG_SYS_NIOS_TMRCNT \ + (CONFIG_SYS_NIOS_TMRMS * (CONFIG_SYS_CLK_FREQ/1000))
/*------------------------------------------------------------------------ * STATUS LED -- Provides a simple blinking led. For Nios2 each board

Scott McNutt wrote:
CONFIG_SYS_HZ was being calculated (incorrectly) in nios2 configuration headers. Updated comments to accurately describe timebase macros.
Signed-off-by: Scott McNutt smcnutt@psyent.com
include/configs/EP1C20.h | 14 ++++++++------ include/configs/EP1S10.h | 14 ++++++++------ include/configs/EP1S40.h | 14 ++++++++------ include/configs/PCI5441.h | 14 ++++++++------ include/configs/PK1C20.h | 14 ++++++++------ 5 files changed, 40 insertions(+), 30 deletions(-)
This is the next "nice" patch around altera boards. If you do the same changes (because of the same reason) in 5 files it points me that something is wrong. Please create one generic nios2 file and move there these common macros. Look at ppc405/440 which use that style.
Michal

Michal Simek wrote:
Scott McNutt wrote:
CONFIG_SYS_HZ was being calculated (incorrectly) in nios2 configuration headers. Updated comments to accurately describe timebase macros.
Signed-off-by: Scott McNutt smcnutt@psyent.com
include/configs/EP1C20.h | 14 ++++++++------ include/configs/EP1S10.h | 14 ++++++++------ include/configs/EP1S40.h | 14 ++++++++------ include/configs/PCI5441.h | 14 ++++++++------ include/configs/PK1C20.h | 14 ++++++++------ 5 files changed, 40 insertions(+), 30 deletions(-)
This is the next "nice" patch around altera boards.
Agreed.
If you do the same changes (because of the same reason) in 5 files it points me that something is wrong.
IMO, it is inefficient, not wrong. But only because each of these boards worked fine ... until some things changed externally ... that required a common resolution.
Please create one generic nios2 file and move there these common macros. Look at ppc405/440 which use that style.
It would indeed be more efficient -- perhaps a common header for the Altera boards when time permits.
Regards, --Scott

Scott McNutt wrote:
Michal Simek wrote:
Scott McNutt wrote:
CONFIG_SYS_HZ was being calculated (incorrectly) in nios2 configuration headers. Updated comments to accurately describe timebase macros.
Signed-off-by: Scott McNutt smcnutt@psyent.com
include/configs/EP1C20.h | 14 ++++++++------ include/configs/EP1S10.h | 14 ++++++++------ include/configs/EP1S40.h | 14 ++++++++------ include/configs/PCI5441.h | 14 ++++++++------ include/configs/PK1C20.h | 14 ++++++++------ 5 files changed, 40 insertions(+), 30 deletions(-)
This is the next "nice" patch around altera boards.
Agreed.
If you do the same changes (because of the same reason) in 5 files it points me that something is wrong.
IMO, it is inefficient, not wrong. But only because each of these boards worked fine ... until some things changed externally ... that required a common resolution.
I don't have anything against the purpose that patch because fix the real issue. I have just problem with that style of doing it.
I am really not sure what you mean by "until some things changed externally"!
Please create one generic nios2 file and move there these common macros. Look at ppc405/440 which use that style.
It would indeed be more efficient -- perhaps a common header for the Altera boards when time permits.
:-) It is not just to be more efficient. 1. Save u-boot size 2. If is only one place where it is defined than you don't need to spend time to fix all boards which are very similar. It is more bug-free solution.
Regards, Michal
Regards, --Scott

Michal,
It would indeed be more efficient -- perhaps a common header for the Altera boards when time permits.
:-) It is not just to be more efficient.
- Save u-boot size
- If is only one place where it is defined than you don't need to spend
time to fix all boards which are very similar. It is more bug-free solution.
Exactly! That's what I meant by "more efficient." Efficiency of size, efficiency of effort. I'm confident that we are in complete agreement.
Best Regards, --Scott
participants (2)
-
Michal Simek
-
Scott McNutt