mirror of
https://xff.cz/git/u-boot/
synced 2025-09-02 09:12:08 +02:00
arc: get rid of running_on_hw
ISS is obsolete now and nSIM is used for simulation instead. In its turn nSIM properly handles baud-rate settings so get rid of now useless check. Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
This commit is contained in:
@@ -9,7 +9,6 @@
|
|||||||
|
|
||||||
/* Architecture-specific global data */
|
/* Architecture-specific global data */
|
||||||
struct arch_global_data {
|
struct arch_global_data {
|
||||||
int running_on_hw;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
#include <asm-generic/global_data.h>
|
#include <asm-generic/global_data.h>
|
||||||
|
@@ -14,12 +14,6 @@ int arch_cpu_init(void)
|
|||||||
{
|
{
|
||||||
timer_init();
|
timer_init();
|
||||||
|
|
||||||
/* In simulation (ISS) "CHIPID" and "ARCNUM" are all "ff" */
|
|
||||||
if ((read_aux_reg(ARC_AUX_IDENTITY) & 0xffffff00) == 0xffffff00)
|
|
||||||
gd->arch.running_on_hw = 0;
|
|
||||||
else
|
|
||||||
gd->arch.running_on_hw = 1;
|
|
||||||
|
|
||||||
gd->cpu_clk = CONFIG_SYS_CLK_FREQ;
|
gd->cpu_clk = CONFIG_SYS_CLK_FREQ;
|
||||||
gd->ram_size = CONFIG_SYS_SDRAM_SIZE;
|
gd->ram_size = CONFIG_SYS_SDRAM_SIZE;
|
||||||
|
|
||||||
|
@@ -42,23 +42,7 @@ static int arc_serial_setbrg(struct udevice *dev, int baudrate)
|
|||||||
int arc_console_baud = gd->cpu_clk / (baudrate * 4) - 1;
|
int arc_console_baud = gd->cpu_clk / (baudrate * 4) - 1;
|
||||||
|
|
||||||
writeb(arc_console_baud & 0xff, ®s->baudl);
|
writeb(arc_console_baud & 0xff, ®s->baudl);
|
||||||
|
|
||||||
#ifdef CONFIG_ARC
|
|
||||||
/*
|
|
||||||
* UART ISS(Instruction Set simulator) emulation has a subtle bug:
|
|
||||||
* A existing value of Baudh = 0 is used as a indication to startup
|
|
||||||
* it's internal state machine.
|
|
||||||
* Thus if baudh is set to 0, 2 times, it chokes.
|
|
||||||
* This happens with BAUD=115200 and the formaula above
|
|
||||||
* Until that is fixed, when running on ISS, we will set baudh to !0
|
|
||||||
*/
|
|
||||||
if (gd->arch.running_on_hw)
|
|
||||||
writeb((arc_console_baud & 0xff00) >> 8, ®s->baudh);
|
writeb((arc_console_baud & 0xff00) >> 8, ®s->baudh);
|
||||||
else
|
|
||||||
writeb(1, ®s->baudh);
|
|
||||||
#else
|
|
||||||
writeb((arc_console_baud & 0xff00) >> 8, ®s->baudh);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user