Skip to content

Commit 974ea17

Browse files
committed
media: vidtv: cleanup PSI descriptor write function
This function initializes the psi_args twice, and receives a struct, instead of a pointer to a struct. Clean it up. Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
1 parent 9e00674 commit 974ea17

1 file changed

Lines changed: 51 additions & 53 deletions

File tree

drivers/media/test-drivers/vidtv/vidtv_psi.c

Lines changed: 51 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -634,69 +634,67 @@ void vidtv_sdt_desc_assign(struct vidtv_psi_table_sdt *sdt,
634634
vidtv_psi_update_version_num(&sdt->header);
635635
}
636636

637-
static u32 vidtv_psi_desc_write_into(struct desc_write_args args)
637+
static u32 vidtv_psi_desc_write_into(struct desc_write_args *args)
638638
{
639+
struct psi_write_args psi_args = {
640+
.dest_buf = args->dest_buf,
641+
.from = &args->desc->type,
642+
.pid = args->pid,
643+
.new_psi_section = false,
644+
.continuity_counter = args->continuity_counter,
645+
.is_crc = false,
646+
.dest_buf_sz = args->dest_buf_sz,
647+
.crc = args->crc,
648+
.len = sizeof_field(struct vidtv_psi_desc, type) +
649+
sizeof_field(struct vidtv_psi_desc, length),
650+
};
639651
struct vidtv_psi_desc_service_list_entry *serv_list_entry = NULL;
640-
struct psi_write_args psi_args = {};
641-
/* the number of bytes written by this function */
642652
u32 nbytes = 0;
643653

644-
psi_args.dest_buf = args.dest_buf;
645-
psi_args.from = &args.desc->type;
646-
647-
psi_args.len = sizeof_field(struct vidtv_psi_desc, type) +
648-
sizeof_field(struct vidtv_psi_desc, length);
649-
650-
psi_args.dest_offset = args.dest_offset + nbytes;
651-
psi_args.pid = args.pid;
652-
psi_args.new_psi_section = false;
653-
psi_args.continuity_counter = args.continuity_counter;
654-
psi_args.is_crc = false;
655-
psi_args.dest_buf_sz = args.dest_buf_sz;
656-
psi_args.crc = args.crc;
654+
psi_args.dest_offset = args->dest_offset + nbytes;
657655

658656
nbytes += vidtv_psi_ts_psi_write_into(&psi_args);
659657

660-
switch (args.desc->type) {
658+
switch (args->desc->type) {
661659
case SERVICE_DESCRIPTOR:
662-
psi_args.dest_offset = args.dest_offset + nbytes;
660+
psi_args.dest_offset = args->dest_offset + nbytes;
663661
psi_args.len = sizeof_field(struct vidtv_psi_desc_service, service_type) +
664662
sizeof_field(struct vidtv_psi_desc_service, provider_name_len);
665-
psi_args.from = &((struct vidtv_psi_desc_service *)args.desc)->service_type;
663+
psi_args.from = &((struct vidtv_psi_desc_service *)args->desc)->service_type;
666664

667665
nbytes += vidtv_psi_ts_psi_write_into(&psi_args);
668666

669-
psi_args.dest_offset = args.dest_offset + nbytes;
670-
psi_args.len = ((struct vidtv_psi_desc_service *)args.desc)->provider_name_len;
671-
psi_args.from = ((struct vidtv_psi_desc_service *)args.desc)->provider_name;
667+
psi_args.dest_offset = args->dest_offset + nbytes;
668+
psi_args.len = ((struct vidtv_psi_desc_service *)args->desc)->provider_name_len;
669+
psi_args.from = ((struct vidtv_psi_desc_service *)args->desc)->provider_name;
672670

673671
nbytes += vidtv_psi_ts_psi_write_into(&psi_args);
674672

675-
psi_args.dest_offset = args.dest_offset + nbytes;
673+
psi_args.dest_offset = args->dest_offset + nbytes;
676674
psi_args.len = sizeof_field(struct vidtv_psi_desc_service, service_name_len);
677-
psi_args.from = &((struct vidtv_psi_desc_service *)args.desc)->service_name_len;
675+
psi_args.from = &((struct vidtv_psi_desc_service *)args->desc)->service_name_len;
678676

679677
nbytes += vidtv_psi_ts_psi_write_into(&psi_args);
680678

681-
psi_args.dest_offset = args.dest_offset + nbytes;
682-
psi_args.len = ((struct vidtv_psi_desc_service *)args.desc)->service_name_len;
683-
psi_args.from = ((struct vidtv_psi_desc_service *)args.desc)->service_name;
679+
psi_args.dest_offset = args->dest_offset + nbytes;
680+
psi_args.len = ((struct vidtv_psi_desc_service *)args->desc)->service_name_len;
681+
psi_args.from = ((struct vidtv_psi_desc_service *)args->desc)->service_name;
684682

685683
nbytes += vidtv_psi_ts_psi_write_into(&psi_args);
686684
break;
687685

688686
case NETWORK_NAME_DESCRIPTOR:
689-
psi_args.dest_offset = args.dest_offset + nbytes;
690-
psi_args.len = args.desc->length;
691-
psi_args.from = ((struct vidtv_psi_desc_network_name *)args.desc)->network_name;
687+
psi_args.dest_offset = args->dest_offset + nbytes;
688+
psi_args.len = args->desc->length;
689+
psi_args.from = ((struct vidtv_psi_desc_network_name *)args->desc)->network_name;
692690

693691
nbytes += vidtv_psi_ts_psi_write_into(&psi_args);
694692
break;
695693

696694
case SERVICE_LIST_DESCRIPTOR:
697-
serv_list_entry = ((struct vidtv_psi_desc_service_list *)args.desc)->service_list;
695+
serv_list_entry = ((struct vidtv_psi_desc_service_list *)args->desc)->service_list;
698696
while (serv_list_entry) {
699-
psi_args.dest_offset = args.dest_offset + nbytes;
697+
psi_args.dest_offset = args->dest_offset + nbytes;
700698
psi_args.len = sizeof(struct vidtv_psi_desc_service_list_entry) -
701699
sizeof(struct vidtv_psi_desc_service_list_entry *);
702700
psi_args.from = serv_list_entry;
@@ -708,45 +706,45 @@ static u32 vidtv_psi_desc_write_into(struct desc_write_args args)
708706
break;
709707

710708
case SHORT_EVENT_DESCRIPTOR:
711-
psi_args.dest_offset = args.dest_offset + nbytes;
709+
psi_args.dest_offset = args->dest_offset + nbytes;
712710
psi_args.len = ISO_LANGUAGE_CODE_LEN;
713711
psi_args.from = ((struct vidtv_psi_desc_short_event *)
714-
args.desc)->iso_language_code;
712+
args->desc)->iso_language_code;
715713

716714
nbytes += vidtv_psi_ts_psi_write_into(&psi_args);
717715

718-
psi_args.dest_offset = args.dest_offset + nbytes;
716+
psi_args.dest_offset = args->dest_offset + nbytes;
719717
psi_args.len = sizeof_field(struct vidtv_psi_desc_short_event, event_name_len);
720718
psi_args.from = &((struct vidtv_psi_desc_short_event *)
721-
args.desc)->event_name_len;
719+
args->desc)->event_name_len;
722720

723721
nbytes += vidtv_psi_ts_psi_write_into(&psi_args);
724722

725-
psi_args.dest_offset = args.dest_offset + nbytes;
726-
psi_args.len = ((struct vidtv_psi_desc_short_event *)args.desc)->event_name_len;
727-
psi_args.from = ((struct vidtv_psi_desc_short_event *)args.desc)->event_name;
723+
psi_args.dest_offset = args->dest_offset + nbytes;
724+
psi_args.len = ((struct vidtv_psi_desc_short_event *)args->desc)->event_name_len;
725+
psi_args.from = ((struct vidtv_psi_desc_short_event *)args->desc)->event_name;
728726

729727
nbytes += vidtv_psi_ts_psi_write_into(&psi_args);
730728

731-
psi_args.dest_offset = args.dest_offset + nbytes;
729+
psi_args.dest_offset = args->dest_offset + nbytes;
732730
psi_args.len = sizeof_field(struct vidtv_psi_desc_short_event, text_len);
733-
psi_args.from = &((struct vidtv_psi_desc_short_event *)args.desc)->text_len;
731+
psi_args.from = &((struct vidtv_psi_desc_short_event *)args->desc)->text_len;
734732

735733
nbytes += vidtv_psi_ts_psi_write_into(&psi_args);
736734

737-
psi_args.dest_offset = args.dest_offset + nbytes;
738-
psi_args.len = ((struct vidtv_psi_desc_short_event *)args.desc)->text_len;
739-
psi_args.from = ((struct vidtv_psi_desc_short_event *)args.desc)->text;
735+
psi_args.dest_offset = args->dest_offset + nbytes;
736+
psi_args.len = ((struct vidtv_psi_desc_short_event *)args->desc)->text_len;
737+
psi_args.from = ((struct vidtv_psi_desc_short_event *)args->desc)->text;
740738

741739
nbytes += vidtv_psi_ts_psi_write_into(&psi_args);
742740

743741
break;
744742

745743
case REGISTRATION_DESCRIPTOR:
746744
default:
747-
psi_args.dest_offset = args.dest_offset + nbytes;
748-
psi_args.len = args.desc->length;
749-
psi_args.from = &args.desc->data;
745+
psi_args.dest_offset = args->dest_offset + nbytes;
746+
psi_args.len = args->desc->length;
747+
psi_args.from = &args->desc->data;
750748

751749
nbytes += vidtv_psi_ts_psi_write_into(&psi_args);
752750
break;
@@ -1212,7 +1210,7 @@ u32 vidtv_psi_pmt_write_into(struct vidtv_psi_pmt_write_args args)
12121210
d_args.dest_buf_sz = args.buf_sz;
12131211
d_args.crc = &crc;
12141212

1215-
nbytes += vidtv_psi_desc_write_into(d_args);
1213+
nbytes += vidtv_psi_desc_write_into(&d_args);
12161214

12171215
table_descriptor = table_descriptor->next;
12181216
}
@@ -1239,7 +1237,7 @@ u32 vidtv_psi_pmt_write_into(struct vidtv_psi_pmt_write_args args)
12391237
d_args.dest_buf_sz = args.buf_sz;
12401238
d_args.crc = &crc;
12411239

1242-
nbytes += vidtv_psi_desc_write_into(d_args);
1240+
nbytes += vidtv_psi_desc_write_into(&d_args);
12431241

12441242
stream_descriptor = stream_descriptor->next;
12451243
}
@@ -1378,7 +1376,7 @@ u32 vidtv_psi_sdt_write_into(struct vidtv_psi_sdt_write_args args)
13781376
d_args.dest_buf_sz = args.buf_sz;
13791377
d_args.crc = &crc;
13801378

