$30 off During Our Annual Pro Sale. View Details »

詳解・電子辞書で Linux がブートするまで / boot-linux-on-sharp-brain-explained

Takumi Sueda
October 31, 2021

詳解・電子辞書で Linux がブートするまで / boot-linux-on-sharp-brain-explained

Brain Hackers Meetup #1 一般発表

Takumi Sueda

October 31, 2021
Tweet

More Decks by Takumi Sueda

Other Decks in Technology

Transcript

  1. Linux
    Brain Hackers Meetup #
    1
    @puhitaku

    View Slide

  2. Takumi Sueda @puhitaku




    2020 9 SHARP Brain

    Linux 10

    Brain Hackers










    View Slide

  3. 3

    View Slide

  4. SHARP Windows CE


    CE exe (PE)




    2011


    TOSHIBA TMPA
    9
    10
    CRAXBG (armv
    4
    l) +
    64
    MiB DRAM


    Windows CE


    2012 2020


    NXP i.MX
    2
    8
    (armv
    5
    tej) +
    12
    8
    MiB DRAM


    Windows CE


    2021


    NXP i.MX
    7
    ULP (armv
    7
    -a, armv
    7
    e-m) +
    128
    MiB DRAM


    μITRON RTOS
    : SHARP Brain
    4
    https://jp.sharp/edictionary/products/pwsh
    1
    _overviiew.html

    View Slide

  5. puhitaku PW-SH
    1
    Linux


    Brain Hackers + i.MX
    28


    Debian Brainux
    Raspberry Pi
    Brain Linux


    PW-x
    1
    (i.MX
    7
    ULP)




    @pepepper


    11/20 Kernel/VM online part
    4
    : Brain Linux
    5
    https://jp.sharp/edictionary/products/pwsh
    1
    _overviiew.html

    View Slide

  6. 6

    View Slide

  7. Windows Linux 7
    https://jp.sharp/edictionary/products/pwsh
    1
    _overviiew.html
    ?
    Linux

    View Slide

  8. Windows Linux 8
    https://jp.sharp/edictionary/products/pwsh
    1
    _overviiew.html


    ?
    Windows CE

    View Slide

  9. 1
    . Windows
    1
    . Windows
    9

    View Slide

  10. 1
    . Windows
    ARM SoC
    10

    View Slide

  11. 1
    . Windows
    A. Boot ROM


    11

    View Slide

  12. 1
    . Windows
    A. Boot ROM

    (i.MX
    28
    : On-chip ROM)
    12

    View Slide

  13. 1
    . Windows
    ARM
    DRAM ;
    13
    eMMC
    DRAM
    I
    2
    C
    SPI
    ARM
    9
    2 6
    EJ-S

    Core

    View Slide

  14. 1
    . Windows
    On-chip ROM On-chip RAM


    On-chip ROM On-chip RAM
    14
    On-chip ROM
    On-chip RAM

    (SRAM)
    ARM
    9
    2 6
    EJ-S

    Core

    View Slide

  15. ARM
    9
    2 6
    EJ-S

    Core
    1
    . Windows
    On-chip ROM


    15
    On-chip ROM
    On-chip RAM

    (SRAM)
    🤔
    ARM
    USB slave (recovery)
    I
    2
    C
    SPI
    SSP (eMMC / SD)
    GPMI (NAND)
    JTAG

    View Slide

  16. ARM
    9
    2 6
    EJ-S

    Core
    1
    . Windows
    Brain One-Time-Programmable ROM eMMC

    I
    2
    C EEPROM eMMC
    16
    On-chip ROM
    On-chip RAM

    (SRAM)
    😊
    ARM
    USB slave (recovery)
    SSP (eMMC / SD)
    SPI
    I
    2
    C
    GPMI (NAND)
    JTAG
    eMMC

    View Slide

  17. 1
    . Windows
    eMMC Program Image


    DRAM (EBOOT)
    17
    😊
    ARM
    SSP (eMMC / SD)
    Program Image
    MBR
    Program Image
    Boot ROM

    : Windows
    DRAM init.
    EBOOT
    NK image

    View Slide

  18. 1
    . Windows
    EBOOT NK image Windows

    DRAM
    18
    😊
    ARM
    SSP (eMMC / SD)
    MBR
    Program Image
    DRAM init.
    EBOOT
    NK image
    DRAM

    EBOOT
    On-chip ROM On-chip RAM
    DRAM
    NK image
    EBOOT

    View Slide

  19. 1
    . Windows
    Windows CE
    19
    https://jp.sharp/edictionary/products/pwsh
    1
    _overviiew.html

    View Slide

  20. 1
    . Windows 20
    Boot ROM
    Program

    Image
    EBOOT
    Windows

    View Slide

  21. 2
    . Windows
    2
    . Windows
    21

    View Slide

  22. 2
    . Windows 22
    https://jp.sharp/edictionary/products/pwsh
    1
    _overviiew.html
    ?
    Linux

    View Slide

  23. 2
    . Windows
    SHARP Windows CE


    CE exe (PE)




    2011


    TOSHIBA TMPA
    9
    10
    CRAXBG (armv
    4
    l) +
    64
    MiB DRAM


    Windows CE


    2012 2020


    NXP i.MX
    2
    8
    (armv
    5
    tej) +
    12
    8
    MiB DRAM


    Windows CE


    2021


    NXP i.MX
    7
    ULP (armv
    7
    -a, armv
    7
    e-m) +
    128
    MiB DRAM


    μITRON RTOS
    : SHARP Brain
    23
    https://jp.sharp/edictionary/products/pwsh
    1
    _overviiew.html

    View Slide

  24. 2
    . Windows
    " " BrainLILO

    24
    Windows
    eMMC
    FAT
    32
    " "
    BrainLILO
    u-boot.bin
    DRAM
    Windows

    Kernel
    Brain

    LILO
    BrainLILO
    ???

    View Slide

  25. 2
    . Windows
    U-Boot (u-boot.bin) DRAM
    25
    Windows
    eMMC
    u-boot.bin

    DRAM
    Windows

    Kernel
    Brain

    LILO
    u-boot.bin
    FAT
    32
    " "
    BrainLILO
    u-boot.bin
    ???

    View Slide

  26. 2
    . Windows
    MMU (Memory Management Unit) etc.
    26
    Windows
    eMMC
    DRAM
    u-boot.bin
    🔥
    🔥
    🔥 🔥
    FAT
    32
    " "
    BrainLILO
    u-boot.bin
    ???

    View Slide

  27. 2
    . Windows
    U-Boot
    27
    Windows
    eMMC
    ͞Α͏ͳΒʜ
    DRAM
    u-boot.bin
    🔥
    🔥
    🔥 🔥
    FAT
    32
    " "
    BrainLILO
    u-boot.bin
    ???

    View Slide

  28. 2
    . Windows
    U-Boot

    Linux
    28
    U-Boot
    eMMC
    DRAM
    u-boot.bin
    FAT
    32
    " "
    BrainLILO
    u-boot.bin
    Linux Image
    Linux
    Image
    Linux

    View Slide

  29. 2
    . Windows
    Linux
    29
    https://jp.sharp/edictionary/products/pwsh
    1
    _overviiew.html

    View Slide

  30. 2
    . Windows 30
    BrainLILO U-Boot
    Windows

    View Slide

  31. 3
    . Linux
    3
    . Linux
    31

    View Slide

  32. 3
    . Linux
    Linux 1
    32
    Program

    Image
    Brain

    LILO
    U-Boot
    EBOOT
    U-Boot
    Boot


    ROM
    U-Boot
    Program

    Image

    View Slide

  33. 3
    . Linux
    3
    .
    1
    . EBOOT U-Boot
    33
    Program

    Image
    Brain

    LILO
    U-Boot
    EBOOT
    U-Boot
    Boot


    ROM
    U-Boot
    Program

    Image

    View Slide

  34. 3
    . Linux
    eMMC NK image

    SD NK image
    34
    PW-SH
    1
    EBOOT

    View Slide

  35. 3
    . Linux
    NK image U-Boot

    EBOOT U-Boot
    35
    SD
    FAT
    32
    EDSA
    1
    EXE.BIN


    u-boot.bin
    NK image

    View Slide

  36. 3
    .
    2
    . Boot ROM Program Image U-Boot
    3
    .
    2
    . Boot ROM Program Image U-Boot
    36
    Program

    Image
    Brain

    LILO
    U-Boot
    Boot


    ROM
    U-Boot
    Program

    Image

    U-Boot
    EBOOT

    View Slide

  37. 3
    .
    2
    . Boot ROM Program Image U-Boot
    eMMC EBOOT U-Boot Program Image

    Linux
    37
    eMMC
    MBR
    Program Image
    U-Boot SPL
    U-Boot
    Linux rootfs (ext
    4
    )

    View Slide

  38. 3
    .
    2
    . Boot ROM Program Image U-Boot
    EBOOT BrainLILO Program Image
    38
    Program

    Image
    Brain

    LILO
    U-Boot
    Boot


    ROM
    U-Boot
    Program

    Image

    U-Boot
    EBOOT



    View Slide

  39. 4
    . Program Image
    4
    . Program Image
    39

    View Slide

  40. 4
    . Program Image
    eMMC Linux


    SD I/O


    SD


    SDIO Wi-Fi


    Linux


    GPIO


    Program Image
    40

    View Slide

  41. 5.
    5.
    41

    View Slide

  42. 5.
    SHARP Brain Linux


    Windows BrainLILO U-Boot


    EBOOT (Windows ) U-Boot


    Boot ROM U-Boot


    Boot ROM



    42

    View Slide

  43. Brain Hackers

    View Slide