¶óÁ¸® ÆÄÀ̸¦ ÀÌ¿ëÇÑ Z620 ºÎÆ®ºí·° ¾÷µ¥ÀÌÆ®

   Á¶È¸ 14173   Ãßõ 5    

http://www.2cpu.co.kr/lec/3167#c_3189 (634)

책상위에서 먼지가 쌓여가는 라즈베리 파이에도 3.3V SPI가 제공됩니다.

민현기님께서 공유해주신 내용을 바탕으로.. (다시 한번 감사드립니다)

라즈베리 파이로 Z620 보드 부트블럭 업데이트하는 방법을 간단히 정리해봅니다.


1. 준비물

- 라즈베리 파이 (라즈비안 기준)

- SOP16 to DIP8 테스트 클립

- female to female 점퍼선 6개

- J61_0394.BIN 파일


2. 사전 작업

민현기님 글을 참고해서 BIOS와 ME FW를 업데이트하고, 전원을 분리 후 잔류 제거합니다.

라즈베리 파이 터미널에서 raspi-config를 사용하거나, GUI에서 Rasberry Pi Configuration을 이용해서 SPI를 활성화합니다.


3. 라즈베리 파이에 테스트 클립 연결

라즈베리 파이 pinout(40핀 B/B+ 기준)과 DIP8 쪽보드 pinout을 점퍼선으로 아래와 같이 연결합니다:

- 17 (3.3V) - 8 (VCC)

- 19 (SPI_MOSI) -> 5 (DI)

- 20 (GND) -> 4 (GND)

- 21 (SPI_MISO) -> 2 (DO)

- 23 (SPI_SCLK) -> 6 (CLK)

- 24 (SPI_CE0) -> 1 (/CS)

3번 7번 핀은 연결하지 않습니다.


4. 라즈베리 파이 터미널에서 업데이트 작업

먼저 flashrom utility가 없다면 설치합니다(네트웍 연결 필요):

$ sudo apt install flashrom

클립이 제대로 찝혔는지도 확인할 겸, chip detect를 30MHz로 시도해봅니다:

$ flashrom -p linux_spi:dev=/dev/spidev0.0,spispeed=30000 -V

flashrom의 DB에는 Winbond 25Q128BVFG가 없는 것 같지만, 아래와 같은 내용이 출력되면 됩니다:

Found Winbond flash chip "W25Q128.V" (16384 kB, SPI)

일단 현재의 flash의 내용을 dump 해봅니다:

$ flashrom -p linux_spi:dev=/dev/spidev0.0,spispeed=30000 -r flash-v1.bin

flash의 내용과 일치하는지 한번 비교도 해봅니다:

$ flashrom -p linux_spi:dev=/dev/spidev0.0,spispeed=30000 -v flash-v1.bin

여기서 VERIFIED가 출력되어야 합니다. FAILED가 출력되면 클립을 다시 체결하고 다시 dump 합니다.

boot block 부분을 잘라낸 flash-v2.bin 파일을 생성합니다:

$ head -c 16320K flash-v1.bin > flash-v2.bin

J61_0394.BIN 파일에서 boot block 부분만 flash-v2.bin 파일에 추가합니다:

$ tail -c 64K J61_0394.BIN >> flash-v2.bin

아래와 같은 내용으로 layout.txt 파일을 생성합니다:

00000000:00feffff bios

00ff0000:00ffffff boot

flash-v2.bin 파일의 내용 중 boot block 부분만 업데이트합니다:

$ flashrom -p linux_spi:dev=/dev/spidev0.0,spispeed=30000 -l layout.txt -i boot -w flash-v2.bin

제대로 업데이트가 됐는지 검사합니다:

$ flashrom -p linux_spi:dev=/dev/spidev0.0,spispeed=30000 -v flash-v2.bin

VERIFIED가 출력되면 잘 된 것입니다. FAILED가 출력되면 처음 dump 부터 다시 시도해야 할 것 같습니다.


5. System Information 확인

전원을 넣고 BIOS에 들어가서 System Information의 Boot Block Date가 "03/06/2013"인지 확인합니다.


---

업데이트 한 보드에 E5-2643 v2 두개와 PC3-14900R 모듈 12개 풀로 장착해봤습니다. 아무 문제없이 잘 동작합니다.

Uknow 2019-07
±Û ÀÛ¼º¿¡ Á¤º¸ °øÀ¯¿¡ ±íÀÌ °¨»çµå¸³´Ï´Ù.
     
