James C. McPherson wrote:
> Frank Che wrote:
>> I'm sponsoring this fast track for Bill Yan. Requested release 
>> binding is patch/micro for OpenSolaris. Timer is set to 08/13/2008.
> >
>> Note that this project depends on the IPS project (PSARC 2008/190) 
>> which is still under development now.
>
>
> So you want this to go into a Solaris 10 Update? Why? I would have
> expected "minor" for the release binding since you have a dependency
> on the IPS project.

Yes, minor is appropriate.  Note that patch != micro in any case, so 
you'd need to pick one.  (We haven't had a micro release since Solaris 
2.5.1.)

    -- Garrett
>
>> Frank.
>>
>> 4. Technical Description
>>     Summary
>>     The intent of this project is to propose the integration of 
>> Device Driver
>>     Utility to OpenSolaris OS. Motivation to propose this project is 
>> to fulfill
>>     the increasing requirement from the customer about easily view 
>> hardware
>>     information in Solaris OS and install missing device driver(s), thus
>>     contribute to the adoption of OpenSolaris OS.
>>         This project requests a patch/micro release binding to 
>> OpenSolaris.
>>
>> 4.1 Proposal
>> 4.1.1 Introduction to Device Driver Utility
>>     Device Driver Utility provides information about the devices of 
>> the user's
>>     native system. Device Driver Utility enables the user to connect 
>> to the
>>     Image Packaging System (IPS) [1] to search for the device drivers 
>> for the
>>     devices that do not have a driver attached with it. By using the 
>> Device
>>     Driver Utility application, the user can do the following:
>>     * Get the information of the devices installed on your native 
>> system and
>>     their corresponding device driver availability status. The following
>>     information are displayed on the GUI:
>>         - Device name and attributes(device path, vendor ID, device 
>> ID etc.)
>>         - Device driver availability
>>         - Device driver name and status(instance number, 
>> attached/detached
>>         etc.)
>>     * Check the device driver availability for your system devices on 
>> IPS.
>>     * Download and install the device drivers from IPS for those devices
>>     that do not have an attached driver.
>>     * Report system configurations to the OpenSolaris Hardware 
>> Compatibility
>>     List (HCL).
>>
>> 4.1.2 Device Driver Utility components
>>     To achieve the above functions, the following components will be
>>     implemented:
>>
>> 4.1.2.1 Device information fetcher.
>>     This component is designed to probe current system via the 
>> libdevinfo
>>     interface, walk through device tree and get information of all 
>> detected
>>     devices and driver information of each device.
>>
>> 4.1.2.2 Solaris driver database.
>>     The Solaris driver database is a mapping table between device
>>     identifier(normally vendor ID and device ID) and name of Solaris 
>> driver.
>>     This database includes three sets of information: drivers that 
>> are bundle
>>     with OpenSolaris, third-party drivers that can be downloaded from 
>> an IHV
>>     website, drivers that can be downloaded from OpenSolaris community.
>>
>>     This database is only used when a device doesn't have a driver.
>>
>>     Solaris driver information is extracted from the 
>> /etc/driver_aliases file.
>>     Third-party and OpenSolaris driver information is manually 
>> collected and
>>     added to the driver database.
>>
>>     The driver database must be updated periodically because new 
>> hardware and
>>     new Solaris drivers are continually created.
>
>
> How often will the database be updated?
> Who is responsible for updating the database?
> Who is responsible for ensuring that the information
> in the database is accurate?
>
>
>> 4.1.2.3 User interface.
>>     Consider the target user of this tool are most likely don't have 
>> much
>>     knowledge of Solaris system administration, only graphical user 
>> interface
>>     is available, written in Python. The user reads device 
>> information from
>>     this informative GUI, instruct Device Driver Utility to download and
>>     install missing driver(s) automatically through a few simple 
>> mouse-click,
>>     submit hardware information to OpenSolaris HCL using this GUI.
>
> What if the driver is for a network device, and the
> system has no other network interface installed?
> What information will be provided to the user so that
> they can get the driver via other means?
>
>
>
>> 4.1.2.4 Core engine.
>>     This component stays in the center of Device Driver Utility. It 
>> completes
>>     the following fundamental operations:
>> (1) Get device information from device information fetcher. If there 
>> is device
>> that missing driver in current OpenSolaris OS, then look up Solaris 
>> driver
>> database for the driver name. Pass all these information to GUI for 
>> display.
>> (2) Check IPS for driver availability through pkg(1M) command. Search 
>> for
>> package on IPS that contains needed driver based on driver name. 
>> Download and
>> install certain driver package(s) according to user's instruction.
>> (3) Read hardware-related information from SMBIOS as much as 
>> possible, then
>> automatically fill in to OpenSolaris HCL submission table, ask the 
>> user to
>> provide other necessary information, then format all these 
>> information and pass
>> to OpenSolaris HCL server if the user want to do a submission. 
>> Submission is
>> done through HTTPS post method. The user can see what data will be 
>> transferred
>> to Sun before the submission is done.
>
> I like the sound of this. Will there be just one URL to point both
> the database queries and submission towards, or will there be multiple
> locations?
>
> If there are multiple locations, how will the information be collated
> for the database, and how will it be propagated to the other locations?
>
>
> How will you handle secure sites?
>
>
>> 4.1.3 Limitations
>>     There are a few limitations in current plan:
>>
>> (1) The following functionality depend on network connectivity to Sun 
>> servers:
>>     * Check device driver availability via IPS.
>>     * Dynamically add driver from IPS.
>>     * Submit system configuration to OpenSolaris HCL.
>>
>> (2) If the Solaris driver database is not updated in time(for 
>> example, there is
>> driver which can be found in IPS but not in Solaris driver database), 
>> the
>> driver search result may not be correct. However, if IPS enables the 
>> user to
>> search for a driver package through supported vendor ID and device 
>> ID, this
>> limitation will not exist any more.
>>
>> 4.2 Interfaces
>> 4.2.1 Exported Interfaces
>>     Exported Interface|  Stability  |               Description
>>     
>> ------------------+-------------+---------------------------------------- 
>>
>>     /usr/bin/ddu      |  Committed  | Device Driver Utility startup 
>> script
>>     
>> ------------------+-------------+---------------------------------------- 
>>
>>     SUNWddu           | Uncommitted | Package name for Device Driver 
>> Utility
>>     
>> ------------------------------------------------------------------------- 
>>
>>
>> 4.2.2 Imported Interfaces
>>     Imported Interface|  Stability  |               Description
>>     
>> ------------------+-------------+---------------------------------------- 
>>
>>     Python 2.4.x      | Volatile    | PSARC/2005/532
>>     
>> ------------------+-------------+---------------------------------------- 
>>
>>     libdevinfo.so.1   | Uncommitted | PSARC/1997/127
>>     
>> ------------------+-------------+---------------------------------------- 
>>
>>     /dev/smbios       | Uncommitted | PSARC/2005/483
>>     
>> ------------------+-------------+---------------------------------------- 
>>
>>     pkg(5): image     | Uncommitted | PSARC 2008/190
>>     packaging system  |             |
>>     
>> ------------------------------------------------------------------------- 
>>
>>
>> 4.3 References
>>     [1] IPS is a repository for OpenSolaris packages where the user 
>> can find
>>     suitable drivers for the devices.
>>
>>
>> 6. Resources and Schedule
>>     6.4 Steering Committee Requested Information
>>     6.4.1 Consolidation C-team Name: None
>>     6.5 ARC review type: Fast Track
>>     6.6 ARC exposure: Open
>
> One final question - is the project team writing this from scratch,
> or are they leveraging the work of the existing HCTS tool?
>
>
> James C. McPherson
> -- 
> Senior Kernel Software Engineer, Solaris
> Sun Microsystems
> http://blogs.sun.com/jmcp    http://www.jmcp.homeunix.com/blog


Reply via email to