Abstract:
Disclosed is an apparatus and method for controlling driving of an auxiliary device in a computer. The computer would include an operating system (OS) having at least one of a keyboard controller driver and a system BIOS that controls the enabled/disabled status of an internal auxiliary device based on the attachment status of an external auxiliary device. The internal auxiliary device may be a keyboard, a touch pad, or a pointing stick. The external auxiliary device may be a USB mouse. A method embodying the invention may include the steps of: periodically checking whether an external auxiliary device has been attached/detached to/from the computer, and disabling or enabling driving of the internal device or the external device depending on the checking results.

Description:
BACKGROUND OF THE INVENTION  
         [0001]    1. Field of the Invention  
           [0002]    The present invention relates to an apparatus and method for controlling the driving of an auxiliary device in a portable computer. A computer embodying the invention is capable of controlling the driving of an internal auxiliary device such as a touch pad, and the driving of an external auxiliary device such as an USB (Universal Serial Bus) mouse in a portable computer, such as a notebook computer.  
           [0003]    2. Background of the Related Art  
           [0004]    [0004]FIG. 1 is a block diagram of elements of a typical portable computer. The computer includes a keyboard controller driver or a system BIOS (Basic Input/Output System)  10 ; a keyboard controller  11 ; and a keyboard  12 . Also, the computer may additionally include an internal auxiliary device  13  such as a touch pad or a pointing stick; an external auxiliary device  14  such as a PS/2 (Personal System/2) mouse; and a CMOS (Complementary Metal Oxide Semiconductor) memory  15 .  
           [0005]    The keyboard controller driver or the system BIOS initializes the internal auxiliary device such as a touch pad  13  and the external auxiliary device such as a PS/2 mouse  14  through an interface with the keyboard controller  11  when the system power is turned on. Also, the keyboard controller  11  performs a series of operations for driving the touch pad  13  and the PS/2 mouse  14 .  
           [0006]    Recently, an external auxiliary device using an USB interface, for example a USB mouse, may be attached to a computer as the external auxiliary device  14 . A USB mouse is not connected with the keyboard controller  11 , but instead is directly connected with the keyboard controller driver or the system BIOS  10 . As a result, the keyboard controller  11  is unable to perceive the connection status of the USB mouse, and driving of the internal auxliary device such as the touch pad  13  is not automatically disabled when a USB mouse is attached to the computer.  
           [0007]    Upon performance of the general booting process of the computer, when the touch pad or the PS/2 mouse is not attached to the computer, the system BIOS  10  recognizes that the touch pad or the PS/2 mouse is not present in the current system, because the touch pad or the PS/2 mouse does not respond when the system BIOS  10  attempts to initialze the touch pad or the PS/2 mouse. Therefore, if the system is booted without a mouse attached, but a user intends to use a mouse by attaching it to the computer after the boot operation is performed, the mouse is not usable. In order to use the mouse, a user must turn off the system power and physically attach the mouse to the computer, and then boot the system again so that the system BIOS  10  may recognize the mouse.  
           [0008]    Similarly, if the computer boots up with a mouse attached, the touch pad is disabled at the CMOS setup. In this instance, the touch pad operates as if it were not connected physically with the keyboard controller. In order to operate the touch pad, the system should be booted again after the CMOS setup is enabled, or after the mouse has been disconnected. In other words, if a user wants to switch from an internal pointing device to an external pointing device after the boot operation, or vice versa, it is necessary to re-boot the system.  
         SUMMARY OF THE INVENTION  
         [0009]    An object of the invention is to solve at least the above problems and/or disadvantages and to provide at least the advantages described hereinafter.  
           [0010]    Accordingly, one object of the present invention is to solve the foregoing problems by providing a method for controlling driving of an auxiliary device in a portable computer to automatically disable or enable driving of an internal device such as a touch pad depending on whether an external auxiliary device such as an USB mouse is attached.  
           [0011]    Another object of the present invention is to provide a method for controlling driving of an auxiliary device in a portable computer to disable or enable, without rebooting of the system, the driving of an external/internal auxiliary device depending on whether the external/internal auxiliary device such as a touch pad or a mouse is attached. The method may also be accomplished using a function key provided on the portable computer.  
           [0012]    A device embodying the invention may include an OS having at least one of a keyboard controller driver and a system BIOS for controlling an operation state of an internal auxiliary device by monitoring whether an external auxiliary device is attached. The internal auxiliary device could include at least one of a pointing stick, a keyboard and a touch pad, which are input means. The device may also include a keyboard controller communicating with the OS and the internal auxiliary device, for performing transmission/reception of information; a CMOS memory connected with the OS, for storing data; and an external auxiliary device, which is an input device, connected with the OS.  
           [0013]    A method embodying the invention may include the steps of: checking an internal auxiliary device attached to the computer upon driving of the system; checking the connection status of an attached external auxiliary device or the internal auxiliary device at the normal driving status of the system; and disabling or enabling operation of the internal device or the external device depending on the checking results.  
           [0014]    In a device embodying the invention, operation of the internal auxiliary device such as a touch pad is automatically disabled or enabled, depending on whether an external auxiliary device such as an USB mouse is attached. Also, the operation of the external auxiliary device or the internal auxiliary device such as a touch pad is conveniently disabled or enabled with use of a function key provided on the portable computer, so that a user does not need to reboot the computer system to disable or enable operation of the internal/external auxiliary device through the setup procedure on the CMOS memory. 
       
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0015]    The above objects, features and advantages of the present invention will become more apparent from the following detailed description when taken in conjunction with the accompanying drawings, in which:  
         [0016]    [0016]FIG. 1 is a block diagram of portions of a general portable computer,  
         [0017]    [0017]FIG. 2 is a block diagram of portions of a portable computer adopting a method for controlling operation of an auxiliary device according to the present invention;  
         [0018]    [0018]FIG. 3 is a flowchart showing steps of a method for controlling operation of an auxiliary device in a portable computer according to the present invention; and  
         [0019]    [0019]FIG. 4 is a flowchart showing steps of another embodiment of a method for controlling operation of an auxiliary device in a portable computer according to the present invention. 
     
    
     DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS  
       [0020]    The following detailed description will present an apparatus and method for controlling operation of an auxiliary device in a portable computer according to a preferred embodiment of the invention in reference to the accompanying drawings. In the following description, the same drawing reference numerals are used for the same elements whenever possible.  
         [0021]    [0021]FIG. 2 is a block diagram showing elements of a portable computer adopting a method for controlling operation of an auxiliary device according to the present invention. The portable computer includes a keyboard controller driver included in an OS or a system BIOS  10 ; a keyboard controller  11 ; and a keyboard  12 . Also, an internal auxiliary device  13  such as a touch pad and an external auxiliary device  16  such as an USB mouse, may be included in or connected with the notebook computer.  
         [0022]    The keyboard controller driver or the system BIOS  10  initializes the internal auxiliary device, for example, a touch pad  13  through an interface with the keyboard controller  11  when the system power is turned on without the external auxiliary device, such as a USB mouse, connected to the notebook computer.  
         [0023]    Also, the keyboard controller  11  performs a series of operations for driving the touch pad  13 . If a user connects an external auxiliary device, for example a USB mouse  16 , to the computer, then the keyboard controller or the system BIOS  10 , performs a series of operations to enable the USB mouse and to monitor whether the USB mouse is still connected.  
         [0024]    [0024]FIG. 3 is a flowchart showing operations of a method embodying the present invention for automatically controlling operation of an auxiliary device depending on whether the external auxiliary device is attached to the computer. As described above, when the system of the computer is driven and operated after the general booting procedures have been accomplished, the keyboard controller driver or the system BIOS  10  monitors whether the USB mouse  16  is connected to the notebook computer by a user (S 11 ).  
         [0025]    Then, as a result of such monitoring, if the USB mouse is detected to be connected, namely, a plug-in is detected (S 12 ), the keyboard controller driver  10  sets a plug-in bit at the keyboard controller to indicate that the USB mouse is connected (S 13 ). Also, information that the USB mouse is connected may be known to the keyboard controller  11  through an auxiliary command.  
         [0026]    In the meantime, the keyboard controller  11  confirms the plug-in bit set through the foregoing procedure, then changes the status of the touch pad  13  which is presently in an enable status, into a disable status (S 14 ).  
         [0027]    Therefore, from then on, the disabled touch pad  13  ignores any data provided from a user, only performing a series of operations for responding to a command transmitted from the keyboard controller  11  after the keyboard controller  11  receives a certain command from the keyboard controller driver or the system BIOS  10 .  
         [0028]    Here, the keyboard controller driver or the system BIOS  10  recognizes as if the touch pad  13  were always present, with respect to the above response from the touch pad  13 . Such recognition is for the keyboard controller driver or the system BIOS  10  to always recognize as if the keyboard controller driver or the system BIOS  10  had initialized the touch pad  13  already. For the above command, there exist ‘reset’, ‘send’, ‘sample rate’.  
         [0029]    The reason why such command is regularly transmitted, is for maintaining initialized status by regularly maintaining the response.  
         [0030]    In the meantime, the command may not be transmitted regularly and maintained in a standby status. In this case, if it is necessary to use the internal touchpad, the device may possibly be woken up and operated.  
         [0031]    Also, the keyboard controller driver or the system BIOS  10  enables operation of the USB mouse  16 . If the USB mouse is not attached or the attached USB mouse is detached, namely, a plug-out is detected as a result of the monitoring, the keyboard controller driver or the system BIOS  10  clears the setting of the keyboard controller by transmitting a command for canceling a plug-in bit representing that the USB mouse is attached (S 15 ).  
         [0032]    The keyboard controller  11  confirms a plug-in bit has been cleared through the foregoing procedure, then maintains operation of the touch pad  13  which is presently in an enabled status, or changes the status of the touch pad  13  from a disabled status, into an enabled status (S 16 ).  
         [0033]    In a computer embodying the invention, if a user attaches the external auxiliary device, such as a USB mouse  16 , operation of the internal auxiliary device, such as a touch pad  13 , is automatically disabled. If a user detaches a USB mouse  16 , operation of the touch pad  13  is automatically enabled.  
         [0034]    [0034]FIG. 4 shows the flow of messages used to control operation of an auxiliary device in a portable computer according to the present invention. In this system, one or more keys on a keypad of the computer can be used to enable or disable the touchpad, and/or an external auxiliary device. For example, when the computer system performs the general booting process, the OS including the keyboard controller driver and the system BIOS  10 , reads enable/disable information regarding the auxiliary devices stored in a CMOS memory  15 , then transmits the information to the keyboard controller  11  through the keyboard controller driver or the system BIOS  10  (S 30 ).  
         [0035]    Here, the keyboard controller  11  stores the enable/disable information, and controls the touch pad  13 , for example, enables the touch pad  13  by confirming the enable/disable information (S 31 ).  
         [0036]    When the touch pad  13  is enabled, if a user inputs a predetermined specific function key, for example, a function key for disabling the touch pad  13  after attaching an external auxiliary device such as the USB mouse  16 , to the notebook computer, then the keyboard  12  provides a corresponding signal to the keyboard controller  11  (S 32 ).  
         [0037]    The keyboard controller  11  transmits the signal received through the foregoing procedure, to the keyboard controller driver or the system BIOS  10  through a SMI (System Management Interrupt) or a SCI (System Configuration Interrupt) (S 33 ). The OS or the BIOS updates and stores the enable/disable information stored in the CMOS  15  so that a disable operation of the touch pad  13  may be performed as requested by a user, by confirming the interrupt (S 34 ).  
         [0038]    The updated and stored enable/disable information is transmitted to the keyboard controller  11  through the keyboard controller driver or the system BIOS  10  (S 35 ).  
         [0039]    Also, when the touch pad  13  is enabled, it may be possible that a user disables the touch pad through the touch pad itself or an UIP (User Interface Program) after attaching the external auxiliary device such as the USB mouse  16  to the computer.  
         [0040]    The keyboard controller  11  stores the updated enable/disable information, then disables the touch pad  13 , which is presently in an enabled status, with reference to the above enable/disable information (S 36 ). From then on, the disabled touch pad  13  ignores any data provided from a user (S 37 ), only performing a series of operations for responding to a command transmitted from the keyboard controller  11 . The USB mouse  16  attached by a user is directly enabled by the keyboard controller driver  10 .  
         [0041]    Here, the keyboard controller driver or the system BIOS  10  recognizes as if the touch pad  13  were always present, with respect to the above response from the touch pad  13 . Such recognition is for the keyboard controller driver or the system BIOS  10  to always recognize as if the keyboard controller driver or the system BIOS  10  had initialized the touch pad  13  already. For the above command, there exist ‘reset’, ‘send’, ‘sample’.  
         [0042]    Also, if a user inputs a predetermined specific function key, for example, a function key for enabling the touch pad  13  after detaching the USB mouse  16  from the computer, then the keyboard  12  outputs a signal corresponding to the function key input, to the keyboard controller  11  through the UIP (S 38 ).  
         [0043]    The keyboard controller  11  transmits the signal received through the foregoing procedure, to the keyboard controller driver or the system BIOS  10  through the SMI or the SCI (S 39 ). The OS or the BIOS updates and stores again the enable/disable information updated and stored in the CMOS  15  so that an enable operation of the touch pad  13  may be performed as requested by a user, by confirming the interrupt (S 40 ).  
         [0044]    The enable/disable information updated and stored again as described above, is transmitted to the keyboard controller  11  through the keyboard controller driver  10 , and the keyboard controller  11  stores the updated enable/disable information. The keyboard controller  11  then enables the touch pad  13 , which is presently in a disabled status, referring to the above enable/disable information (S 42 ). The enabled touch pad  13  performs a series of operations for transmitting data input from a user to the keyboard controller  11 .  
         [0045]    Therefore, upon being disabled, the touch pad  13  responds to a command transmitted from the keyboard controller  11 , and the system BIOS recognizes as if the system BIOS had initialized the touch pad already, so that the touch pad  13  is possibly enabled/disabled without rebooting of the system.  
         [0046]    While the invention has been shown and described with reference to certain preferred embodiments thereof, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims.  
         [0047]    The foregoing embodiments and advantages are merely exemplary and are not to be construed as limiting the present invention. The present teaching can be readily applied to other types of apparatuses. Many alternatives, modifications, and variations will be apparent to those skilled in the art. In the claims, means-plus-function clauses are intended to cover the structures described herein as performing the recited function and not only structural equivalents but also equivalent structures.  
         [0048]    For example, operation of the external auxiliary device could be conveniently disabled or enabled, without rebooting of the system, depending on whether the external auxiliary device such as the USB based device is attached or not, with use of the function key provided to the portable computer.  
         [0049]    Also, operation of the internal auxiliary device could be conveniently disabled or enabled, without rebooting of the system, depending on whether the internal auxiliary device is attached or not, with use of the function key.  
         [0050]    Therefore, the description of the present invention is intended to be illustrative, and not to limit the scope of the claims.