From: Stefan N. <ste...@en...> - 2001-05-30 18:01:16
|
Hello, I'm still porting ppcboot to my custom board. As before I have a MPC860 cpu, 512kB Flash, 16MB RAM. The cpu runs with 32MHz, derived as 8x4MHz. When running ppcboot with the debugger (bdm4gdb) ppcboot runs until the main loop. Seems it would run perfectly fine if I could type in some commands and see the output on the serial interface. But I did not get the serial connection to work yet. I use a baudrate of 9600 on SMC1. The output I see on the terminal emulation program looks like this: ;D..ÿ.;7.¿û7y..go.Ä3....G...3...f1..G8..30.4D.G<ô.gx.Ñ0.;f°D¼.7y. I verified all frequencies and settings I can imagine to be related to the serial port (smc1) but all seem to be reasonable. Also changing the baudrate of the terminal emulation doesn't change anything. Does anybody recognize the output above to be related to a known configuration error? Some of my settings that might be important: #define CONFIG_MPC860 1 #define CONFIG_8xx_CPUCLOCK 32 // in MHz #define CONFIG_8xx_BUSCLOCK (CONFIG_8xx_CPUCLOCK) #define TARGET_SYSTEM_FREQUENCY (CONFIG_8xx_CPUCLOCK) #define CONFIG_8xx_GCLK_FREQ 32000000 // in Hz #define CONFIG_DRAM_SPEED (CONFIG_8xx_BUSCLOCK) #define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */ #undef CONFIG_8xx_CONS_SMC2 #undef CONFIG_8xx_CONS_NONE #define CONFIG_BAUDRATE 9600 /* console baudrate = 9600bps */ #define CONFIG_LOADS_ECHO 1 /* echo on for serial download */ #define CFG_LOADS_BAUD_CHANGE 1 #define MPC8XX_FACT 8 /* Multiply by 8 */ #define MPC8XX_XIN 4000000 /* 4 MHz in */ #define MPC8XX_HZ ((MPC8XX_XIN) * (MPC8XX_FACT)) #define CFG_BAUDRATE_TABLE { 9600, 19200, 38400, 57600, 115200 } // just in case it is important // the configuration for ethernet on scc1 #define CONFIG_SCC_ENET 1 #define CONFIG_SCC1_ENET 1 #define PROFF_ENET PROFF_SCC1 #define CPM_CR_ENET CPM_CR_CH_SCC1 #define SCC_ENET 1 #define PA_ENET_RXD ((ushort)0x0001) #define PA_ENET_TXD ((ushort)0x0002) #define PA_ENET_TCLK ((ushort)0x0200) #define PA_ENET_RCLK ((ushort)0x0100) #define PB_ENET_TENA ((uint)0x00001000) #define PC_ENET_CLSN ((ushort)0x0010) #define PC_ENET_RENA ((ushort)0x0020) #define SICR_ENET_MASK ((uint)0x000000ff) #define SICR_ENET_CLKRT ((uint)0x00000025) The hardware for SMC1 is connected to pb25 (transmit) and pb24 (receive). This seems to be ok because the instructions in serial.c::serial_init refer to these ports. cp->cp_pbpar |= 0x000000c0; cp->cp_pbdir &= ~0x000000c0; cp->cp_pbodr &= ~0x000000c0; I red one shouldn't use minicom, as I still do because I did not figure out the usage of kermit yet. Why is minicom not suitable for ppcboot? As always: thank you very much for your help. Stefan -- Stefan Nunninger Ecole nationale superieure des telecommunications 46, Rue Barrault 75634 Paris Cedex 13 Tel: 01 45 81 7507 (bureau) 01 45 81 7600 (laboratoire) |