Changeset 02ef5d9 in rtems for c/src/lib/libbsp/i386


Ignore:
Timestamp:
May 6, 2016, 10:16:49 PM (4 years ago)
Author:
Chris Johns <chrisj@…>
Branches:
master
Children:
fc138a10
Parents:
93fb8797
git-author:
Chris Johns <chrisj@…> (05/06/16 22:16:49)
git-committer:
Chris Johns <chrisj@…> (05/11/16 01:45:02)
Message:

i386/pc386: Add --ide-disable boot command line option.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • c/src/lib/libbsp/i386/pc386/ide/idecfg.c

    r93fb8797 r02ef5d9  
    7575void bsp_ide_cmdline_init(void)
    7676{
    77   bool ide1 = IDE1_DEFAULT;
    78   bool ide2 = IDE2_DEFAULT;
    79   const char* ide;
     77  const char* ide_disable;
    8078
    81   /*
    82    * Can have:
    83    *  --ide=0,1
    84    */
    85   ide = bsp_cmdline_arg ("--ide=");
     79  ide_disable = bsp_cmdline_arg ("--ide-disable");
    8680
    87   if (ide)
    88   {
    89     int i;
     81  if (ide_disable == NULL) {
     82    bool ide1 = IDE1_DEFAULT;
     83    bool ide2 = IDE2_DEFAULT;
     84    const char* ide;
     85
    9086    /*
    91      * If a command line option exists remove the defaults.
     87     * Can have:
     88     *  --ide=0,1
    9289     */
    93     ide1 = ide2 = false;
     90    ide = bsp_cmdline_arg ("--ide=");
    9491
    95     ide += sizeof ("--ide=") - 1;
     92    if (ide)
     93    {
     94      int i;
     95      /*
     96       * If a command line option exists remove the defaults.
     97       */
     98      ide1 = ide2 = false;
    9699
    97     for (i = 0; i < 3; i++)
    98     {
    99       switch (ide[i])
     100      ide += sizeof ("--ide=") - 1;
     101
     102      for (i = 0; i < 3; i++)
    100103      {
    101         case '0':
    102           ide1 = true;
    103           break;
    104         case '1':
    105           ide2 = true;
    106           break;
    107         case '2':
    108         case '3':
    109         case '4':
    110         case '5':
    111         case '6':
    112         case '7':
    113         case '8':
    114         case '9':
    115         case ',':
    116           break;
    117         default:
    118           break;
     104        switch (ide[i])
     105        {
     106          case '0':
     107            ide1 = true;
     108            break;
     109          case '1':
     110            ide2 = true;
     111            break;
     112          case '2':
     113          case '3':
     114          case '4':
     115          case '5':
     116          case '6':
     117          case '7':
     118          case '8':
     119          case '9':
     120          case ',':
     121            break;
     122          default:
     123            break;
     124        }
    119125      }
    120126    }
     127
     128    if (ide2 && !ide1)
     129      IDE_Controller_Table[0] = IDE_Controller_Table[1];
     130
     131    if (ide1)
     132      IDE_Controller_Count++;
     133    if (ide2)
     134      IDE_Controller_Count++;
     135
     136    /*
     137     * Allow the user to get the initialise to print probing
     138     * type information.
     139     */
     140    ide = bsp_cmdline_arg ("--ide-show");
     141
     142    if (ide)
     143      pc386_ide_show = true;
    121144  }
    122 
    123   if (ide2 && !ide1)
    124     IDE_Controller_Table[0] = IDE_Controller_Table[1];
    125 
    126   if (ide1)
    127     IDE_Controller_Count++;
    128   if (ide2)
    129     IDE_Controller_Count++;
    130 
    131   /*
    132    * Allow the user to get the initialise to print probing
    133    * type information.
    134    */
    135   ide = bsp_cmdline_arg ("--ide-show");
    136 
    137   if (ide)
    138     pc386_ide_show = true;
    139145}
Note: See TracChangeset for help on using the changeset viewer.