Bug#995071: argyll: USB devices not found on big-endian (powerpc)

2022-01-31 Thread Wyatt Ward
I have finally had some time to verify; by adding the byte-swapped version of
my colorimeter's USB Vendor and Product ID's, Argyll enumerates it and lets me
use it. 0765:5020 became 6507:2050.

Spotread appears to be giving correct results, given that they are about the
same on average as when I run it on an x86 system. This makes me believe that
this may be the only big endian issue, but there is plenty I have not tested
(including all other colorimeters and spectrometers Argyll supports).

In summary, Argyll needs to either change how it retrieves the VID and PID to
avoid things like memcpy(), or it needs to swap the bytes internally for big
endian platforms.



Bug#995071: argyll: USB devices not found on big-endian (powerpc)

2021-09-25 Thread Wyatt Ward
Package: argyll
Version: 2.2.0+repack-1
Severity: important
Tags: upstream

Dear Maintainer,

*** Reporter, please consider answering these questions, where appropriate ***

After installing argyll and enabling the appropriate udev rules, argyll fails
to enumerate USB-based colorimeters and spectrometers on PowerPC
(big-endian, 32-bit).

Specifically, 'spotread -?' does not list any usb devices connected to the
system.

I can find no means of debugging why the device (an i1Display Pro Plus) fails
to be detected, but it enumerates fine on my i386 and amd64 machines with the
same udev rules.

Manually setting the permissions on the appropriate /dev/bus/usb/*/* node does
not fix things, either, so I am relatively sure this is not a simple
permissions problem.

I suspect that USB PID's and Vendor ID's are being read in an endian-specific
(and incorrect) manner.

Argyll should be able to run on big-endian machines as well as little-endian
ones. The only way I was able to profile this machine was to run Argyll on
an i386 system with X forwarding to the powerbook's display.

As a side-note, I noticed that my argyll-ref package was out of date when
I ran reportbug; I just upgraded it to 2.2.0+repack-1 and nothing changed.

-- System Information:
Debian Release: bullseye/sid
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: powerpc (ppc)
Foreign Architectures: amd64, i386

Kernel: Linux 5.13.0-rc2-wyatt
Kernel taint flags: TAINT_UNSIGNED_MODULE
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)
LSM: AppArmor: enabled

Versions of packages argyll depends on:
ii  argyll-ref   2.0.1+repack-2
ii  libc62.31-12
ii  libjpeg62-turbo  1:2.0.6-2
ii  libpng16-16  1.6.37-3
ii  libssl1.11.1.1k-1
ii  libtiff5 4.2.0-1
ii  libx11-6 2:1.7.1-1
ii  libxext6 2:1.3.3-1.1
ii  libxinerama1 2:1.1.4-2
ii  libxrandr2   2:1.5.1-1
ii  libxss1  1:1.2.3-1
ii  libxxf86vm1  1:1.1.4-1+b2

Versions of packages argyll recommends:
ii  libpam-elogind-compat [libpam-systemd]  1.3
ii  udev247.3-1

Versions of packages argyll suggests:
pn  argyll-doc
ii  colord1.4.5-3
pn  gir1.2-colordgtk-1.0  

-- no debconf information