1381-
nbytes += vidtv_psi_desc_write_into(d_args);
1379+
nbytes += vidtv_psi_desc_write_into(&d_args);
13821380

13831381
service_desc = service_desc->next;
13841382
}
@@ -1699,7 +1697,7 @@ u32 vidtv_psi_nit_write_into(struct vidtv_psi_nit_write_args args)
16991697
d_args.dest_buf_sz = args.buf_sz;
17001698
d_args.crc = &crc;
17011699

1702-
nbytes += vidtv_psi_desc_write_into(d_args);
1700+
nbytes += vidtv_psi_desc_write_into(&d_args);
17031701

17041702
table_descriptor = table_descriptor->next;
17051703
}
@@ -1735,7 +1733,7 @@ u32 vidtv_psi_nit_write_into(struct vidtv_psi_nit_write_args args)
17351733
d_args.dest_buf_sz = args.buf_sz;
17361734
d_args.crc = &crc;
17371735

1738-
nbytes += vidtv_psi_desc_write_into(d_args);
1736+
nbytes += vidtv_psi_desc_write_into(&d_args);
17391737

17401738
transport_descriptor = transport_descriptor->next;
17411739
}
@@ -1925,7 +1923,7 @@ u32 vidtv_psi_eit_write_into(struct vidtv_psi_eit_write_args args)
19251923
d_args.dest_buf_sz = args.buf_sz;
19261924
d_args.crc = &crc;
19271925

1928-
nbytes += vidtv_psi_desc_write_into(d_args);
1926+
nbytes += vidtv_psi_desc_write_into(&d_args);
19291927

19301928
event_descriptor = event_descriptor->next;
19311929
}

0 commit comments

Comments
 (0)