When trying to install a package through pacman and in case of that kind of errors File ... is corrupted (invalid or corrupted package (PGP signature) :

23:31 root@callisto ~# upd                      
:: Synchronizing package databases...
 core is up to date
 extra is up to date
 community is up to date
 alarm is up to date
 aur is up to date
:: Starting full system upgrade...
resolving dependencies...
looking for conflicting packages...

Packages (1) v4l-utils-1.16.1-1

Total Installed Size:  3.65 MiB
Net Upgrade Size:      0.00 MiB

:: Proceed with installation? [Y/n] 
(1/1) checking keys in keyring                                                                                                                [#######################################################################################] 100%
(1/1) checking package integrity                                                                                                              [#######################################################################################] 100%
error: v4l-utils: signature from "Arch Linux ARM Build System <builder@archlinuxarm.org>" is unknown trust
:: File /var/cache/pacman/pkg/v4l-utils-1.16.1-1-armv6h.pkg.tar.xz is corrupted (invalid or corrupted package (PGP signature)).
Do you want to delete it? [Y/n] y
error: failed to commit transaction (invalid or corrupted package (PGP signature))
Errors occurred, no packages were upgraded.

The solution is to redownload the pacman keys :

pacman-key --init
pacman-key --populate archlinuxarm

Output will then be

23:32 root@callisto ~# pacman-key --init
23:33 root@callisto ~# pacman-key --populate archlinuxarm
==> Appending keys from archlinuxarm.gpg...
==> Locally signing trusted keys in keyring...
  -> Locally signing key 02922214DE8981D14DC2ACABBC704E86B823CD25...
  -> Locally signing key 69DD6C8FD314223E14362848BF7EEF7A9C6B5765...
  -> Locally signing key 9D22B7BB678DC056B1F7723CB55C5315DCD9EE1A...
==> Importing owner trust values...
gpg: setting ownertrust to 4
gpg: inserting ownertrust of 4
gpg: setting ownertrust to 4

To be noted : the pacman-key --refresh is not enough / is useless in this case.

pacman-key --refresh
gpg: refreshing 2 keys from hkps://hkps.pool.sks-keyservers.net
gpg: key 77193F152BDBE6A6: 6 signatures not checked due to missing keys
gpg: key 77193F152BDBE6A6: "Arch Linux ARM Build System <builder@archlinuxarm.org>" not changed
gpg: Total number processed: 1
gpg:              unchanged: 1