Removing the BROKEN condition on vc04_services/vchiq?
Michael Zoran
mzoran at crowfest.net
Wed Oct 26 23:38:24 PDT 2016
On Thu, 2016-10-27 at 07:36 +0200, Greg KH wrote:
> >
> > In file included from
> >
> drivers/staging/vc04_services/interface/vchiq_arm/vchiq_core.c:34:0:
> > drivers/staging/vc04_services/interface/vchiq_arm/vchiq_core.c: In
> > function ‘parse_rx_slots’:
> >
> drivers/staging/vc04_services/interface/vchiq_arm/vchiq_core.c:1622:2
> 9:
> > warning: cast from pointer to integer of different size [-Wpointer-
> to-
> > int-cast]
> > DEBUG_VALUE(PARSE_HEADER, (int)header);
> > ^
> >
> drivers/staging/vc04_services/interface/vchiq_arm/vchiq_core.h:189:33
> :
> > note: in definition of macro ‘DEBUG_VALUE’
> > do { debug_ptr[DEBUG_ ## d] = (v); dsb(sy); } while (0)
> > ^
>
> why does the firmware care or matter about this?
>
I need to investigate it more, but I think the firmware and the driver
have a shared logging mechanism. I think it might be used in Raspbian
to get the boot error logs from the pre-boot environment.
At any rate, it's in the shared memory between the firmware and the
kernel, and if I remove that part of the shared structure or change the
size of any of the fields, the whole driver breaks.
If it's important to have 0 warnings, I can probably just #ifdef out
that 1 line, or remove the warning by casting it to a long first.
More information about the linux-rpi-kernel
mailing list