From c4cbc986ac68dbfdc743efec58c72ebb74d3f3b0 Mon Sep 17 00:00:00 2001 From: Amlal EL Mahrouss Date: Sun, 16 Jun 2024 18:05:36 +0200 Subject: MHR-31: Start work on drivers for ARM64. Signed-off-by: Amlal EL Mahrouss --- Kernel/Builtins/GPRS/.keepme | 0 Kernel/Builtins/GSM/.keepme | 0 Kernel/Builtins/GSM/IO.hxx | 29 +++++++++++++++++++++++++++++ Kernel/KernelKit/ProcessScheduler.hxx | 6 +++--- Kernel/NetworkKit/GSM.hxx | 2 +- Kernel/NetworkKit/NetworkDevice.hpp | 8 ++++++++ 6 files changed, 41 insertions(+), 4 deletions(-) create mode 100644 Kernel/Builtins/GPRS/.keepme create mode 100644 Kernel/Builtins/GSM/.keepme create mode 100644 Kernel/Builtins/GSM/IO.hxx (limited to 'Kernel') diff --git a/Kernel/Builtins/GPRS/.keepme b/Kernel/Builtins/GPRS/.keepme new file mode 100644 index 00000000..e69de29b diff --git a/Kernel/Builtins/GSM/.keepme b/Kernel/Builtins/GSM/.keepme new file mode 100644 index 00000000..e69de29b diff --git a/Kernel/Builtins/GSM/IO.hxx b/Kernel/Builtins/GSM/IO.hxx new file mode 100644 index 00000000..39de1a0f --- /dev/null +++ b/Kernel/Builtins/GSM/IO.hxx @@ -0,0 +1,29 @@ +/* ------------------------------------------- + +Copyright Zeta Electronics Corporation. + +File: GSM\IO.hxx. +Purpose: GSM I/O. + +------------------------------------------- */ + +#ifndef _INC_NETWORK_GSM_IO_HXX_ +#define _INC_NETWORK_GSM_IO_HXX_ + +#include +#include + +/// @brief GSM I/O routines. + +/// @brief Turn on SIM slot. +NewOS::Boolean gsm_turn_on_slot(NewOS::Int32 slot); + +/// @brief Turn off SIM slot. +NewOS::Boolean gsm_turn_off_slot(NewOS::Int32 slot); + +/// @brief Send AT command. +NewOS::Boolean gsm_send_at_command(NewOS::Char* buf, + NewOS::Size bufSz); + + +#endif // ifndef _INC_NETWORK_GSM_IO_HXX_ diff --git a/Kernel/KernelKit/ProcessScheduler.hxx b/Kernel/KernelKit/ProcessScheduler.hxx index f49292f1..7c8f99be 100644 --- a/Kernel/KernelKit/ProcessScheduler.hxx +++ b/Kernel/KernelKit/ProcessScheduler.hxx @@ -4,8 +4,8 @@ ------------------------------------------- */ -#ifndef __PROCESS_SCHEDULER__ -#define __PROCESS_SCHEDULER__ +#ifndef _INC_PROCESS_SCHEDULER_HXX_ +#define _INC_PROCESS_SCHEDULER_HXX_ #include #include @@ -283,4 +283,4 @@ namespace NewOS //////////////////////////////////////////////////// -#endif /* ifndef __PROCESS_SCHEDULER__ */ +#endif /* ifndef _INC_PROCESS_SCHEDULER_HXX_ */ diff --git a/Kernel/NetworkKit/GSM.hxx b/Kernel/NetworkKit/GSM.hxx index 9a785344..f4b040b3 100644 --- a/Kernel/NetworkKit/GSM.hxx +++ b/Kernel/NetworkKit/GSM.hxx @@ -3,7 +3,7 @@ Copyright Zeta Electronics Corporation. File: GSM.hxx. - Purpose: GSM protocol. + Purpose: GSM protocol classes. ------------------------------------------- */ diff --git a/Kernel/NetworkKit/NetworkDevice.hpp b/Kernel/NetworkKit/NetworkDevice.hpp index 49b142d5..58b9a98b 100644 --- a/Kernel/NetworkKit/NetworkDevice.hpp +++ b/Kernel/NetworkKit/NetworkDevice.hpp @@ -10,6 +10,8 @@ #include #include +/// @note Can either work with: Ethernet, GPRS, WiFi + namespace NewOS { struct NetworkDeviceCommand; @@ -58,6 +60,12 @@ namespace NewOS /// @brief IPCEP device. using IPCEPNetworkDevice = NetworkDevice; + + /// @brief GRPS device. + using GPRSNetworkDevice = NetworkDevice; + + /// @brief GSM device. + using GSMNetworkDevice = NetworkDevice; } // namespace NewOS #include -- cgit v1.2.3