°¨»çÇÕ´Ï´Ù~
ȲÁø¿ì 2019-07
¿À...
À̰͵µ ¸ÚÁý´Ï´Ù. ÇÏÇÏÇÏ
·Ò¶óÀÌÆ®±â ±¸ÀÔÀ» ¾ÈÇصµ.... ÇÏÇÏÇÏ
     
·Ò¶óÀÌÅÍ ¾øÀÌ °¡´ÉÇÑ °Íµµ ÁÁ±ä ÇÏÁö¸¸, ¾ÈÀüÇÏ°Ô ¾÷µ¥ÀÌÆ® °¡´ÉÇÑ ¹æ¹ýÀÌ¶ó¼­ ´õ ÁÁ½À´Ï´Ù. ¶óÁ¸® ÆÄÀÌÀÇ SPI°¡ 3.3V À̱⵵ ÇÏ°í, 25Q128BVFG´Â 64kB block erase¸¦ Áö¿øÇϴµ¥ 64kB-align µÇ¾îÀÖ´Â boot block ºÎºÐ¸¸ Áö¿ì°í ´Ù½Ã ¾²´Â ¹æ½ÄÀ̱⠶§¹®¿¡.. ½ÇÆÐÀÇ °¡´É¼ºÀÌ °ÅÀÇ ¾ø½À´Ï´Ù.
¶óÁ¸® ÆÄÀ̸¦ ÀÌ¿ëÇÑ ·Ò Ç÷¡½ÌÀ̶ó´Ï ´ë´ÜÇÕ´Ï´Ù. ^^

¿ª½Ã ÀÌ °÷¿¡´Â °í¼ö´ÔµéÀÌ ¸¹½À´Ï´Ù. ÇÏÇÏÇÏ
     
¹ÎÇö±â´Ô ±Û¿¡ ¼ù°¡¶ô Á» ¾ñ¾ú½À´Ï´Ù. ¤»¤»
ÀÌ ¶ÇÇÑ ¸ÚÁý´Ï´Ù!!
̵̧!
     
°¨»çÇÕ´Ï´Ù~
¶óÁ¸®ÀÇ ½´ÆÛÆÄ¿öÀ̳׿ä. ÀÌ°ÍÀº ¹è¿ö¾ßÁö ¤¾
Àú¹ø vpn¼­¹ö¿¡ ÀÌ¾î ºÎÆ®ºí·Ï ¸®ÇÁ·¹½Ì±îÁö.  ...
ÀÌÁ¦ ¶Ç ¾î¶² ÀÀ¿ëÀÌ ³ª¿Ã±î¿ä ¤»¤»
¾÷ÈúÀÔ´Ï´Ù.
     
OS°¡ ¹ÞÃÄÁÖ°í ´Ù¾çÇÑ I/O°¡ ÀÖÀ¸´Ï.. Á¤¸» ´Ù¾çÇÏ°Ô ½á¸ÔÀ» ¼ö ÀÖ´Â µí ÇÕ´Ï´Ù. Á» ¸ÕÁö°¡ ½×ÀÌ´õ¶óµµ Ã¥»ó À§¿¡ ÇϳªÂëÀº ³öµÖ¾ß ÇÒ °Í °°¾Æ¿ä.
¼ÛÁÖȯ 2019-07
Ãßõµå¸³´Ï´Ù
     
°¨»çÇÕ´Ï´Ù~
¿Í...·Ò¶óÀÌÅÍ ¾øÀÌ ¶óÁ¸®ÆÄÀÌ·Î. ´ë´ÜÇϳ׿ä^^
     
´ë´ÜÇÑ °Ç ¾Æ´Ï°í.. SPI ¹æ½Ä Ç÷¡½Ã¶ó¼­ °¡´ÉÇÕ´Ï´Ù.
¹é·æ 2019-07
À§ °­Á¸¦ µû¶ó Çغ¸°í ÀÖ½À´Ï´Ù

Probing for Generic unknown SPI chip (RDID), 0 kB: probe_spi_rdid_generic: id1 0x80, id2 0x2020
Found Generic flash chip "unknown SPI chip (RDID)" (0 kB, SPI) on linux_spi.
Probing for Generic unknown SPI chip (REMS), 0 kB: probe_spi_rems: id1 0x0, id2 0x20
Found Generic flash chip "unknown SPI chip (RDID)" (0 kB, SPI).

