Comments (3)
Nice work figuring this out!
This may deserve a project on its own(adapters & devices list, openocd configurations), but it would also be great to have an 'enabler' implemented in lk2nd as a oneliner oem command.
I guess you can use fastboot oem writel 0x0119e000 0x3c5
as one liner? :D
It would be great to document this properly somewhere, also together with instructions for OpenOCD etc.
from lk2nd.
Yeah, the actual part of toggling QDSD registers can be done easily, but since QDSD documentation in the TRM is rather scarce, how it actually works is still not clear. I've got varying successibility on different devices. My assumption is that SDC2 power has to be enabled(which means this can be device specific), along with some clocks. Meanwhile, a look at CoreSight driver in downstream kernel seems to imply that NIDnT actually support automatic switching(maybe with a special GPIO like card detect?), but again there's no clear document about this.
I'm going to document this once I got stuff clearer.
from lk2nd.
My assumption is that SDC2 power has to be enabled(which means this can be device specific)
FWIW: The regulators for SDC2 are typically powered up by default during boot on MSM8916. We have SD card support in lk2nd without turning on any regulators. The regulators may turn off any time though once Linux is started (if no SD card is inserted).
along with some clocks
Not sure about the boot up state for those, they are probably off by default. But it seems a bit strange that the debug logic would receive the clock intended for the SDC2 SDHCI controller. Looks like downstream references the regulators typically used for SDC2 and the QDSS clocks managed by RPM: https://github.com/msm8916-mainline/linux-downstream/blob/b20608408caff817ec874f325127b07609fbaeb8/arch/arm/boot/dts/qcom/msm8916-coresight.dtsi#L55-L64
There is also pinctrl (mainly configuring pull up or pull down on the SDC pins). Downstream suggests this should be set depending on the selected mode: https://github.com/msm8916-mainline/linux-downstream/blob/b20608408caff817ec874f325127b07609fbaeb8/arch/arm/boot/dts/qcom/msm8916-qrd.dtsi#L184-L205
from lk2nd.
Related Issues (20)
- Create new release HOT 2
- Redmi 3(ido) cannot enter the main interface of postmarketOS after being brushed into it HOT 1
- Show advanced fusing status HOT 2
- Support request HOT 10
- On Galaxy J5 2016 (J510H) fastboot doesnt work HOT 14
- dts: add Samsung Galaxy Grand Max grandmaxltekx (SM-G720N0) HOT 4
- lk2nd not booting SM-A500FU HOT 8
- Doesn't boot with my Lenovo Vibe K5 (A6020a40)
- Wileyfox Swift not booting with `fastboot boot lk2nd-msm8916.img` HOT 6
- `Error code 3039 at boot_elf_loader.c Line 1413` On UART after flashing ABOOT partition HOT 6
- `Unable to locate /bootselect partition`
- I'm unable to boot into ROM HOT 6
- [next] Pass bootloader information in the dtb using a generic namespace HOT 8
- Unclear instructions for installing to Samsung HOT 1
- Can't flash userdata on motorola-harpia HOT 4
- [rebase/next] fairphone2 (msm8974) : crash when no screen plugged in
- Makefile issues HOT 2
- lk1st cannot boot kernel HOT 1
- dts: msm8916: heatqlte: Failure to boot from SD card HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from lk2nd.