uhcidevicetodrivermapper.java

来自「纯java操作系统jnode,安装简单和操作简单的个人使用的Java操作系统」· Java 代码 · 共 55 行

JAVA
55
字号
/*
 * $Id: UHCIDeviceToDriverMapper.java,v 1.1 2003/11/25 11:42:17 epr Exp $
 */
package org.jnode.driver.usb.uhci;

import org.jnode.driver.Device;
import org.jnode.driver.DeviceToDriverMapper;
import org.jnode.driver.Driver;
import org.jnode.driver.pci.PCIDevice;
import org.jnode.driver.pci.PCIDeviceConfig;

/**
 * @author Ewout Prangsma (epr@users.sourceforge.net)
 */
public class UHCIDeviceToDriverMapper implements DeviceToDriverMapper {

	/**
	 * @see org.jnode.driver.DeviceToDriverMapper#findDriver(org.jnode.driver.Device)
	 */
	public Driver findDriver(Device device) {
		if (!(device instanceof PCIDevice)) {
			return null;
		}
		final PCIDevice dev = (PCIDevice) device;
		final PCIDeviceConfig config = dev.getConfig();
		// Is serial bus controller?
		if (config.getBaseClass() == 0x0C) {
			// Is USB Controller?
			if (config.getSubClass() == 0x03) {
				// Is UHCI?
				if (config.getMinorClass() == 0x00) {
					return new UHCIDriver();
				}
			}
		}
		
		// Unknown
		return null;
	}
	
	/**
	 * Gets the matching level of this mapper.
	 * The mappers are queried in order of match level. This will ensure
	 * the best available driver for a device.
	 * 
	 * @return One of the MATCH_xxx constants.
	 * @see #MATCH_DEVICE_REVISION
	 * @see #MATCH_DEVICE
	 * @see #MATCH_DEVCLASS
	 */
	public int getMatchLevel() {
		return MATCH_DEVCLASS;
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?