git-svn-id: https://spexeah.com:8443/svn/Asuro@671 6dbc8c32-bb84-406f-8558-d1cf31a0ab0c
This commit is contained in:
parent
1615e6781a
commit
913a8c0d67
BIN
bin/kernel.bin
BIN
bin/kernel.bin
Binary file not shown.
Binary file not shown.
BIN
lib/EHCI.ppu
BIN
lib/EHCI.ppu
Binary file not shown.
BIN
lib/USB.ppu
BIN
lib/USB.ppu
Binary file not shown.
BIN
lib/XHCI.ppu
Normal file
BIN
lib/XHCI.ppu
Normal file
Binary file not shown.
BIN
lib/asuro.ppu
BIN
lib/asuro.ppu
Binary file not shown.
BIN
lib/fat32.ppu
BIN
lib/fat32.ppu
Binary file not shown.
BIN
lib/kernel.ppu
BIN
lib/kernel.ppu
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
lib/libpsystem.a
BIN
lib/libpsystem.a
Binary file not shown.
BIN
lib/shell.ppu
BIN
lib/shell.ppu
Binary file not shown.
BIN
lib/terminal.ppu
BIN
lib/terminal.ppu
Binary file not shown.
@ -29,7 +29,7 @@ begin
|
|||||||
console.writestringln(' USB Controller(s).');
|
console.writestringln(' USB Controller(s).');
|
||||||
if count > 0 then begin
|
if count > 0 then begin
|
||||||
for i:=0 to count-1 do begin
|
for i:=0 to count-1 do begin
|
||||||
console.output('USB-OHCI Driver', 'Controller[');
|
console.output('USB-EHCI Driver', 'Controller[');
|
||||||
console.writeint(i);
|
console.writeint(i);
|
||||||
console.writestring(']: ');
|
console.writestring(']: ');
|
||||||
console.writehex(devices[i].device_id);
|
console.writehex(devices[i].device_id);
|
||||||
|
@ -11,12 +11,18 @@ uses
|
|||||||
vmemorymanager,
|
vmemorymanager,
|
||||||
util,
|
util,
|
||||||
drivermanagement,
|
drivermanagement,
|
||||||
OHCI, UHCI, EHCI;
|
OHCI, UHCI, EHCI, XHCI;
|
||||||
|
|
||||||
procedure init;
|
procedure init;
|
||||||
|
|
||||||
implementation
|
implementation
|
||||||
|
|
||||||
|
function loadXHCI(ptr : void) : boolean;
|
||||||
|
begin
|
||||||
|
push_trace('USB.loadXHCI');
|
||||||
|
loadXHCI:= XHCI.load;
|
||||||
|
end;
|
||||||
|
|
||||||
function loadEHCI(ptr : void) : boolean;
|
function loadEHCI(ptr : void) : boolean;
|
||||||
begin
|
begin
|
||||||
push_trace('USB.loadEHCI');
|
push_trace('USB.loadEHCI');
|
||||||
@ -37,7 +43,10 @@ end;
|
|||||||
|
|
||||||
procedure init;
|
procedure init;
|
||||||
var
|
var
|
||||||
UHCI_ID, OHCI_ID, EHCI_ID: TDeviceIdentifier;
|
UHCI_ID,
|
||||||
|
OHCI_ID,
|
||||||
|
EHCI_ID,
|
||||||
|
XHCI_ID: TDeviceIdentifier;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
push_trace('USB.init');
|
push_trace('USB.init');
|
||||||
@ -67,9 +76,18 @@ begin
|
|||||||
EHCI_ID.id4:= $FFFFFFFF;
|
EHCI_ID.id4:= $FFFFFFFF;
|
||||||
EHCI_ID.ex:= nil;
|
EHCI_ID.ex:= nil;
|
||||||
|
|
||||||
|
XHCI_ID.Bus:= biPCI;
|
||||||
|
XHCI_ID.id0:= idANY;
|
||||||
|
XHCI_ID.id1:= $0000000C;
|
||||||
|
XHCI_ID.id2:= $00000003;
|
||||||
|
XHCI_ID.id3:= $00000030;
|
||||||
|
XHCI_ID.id4:= $FFFFFFFF;
|
||||||
|
XHCI_ID.ex:= nil;
|
||||||
|
|
||||||
drivermanagement.register_driver('USB-UHCI Driver', @UHCI_ID, @loadUHCI);
|
drivermanagement.register_driver('USB-UHCI Driver', @UHCI_ID, @loadUHCI);
|
||||||
drivermanagement.register_driver('USB-OHCI Driver', @OHCI_ID, @loadOHCI);
|
drivermanagement.register_driver('USB-OHCI Driver', @OHCI_ID, @loadOHCI);
|
||||||
drivermanagement.register_driver('USB-EHCI Driver', @EHCI_ID, @loadEHCI);
|
drivermanagement.register_driver('USB-EHCI Driver', @EHCI_ID, @loadEHCI);
|
||||||
|
drivermanagement.register_driver('USB-XHCI Driver', @XHCI_ID, @loadXHCI);
|
||||||
|
|
||||||
console.outputln('USB Driver', 'INIT END.');
|
console.outputln('USB Driver', 'INIT END.');
|
||||||
pop_trace;
|
pop_trace;
|
||||||
|
45
src/driver/bus/XHCI.pas
Normal file
45
src/driver/bus/XHCI.pas
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
unit XHCI;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
tracer,
|
||||||
|
Console,
|
||||||
|
PCI,
|
||||||
|
drivertypes,
|
||||||
|
pmemorymanager,
|
||||||
|
vmemorymanager,
|
||||||
|
util,
|
||||||
|
drivermanagement;
|
||||||
|
|
||||||
|
function load : boolean;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
function load : boolean;
|
||||||
|
var
|
||||||
|
devices : TDeviceArray;
|
||||||
|
count : uint32;
|
||||||
|
i : uint32;
|
||||||
|
|
||||||
|
begin
|
||||||
|
devices:= PCI.getDeviceInfo($0C, $03, $30, count);
|
||||||
|
console.output('USB-XHCI Driver', 'Found ');
|
||||||
|
console.writeint(count);
|
||||||
|
console.writestringln(' USB Controller(s).');
|
||||||
|
if count > 0 then begin
|
||||||
|
for i:=0 to count-1 do begin
|
||||||
|
console.output('USB-XHCI Driver', 'Controller[');
|
||||||
|
console.writeint(i);
|
||||||
|
console.writestring(']: ');
|
||||||
|
console.writehex(devices[i].device_id);
|
||||||
|
console.writestring(' ');
|
||||||
|
console.writehex(devices[i].vendor_id);
|
||||||
|
console.writestring(' ');
|
||||||
|
console.writehexln(devices[i].prog_if);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
load:= true;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
@ -3,20 +3,20 @@ unit asuro;
|
|||||||
interface
|
interface
|
||||||
|
|
||||||
const
|
const
|
||||||
VERSION = '1.0.1-668ia';
|
VERSION = '1.0.1-670ia';
|
||||||
VERSION_MAJOR = '1';
|
VERSION_MAJOR = '1';
|
||||||
VERSION_MINOR = '0';
|
VERSION_MINOR = '0';
|
||||||
VERSION_SUB = '1';
|
VERSION_SUB = '1';
|
||||||
REVISION = '668';
|
REVISION = '670';
|
||||||
RELEASE = 'ia';
|
RELEASE = 'ia';
|
||||||
LINE_COUNT = 27480;
|
LINE_COUNT = 27477;
|
||||||
FILE_COUNT = 87;
|
FILE_COUNT = 88;
|
||||||
DRIVER_COUNT = 31;
|
DRIVER_COUNT = 32;
|
||||||
FPC_VERSION = '2.6.4';
|
FPC_VERSION = '2.6.4';
|
||||||
NASM_VERSION = '2.10.09';
|
NASM_VERSION = '2.10.09';
|
||||||
MAKE_VERSION = '3.81';
|
MAKE_VERSION = '3.81';
|
||||||
COMPILE_DATE = '07/05/18';
|
COMPILE_DATE = '07/05/18';
|
||||||
COMPILE_TIME = '22:47:28';
|
COMPILE_TIME = '22:53:20';
|
||||||
|
|
||||||
implementation
|
implementation
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user