How to know correct IRQ number for calling request_irq() while writing myown Linux driver?

I think there is already a UART driver (unless this is custom UART)

In general, you want to add your device to the device tree (dts). Then from your driver you can look up the irq information from the device tree.

In my .dts (from the GSRD) the uart entry looks like this:

hps_0_uart0: serial@0xffc02000 {
                        compatible = "snps,dw-apb-uart-15.0", "snps,dw-apb-uart";
                        reg = <0xffc02000 0x00000100>;
                        interrupt-parent = <&hps_0_arm_gic_0>;
                        interrupts = <0 162 4>;
                        clocks = <&l4_sp_clk>;
                        reg-io-width = <4>;     /* embeddedsw.dts.params.reg-io-width type NUMBER */
                        reg-shift = <2>;        /* embeddedsw.dts.params.reg-shift type NUMBER */
                        status = "okay";        /* embeddedsw.dts.params.status type STRING */
                }; //end serial@0xffc02000 (hps_0_uart0)

Then in your driver probe function:

static int my_driver_probe(struct platform_device* pdev)
{
    int irq_num;
    int res;
    
    irq_num = irq_of_parse_and_map(pdev->dev.of_node, 0); /* get IRQ # from device tree */
    res = request_irq(irq_num, my_isr, 0, DEVNAME, l1dev);
}

of course you will need to set up a platform driver for this method (there are other ways to do this as well without setting up a platform driver)

static const struct of_device_id my_driver_id[] = {
        { .compatible = "snps,dw-apb-uart" }, /* this name should match one of entries in the compatible field */
        { }
};

static struct platform_driver my_driver = {
    .driver =
    {   .name = DEVNAME,
        .owner = THIS_MODULE,
        .of_match_table = of_match_ptr(my_driver_id),
    },
    .probe = itcl1_rx_driver_probe,
    .remove = itcl1_rx_driver_remove,
};
MODULE_DEVICE_TABLE(mydrv, mydriver);

int __init my_driver_init(void)
{
   /* ... other driver init setup ... */
   result = platform_driver_register(&my_driver); /* register platform driver */
}

Hope that points you in the right direction