Ignore:
Timestamp:
Jul 17, 2017, 8:42:59 AM (7 years ago)
Author:
alain
Message:

Bug fix in kernel_init
-This line, and those below, will be ignored--

M params.mk
M kernel_config.h
M Makefile
M hdd/virt_hdd.dmg
M tools/bootloader_tsar/boot.c
M kernel/libk/bits.h
M kernel/libk/elf.c
M kernel/libk/xhtab.c
M kernel/libk/elf.h
M kernel/libk/xhtab.h
M kernel/devices/dev_pic.c
M kernel/mm/vmm.c
M kernel/mm/mapper.c
M kernel/mm/mapper.h
M kernel/vfs/devfs.h
M kernel/vfs/vfs.c
M kernel/vfs/vfs.h
M kernel/vfs/devfs.c
M kernel/kern/chdev.h
M kernel/kern/kernel_init.c
M kernel/kern/process.c
M kernel/kern/process.h
M hal/tsar_mips32/core/hal_remote.c
M hal/tsar_mips32/drivers/soclib_pic.c

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/kernel/vfs/devfs.c

    r188 r204  
    5353/////////////////////////////////////////////
    5454void devfs_ctx_init( devfs_ctx_t * devfs_ctx,
    55                      xptr_t        devfs_root_inode_xp,
     55                     xptr_t        devfs_dev_inode_xp,
    5656                     xptr_t        devfs_external_inode_xp )
    5757{
    58     devfs_ctx->root_inode_xp     = devfs_root_inode_xp;
     58    devfs_ctx->dev_inode_xp      = devfs_dev_inode_xp;
    5959    devfs_ctx->external_inode_xp = devfs_external_inode_xp;
    6060
     
    7474///////////////////////////////////////////////////
    7575void devfs_global_init( xptr_t   parent_inode_xp,
    76                         xptr_t * devfs_root_inode_xp,
     76                        xptr_t * devfs_dev_inode_xp,
    7777                        xptr_t * devfs_external_inode_xp )
    7878{
     
    8686                                     "dev",
    8787                                     NULL,
    88                                      devfs_root_inode_xp );
     88                                     devfs_dev_inode_xp );
    8989
    9090    nolock_assert( (error == 0) , __FUNCTION__ , "cannot create <dev>\n" );
     
    9494                                     INODE_TYPE_DIR,
    9595                                     FS_TYPE_DEVFS,
    96                                      *devfs_root_inode_xp,
    97                                      "dev",
     96                                     *devfs_dev_inode_xp,
     97                                     "external",
    9898                                     NULL,
    9999                                     devfs_external_inode_xp );
     
    102102}
    103103
    104 //////////////////////////////////////////////////
    105 void devfs_local_init( xptr_t devfs_root_inode_xp,
    106                        xptr_t devfs_external_inode_xp )
     104///////////////////////////////////////////////////
     105void devfs_local_init( xptr_t   devfs_dev_inode_xp,
     106                       xptr_t   devfs_external_inode_xp,
     107                       xptr_t * devfs_internal_inode_xp )
    107108{
    108109    char          node_name[16];
     
    110111    cxy_t         chdev_cxy;
    111112    xptr_t        inode_xp;
    112     xptr_t        internal_inode_xp;
    113113    uint32_t      channel;
    114114
     
    118118                             INODE_TYPE_DIR,
    119119                             FS_TYPE_DEVFS,
    120                              devfs_root_inode_xp,
     120                             devfs_dev_inode_xp,
    121121                             node_name,
    122122                             NULL,
    123                              &internal_inode_xp );
    124 
    125     // create ICU chdev inode
    126     chdev_xp = chdev_dir.icu[local_cxy];
    127     if( chdev_xp != XPTR_NULL) 
     123                             devfs_internal_inode_xp );
     124
     125    // create MMC chdev inode
     126    chdev_xp = chdev_dir.mmc[local_cxy];
     127    if( chdev_xp != XPTR_NULL)
    128128    {
    129129        vfs_add_child_in_parent( local_cxy,
    130130                                 INODE_TYPE_DEV,
    131131                                 FS_TYPE_DEVFS,
    132                                  internal_inode_xp,
    133                                  "icu",
    134                                  GET_PTR( chdev_xp ),
    135                                  &inode_xp );
    136     }
    137 
    138     // create MMC chdev inode
    139     chdev_xp = chdev_dir.mmc[local_cxy];
    140     if( chdev_xp != XPTR_NULL)
    141     {
    142         vfs_add_child_in_parent( local_cxy,
    143                                  INODE_TYPE_DEV,
    144                                  FS_TYPE_DEVFS,
    145                                  internal_inode_xp,
     132                                 *devfs_internal_inode_xp,
    146133                                 "mmc",
    147134                                 GET_PTR( chdev_xp ),
     
    159146                                     INODE_TYPE_DEV,
    160147                                     FS_TYPE_DEVFS,
    161                                      internal_inode_xp,
     148                                     *devfs_internal_inode_xp,
    162149                                     node_name,
    163150                                     GET_PTR( chdev_xp ),
Note: See TracChangeset for help on using the changeset viewer.