summaryrefslogtreecommitdiff
path: root/sys/arch/armv7/imx
AgeCommit message (Collapse)Author
2016-07-27Instead of passing the raw reg property to simplebus nodes,Patrick Wildt
pass a pre-processed array of fdt_reg structs. This means that the drivers don't have to understand the cell properties themselves but can rely on the 64-bit addr/size pairs. ok kettenis@
2016-07-26Rename struct fdt_memory to fdt_reg to match the member namePatrick Wildt
used in the fdt attach args and the device tree. ok kettenis@
2016-07-23Previously the uarts attached in order, so that the first attached uartPatrick Wildt
is always the serial console. With device tree enumeration, this order is not given anymore. The serial console might now attach with a different minor and has to be updated, otherwise there will be no further output on the serial. Thus, re-create the i.MX6 console with the correct minor number on attach. ok jsg@, kettenis@
2016-07-23The linux kernel treated the "phy-reset-gpio" as active-low regardless of whatMark Kettenis
the device tree says. As a result many device trees encode it as active-high when active-low is needed. For now just override the device tree. ok jsg@, patrick@
2016-07-22Attach imx(4) on i.mx6 quad plus which appears to be largely compatibleJonathan Gray
with i.mx6 quad but with more memory bandwidth and some graphics tweaks. ok kettenis@
2016-07-22Fallback to the known fec irq number on imx.6 if the fdtJonathan Gray
interrupts-extended property is missing or not the size we expect. Some dtbs implement a workaround for "ERR006687 ENET: Only the ENET wake-up interrupt request can wake the system from Wait mode" suggested by the IMX6DQCE errata document to set an undocumented gpio mux mode and handle the interrupt via gpio. We don't support gpio interrupts yet, hopefully this change is enough to make interrupts work on wandboard and sabre lite again till we do. Discussed with kettenis and patrick, tested on sabre lite by patrick.
2016-07-21set and clear the 10baseT bit in statchgJonathan Gray
ok patrick@
2016-07-14Do board-specific delay/skew corrections for the Micrel KSZ9021 and KSZ9031Mark Kettenis
PHYs based on device tree properties instead of the board ID. Untested as I don't have the hardware. ok jsg@, patrick@
2016-07-13Use the device tree voltage regulator information to supply power to the USBMark Kettenis
bus. For this only supports "fixed" regulators that are controlled through a gpio. But this covers all the case we currently handle with board ID specific code. Note that the old code did explicitly remove power first on some boards, which would reset bus-powered devices/hubs on the bus. The new code doesn't do this. If that causes problems we can revisit the issue. The boards that would be affected are sabrelight/nitrogen6x and utilite. The plan is to evolve this into a generic regulator framework that supports more complex regulator types as well. ok jsg@, patrick@
2016-07-12Turn ahci(4) glue code for the i.MX6 platform into its own imxahci(4) driverMark Kettenis
such that we can don't end up with conflicting attachments of other SoC-specific glue code.
2016-07-12Turn ehci(4) glue code for the i.MX6 platform into its own imxehci(4) driverMark Kettenis
such that we can don't end up with conflicting attachments of other SoC-specific glue code. ok jsg@, patrick@
2016-07-11Use gpio framework to implement hardware reset of the PHY instead ofMark Kettenis
hardcoding particular gpios based on board IDs. ok visa@, jsg@
2016-07-11Use gpio framework to implement card detect instead of hardcoding particularMark Kettenis
gpios based on board IDs. ok visa@, jsg@
2016-07-11Hook up imxgpio(4) to the FDT gpio framework.Mark Kettenis
ok visa@, jsg@
2016-07-10Not all i.MX6 devices have a pinctrl property in their device nodes.Patrick Wildt
In that case, soft fail and return instead of allocating buffer with a bogus size. ok kettenis@
2016-07-10Fix typo. Pointed out by patrick@Mark Kettenis
2016-07-10Dynamically attach imxgpio(4) using the FDT.Mark Kettenis
2016-07-10Add support for handling pinctrl device tree bindings to imxiomuxc(4).Mark Kettenis
These are used to do board-specific setup of mux settings and pad configuration. ok jsg@, patrick@
2016-07-09Simplify the i.MX6 platform code. The list of board devices is nowMark Kettenis
(essentially) the same for all boards, so we can use a single list and match based on the compatible property of the root node in the device tree. ok jsg@
2016-07-09Perform PHY-specific initialization based on the PHY ID instead of theMark Kettenis
board ID for the AR8031/AR8035. ok jsg@
2016-07-09Dynamically attach i.MX6 ehci(4) using the FDT.Mark Kettenis
ok jsg@
2016-06-22Fetch MAC address from FDT.Mark Kettenis
ok jsg@, patrick@
2016-06-14If the FDT node has a "non-removable" property, return 1 from the cardMark Kettenis
detect function. Remove the board-specific return 1 cases as they all match the case of a "non-removable" property. Note that this introduces a sdmmc0: can't enable card message on the CuBox-i as is has the internal eMMC controller enabled in its device tree even though there is no eMMC soldered onto the board. ok jsg@
2016-06-13Dynamically attach imxdog(4) using the FDT.Mark Kettenis
2016-06-13Use "bus-width" property to determine whether 4-bit and 8-bit mode areMark Kettenis
supported.
2016-06-12Dynamically attach fec(4) using the FDT.Mark Kettenis
ok jsg@, patrick@
2016-06-11dynamically attach imxuart using the FDTJonathan Gray
ok kettenis@
2016-06-09Dynamically attach imxesdhc(4) using the FDT.Mark Kettenis
ok jsg@
2016-06-09Dynamically attach i.MX6 ahci(4) using the FDT.Mark Kettenis
ok jsg@
2016-06-09Make use of the information about the node passed down to us by simplebus(4).Mark Kettenis
ok jsg@
2016-06-08Use fdt to find the console to initialise. Try to use /chosen/stdout-pathJonathan Gray
if present otherwise fallback to /aliases/serial0. Don't require a platform match to run the various console init functions so the init functions will run for unknown board ids. With and ok kettenis@ on a earlier version.
2016-06-04Remove model specific strings keyed off the board id.Jonathan Gray
We now pull the model string from fdt.
2016-06-03rename imxenet to fecJonathan Gray
ok patrick@ kettenis@
2016-05-21Dynamically attach imxiic(4) and use the FDT to enumerate devices on i2cMark Kettenis
busses. Users of the CuBox-i and Hummingboard now need to boot with an FDT to see the RTC. ok jsg@, patrick@
2016-05-20Change the identification string to "nxp,pcf8523" as this is what is storedMark Kettenis
in the FDT.
2016-05-19Remove the PHYTEC phyFLEX support code, patrick says he no longerJonathan Gray
has the hardware for the eval kit. ok patrick@
2016-05-18Introduce a per-platform init_mainbus() hook that can be used to attachMark Kettenis
platform-specific devices to mainbus before we start walking the FDT. ok patrick@
2016-05-18Remove unused probe function.Mark Kettenis
ok patrick@
2016-05-17Enable the pcf8523 RTC on Hummingboard and CuBox-i.Mark Kettenis
ok patrick@
2016-05-16Make this actually work. This makes the following changes:Mark Kettenis
- Move most of the bus setup stuff to imxiic_i2c_acquire_bus() - Move the teardown to imxiic_i2c_release_bus() - Always clear the IIF flag - Allow cmd and data for write operations. Some i2c operations are still rejected, but this works well enough to use pcfrtc(4). ok patrick@
2016-05-15Map the ADMA2 descriptor table use BUS_DMA_COHERENT and add a missingMark Kettenis
bus_dmamap_sync(9). Doesn't really fix anything, but adding the missing sync makes the code more correct. Using BUS_DMA_COHERENT avoids some cache flushes.
2016-05-08Add DMA support. It uses ADMA2 "Internal DMA" that is compatible with theMark Kettenis
SD Host Controller standard. ok patrick@
2016-05-07add support for changing the bus width and set the 4-bit mode capabilityJonathan Gray
ok patrick@ kettenis@
2016-05-06Reset the bus width back to 1-bit when resetting the host. Makes imxesdhc(4)Mark Kettenis
work on the cubox-i, whereu-boot leaves the controller in 4-bit mode.
2016-05-05Add Dual Data Rate support for eMMC at 52MHz.Mark Kettenis
2016-05-02Add check to armv7 platform bus match code, so that those busses onlyPatrick Wildt
attach if we are running in legacy mode. ok jsg@
2016-05-02Rework mainbus and implement simplebus to be able to span a tree-likePatrick Wildt
topology based on device tree information. Introduce a common attach args structure to be used for all fdt-capable bus devices. ok jsg@ kettenis@
2016-05-01Add support for changing the bus width to the sdmmc subsystem and the sdhc(4)Mark Kettenis
controller. Use this to switch SD cards to a 4-bit bus if they support it. ok deraadt@, jsg@
2016-04-13G/C IFQ_SET_READY().Martin Pieuchot
2016-02-02remove uneeded break statementsJonathan Gray