History log of /src/sys/dev/ofw/ofw_subr.c |
Revision | | Date | Author | Comments |
1.60 |
| 22-Jan-2022 |
thorpej | Change the devhandle_from_*() functions to also take a "super handle", from which the newly created handle will inherit it's implementation. The root implementation for a new handle type is used if an invalid "super handle" is passed.
|
1.59 |
| 15-Sep-2021 |
thorpej | Adjust the device_call() calling convention so as to provide type checking of the arguments passed to the call, using auto-generated argument structures and binding macros.
|
1.58 |
| 24-Apr-2021 |
thorpej | Merge thorpej-cfargs branch:
Simplify and make extensible the config_search() / config_found() / config_attach() interfaces: rather than having different variants for which arguments you want pass along, just have a single call that takes a variadic list of tag-value arguments.
Adjust all call sites: - Simplify wherever possible; don't pass along arguments that aren't actually needed. - Don't be explicit about what interface attribute is attaching if the device only has one. (More simplification.) - Add a config_probe() function to be used in indirect configuiration situations, making is visibly easier to see when indirect config is in play, and allowing for future change in semantics. (As of now, this is just a wrapper around config_match(), but that is an implementation detail.)
Remove unnecessary or redundant interface attributes where they're not needed.
There are currently 5 "cfargs" defined: - CFARG_SUBMATCH (submatch function for direct config) - CFARG_SEARCH (search function for indirect config) - CFARG_IATTR (interface attribte) - CFARG_LOCATORS (locators array) - CFARG_DEVHANDLE (devhandle_t - wraps OFW, ACPI, etc. handles)
...and a sentinel value CFARG_EOL.
Add some extra sanity checking to ensure that interface attributes aren't ambiguous.
Use CFARG_DEVHANDLE in MI FDT, OFW, and ACPI code, and macppc and shark ports to associate those device handles with device_t instance. This will trickle trough to more places over time (need back-end for pre-OFW Sun OBP; any others?).
|
1.57 |
| 05-Feb-2021 |
thorpej | branches: 1.57.2; OpenFirmware device handle implementation.
|
1.56 |
| 04-Feb-2021 |
thorpej | Split the i2c and spi stuff out into their own files.
|
1.55 |
| 27-Jan-2021 |
thorpej | G/C of_match_compatible().
|
1.54 |
| 27-Jan-2021 |
thorpej | Rename of_match_compat_data() to of_compatible_match(). Similarly, rename of_search_compatible() to of_compatible_lookup().
Standardize on of_compatible_match() for driver matching, and adapt all call sites.
|
1.53 |
| 26-Jan-2021 |
thorpej | Replace use of of_match_compatible().
|
1.52 |
| 26-Jan-2021 |
thorpej | There is not much point in of_compatible() returning -1 for "no match" and >= 0 for "match". Just make it return 0 for "no match" and >0 for "match" so it can be treated like a boolean expression.
As such of_match_compatible() (a wrapper around of_compatible()) is now obsolete, and will be removed once all call sites are converted to an appropriate replacement.
|
1.51 |
| 26-Jan-2021 |
thorpej | Minor comment changes.
|
1.50 |
| 25-Jan-2021 |
mrg | s/boolean_t/bool/. boolean_t is obsolete (from Mach), and this also fixes a new build issue in libkvm on sparc*.
|
1.49 |
| 25-Jan-2021 |
jmcneill | Add "cookietype" to i2c attach args, so the consumer knows if ia_cookie is either an OF phandle or an ACPI_HANDLE. Add NXP0002 compatible mapping while here.
|
1.48 |
| 24-Jan-2021 |
thorpej | malloc(9) -> kmem(9)
|
1.47 |
| 24-Jan-2021 |
thorpej | Rewrite of_compatible() using strlist_match().
|
1.46 |
| 24-Jan-2021 |
thorpej | Implement of_match_compat_data() using device_compatible_match_strlist(). Implement of_search_compatible() using device_compatible_lookup_strlist().
|
1.45 |
| 24-Jan-2021 |
thorpej | Update a comment.
|
1.44 |
| 24-Jan-2021 |
thorpej | Change of_search_compable() to return NULL on no-match, which is much more sensible than the previous behavior. As such, back out rev 1.7 of sunxi_sramc.c. All other of_search_compable() call sites have been audited.
|
1.43 |
| 20-Jan-2021 |
jmcneill | update comment to match new reality
|
1.42 |
| 18-Jan-2021 |
thorpej | Remove "struct of_compat_data" and replace its usage with "struct device_compatible_entry"; they are ABI-compatible.
Fix several "loses const qualifier" bugs encountered during this conversion.
|
1.41 |
| 31-Dec-2020 |
ryo | add of_getprop_uint32_array()
|
1.40 |
| 16-Jul-2020 |
jmcneill | branches: 1.40.2; Add of_find_bycompat helper to search a tree for a node by compat string.
|
1.39 |
| 26-Jun-2020 |
martin | Remove !cold KASSERT - it does not compile on all kernels, and it is not the right thing to test for anyway. XXX should we panic instead? Are "compatible" strings this long happening in real devices?
|
1.38 |
| 25-Jun-2020 |
rin | Fix fallout from migration from alloca() to malloc() in the previous.
of_compatible() is used at least for macppc in very early boot stage where malloc() is still not available.
Therefore, for small (<= OFW_MAX_STACK_BUF_SIZE = 256) buffer, use statically allocated one in the stack. For larger one, we continue to use malloc() but KASSERT(!cold) is added for sure.
Fix boot failure for macppc reported by martin: http://mail-index.netbsd.org/port-macppc/2020/06/25/msg002756.html
|
1.37 |
| 25-Jun-2020 |
jdolecek | no need for alloca() in of_compatible(), malloc() is fine
|
1.36 |
| 12-Jun-2020 |
thorpej | Update for proplib(3) API changes.
|
1.35 |
| 11-Jun-2020 |
thorpej | Update for proplib(3) API changes.
|
1.34 |
| 06-Aug-2019 |
tnn | ofw: add of_enter_spi_devs helper method
For translating OFW child nodes of SPI controller into "spi-child-devices" property. In similar spirit to the existing of_enter_i2c_devs method.
|
1.33 |
| 26-Sep-2018 |
jakllsch | Set "i2c-indirect-config" to false in the right place so that iic(4) better behaves itself.
|
1.32 |
| 23-Aug-2018 |
jmcneill | Add of_getprop_uint64
|
1.31 |
| 26-Jun-2018 |
thorpej | branches: 1.31.2; In of_enter_i2c_devs(), we no longer need to set a "size" property for a couple of models of Atmel EEPROMs because the driver can figure this out on its own now (based on the same "compatible" criteria that we're using).
|
1.30 |
| 03-Jul-2017 |
jmcneill | branches: 1.30.4; Add of_match_compat_data.
This routine searches an array of compat_data structures for a matching "compatible" entry matching the supplied OFW node.
|
1.29 |
| 30-Jun-2017 |
jmcneill | Add of_search_compatible, which searches an array of compat_data structures for a matching "compatible" entry matching the supplied OFW node. This allows us to associate data with compatible strings.
|
1.28 |
| 30-Apr-2017 |
jmcneill | branches: 1.28.2; Rename of_getprop_bool to of_hasprop and make of_getprop_bool an alias.
|
1.27 |
| 16-Dec-2015 |
jmcneill | branches: 1.27.8; add of_getprop_bool and of_getprop_uint32 helpers
|
1.26 |
| 13-Dec-2015 |
jmcneill | add an addr_shift parameter to of_enter_i2c_devs
|
1.25 |
| 13-Dec-2015 |
jmcneill | OF properties are stored in big endian, but the host might not be. Swap the value of the "reg" property where appropriate.
|
1.24 |
| 12-Dec-2015 |
jmcneill | Change the meaning of of_compatible return values >= 0. Previously, the function would return the index of the matching compatibility string in the "strings" parameter on success. None of the callers in tree use this, so instead change the function to return a reverse index of the matching compatibility string in the phandle's "compatible" property. The result is that the function will return a higher number for earlier "compatible" matches.
Add a new of_match_compatible() that simply returns of_compatible() + 1, for use in driver match functions.
|
1.23 |
| 25-Oct-2013 |
jdc | branches: 1.23.6; Add "i2c-at34c02" AT34C02 EEPROM. This is compatible with the AT24C02 EEPROM, apart from software write protection (not supported in our driver).
|
1.22 |
| 24-Sep-2013 |
jdc | Add a property "i2c-indirect-config" to allow/disallow i2c indirect config. If missing, "allowed" is assumed. Set it to false for OFW machines. Patch from martin@. Removes erroneous i2c probe messages that appeared with wildcard support.
|
1.21 |
| 08-Feb-2013 |
jdc | branches: 1.21.2; Set the size for EEPROM's that we know about ("i2c-at24c64" is set to 8192). Allows seeprom(4) to attach correctly, when combined with the direct configuration support there.
|
1.20 |
| 03-Feb-2013 |
jdc | The i2c bus number (0 or 1) is encoded in bit 33 of the register for a node, but we encode it in bit 8 of i2c_addr_t. If bit 33 is set, unset it and set bit 9 instead (we later shift by one bit).
|
1.19 |
| 02-Nov-2012 |
jdc | Only create the "i2c-child-devices" property if we actually found any child devices (rather than unconditionally). Allows indirect config of i2c busses to work (e,g. for Tadpole SPARCle).
|
1.18 |
| 28-Feb-2010 |
martin | branches: 1.18.10; 1.18.20; Interpret the "reg" property of i2c nodes more liberal, and depending on the cell size in use. I have been unable to find any documents about the i2c bindings for OF, so this is all pretty much voodoo.
|
1.17 |
| 28-Feb-2010 |
martin | Supporting cast for i2c direct configuration on OF machines
|
1.16 |
| 21-Jan-2010 |
martin | branches: 1.16.2; fix a ref counting leak
|
1.15 |
| 11-Nov-2009 |
macallan | add another convenience function - of_get_mode_string() to extract a Sun-like video mode specifier from output-device
|
1.14 |
| 14-Mar-2009 |
dsl | ANSIfy another 1261 function definitions. The only ones left in sys are beyond by sed script! (or in sys/dist or sys/external) Mostly they have function pointer parameters.
|
1.13 |
| 07-Nov-2007 |
garbled | branches: 1.13.18; 1.13.26; 1.13.32; Add three new MI functions taken from macppc/autoconf.c: of_getnode_byname(): Finds a node named X of_to_uint32_prop(): sets an uint32_t prop_t from an OFW property of_to_dataprop(): sets a data prop_t from an OFW property
These looked more generally useful, and seemed like something other OFW-capable machines might want to take advantage of.
|
1.12 |
| 25-Oct-2007 |
garbled | branches: 1.12.2; Add a new convenience function, of_find_firstchild_byname(), and apply some minor KNF to this ofw_subr.c.
|
1.11 |
| 11-Dec-2005 |
christos | branches: 1.11.44; 1.11.46; 1.11.50; merge ktrace-lwp.
|
1.10 |
| 27-Feb-2005 |
perry | branches: 1.10.4; nuke trailing whitespace
|
1.9 |
| 22-Apr-2004 |
itojun | branches: 1.9.4; 1.9.6; sprintf -> snprintf
|
1.8 |
| 06-Jan-2003 |
wiz | branches: 1.8.2; compatibility, not compatiblity.
|
1.7 |
| 13-Nov-2001 |
lukem | add RCSIDs
|
1.6 |
| 13-Mar-2000 |
soren | branches: 1.6.6; 1.6.8; Fix doubled 'the's in comments.
|
1.5 |
| 24-Feb-1998 |
mycroft | branches: 1.5.14; Forcibly NUL-terminate the path name, just to be sure.
|
1.4 |
| 03-Feb-1998 |
cgd | s/of_nodename/of_packagename/. Eventually, we'll probably want something similar for instances.
|
1.3 |
| 02-Feb-1998 |
cgd | add of_nodename(), a function to stuff the last component of a node's name into a caller-provided buffer (helpful for generating autoconfiguration output). Also, other minor cleanup.
|
1.2 |
| 28-Jan-1998 |
cgd | clean up comments and includes. add an of_compatible() function which checks for the presence of any of a set of caller-provided strings in a node's "compatible" property (the _right_ way to determine driver compatibility).
|
1.1 |
| 26-Jan-1998 |
cgd | new file containing common OFW-related routines. Right now just contains of_decode_int(), a function which decodes OFW integer properties.
|
1.5.14.1 |
| 20-Nov-2000 |
bouyer | Update thorpej_scsipi to -current as of a month ago A i386 GENERIC kernel compiles without the siop, ahc and bha drivers (will be updated later). i386 IDE/ATAPI and ncr work, as well as sparc/esp_sbus. alpha should work as well (untested yet). siop, ahc and bha will be updated once I've updated the branch to current -current, as well as machine-dependant code.
|
1.6.8.1 |
| 10-Jan-2002 |
thorpej | Sync kqueue branch with -current.
|
1.6.6.2 |
| 07-Jan-2003 |
thorpej | Sync with HEAD.
|
1.6.6.1 |
| 14-Nov-2001 |
nathanw | Catch up to -current.
|
1.8.2.4 |
| 04-Mar-2005 |
skrll | Sync with HEAD.
Hi Perry!
|
1.8.2.3 |
| 21-Sep-2004 |
skrll | Fix the sync with head I botched.
|
1.8.2.2 |
| 18-Sep-2004 |
skrll | Sync with HEAD.
|
1.8.2.1 |
| 03-Aug-2004 |
skrll | Sync with HEAD
|
1.9.6.1 |
| 19-Mar-2005 |
yamt | sync with head. xen and whitespace. xen part is not finished.
|
1.9.4.1 |
| 29-Apr-2005 |
kent | sync with -current
|
1.10.4.2 |
| 15-Nov-2007 |
yamt | sync with head.
|
1.10.4.1 |
| 27-Oct-2007 |
yamt | sync with head.
|
1.11.50.1 |
| 13-Nov-2007 |
bouyer | Sync with HEAD
|
1.11.46.2 |
| 08-Nov-2007 |
matt | sync with -HEAD
|
1.11.46.1 |
| 06-Nov-2007 |
matt | sync with HEAD
|
1.11.44.2 |
| 11-Nov-2007 |
joerg | Sync with HEAD.
|
1.11.44.1 |
| 28-Oct-2007 |
joerg | Sync with HEAD.
|
1.12.2.1 |
| 19-Nov-2007 |
mjf | Sync with HEAD.
|
1.13.32.1 |
| 13-May-2009 |
jym | Sync with HEAD.
Commit is split, to avoid a "too many arguments" protocol error.
|
1.13.26.1 |
| 28-Apr-2009 |
skrll | Sync with HEAD.
|
1.13.18.2 |
| 11-Mar-2010 |
yamt | sync with head
|
1.13.18.1 |
| 04-May-2009 |
yamt | sync with head.
|
1.16.2.1 |
| 30-Apr-2010 |
uebayasi | Sync with HEAD.
|
1.18.20.4 |
| 03-Dec-2017 |
jdolecek | update from HEAD
|
1.18.20.3 |
| 20-Aug-2014 |
tls | Rebase to HEAD as of a few days ago.
|
1.18.20.2 |
| 25-Feb-2013 |
tls | resync with head
|
1.18.20.1 |
| 20-Nov-2012 |
tls | Resync to 2012-11-19 00:00:00 UTC
|
1.18.10.2 |
| 22-May-2014 |
yamt | sync with head.
for a reference, the tree before this commit was tagged as yamt-pagecache-tag8.
this commit was splitted into small chunks to avoid a limitation of cvs. ("Protocol error: too many arguments")
|
1.18.10.1 |
| 16-Jan-2013 |
yamt | sync with (a bit old) head
|
1.21.2.1 |
| 18-May-2014 |
rmind | sync with head
|
1.23.6.2 |
| 28-Aug-2017 |
skrll | Sync with HEAD
|
1.23.6.1 |
| 27-Dec-2015 |
skrll | Sync with HEAD (as of 26th Dec)
|
1.27.8.1 |
| 02-May-2017 |
pgoyette | Sync with HEAD - tag prg-localcount2-base1
|
1.28.2.1 |
| 18-Jul-2017 |
snj | Pull up following revision(s) (requested by jmcneill in ticket #114): sys/arch/arm/samsung/exynos_intr.h: revision 1.3 sys/arch/arm/sunxi/sun8i_h3_ccu.c: revision 1.1 sys/arch/arm/sunxi/sun8i_h3_ccu.c: revision 1.2 sys/arch/arm/sunxi/sun8i_h3_ccu.c: revision 1.3 sys/arch/arm/sunxi/sunxi_gates.c: revision 1.1 distrib/utils/embedded/mkimage: revision 1.66 sys/arch/arm/sunxi/sun8i_h3_ccu.c: revision 1.4 sys/arch/arm/sunxi/sunxi_rsb.c: revision 1.1 sys/arch/arm/sunxi/sun8i_h3_ccu.c: revision 1.5 sys/arch/arm/sunxi/sun8i_h3_ccu.c: revision 1.6 sys/arch/arm/sunxi/sun8i_h3_ccu.c: revision 1.7 sys/dev/gpio/gpio.c: revision 1.59 sys/arch/arm/sunxi/sunxi_ccu_prediv.c: revision 1.1 sys/conf/Makefile.kern.inc: revision 1.257 sys/arch/evbarm/conf/ODROID-XU_INSTALL: file removal sys/arch/arm/sunxi/sunxi_ccu_prediv.c: revision 1.2 sys/conf/Makefile.kern.inc: revision 1.258 sys/arch/arm/fdt/psci_fdt.h: revision 1.1 sys/arch/arm/sunxi/sunxi_resets.c: revision 1.1 sys/arch/evbarm/conf/files.sunxi: revision 1.1 sys/arch/evbarm/fdt/fdt_machdep.c: revision 1.8 sys/arch/evbarm/fdt/fdt_machdep.c: revision 1.9 sys/arch/arm/samsung/files.exynos: revision 1.22 distrib/utils/embedded/conf/armv7.conf: revision 1.13 sys/arch/arm/samsung/files.exynos: revision 1.23 sys/arch/evbarm/conf/std.tegra: revision 1.15 distrib/utils/embedded/conf/armv7.conf: revision 1.14 sys/arch/arm/samsung/files.exynos: revision 1.24 distrib/utils/embedded/conf/armv7.conf: revision 1.15 sys/arch/evbarm/sunxi/genassym.cf: revision 1.1 sys/arch/arm/samsung/exynos_fdt.c: file removal sys/dev/fdt/fdt_pinctrl.c: revision 1.4 sys/arch/arm/samsung/exynos_sysmmu.c: revision 1.2 sys/arch/arm/sunxi/sun8i_h3_gpio.c: revision 1.1 sys/arch/arm/sunxi/sunxi_twi.c: revision 1.1 sys/dev/usb/ehci.c: revision 1.255 sys/arch/arm/sunxi/sunxi_twi.c: revision 1.2 sys/arch/arm/sunxi/sun8i_a83t_ccu.h: revision 1.1 sys/dev/ic/dwc_mmc.c: revision 1.11 sys/arch/arm/cortex/gic.c: revision 1.24 distrib/evbarm/instkernel/ramdisk/Makefile: revision 1.17 etc/etc.evbarm/Makefile.inc: revision 1.87 etc/etc.evbarm/Makefile.inc: revision 1.88 sys/arch/arm/fdt/gic_fdt.c: revision 1.5 etc/Makefile: revision 1.429 sys/arch/arm/fdt/gic_fdt.c: revision 1.6 sys/arch/arm/fdt/gic_fdt.c: revision 1.7 sys/arch/arm/sunxi/sunxi_gpio.c: revision 1.1 sys/arch/arm/sunxi/sunxi_gpio.c: revision 1.2 sys/arch/evbarm/conf/std.sunxi: revision 1.1 sys/arch/arm/sunxi/sunxi_gpio.c: revision 1.3 sys/arch/evbarm/conf/std.sunxi: revision 1.2 sys/arch/arm/sunxi/sunxi_gpio.c: revision 1.4 sys/arch/evbarm/conf/std.sunxi: revision 1.3 sys/arch/arm/sunxi/sunxi_gpio.c: revision 1.5 sys/arch/arm/sunxi/sunxi_ccu_div.c: revision 1.1 sys/dev/gpio/gpiovar.h: revision 1.17 sys/arch/arm/sunxi/sunxi_gpio.c: revision 1.6 sys/arch/arm/sunxi/sunxi_gpio.c: revision 1.7 sys/arch/arm/sunxi/sunxi_gpio.c: revision 1.8 sys/arch/arm/sunxi/sunxi_rsb.h: revision 1.1 sys/arch/arm/samsung/exynos_i2c.c: revision 1.12 sys/dev/fdt/fdtvar.h: revision 1.21 sys/arch/evbarm/sunxi/sunxi_start.S: revision 1.1 sys/arch/arm/samsung/exynos_i2c.c: revision 1.13 sys/dev/fdt/fdtvar.h: revision 1.22 sys/arch/evbarm/conf/SUNXI: revision 1.10 sys/dev/fdt/fdtvar.h: revision 1.23 sys/arch/evbarm/conf/SUNXI: revision 1.11 sys/dev/fdt/gpioleds.c: revision 1.1 sys/dev/fdt/fdtvar.h: revision 1.24 sys/arch/evbarm/conf/SUNXI: revision 1.12 sys/arch/evbarm/conf/SUNXI: revision 1.13 sys/arch/arm/cortex/gic.c: revision 1.30 sys/arch/evbarm/conf/SUNXI: revision 1.14 sys/arch/evbarm/conf/SUNXI: revision 1.15 sys/arch/evbarm/conf/SUNXI: revision 1.16 sys/arch/arm/sunxi/sunxi_emac.c: revision 1.1 etc/Makefile: revision 1.430 sys/arch/arm/sunxi/sunxi_emac.c: revision 1.2 etc/Makefile: revision 1.431 sys/arch/evbarm/conf/VEXPRESS_A15: revision 1.17 sys/arch/arm/sunxi/sunxi_emac.c: revision 1.3 sys/arch/arm/sunxi/sunxi_emac.c: revision 1.4 sys/arch/arm/samsung/exynos5422_clock.c: revision 1.6 sys/arch/arm/samsung/exynos_platform.c: revision 1.1 sys/dev/ofw/ofw_subr.c: revision 1.29 sys/arch/arm/samsung/exynos_platform.c: revision 1.2 sys/arch/evbarm/conf/mk.vexpress: revision 1.3 sys/arch/arm/samsung/exynos_platform.c: revision 1.3 sys/arch/evbarm/conf/mk.vexpress: revision 1.4 sys/arch/arm/samsung/exynos_platform.c: revision 1.4 sys/arch/arm/arm/psci.h: revision 1.1 sys/arch/arm/samsung/exynos_platform.c: revision 1.5 sys/arch/arm/samsung/exynos_platform.c: revision 1.6 sys/arch/evbarm/fdt/fdt_machdep.c: revision 1.10 external/bsd/mdocml/bin/mandoc/Makefile: revision 1.12 sys/dev/fdt/files.fdt: revision 1.17 sys/dev/fdt/files.fdt: revision 1.18 sys/dev/fdt/files.fdt: revision 1.19 sys/arch/arm/samsung/exynos_sscom.c: revision 1.8 sys/arch/arm/sunxi/sun8i_a83t_ccu.c: revision 1.1 sys/arch/arm/sunxi/sunxi_mmc.c: revision 1.1 sys/arch/arm/samsung/exynos_sscom.c: revision 1.9 sys/arch/arm/conf/files.arm: revision 1.133 sys/arch/arm/samsung/mct_var.h: revision 1.5 sys/arch/arm/sunxi/sunxi_platform.c: revision 1.1 sys/arch/arm/sunxi/sunxi_platform.c: revision 1.2 sys/arch/evbarm/conf/std.vexpress: revision 1.6 sys/arch/arm/sunxi/sunxi_platform.c: revision 1.3 sys/arch/arm/sunxi/sun6i_a31_gpio.c: revision 1.1 sys/arch/arm/sunxi/sunxi_platform.c: revision 1.4 sys/arch/arm/sunxi/sun6i_a31_gpio.c: revision 1.2 sys/arch/arm/sunxi/files.sunxi: revision 1.1 sys/dev/ofw/ofw_subr.c: revision 1.30 sys/arch/arm/sunxi/files.sunxi: revision 1.2 sys/dev/ofw/openfirm.h: revision 1.35 sys/arch/arm/sunxi/files.sunxi: revision 1.3 sys/dev/ofw/openfirm.h: revision 1.36 sys/arch/arm/sunxi/files.sunxi: revision 1.4 sys/arch/arm/sunxi/files.sunxi: revision 1.5 sys/arch/evbarm/exynos/exynos_machdep.c: file removal sys/arch/arm/sunxi/sunxi_gpio.h: revision 1.1 sys/arch/arm/samsung/sscom.c: revision 1.9 sys/arch/arm/sunxi/files.sunxi: revision 1.6 sys/dev/fdt/ohci_fdt.c: revision 1.1 sys/arch/arm/sunxi/sunxi_usbphy.c: revision 1.1 sys/arch/arm/sunxi/sunxi_gpio.h: revision 1.2 sys/arch/arm/sunxi/files.sunxi: revision 1.7 sys/arch/arm/sunxi/sunxi_usbphy.c: revision 1.2 sys/arch/arm/sunxi/sunxi_gpio.h: revision 1.3 sys/arch/arm/sunxi/files.sunxi: revision 1.8 sys/arch/arm/sunxi/sunxi_usbphy.c: revision 1.3 sys/arch/arm/sunxi/files.sunxi: revision 1.9 sys/arch/arm/samsung/exynos_sscom.c: revision 1.10 sys/arch/evbarm/conf/mk.tegra: revision 1.5 sys/arch/arm/samsung/exynos_dwcmmc.c: revision 1.4 sys/arch/evbarm/conf/mk.tegra: revision 1.6 sys/arch/evbarm/conf/EXYNOS: revision 1.15 sys/arch/evbarm/conf/EXYNOS: revision 1.16 sys/arch/evbarm/conf/EXYNOS: revision 1.17 sys/arch/arm/sunxi/sunxi_ccu.c: revision 1.1 sys/arch/evbarm/conf/EXYNOS: revision 1.19 sys/arch/arm/sunxi/sunxi_ccu.c: revision 1.2 sys/arch/arm/sunxi/sunxi_ccu.c: revision 1.3 sys/arch/arm/sunxi/sunxi_ccu.c: revision 1.4 sys/arch/arm/sunxi/sunxi_ccu.c: revision 1.5 sys/arch/arm/sunxi/sunxi_emac.h: revision 1.1 sys/arch/evbarm/conf/mk.sunxi: revision 1.1 sys/arch/evbarm/include/bootconfig.h: revision 1.7 sys/arch/evbarm/conf/TEGRA: revision 1.24 sys/arch/arm/arm/psci.c: revision 1.1 sys/dev/led.c: revision 1.1 sys/dev/led.c: revision 1.2 sys/arch/arm/arm/psci_arm.S: revision 1.1 sys/arch/arm/sunxi/sunxi_ccu_gate.c: revision 1.1 sys/arch/arm/sunxi/sunxi_ccu_gate.c: revision 1.2 sys/dev/fdt/ehci_fdt.c: revision 1.1 sys/dev/fdt/ehci_fdt.c: revision 1.2 sys/arch/arm/sunxi/sun6i_a31_ccu.h: revision 1.1 sys/arch/evbarm/conf/EXYNOS: revision 1.21 sys/arch/arm/sunxi/files.sunxi: revision 1.10 sys/arch/arm/sunxi/files.sunxi: revision 1.11 sys/dev/fdt/fdtbus.c: revision 1.14 sys/arch/arm/sunxi/sunxi_mmc.h: revision 1.1 sys/arch/arm/samsung/exynos5422_dma.c: file removal usr.bin/config/mkmakefile.c: revision 1.69 sys/conf/files: revision 1.1178 sys/arch/arm/sunxi/sunxi_platform.h: revision 1.1 sys/arch/evbarm/exynos/exynos_start.S: revision 1.4 sys/arch/arm/samsung/exynos_pinctrl.c: revision 1.11 sys/arch/arm/samsung/exynos_pinctrl.c: revision 1.12 sys/arch/arm/sunxi/sunxi_rtc.c: revision 1.1 sys/arch/arm/sunxi/sun8i_h3_ccu.h: revision 1.1 sys/arch/arm/samsung/exynos5410_clock.c: revision 1.1 sys/arch/arm/samsung/exynos5410_clock.c: revision 1.2 sys/arch/evbarm/conf/SUNXI: revision 1.1 external/bsd/elftosb/usr.sbin/elftosb/Makefile: revision 1.5 sys/arch/evbarm/conf/SUNXI: revision 1.2 sys/arch/arm/fdt/psci_fdt.c: revision 1.1 sys/arch/evbarm/conf/SUNXI: revision 1.3 sys/arch/evbarm/conf/SUNXI: revision 1.4 sys/arch/evbarm/conf/files.exynos: revision 1.3 sys/arch/evbarm/conf/SUNXI: revision 1.5 sys/arch/evbarm/conf/SUNXI: revision 1.6 sys/arch/arm/sunxi/sunxi_ccu_nm.c: revision 1.1 sys/dev/fdt/fixedfactorclock.c: revision 1.1 sys/dev/fdt/fdt_subr.c: revision 1.14 sys/arch/evbarm/conf/SUNXI: revision 1.7 sys/arch/arm/sunxi/sunxi_ccu_nm.c: revision 1.2 sys/arch/arm/sunxi/sun8i_a83t_gpio.c: revision 1.1 sys/dev/fdt/fdt_subr.c: revision 1.15 sys/arch/evbarm/conf/SUNXI: revision 1.8 sys/arch/arm/sunxi/sunxi_ccu_nm.c: revision 1.3 sys/dev/ic/dwc_mmc_reg.h: revision 1.6 sys/dev/fdt/fdt_subr.c: revision 1.16 sys/arch/evbarm/conf/SUNXI: revision 1.9 usr.bin/config/mkmakefile.c: revision 1.70 sys/dev/fdt/fdt_phy.c: revision 1.1 sys/arch/evbarm/conf/ODROID-XU: file removal sys/arch/arm/fdt/arm_fdt.c: revision 1.4 sys/arch/arm/samsung/exynos_reg.h: revision 1.14 sys/conf/files: revision 1.1180 sys/arch/arm/samsung/exynos_reg.h: revision 1.15 sys/arch/arm/sunxi/sunxi_ccu.h: revision 1.1 sys/arch/arm/sunxi/sunxi_ccu.h: revision 1.2 sys/arch/arm/sunxi/sunxi_ccu.h: revision 1.3 sys/arch/arm/sunxi/sunxi_ccu.h: revision 1.4 sys/arch/arm/sunxi/sunxi_ccu.h: revision 1.5 sys/arch/arm/sunxi/sunxi_ccu.h: revision 1.6 sys/dev/ic/dwc_mmc_var.h: revision 1.6 sys/arch/arm/samsung/exynos_combiner.c: revision 1.7 sys/arch/evbarm/exynos/platform.h: revision 1.2 sys/arch/arm/fdt/files.fdt: revision 1.12 sys/arch/evbarm/conf/std.exynos: revision 1.2 sys/arch/evbarm/conf/std.exynos: revision 1.3 sys/arch/arm/rockchip/rockchip_dwcmmc.c: revision 1.6 sys/arch/arm/sunxi/sunxi_com.c: revision 1.1 sys/dev/led.h: revision 1.1 sys/arch/evbarm/conf/std.exynos: revision 1.5 sys/arch/arm/sunxi/sunxi_com.c: revision 1.2 sys/arch/evbarm/conf/files.evbarm: revision 1.26 usr.bin/config/defs.h: revision 1.99 sys/arch/arm/fdt/arm_fdtvar.h: revision 1.6 sys/arch/arm/samsung/exynos_soc.c: revision 1.32 sys/arch/arm/sunxi/sun6i_a31_ccu.c: revision 1.1 sys/arch/arm/sunxi/sun6i_a31_ccu.c: revision 1.2 sys/arch/arm/samsung/mct.c: revision 1.11 sys/arch/evbarm/conf/ODROID-U: file removal sys/arch/arm/samsung/mct.c: revision 1.12 sys/arch/arm/sunxi/sunxi_ccu_nkmp.c: revision 1.1 sys/arch/arm/sunxi/sunxi_ccu_nkmp.c: revision 1.2 sys/arch/arm/sunxi/sunxi_ccu_nkmp.c: revision 1.3 sys/arch/arm/sunxi/sunxi_ccu_nkmp.c: revision 1.4 Get the EXYNOS kernel building again with recent FDT changes. Untested. Use arm_fdt_cpu_hatch and add mmu entry for DTB Fix exynos5 devmap, bootstrap, and implement early_putchar. Calculate UART frequency based on bootloader config. Fix KERNEL_BASE_PHYS (how did this ever work?) Avoid divide-by-zero for unconfigured PLLs Correctly initialize i2cbus attach args. Add delay and enable mct timecounter. Fix build w/o VERBOSE_INIT_ARM Remove ODROID-U and ODROID-XU kernel configs as they no longer work. - Replace CONSADDR with SSCOM2CONSOLE in example - Remove gtmr (Exynos5422 uses mct) - cinclude EXYNOS.local instead of TEGRA.local Use fdtbus_intr_establish to hook in block interrupts instead of intr_establish. Simplify MCT; just enable it and then attach an ARMv7 generic timer. Add support for building DTB files during kernel build, from christos. build vexpress-v2p-ca15-tc1.dtb with the kernel build tegra124-apalis-eval.dtb, tegra124-jetson-tk1.dtb, tegra124-nyan-big.dtb, tegra124-nyan-blaze.dtb, and tegra124-venice2.dtb with the kernel Allow multiline makeoptions to work by quoting the newline.. Bump for quoting makeoptions with multiple lines. un-c99 bump required config version for multiline makeoptions feature Set DTS makeoption in kernel config Assign DTB files to a variable so we can make -V DTB put the dtb files with their kernels. no need for debug printing. Don't assume that CPU index = GIC CPU interface number. We can determine the current CPU interface number by reading from the read-only GICD_ITARGETSR0 through GICD_ITARGETSR7 registers. This gets interrupts working on Exynos 5422, where the boot processor has GIC CPU interface #4. use -v to get the expanded variable. Use -v to get the expanded variables. Get baud rate from sclk_uartN instead of uartN. Print IRQ number at attach. Fix PLL con0 register locations and add uart clocks Disable exyortc for now, it doesn't work. More or less a rewrite of dwc_mmc, based on awin_mmc, adding DMA support. Update for new dwc_mmc driver Fix dmesg Add Exynos 5410 clock controller driver. Fix a few typos in clock parent names for mmc clocks. From jmcneill@ Update for new dwc_mmc driver Implement platform reset for exynos5 Attach fdtbus to a /clocks node with no compatible string. Add support for ARM Power State Coordination Interface (PSCI). Support interrupt sharing. Add initial support for Allwinner H3 SoC. ARM Trusted Firmware reserves SGIs 8-15 for secure use. Even without ATF, U-Boot on some platforms may use SGIs in this range for the PSCI implementation. Change ARMGIC_IPI_BASE to 0 from (16 - NIPI) and add a compile-time assert to ensure that we don't end up with a conflict. Add H3 MMC support SD/MMC clock fixes Add FDT PHY interface. Add glue for generic ehci/ohci bindings. Rename a variable, NFC. Support parents in different clock domains. Add USB stuff. Doesn't quite work yet. Synopsys DesignWare APB UART needs "options COM_AWIN" for now. Add i2c glue. Add RTC driver. PHY registers start at index 1. Now USB works. Don't allow sharing edge and level triggered interrupts. Add arm_fdt_memory_dump helper for dumping physical addresses from ddb Print clocks with aprint_debug Remove unused defines Add fdtbus_get_string helper Add of_search_compatible, which searches an array of compat_data structures for a matching "compatible" entry matching the supplied OFW node. This allows us to associate data with compatible strings. Add driver for Allwinner Gigabit Ethernet (EMAC) as found in sun8i and later family SoCs. This is a port of my FreeBSD driver which has been confirmed to work on Allwinner H3, A83T, and A64 SoCs. Fix dmesg Add basic support for Allwinner A31. Add basic FDT GPIO support. Fix the pinctrl api to match the spec. A pinctrl config can have more than one xref, and an xref may have specifier data associated with it. Enable sunxi pinctrl support Adjust to new pinctrl API Add P2WI/RSB driver, based on awin_p2wi.c. Fix typo in a compat string. Configure pin defaults at attach No need to explicitly set pinctrl config 0 now Fix some register definitions. Disallow sharing between MPSAFE and non-MPSAFE handlers. Add of_match_compat_data. This routine searches an array of compat_data structures for a matching "compatible" entry matching the supplied OFW node. Add options __HAVE_CPU_UAREA_ALLOC_IDLELWP Add support for reserved memory and MEMORY_DISK_DYNAMIC for FDT-based kernels. the extent code cannot use the full range of u_long, so ignore the last page before 4GB too. ok jmcneill@ Copy install ramdisk to releasedir. Provide both a raw ffs and Legacy U-Boot version of it. Replace HUMMINGBIRD_A31 with SUNXI kernel on armv7.img and include .dtb files for SUNXI and TEGRA kernels on the MSDOS partition. Let the controller provide a default name for pins. This makes pins easier to locate when we have multiple banks and a variable number of pins per bank. Attach gpio(4) to sunxigpio Test for kernel build directory before reading DTB list Add support for Allwinner A83T SoC. Add A83T files Fixup busdma sync and locking in the RX path. Disable batch RX/TX ints. Fix AHB2 register definition and explicitly set AHB2 parent to PLL_PERIPH0/2 -- this gives us 50% more bus bandwidth for emac Restore TX_INTERVAL_DEFAULT to 64 Drop the sunxi_emac_rx_batch feature. It was originally designed to reduce the amount of mutex unlock/lock cycles during the RX path on FreeBSD and if_input, but it is not required to drop the lock before calling if_percpuq_enqueue on NetBSD. Write back the data value instead of mask in sunxi_gpio_write Add a helper for exposing LED controls via sysctl. Add GPIO LED driver. add gpioleds Add misc. gates and resets driver, and explicitly enable PIO clocks at attach. Add fdtbus_get_string_index helper. Add driver for fixed-factor clocks. Add ffclock Remove the requirement for ehci to attach after companion devices. "go for it" - skrll@ Remove the hack to find companion devices and just assume 1 companion if ETTF flag is not set. Remove pass numbers for ehci/ohci now that the attach order no longer matters Use unsigned char for ctype functions, suggested by christos Add : to body of populate_sunxi to appease bash. port-evbarm/52388: Fix number of args to a debug printf.
|
1.30.4.3 |
| 30-Sep-2018 |
pgoyette | Ssync with HEAD
|
1.30.4.2 |
| 06-Sep-2018 |
pgoyette | Sync with HEAD
Resolve a couple of conflicts (result of the uimin/uimax changes)
|
1.30.4.1 |
| 28-Jul-2018 |
pgoyette | Sync with HEAD
|
1.31.2.2 |
| 13-Apr-2020 |
martin | Mostly merge changes from HEAD upto 20200411
|
1.31.2.1 |
| 10-Jun-2019 |
christos | Sync with HEAD
|
1.40.2.2 |
| 03-Apr-2021 |
thorpej | Sync with HEAD.
|
1.40.2.1 |
| 03-Jan-2021 |
thorpej | Sync w/ HEAD.
|
1.57.2.1 |
| 03-Apr-2021 |
thorpej | - FDT device enumeration now sets the device handle using CFARG_DEVHANDLE. - fdtbus_device_register() is now obsolete, so G/C it. - of_device_register() is now obsolete, so G/C it.
|