summaryrefslogtreecommitdiffhomepage
path: root/Private/Builtins
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal@el-mahrouss-logic.com>2024-04-03 09:20:28 +0200
committerAmlal El Mahrouss <amlal@el-mahrouss-logic.com>2024-04-03 09:20:28 +0200
commit3facc32b746a44b0e3a91cbe1897127194396d1b (patch)
tree0725ebbf35a18e6933596ea5c765ac81adf7834f /Private/Builtins
parentefc6b5d169d2b6eaabe7384141cec6054ae622a0 (diff)
MHR-3: See main changes below.
Kernel: Improve Disk interfaces regarding the struct they're using (all of them are using MountpountInterface now) SystemLib: Start adding PowerPC code to the SystemLib to be cross compiled as a PEF FAT binary. Kernel: Adding new builtins to support a wide range of hardware. Signed-off-by: Amlal El Mahrouss <amlal@el-mahrouss-logic.com>
Diffstat (limited to 'Private/Builtins')
-rw-r--r--Private/Builtins/APM/.gitkeep0
-rw-r--r--Private/Builtins/ATA/Defines.hxx17
-rw-r--r--Private/Builtins/MBCI/Defines.hxx13
-rw-r--r--Private/Builtins/OHCI/.gitkeep0
-rw-r--r--Private/Builtins/README.TXT13
-rw-r--r--Private/Builtins/SAS/.gitkeep0
-rw-r--r--Private/Builtins/SAS/SCSI.hxx14
7 files changed, 45 insertions, 12 deletions
diff --git a/Private/Builtins/APM/.gitkeep b/Private/Builtins/APM/.gitkeep
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/Private/Builtins/APM/.gitkeep
diff --git a/Private/Builtins/ATA/Defines.hxx b/Private/Builtins/ATA/Defines.hxx
index 0a07bc68..a8cabe77 100644
--- a/Private/Builtins/ATA/Defines.hxx
+++ b/Private/Builtins/ATA/Defines.hxx
@@ -16,7 +16,7 @@
#include <CompilerKit/CompilerKit.hxx>
#include <NewKit/Defines.hpp>
-// Status register
+///! Status register
#define ATA_SR_BSY 0x80
#define ATA_SR_DRDY 0x40
#define ATA_SR_DF 0x20
@@ -26,7 +26,7 @@
#define ATA_SR_IDX 0x02
#define ATA_SR_ERR 0x01
-// Error register
+///! Error register
#define ATA_ER_BBK 0x80
#define ATA_ER_UNC 0x40
#define ATA_ER_MC 0x20
@@ -50,6 +50,7 @@
#define ATA_CMD_IDENTIFY_PACKET 0xA1
#define ATA_CMD_IDENTIFY 0xEC
+///! ident offsets, use with data that we got from ATA_CMD_IDENTIFY.
#define ATA_IDENT_DEVICE_TYPE 0
#define ATA_IDENT_CYLINDERS 2
#define ATA_IDENT_HEADS 6
@@ -65,7 +66,7 @@
#define ATA_MASTER 0x00
#define ATA_SLAVE 0x01
-// Register
+///! Register
#define ATA_REG_DATA 0x00
#define ATA_REG_ERROR 0x01
#define ATA_REG_FEATURES 0x01
@@ -91,28 +92,30 @@
#define ATA_PRIMARY_DCR_AS 0x3F6
#define ATA_SECONDARY_DCR_AS 0x376
-// Irq
+///! Irq
#define ATA_PRIMARY_IRQ 14
#define ATA_SECONDARY_IRQ 15
-// Channels
+///! Channels
#define ATA_PRIMARY 0x00
#define ATA_SECONDARY 0x01
#define ATA_CYL_LOW 4
#define ATA_CYL_HIGH 5
-// IO Direction
+///! IO Direction
#define ATA_READ 0x00
#define ATA_WRITE 0x013
#define ATA_PRIMARY_SEL 0xA0
#define ATA_SECONDARY_SEL 0xB0
-// ATA Helpers
+///! ATA address register.
#define ATA_ADDRESS1(x) (x + 3)
#define ATA_ADDRESS2(x) (x + 4)
#define ATA_ADDRESS3(x) (x + 5)
+
+///! ATA command register.
#define ATA_COMMAND(x) (x + 7)
#define kATASectorSize 512
diff --git a/Private/Builtins/MBCI/Defines.hxx b/Private/Builtins/MBCI/Defines.hxx
new file mode 100644
index 00000000..b347485c
--- /dev/null
+++ b/Private/Builtins/MBCI/Defines.hxx
@@ -0,0 +1,13 @@
+/* -------------------------------------------
+
+ Copyright Mahrouss Logic
+
+------------------------------------------- */
+
+#pragma once
+
+#include <NewKit/Defines.hpp>
+
+struct MBCIHostInterface;
+struct MBCIDeviceInterface;
+struct MBCIPacketInterface;
diff --git a/Private/Builtins/OHCI/.gitkeep b/Private/Builtins/OHCI/.gitkeep
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/Private/Builtins/OHCI/.gitkeep
diff --git a/Private/Builtins/README.TXT b/Private/Builtins/README.TXT
index 4cb791f7..b090b2e5 100644
--- a/Private/Builtins/README.TXT
+++ b/Private/Builtins/README.TXT
@@ -8,9 +8,12 @@ What are these?
These are NewOS builtins device drivers.
-===========
-Maintainers
-===========
+===================
+Maintainers/Authors
+===================
-ACPIFactoryInterface: Amlal EL Mahrouss
-AHCI: Amlal EL Mahrouss \ No newline at end of file
+ACPIFactoryInterface: Amlal EL Mahrouss.
+AHCI: Amlal EL Mahrouss.
+Toolbox: Amlal EL Mahrouss.
+PS2: Amlal EL Mahrouss
+ATA: Amlal EL Mahrouss \ No newline at end of file
diff --git a/Private/Builtins/SAS/.gitkeep b/Private/Builtins/SAS/.gitkeep
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/Private/Builtins/SAS/.gitkeep
diff --git a/Private/Builtins/SAS/SCSI.hxx b/Private/Builtins/SAS/SCSI.hxx
new file mode 100644
index 00000000..d7fb18d4
--- /dev/null
+++ b/Private/Builtins/SAS/SCSI.hxx
@@ -0,0 +1,14 @@
+/* -------------------------------------------
+
+ Copyright Mahrouss Logic
+
+------------------------------------------- */
+
+#pragma once
+
+#include <NewKit/Defines.hpp>
+
+/// @file SCSI.hxx
+/// @brief Serial SCSI driver.
+
+typedef NewOS::UInt16 scsi_packet_type[12];