svn commit: r299467 - in head: share/man/man9 sys/dev/pci

Jung-uk Kim jkim at FreeBSD.org
Wed May 11 21:50:32 UTC 2016


On 05/11/16 05:38 PM, Bjoern A. Zeeb wrote:
> 
>> On 11 May 2016, at 17:07 , Andrew Turner <andrew at freebsd.org> wrote:
>>
>> Author: andrew
>> Date: Wed May 11 17:07:29 2016
>> New Revision: 299467
>> URL: https://svnweb.freebsd.org/changeset/base/299467
>>
>> Log:
>>  Add a new get_id interface to pci and pcib. This will allow us to both
>>  detect failures, and get different PCI IDs.
>>
>>  For the former the interface returns an int to signal an error. The ID is
>>  returned at a uintptr_t * argument.
>>
>>  For the latter there is a type argument that allows selecting the ID type.
>>  This only specifies a single type, however a MSI type will be added
>>  to handle the need to find the ID the hardware passes to the ARM GICv3
>>  interrupt controller.
>>
>>  A follow up commit will be made to remove pci_get_rid.
>>
>>  Reviewed by:	jhb, rstone
>>  Obtained from:	ABT Systems Ltd
>>  Sponsored by:	The FreeBSD Foundation
>>  Differential Revision:	https://reviews.freebsd.org/D6239
> 
> Hi, seems gcc, I guess it is, doesn’t like your change:
> 
> In file included from /scratch/tmp/bz/head.svn/sys/sparc64/isa/ofw_isa.c:78:
> ./pcib_if.h:166: warning: 'enum pci_id_type' declared inside parameter list
> ./pcib_if.h:166: warning: its scope is only this definition or declaration, which is probably not what you want
> ./pcib_if.h:169: warning: 'enum pci_id_type' declared inside parameter list
> ./pcib_if.h:169: error: parameter 3 ('type') has incomplete type
> ./pcib_if.h: In function 'PCIB_GET_ID':
> ./pcib_if.h:173: error: type of formal parameter 3 is incomplete

Clang also fails:

In file included from /usr/src/sys/dev/acpica/acpi_hpet.c:58:
./pcib_if.h:165:61: error: declaration of 'enum pci_id_type' will not be
visible outside of this function [-Werror,-Wvisibility]
typedef int pcib_get_id_t(device_t pcib, device_t dev, enum pci_id_type
type,
                                                            ^
./pcib_if.h:169:38: error: declaration of 'enum pci_id_type' will not be
visible outside of this function [-Werror,-Wvisibility]
                                enum pci_id_type type, uintptr_t *id)
                                     ^
./pcib_if.h:169:50: error: variable has incomplete type 'enum pci_id_type'
                                enum pci_id_type type, uintptr_t *id)
                                                 ^
./pcib_if.h:169:38: note: forward declaration of 'enum pci_id_type'
                                enum pci_id_type type, uintptr_t *id)
                                     ^
3 errors generated.

Jung-uk Kim

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 473 bytes
Desc: OpenPGP digital signature
URL: <http://lists.freebsd.org/pipermail/svn-src-head/attachments/20160511/95aad897/attachment.sig>


More information about the svn-src-head mailing list