기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.

안녕하세요.. 고도리님..

www.aesop-embedded.org Q&A에 파일 첨부기능이 없어서 이곳에 다시
질문 올립니다.

제가 하고자 하는 것은 화면처리와 관련된 lib를 구축하여 향후 app.에서
사용하고자 함입니다.

1. framebuffer driver 작성
    . 화면모드변경(해상도, palette)
2. SDL연계(framebuffer기반)
3. 기타..


질문사항
  1. 첨부파일 을 기준으로 FBIOPUT_VSCREENINFO, FBIOPUT_CMAP을
      통해서 화면모드, palette 변경을 잘 이루어지고 있습니다.
      그래서 SDL과 연동해서 테스트 프로그램을 작성해 보았으나
      화면 모드는 바뀌나, palette적용은 안되는것 같습니다. 대충 SDL 소스를
      보았으나 수정해야 하는 부분이 좀 많은것 같다는 ????
      어떻게 / 어느정도를 해야 할지 가이드점 제시해 주세요...^^


   2. s3c2440fb_set_cmap function내용중 hw palette setting부분을
       remark처리하고 했을 경우는 왜 palette이 변경이 안되는것인지?


www.aesop-embedded.org 사이트가 빨리 오픈되기를 기다리면서.....

고현철

2006.04.05 22:39:57
*.117.46.252

1번 질문에 대한 질문
1> 그냥 app를 작성해서 palette를 변경시키셨는지?
2> SDL에서는 어떻게 팔레트를 변화시키셨는지, 1>에서의 app로 변화를 주신 후 SDL을 쓰셨는데, 변화가 안되었는지.....아니면 SDL에서 직접 해보신 것인지?

2번질문에 대한 답변:
set_cmap 함수의 경우 당연히 hw palette setting을 빼면 변경이 안되겠지요?.....^^

지금 소스를 보고 있는데, 굉장히 생소하다 했더니...쩝...2.4.20이네요.
에궁....

본지 거의 1년 넘은 소스네요..--;

김대영

2006.04.05 22:53:34
*.149.204.176

1> app에서 작성해서 변경했습니다.
2> SDL 팔레트 관련부분은 제가 좀더 해본다음에 다시 질문을 드리겠습니다.

set_cmap 함수의 경우 당연히 hw palette setting을 빼면 변경이 안되는 이유?
제가 임베디드 첨음이라 잘 몰라서요.. 설명 부탁드립니다.

2.4.20 말고 커널을 올린후에 다시 질문 드리겠습니다.^^

고현철

2006.04.05 23:00:11
*.117.46.252

s3c2440fb_set_cmap(struct fb_cmap *cmap, int kspc, int con,
struct fb_info *info)
{
//kozi
// hw palette setting부분
// 이부분을 remark하고 하면 안될까?
LCDCON1 &= ~LCD1_ENVID;
int i;
for(i=0;i<256;i++)
{
bLCD_CTL(0x400+i*4)=(cmap->red[i]>>3)<<11 | ((cmap->green[i]>>2)<<5) | (cmap->blue[i]>>3);
}
LCDCON1 |= LCD1_ENVID;

// ghcstop 질문....왜 여기서 return 하신건지....
return;
//kozi end

return __do_set_cmap(cmap, kspc, con, info);
}


SDL은 드라이버쪽 세팅을 그대로 읽어와서 이용을 하는 쪽입니다. 드라이버에 알맞도록 동작을 하게 되어 있다는 말입니다. 즉, color map의 경우

다음의 조건이 제대로 충족되어야 SDL이 원하는대로 동작할겁니다.

1. hw에 제대로 세팅되어 잇어야 한다. 이 경우 2440의 lcd control쪽에 세팅이 되어 있어야 하고요.

2. SDL이 hw에 세팅된 color map을 이용해서 동작을 하여야 함으로 ioctl등에 대한 부분은 원래의 fb layer쪽 값을 읽어오게 되어 있습니다. 즉, hw에 세팅된 값을 제대로 읽어올 수 있어야 한다는 말입니다.

3. 2번의 결과론 적인 얘기를 말씀드리면, hw 세팅이 제대로 되어 잇어야 하고, 그 hw 세팅에 알맞는 값을 SDL에서 알아먹을 수 있도록 fb layer쪽의 colormap쪽에도 등록을 해줘야 합니다.

4. 3번의 조건이 충족되어야 SDL에서 color map을 hw세팅된 값으로 처리가 됩니다.

5. 코드를 보면 hw에는 세팅을 제대로 했으나, fb layer쪽에 등록을 안해준 듯 보여집니다. 그 부분이 제 생각엔 return을 해 버린 부분에 문제가 있지 않나 생각이 듭니다.

제가 2.4.20으로 테스트환경을 다시 꾸미기가 좀 애매한 상황인데다, 테스트 코드도 작성을 하려면 그것도 일이라...이 정도로만 답변을 드리는 것에 대해 이해 부탁드립니다.

^^

ps> 나중에 정안되면 연락처를 메일로 보내주시던가, 아니면 이 게시판에 테스트 example정도를 다시 올려주시기 바랍니다. 시간날때 테스트정도만 해볼 수 있겠끔요.

고현철

2006.04.05 23:06:07
*.117.46.252

2.6.13도 기억이 가물가물한데....손댄지 거의 4개월정도라...

palette 세팅부분을 싸그리 무시하고 짠 듯한 기억이 납니당....ㅎㅎ
일단 2.4.20으로 테스트 해보시고요...(위의 return 부분처리요)

그 부분인 듯 한데.....하여간 테스트함 해보시고, 답글 부탁드립니다.
그게 ok되면 제가 2.6.13으로 함 포팅을 해보던가 하겠습니다.

물론, 시간이 좀 되면요...요즘 일이 3개가 겹쳐있어서 좀 정신없거든요.
List of Articles
번호 제목 글쓴이 날짜sort 조회 수
8 자료실에서... [3] 박현진 2006-04-09 3530
7 2.6.13커널 디버그출력을 터미널로?[완료] [2] 김대영 2006-04-08 3842
6 U-BOOT 포팅중 질문사항 <= 완료 [4] 장석원 2006-04-07 4019
5 메인 페이지도 오픈하셨네요... 툴체인 관련...<=완료 [5] 이홍석 2006-04-06 3730
4 현재 개발하고 계시는 cross-toolchain은 어디서?[완료] [2] 김대영 2006-04-06 3780
3 2.6.13 최신 커널 소스는 어디서?[완료] [2] 김대영 2006-04-06 3790
» 이솦보드 palette세팅중 3번째 질문(kelp에서 kozicozi님의 질문... [4] 고현철 2006-04-05 6937
1 Q&A 게시판 사용시 주의사항. 고현철 2006-04-05 9516

사용자 로그인