2010年5月23日 星期日

OpeniBoot 4 iPhone

OpeniBoot flow chart 4 iphone...
OpenIBootStart() < void OpenIBootStart () at openiboot.c:65> :
    setup_openiboot() < int setup_openiboot () at openiboot.c:393> :
        arm_setup()
        mmu_setup()
        tasks_setup()
        setup_devices() < int setup_devices () at openiboot.c:365> :
            miu_setup()
            power_setup()
            clock_setup()
            interrupt_setup()
            gpio_setup()
            timer_setup()
            event_setup()
            wdt_setup()
            usb_shutdown()
            uart_setup()
            i2c_setup()
            dma_setup()
            spi_setup()
        LeaveCriticalSection()
        clock_set_sdiv()
        aes_setup()
        nor_setup()
        syscfg_setup()
        images_setup()
        nvram_setup()
        lcd_setup()
        framebuffer_setup()
        audiohw_init()
    pmu_charge_settings()
    framebuffer_setdisplaytext()
    framebuffer_clear()
    nvram_getvar()
    strcmp()
    bufferPrintf()
    parseNumber()
    menu_setup()
    startUSB() < void startUSB () at openiboot.c:355> :
        usb_setup()
        usb_install_ep_handler()
        controlReceived() < void controlReceived (uint32_t token) at openiboot.c:235> :
            getScrollbackLen()
            usb_send_interrupt()
            usb_send_bulk()
            bufferPrintf()
            bufferFlush()
            usb_receive_bulk()
            usb_receive_interrupt()
        dataReceived() < void dataReceived (uint32_t token) at openiboot.c:290> :
            usb_receive_bulk()
            addToCommandQueue() < void addToCommandQueue (const char *command) at openiboot.c:154> :
                EnterCriticalSection()
                bufferPrintf()
                LeaveCriticalSection()
                malloc()
                strdup()
        controlSent() < void controlSent (uint32_t token) at openiboot.c:322> 
        dataSent() < void dataSent (uint32_t token) at openiboot.c:303> :
            usb_send_bulk()
            bufferPrintf()
            bufferFlush()
        usb_start()
        enumerateHandler() < void enumerateHandler (USBInterface *interface) at openiboot.c:326> :
            usb_add_endpoint()
            memalign()
        startHandler() < void startHandler () at openiboot.c:345> :
            usb_get_speed()
            usb_receive_interrupt()
    camera_setup()
    radio_setup()
    sdio_setup()
    wlan_setup()
    accel_setup()
    als_setup()
    nand_setup()
    fs_setup()
    pmu_set_iboot_stage()
    startScripting()
    DebugPrintf()
    audiohw_postinit()
    EnterCriticalSection()
    free()
    LeaveCriticalSection()
    processCommand() < void processCommand (char *command) at openiboot.c:185> :
        tokenize()
        strcmp()
        EnterCriticalSection()
        parseNumber()
        LeaveCriticalSection()
        free()
        bufferPrintf()

2 則留言:

  1. use sed to replace '>' 2 '&gt'
    .... '<' 2 '&lt'

    sed 's/>/\&gt/' >

    回覆刪除
  2. General Syntax of Extended AT Commands
    http://www.developershome.com/sms/atCommandsIntro2.asp

    回覆刪除