도와주세요!!
글 수 15,339
ngcs3 을 사용할려고 합니다.....
제가 수정한 내용은
==== arch_s3c2440/makefile_config
##C_OBJS += $(TOPDIR)/main/ax88796b.o
C_OBJS += $(TOPDIR)/main/cs8900.o
##C_OBJS += $(TOPDIR)/main/smc91111.o
===== arch_s3c2440/board_config.c
//extern eth_dev_t ax88796b_dev;
extern eth_dev_t cs8900_dev;
int supply_ethernet( eth_dev_t **eth ) {
//ax88796b_dev.base = ADDR_AX88796B;
//ax88796b_dev.addr_shift = 1;
cs8900_dev.base = ADDR_CS8900;
cs8900_dev.addr_shift = 1;
//*eth = &ax88796b_dev;
*eth = &cs8900_dev;
===== arch_s3c2440/board_config.h
//#define ADDR_AX88796B CS2_PHYS
#define ADDR_CS8900 (CS3_PHYS + 0x300)
====== arch_s3c2440/setup.h
//#define BWSCON_BANK3 ( ( DW16 ) << 12 )
#define BWSCON_BANK3 ( ( DW16 | WAIT ) << 12 )
//#define MBC_CS3_TACS ( 0x0 << 13 )
//#define MBC_CS3_TCOS ( 0x0 << 11 )
#define MBC_CS3_TACS ( 0x1 << 13 )
#define MBC_CS3_TCOS ( 0x2 << 11 )
이렇게 수정했는데 CS8900이 초기화가 되질 않네여
잘못된 부분이나 추가해야할 사항이 있으면 조언 좀 부탁드립니다.
2008.06.20 13:24:28 (*.178.177.5)
조언 감사합니다. ^^
하드웨어 회로는 마이크로비젼의 mv2440제품을 참고 했습니다.
답변을 토대로 하드웨어 회로를 분석해서
드라이버 초기화 / 리셋 부분 / 메모리 접근 타이밍 처리 부분을 검토해 보도록 하겟습니다.
번창하십시요~~
하드웨어 회로는 마이크로비젼의 mv2440제품을 참고 했습니다.
답변을 토대로 하드웨어 회로를 분석해서
드라이버 초기화 / 리셋 부분 / 메모리 접근 타이밍 처리 부분을 검토해 보도록 하겟습니다.
번창하십시요~~
2008.06.23 10:37:50 (*.138.143.22)
안녕하세요..
cs8900_dev.addr_shift = 1;
부분을 한번 검토해 보세요.. 일반적으로 대부분의 회로도가 CS8900 경우 cs8900_dev.addr_shift = 0; 로 설계되어 있는 것으로 알고 있습니다..
그럼 수고하세요..
2008.10.01 15:18:22 (*.217.216.51)
이글보고 초기화에 성공햇습니다. 글쓰시고 답글 달아주신분들께 정말 감사드립니다.
장형기님 말대로 shift=0 으로 셋팅하고
메모리 접근타이밍을 setup.h 파일에서
BWCON =(BWCON & ~(0xf<<12)) | (0xd<<12);
BANKCON3 = (3<<11) | (0x7 <<8) | (0x1<<6) | (0x3 <<4) | (0x3 <<2); 이렇게 세팅하고
memory_map.h 에서 CS3_PHYS 주소를 0x1900,000 ( IO모드는 이렇게 해야한다네여 ? )
근데 초기화는 성공햇지만
커널을 다운로드 할떄
ethernet linked fail 이뜨네요 ㅠㅠ
아이피 게이트웨이 공유기 설정까지 다 확인햇지만 아직 원인을파악하지 못햇습니다.( 호스트에서 보드로 ping 도 안뜹니다.)
장형기님 말대로 shift=0 으로 셋팅하고
메모리 접근타이밍을 setup.h 파일에서
BWCON =(BWCON & ~(0xf<<12)) | (0xd<<12);
BANKCON3 = (3<<11) | (0x7 <<8) | (0x1<<6) | (0x3 <<4) | (0x3 <<2); 이렇게 세팅하고
memory_map.h 에서 CS3_PHYS 주소를 0x1900,000 ( IO모드는 이렇게 해야한다네여 ? )
근데 초기화는 성공햇지만
커널을 다운로드 할떄
ethernet linked fail 이뜨네요 ㅠㅠ
아이피 게이트웨이 공유기 설정까지 다 확인햇지만 아직 원인을파악하지 못햇습니다.( 호스트에서 보드로 ping 도 안뜹니다.)
이전에 저희 회사 제품 회로도를 참조하신것인지 아니면 다른 회사 제품을 참조하신것인지가 궁금합니다.
드라이버중 초기화 나 리셋 부분이 다를수도 있고
메모리 접근 타이밍에 대한 처리도 달라 질수 있을 것 같아서 그렇습니다.