ÀÌ·¸°Ô ¶ß´Âµ¥¿ä. ¹¹°¡ À߸ø µÇ¾ú´ÂÁö Ŭ¸³À» ´Ù½Ã °áÇÕÇصµ µ¿ÀÏÇϳ׿ä
Found Winbond flash chip "W25Q128.V" (16384 kB, SPI)
 ÀÌ ¸Þ½ÃÁö°¡ ¾È³ª¿À³×¿ä
     
Ŭ¸³À» ´Ù½Ã °áÇÕÇصµ ÀνÄÀÌ ¾ÈµÈ´Ù¸é, Ŭ¸³À» 180µµ µ¹·Á¼­ °áÇÕÇغ¸½Ã¸é ¾î¶³±î¿ä.
          
¹é·æ 2019-07
À§ »óÅ¿¡¼­ ¹ÎÇö±â´Ô ±Û ¹æ½ÄÀ¸·Î Detect Çϸé Á¤»óÀûÀ¸·Î ROMÀÌ Àоî Áö³×¿ä.
¶óÁ¸®ÆÄÀÌ ¿¡¼­´Â °è¼Ó Àú »óÅ ÀÔ´Ï´Ù. (Found Generic flash chip "unknown SPI chip (RDID)" (0 kB, SPI). )
               
SPI È°¼ºÈ­ ¾ÈµÈ »óÅ°¡ ¾Æ´Ò±î¿ä?
                    
¹é·æ 2019-07
SPI È°¼ºÈ­ ½ÃŲ »óÅÂÀÔ´Ï´Ù.
¿¬°á Çɵµ ÀçÂ÷ È®ÀÎ Çß±¸¿ä
                         
À½.. Àúµµ NVMe µå¶óÀ̹ö ¾÷µ¥ÀÌÆ® Çϸ鼭 óÀ½ºÎÅÍ ´Ù½Ã Çѹø Çغ¸°Ú½À´Ï´Ù. Ưº°ÇÒ °Ô ¾ø´Â ³»¿ëÀε¥.. ÀÌ»óÇϳ׿ä..
     
¾îÁ¦ NVMe µå¶óÀ̹öµµ ³ÖÀ» °â Çؼ­ ´Ù½Ã Çغôµ¥.. Àß µÇ³×¿ä. Á¦ °æ¿ì¿¡´Â probing ·Î±× ³¡ºÎºÐÀÌ ¾Æ·¡¿Í °°½À´Ï´Ù:
Probing for Winbond unknown Winbond (ex Nexcom) SPI chip, 0 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4018
Probing for Generic unknown SPI chip (RDID), 0 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4018
Probing for Generic unknown SPI chip (REMS), 0 kB: probe_spi_rems: id1 0xef, id2 0x17
Found Winbond flash chip "W25Q128.V" (16384 kB, SPI).
id1, id2 °ªÀÌ ³Ê¹« ´Ù¸¥µ¥¿ä. Ȥ½Ã ¸ð¸£´Ï 30MHz ¸»°í.. Á» ³·Ãç¼­ 10MHz Á¤µµ·Î ½ÃµµÇغ¸¼¼¿ä.
          
¹é·æ 2020-04
10MHz ·Î ¼öÂ÷·Ê ½ÃµµÇؼ­ ¼º°ø Çß½À´Ï´Ù,
               
¾Æ ±×·¸±º¿ä. ´ÙÇàÀÔ´Ï´Ù. 30MHz´Â »ç½Ç Winbond 25Q128BVFG ĨÀÌ Áö¿øÇÏ´Â ÃÖ´ë ¼ÓµµÀÔ´Ï´Ù. Ŭ¸³ÀÌ ±²ÀåÈ÷ Àß ³¢¿öÁø °æ¿ì¿¡ °¡´ÉÇÒ °Í °°°í¿ä. Àúµµ Àß ¾ÈµÅ¼­ 5MHz ±îÁö ³»·Á¼­ Çß´ø ±â¾ïÀÌ ÀÖ½À´Ï´Ù.
                    
¹é·æ 2020-04
³× Ŭ¸³À» Àß ³¢¿ö¾ß µÇ´õ±º¿ä.
À̰͵µ ¿ª½Ã ¹Ýº¹ ÀÛ¾÷À» ÇØ ºÁ¾ß µÇ³×¿ä


Á¦¸ñPage 12949/28
°Ô½Ã¹°ÀÌ ¾ø½À´Ï´Ù.