]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/commitdiff
media: vidtv: simplify parameters for vidtv_pes_write_stuffing()
authorMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Mon, 21 Sep 2020 05:34:42 +0000 (07:34 +0200)
committerMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Thu, 1 Oct 2020 07:22:00 +0000 (09:22 +0200)
Instead of passing struct pes_ts_header_write_args fields as
function parameters, just pass a pointer to the struct.

That would allow adding more args without needing to change
the function prototype.

Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
drivers/media/test-drivers/vidtv/vidtv_pes.c

index 34518ef042f7c72e784b5b3ad184331d91a9ed4a..de0ce5529d06dd7232b652138a086193069d3822 100644 (file)
@@ -176,37 +176,34 @@ static u32 vidtv_pes_write_h(struct pes_header_write_args args)
        return nbytes;
 }
 
-static u32 vidtv_pes_write_stuffing(void *dest_buf,
-                                   u32 dest_offset,
-                                   u32 n_stuffing_bytes,
-                                   u32 buf_sz)
+static u32 vidtv_pes_write_stuffing(struct pes_ts_header_write_args *args,
+                                   u32 dest_offset)
 {
        u32 nbytes = 0;
        struct vidtv_mpeg_ts_adaption ts_adap = {};
-       u32 stuff_nbytes = 0;
+       u32 stuff_nbytes;
 
-       if (!n_stuffing_bytes)
+       if (!args->n_stuffing_bytes)
                goto out;
 
-       if (n_stuffing_bytes > PES_TS_HEADER_MAX_STUFFING_BYTES) {
+       if (args->n_stuffing_bytes > PES_TS_HEADER_MAX_STUFFING_BYTES) {
                pr_warn_ratelimited("More than %d stuffing bytes for a PES packet!\n",
                                    PES_TS_HEADER_MAX_STUFFING_BYTES);
 
-               n_stuffing_bytes = PES_TS_HEADER_MAX_STUFFING_BYTES;
+               args->n_stuffing_bytes = PES_TS_HEADER_MAX_STUFFING_BYTES;
        }
 
        /* the AF will only be its 'length' field with a value of zero */
-       if (n_stuffing_bytes == 1) {
-               nbytes += vidtv_memset(dest_buf,
+       if (args->n_stuffing_bytes == 1) {
+               nbytes += vidtv_memset(args->dest_buf,
                                       dest_offset + nbytes,
-                                      buf_sz,
+                                      args->dest_buf_sz,
                                       0,
-                                      n_stuffing_bytes);
-
+                                      args->n_stuffing_bytes);
                goto out;
        }
 
-       stuff_nbytes = n_stuffing_bytes - sizeof(ts_adap);
+       stuff_nbytes = args->n_stuffing_bytes - sizeof(ts_adap);
 
        /* length _immediately_ following 'adaptation_field_length' */
        ts_adap.length = sizeof(ts_adap) -
@@ -214,24 +211,24 @@ static u32 vidtv_pes_write_stuffing(void *dest_buf,
                         stuff_nbytes;
 
        /* write the adap after the TS header */
-       nbytes += vidtv_memcpy(dest_buf,
+       nbytes += vidtv_memcpy(args->dest_buf,
                               dest_offset + nbytes,
-                              buf_sz,
+                              args->dest_buf_sz,
                               &ts_adap,
                               sizeof(ts_adap));
 
        /* write the stuffing bytes */
-       nbytes += vidtv_memset(dest_buf,
+       nbytes += vidtv_memset(args->dest_buf,
                               dest_offset + nbytes,
-                              buf_sz,
+                              args->dest_buf_sz,
                               TS_FILL_BYTE,
                               stuff_nbytes);
 
 out:
-       if (nbytes != n_stuffing_bytes)
+       if (nbytes != args->n_stuffing_bytes)
                pr_warn_ratelimited("write size was %d, expected %d\n",
                                    nbytes,
-                                   n_stuffing_bytes);
+                                   args->n_stuffing_bytes);
 
        return nbytes;
 }
@@ -261,10 +258,7 @@ static u32 vidtv_pes_write_ts_h(struct pes_ts_header_write_args args)
                               sizeof(ts_header));
 
        /* write stuffing, if any */
-       nbytes += vidtv_pes_write_stuffing(args.dest_buf,
-                                          args.dest_offset + nbytes,
-                                          args.n_stuffing_bytes,
-                                          args.dest_buf_sz);
+       nbytes += vidtv_pes_write_stuffing(&args, args.dest_offset + nbytes);
 
        return nbytes;
 }