diff --git a/Documentation/teaching/index.rst b/Documentation/teaching/index.rst
index e81a9a0cf0b562..7aff565550bf3e 100644
--- a/Documentation/teaching/index.rst
+++ b/Documentation/teaching/index.rst
@@ -1,5 +1,5 @@
 =====================
-Linux Kernel Teaching
+Linux Kernel Teaching And Learning
 =====================
 
 This is a collection of lectures and labs Linux kernel topics. The
diff --git a/Documentation/teaching/so2/assign2-driver-uart.rst b/Documentation/teaching/so2/assign2-driver-uart.rst
index d9c54e112863be..cd8dfe25d36a1a 100644
--- a/Documentation/teaching/so2/assign2-driver-uart.rst
+++ b/Documentation/teaching/so2/assign2-driver-uart.rst
@@ -2,8 +2,8 @@
 Assignment 2 - Driver UART
 ==========================
 
--  Deadline: :command:`Tuesday, 19 April 2022, 23:00`
--  This assignment can be made in teams (max 2). Only one of them must submit the assignment, and the names of the student should be listed in a README file.
+-  Deadline: :command:`Sunday, 30 April 2023, 23:00`
+-  The assigment is individual
 
 Assignment's Objectives
 =======================
@@ -58,7 +58,7 @@ Implementation Details
    -  to learn how to pass parameters in Linux, see `tldp <https://tldp.org/LDP/lkmpg/2.6/html/x323.html>`__
    -  the default values are `major=42` and `option=OPTION_BOTH`.
 -  the interrupt number associated with COM1 is 4 (`IRQ_COM1`) and the interrupt number associated with COM2 is 3 (`IRQ_COM2`)
--  `the header <https://github.com/linux-kernel-labs/linux/blob/master/tools/labs/templates/assignments/2-uart/uart16550.h>`__ with the definitions needed for special operations;
+-  `the header <https://gitlab.cs.pub.ro/so2/2-uart/-/blob/master/src/uart16550.h>`__ with the definitions needed for special operations;
 -  a starting point in implementing read / write routines is the `example <https://ocw.cs.pub.ro/courses/so2/laboratoare/lab04?&#sincronizare_-_cozi_de_asteptare>`__ of uppercase / lowercase character device driver; the only difference is that you have to use two buffers, one for read and one for write;
 -  you can use `kfifo <https://lwn.net/Articles/347619/>`__ for buffers;
 -  you do not have to use deferred functions to read / write data from / to ports (you can do everything from interrupt context);
@@ -72,19 +72,20 @@ Implementation Details
 
 Testing
 =======
-In order to simplify the assignment evaluation process, but also to reduce the mistakes of the
-submitted assignments, the assignment evaluation will be done automatically with with the help of
-public tests that are in the new infrastructure. For local testing, use the following commands:
+In order to simplify the assignment evaluation process, but also to reduce the mistakes of the submitted assignments,
+the assignment evaluation will be done automatically with the help of a
+`test script <https://gitlab.cs.pub.ro/so2/2-uart/-/blob/master/checker/2-uart-checker/_checker>`__ called `_checker`.
+The test script assumes that the kernel module is called `uart16550.ko`.
 
-.. code-block:: console
+QuickStart
+==========
+
+It is mandatory to start the implementation of the assignment from the code skeleton found in the `src <https://gitlab.cs.pub.ro/so2/2-uart/-/tree/master/src>`__ directory.
+There is only one header in the skeleton called `uart16550.h <https://gitlab.cs.pub.ro/so2/2-uart/-/blob/master/src/uart16550.h>`__.
+You will provide the rest of the implementation. You can add as many `*.c`` sources and additional `*.h`` headers.
+You should also provide a Kbuild file that will compile the kernel module called `uart16550.ko`.
+Follow the instructions in the `README.md file <https://gitlab.cs.pub.ro/so2/2-uart/-/blob/master/README.md>`__ of the `assignment's repo <https://gitlab.cs.pub.ro/so2/2-uart>`__.
 
-   $ git clone https://github.com/linux-kernel-labs/linux.git
-   $ cd linux/tools/labs
-   $ LABS=assignments/2-uart make skels
-   $ #the development of the assignment will be written in the 2-uart directory
-   $ make build
-   $ make copy
-   $ make boot
 
 Tips
 ----
@@ -127,10 +128,10 @@ and if the assigment does not pass all the tests, the grade will may decrease mo
 Submitting the assigment
 ------------------------
 
-The assignment archive will be submitted to vmchecker, according to the rules on the
-`rules page <https://ocw.cs.pub.ro/courses/so2/reguli-notare#reguli_de_trimitere_a_temelor>`__.
+The assignment will be graded automatically using the `vmchecker-next <https://github.com/systems-cs-pub-ro/vmchecker-next/wiki/Student-Handbook>`__ infrastructure.
+The submission will be made on moodle on the `course's page <https://curs.upb.ro/2022/course/view.php?id=5121>`__ to the related assignment.
+You will find the submission details in the `README.md file <https://gitlab.cs.pub.ro/so2/2-uart/-/blob/master/README.md>`__ of the `repo <https://gitlab.cs.pub.ro/so2/2-uart>`__.
 
-From the vmchecker interface choose the `Driver UART` option for this assigment.
 
 Resources
 =========
@@ -141,24 +142,11 @@ Resources
 -  `alternative documentation <https://en.wikibooks.org/wiki/Serial_Programming/8250_UART_Programming>`__
 
 We recommend that you use gitlab to store your homework. Follow the directions in
-`README <https://github.com/systems-cs-pub-ro/so2-assignments/blob/master/README.md>`__
-and on the dedicated `git wiki page <https://ocw.cs.pub.ro/courses/so2/teme/folosire-gitlab>`__.
+`README <https://gitlab.cs.pub.ro/so2/2-uart/-/blob/master/README.md>`__.
 
-The resources for the assignment can also be found in the `so2-assignments <https://github.com/systems-cs-pub-ro/so2-assignments>`__ repo on GitHub.
-The repo contains a `Bash script <https://github.com/systems-cs-pub-ro/so2-assignments/blob/master/so2-create-repo.sh>`__
-that helps you create a private repository on the faculty `GitLab <https://gitlab.cs.pub.ro/users/sign_in>`__ instance.
-Follow the tips from the `README <https://github.com/systems-cs-pub-ro/so2-assignments/blob/master/README.md>`__ and
-on the dedicated `Wiki page <https://ocw.cs.pub.ro/courses/so2/teme/folosire-gitlab>`__.
 
 Questions
 =========
 
-For questions about the assigment, you can consult the mailing `list archives <http://cursuri.cs.pub.ro/pipermail/so2/>`__
-or send an e-mail (you must be `registered <http://cursuri.cs.pub.ro/cgi-bin/mailman/listinfo/so2>`__).
-Please follow and follow `the tips for use of the list <https://ocw.cs.pub.ro/courses/so2/resurse/lista-discutii#mailing-list-guidelines>`__.
-
-Before you ask a question, make sure that:
-
-   - you have read the statement of the assigment well
-   - the question is not already presented on the `FAQ page <https://ocw.cs.pub.ro/courses/so2/teme/tema2/faq>`__
-   - the answer cannot be found in the `mailing list archives <http://cursuri.cs.pub.ro/pipermail/so2/>`__
+For questions about the topic, you can consult the mailing `list archives <http://cursuri.cs.pub.ro/pipermail/so2/>`__
+or you can write a question on the dedicated Teams channel.