Page MenuHomeFreeBSD

Check all compatible strings on uart devices in powerpc
ClosedPublic

Authored by jhibbits on Aug 28 2016, 7:01 PM.
Tags
None
Referenced Files
Unknown Object (File)
Tue, Nov 19, 5:03 AM
Unknown Object (File)
Thu, Nov 14, 8:08 AM
Unknown Object (File)
Sep 24 2024, 8:09 AM
Unknown Object (File)
Sep 23 2024, 4:15 PM
Unknown Object (File)
Sep 18 2024, 12:03 AM
Unknown Object (File)
Sep 18 2024, 12:02 AM
Unknown Object (File)
Sep 18 2024, 12:02 AM
Unknown Object (File)
Sep 18 2024, 12:02 AM
Subscribers

Details

Summary

Some device trees put "fsl,ns16650" first in the compatible list. This causes
the probe code to choke, even though the device is compatible with ns16650, and
has it listed later in the tree.

Test Plan

Boot the kernel

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 4959
Build 5024: arc lint + arc unit

Event Timeline

jhibbits retitled this revision from to Check all compatible strings on uart devices in powerpc.
jhibbits updated this object.
jhibbits edited the test plan for this revision. (Show Details)
jhibbits added reviewers: andrew, nwhitehorn.

You might want to also look at how we find the correct uart in uart_bus_fdt.c. We have a linker set to enumerate all drivers we support. They then provide a struct ofw_compat_data with the compat string and uart class.

jhibbits edited edge metadata.

Add a new ofw_bus_ function. This reuses the existing name of an
internal(static) function, and renames the static function to _int (couldn't
think of a better name).

You might want to also look at how we find the correct uart in uart_bus_fdt.c. We have a linker set to enumerate all drivers we support. They then provide a struct ofw_compat_data with the compat string and uart class.

Right, uart_cpu_powerpc.c's getdev() should be getting called by way of uart_bus_fdt.c.

nwhitehorn edited edge metadata.

Looks good. Thanks!

This revision is now accepted and ready to land.Aug 28 2016, 9:27 PM
This revision was automatically updated to reflect the committed changes.