Ignore:
Timestamp:
Jun 26, 2017, 3:15:11 PM (7 years ago)
Author:
alain
Message:

bloup

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/kernel/kern/kernel_init.c

    r25 r50  
    5555#include <devfs.h>
    5656
    57 // TODO #include <sysfs.h>
    5857
    5958#define KERNEL_INIT_SYNCHRO  0xA5A5B5B5
     
    115114__attribute__((section(".kdata")))
    116115barrier_t            local_barrier                           CONFIG_CACHE_LINE_ALIGNED;
     116
     117// This variable defines the array of supported File System contexts
     118__attribute__((section(".kdata")))
     119vfs_ctx_t            fs_context[FS_TYPES_NR]                 CONFIG_CACHE_LINE_ALIGNED;
     120
    117121
    118122///////////////////////////////////////////////////////////////////////////////////////////
     
    293297    }
    294298
    295     kinit_dmsg("\n[INFO] %s : core[%x][0] creates ICU chdev at cycle %d\n",
     299    kinit_dmsg("\n[INFO] %s : core[%x][0] created ICU chdev at cycle %d\n",
    296300               __FUNCTION__ , local_cxy , hal_time_stamp() );
    297301
     
    335339        }
    336340
    337         kinit_dmsg("\n[INFO] %s : core[%x][0] creates MMC chdev at cycle %d\n",
     341        kinit_dmsg("\n[INFO] %s : core[%x][0] created MMC chdev at cycle %d\n",
    338342                   __FUNCTION__ , local_cxy , hal_time_stamp() );
    339343    }
     
    370374            chdev_dir.dma[channel] = chdev_xp;
    371375
    372             kinit_dmsg("\n[INFO] %s : core[%x][0] creates DMA[%d] chdev at cycle %d\n",
     376            kinit_dmsg("\n[INFO] %s : core[%x][0] created DMA[%d] chdev at cycle %d\n",
    373377                       __FUNCTION__ , local_cxy , channel , hal_time_stamp() );
    374378        }
     
    395399//
    396400// TODO check that cluster IO contains a PIC [AG]
     401// TODO make a default initialisation for the chdev_dir structure (XPTR_NULL )  [AG]
    397402///////////////////////////////////////////////////////////////////////////////////////////
    398403// @ info    : pointer on the local boot-info structure.
     
    713718    // CP0 allocates one WTI mailbbox per core for Inter Processor Interrupt
    714719    // this must be done after ICU chdev initialisation, by CP0 only, and before
    715     // external devices initialisation to enforce the rule (wti_id == lid)
     720    // external devices initialisation to enforce the rule :
     721    // "The WTI index for the IPI routed to core[lid] is lid"
    716722    if( core_lid == 0 )
    717723    {
     
    733739    }
    734740
    735     // CP0 contribute to initialise external peripheral chdev descriptors.
     741    // All CP0s contribute to initialise external peripheral chdev descriptors.
    736742    // Each CP0[cxy] scan the set of external (shared) peripherals (but the TXT0),
    737743    // and allocates memory for the chdev descriptors that must be placed
     
    779785    }
    780786
    781 printk("\n bloup 0\n");
    782 
    783787    // CP0 in all clusters initializes cooperatively VFS and DEVFS
    784788    if( (core_lid == 0)  )
     
    786790        xptr_t  root_inode_xp;
    787791
    788         // initialize root File System
     792        // initialize root File System (must be FATFS in this implementation)
    789793        if( CONFIG_VFS_ROOT_IS_FATFS )
    790794        {
     
    804808        }
    805809
    806 printk("\n bloup 1\n");
    807 
    808810        // mount the DEVFS File system
    809811            devfs_mount( root_inode_xp , "dev" );
    810812    }
    811 
    812 printk("\n bloup 2\n");
    813813
    814814    // CP0 in I/O cluster print banner
     
    844844
    845845    // each core jump to idle thread
    846 //    asm volatile( "j thread_idle_func\n" );
     846    thread_idle_func();
    847847
    848848} // end kernel_init()
Note: See TracChangeset for help on using the changeset viewer.