From: Dinh Nguyen <dinguyen@kernel.org>
To: Marek Vasut <marex@denx.de>, linux-spi@vger.kernel.org
Cc: Pratyush Yadav <p.yadav@ti.com>
Subject: Re: [PATCH] [RFC] spi: cadence-quadspi: Disable DAC on SoCFPGA
Date: Wed, 23 Feb 2022 10:28:21 -0600 [thread overview]
Message-ID: <cd1e80f1-b12e-d8c4-e7f2-bfbc21ebf57c@kernel.org> (raw)
In-Reply-To: <bbc84e6b-68ce-84cb-7bc2-3ac844ec3710@denx.de>
On 2/22/22 18:54, Marek Vasut wrote:
> On 2/22/22 22:32, Dinh Nguyen wrote:
>>
>>
>> On 2/22/22 12:30, Marek Vasut wrote:
>>> On 2/22/22 16:49, Dinh Nguyen wrote:
>>>>
>>>>
>>>> On 2/21/22 11:05, Marek Vasut wrote:
>>>>> On 2/21/22 17:38, Dinh Nguyen wrote:
>>>>>>
>>>>>>
>>>>>> On 2/20/22 22:32, Marek Vasut wrote:
>>>>>>> On SoCFPGA Gen5, DAC memcpy_fromio() in cqspi_direct_read_execute()
>>>>>>> leads to data abort, disable DAC to avoid triggering it:
>>>>>>>
>>>>>>> Unhandled fault: imprecise external abort (0x1406) at 0x0400d3e9
>>>>>>> [0400d3e9] *pgd=00000000
>>>>>>>
>>>>>>> Signed-off-by: Marek Vasut <marex@denx.de>
>>>>>>> Cc: Dinh Nguyen <dinguyen@kernel.org>
>>>>>>> Cc: Pratyush Yadav <p.yadav@ti.com>
>>>>>>> ---
>>>>>>> drivers/spi/spi-cadence-quadspi.c | 2 +-
>>>>>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>>>>>
>>>>>>> diff --git a/drivers/spi/spi-cadence-quadspi.c
>>>>>>> b/drivers/spi/spi-cadence-quadspi.c
>>>>>>> index b808c94641fa6..65f2c2449be09 100644
>>>>>>> --- a/drivers/spi/spi-cadence-quadspi.c
>>>>>>> +++ b/drivers/spi/spi-cadence-quadspi.c
>>>>>>> @@ -1870,7 +1870,7 @@ static const struct cqspi_driver_platdata
>>>>>>> intel_lgm_qspi = {
>>>>>>> };
>>>>>>> static const struct cqspi_driver_platdata socfpga_qspi = {
>>>>>>> - .quirks = CQSPI_NO_SUPPORT_WR_COMPLETION,
>>>>>>> + .quirks = CQSPI_DISABLE_DAC_MODE |
>>>>>>> CQSPI_NO_SUPPORT_WR_COMPLETION,
>>>>>>> };
>>>>>>> static const struct cqspi_driver_platdata versal_ospi = {
>>>>>>
>>>>>> Acked-by: Dinh Nguyen <dinguyen@kernel.org>
>>>>>
>>>>> Is this DAC really not working on socfpga gen5 or is there some
>>>>> other issue ?
>>>>
>>>> I don't know the answer to this question. What is the DAC in the
>>>> QSPI module and how do I go about testing it?
>>>
>>> DAC = direct access.
>>>
>>> How do you go about testing this -- compile kernel with/without this
>>> patch, boot on SoCFPGA Gen5 with QSPI NOR attached, the kernel
>>> crashes without this patch on imprecise external abort.
>>
>> Hmm...I just tested v5.17-rc3 on a C5 board and QSPI looks to be
>> working fine:
>>
>> [ 1.744489] spi-nor spi1.0: found n25q512ax3, expected mt25qu02g
>> [ 1.750534] dma-pl330 ffe01000.pdma: Reset Channel-0 CS-f FTC-40000
>> [ 1.756941] spi-nor spi1.0: n25q512ax3 (65536 Kbytes)
>> [ 1.762369] 2 fixed-partitions partitions found on MTD device
>> ff705000.spi.0
>> [ 1.769425] Creating 2 MTD partitions on "ff705000.spi.0":
>> [ 1.774925] 0x000000000000-0x000000800000 : "Flash 0 Raw Data"
>> [ 1.781942] 0x000000800000-0x000008000000 : "Flash 0 jffs2 Filesystem"
>> [ 1.788468] mtd: partition "Flash 0 jffs2 Filesystem" extends
>> beyond the end of device "ff705000.spi.0" -- size truncated to 0x3800000
>
> I wonder if we might be missing some clock enable somewhere.
>
> Can you mail me the whole boot log ? (I'm using u-boot 2022.01 btw.)
I tested with U-Boot 2022.01 as well:
=> run nfsboot_dinh
Kernel image @ 0x1000000 [ 0x000000 - 0x54edd0 ]
## Flattened Device Tree blob at 02000000
Booting using the fdt blob at 0x2000000
Loading Device Tree to 09ff8000, end 09fffeb1 ... OK
Starting kernel ...
Deasserting all peripheral resets
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 5.17.0-rc3 (dinguyen@linux-builds1)
(arm-linux-gnue abihf-gcc (Ubuntu/Linaro 7.5.0-3ubuntu1~18.04) 7.5.0,
GNU ld (GNU Binutils for U buntu) 2.30) #1 SMP Wed Feb 23 08:51:18 CST 2022
[ 0.000000] CPU: ARMv7 Processor [413fc090] revision 0 (ARMv7),
cr=10c5387d
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing
instructio n cache
[ 0.000000] OF: fdt: Machine model: Altera SOCFPGA Cyclone V SoC
Development Kit
[ 0.000000] Memory policy: Data cache writealloc
[ 0.000000] Zone ranges:
[ 0.000000] Normal [mem 0x0000000000000000-0x000000002fffffff]
[ 0.000000] HighMem [mem 0x0000000030000000-0x000000003fffffff]
[ 0.000000] Movable zone start for each node
[ 0.000000] Early memory node ranges
[ 0.000000] node 0: [mem 0x0000000000000000-0x000000003fffffff]
[ 0.000000] Initmem setup node 0 [mem
0x0000000000000000-0x000000003fffffff]
[ 0.000000] percpu: Embedded 15 pages/cpu s29068 r8192 d24180 u61440
[ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 260608
[ 0.000000] Kernel command line: root=/dev/nfs rw
nfsroot=10.122.105.166:/hom e/dnguyen/rootfs_yocto,tcp ip=dhcp
[ 0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288
bytes, linear)
[ 0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144
bytes, li near)
[ 0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[ 0.000000] Memory: 1026164K/1048576K available (9216K kernel code,
769K rwda ta, 1888K rodata, 1024K init, 139K bss, 22412K reserved, 0K
cma-reserved, 262144 K highmem)
[ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
[ 0.000000] ftrace: allocating 30749 entries in 91 pages
[ 0.000000] ftrace: allocated 91 pages with 5 groups
[ 0.000000] trace event string verifier disabled
[ 0.000000] rcu: Hierarchical RCU implementation.
[ 0.000000] rcu: RCU event tracing is enabled.
[ 0.000000] Rude variant of Tasks RCU enabled.
[ 0.000000] rcu: RCU calculated value of scheduler-enlistment delay
is 10 jif fies.
[ 0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
[ 0.000000] L2C-310 erratum 769419 enabled
[ 0.000000] L2C-310 enabling early BRESP for Cortex-A9
[ 0.000000] L2C-310 full line of zeros enabled for Cortex-A9
[ 0.000000] L2C-310 ID prefetch enabled, offset 8 lines
[ 0.000000] L2C-310 dynamic clock gating enabled, standby mode enabled
[ 0.000000] L2C-310 cache controller enabled, 8 ways, 512 kB
[ 0.000000] L2C-310: CACHE_ID 0x410030c9, AUX_CTRL 0x76460001
[ 0.000000] random: get_random_bytes called from
start_kernel+0x528/0x6cc wit h crng_init=0
[ 0.000000] clocksource: timer1: mask: 0xffffffff max_cycles:
0xffffffff, max _idle_ns: 19112604467 ns
[ 0.000000] sched_clock: 32 bits at 100MHz, resolution 10ns, wraps
every 2147 4836475ns
[ 0.000017] Switching to timer-based delay loop, resolution 10ns
[ 0.000303] Console: colour dummy device 80x30
[ 0.000691] printk: console [tty0] enabled
[ 0.000734] Calibrating delay loop (skipped), value calculated using
timer fr equency.. 200.00 BogoMIPS (lpj=1000000)
[ 0.000765] pid_max: default: 32768 minimum: 301
[ 0.000894] Mount-cache hash table entries: 2048 (order: 1, 8192
bytes, linea r)
[ 0.000923] Mountpoint-cache hash table entries: 2048 (order: 1, 8192
bytes, linear)
[ 0.001517] CPU: Testing write buffer coherency: ok
[ 0.001575] CPU0: Spectre v2: using BPIALL workaround
[ 0.001761] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[ 0.002324] cblist_init_generic: Setting adjustable number of
callback queues .
[ 0.002356] cblist_init_generic: Setting shift to 1 and lim to 1.
[ 0.002460] Setting up static identity map for 0x100000 - 0x100060
[ 0.002595] rcu: Hierarchical SRCU implementation.
[ 0.002912] smp: Bringing up secondary CPUs ...
[ 0.003517] CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
[ 0.003534] CPU1: Spectre v2: using BPIALL workaround
[ 0.003668] smp: Brought up 1 node, 2 CPUs
[ 0.003695] SMP: Total of 2 processors activated (400.00 BogoMIPS).
[ 0.003714] CPU: All CPU(s) started in SVC mode.
[ 0.004253] devtmpfs: initialized
[ 0.008177] VFP support v0.3: implementor 41 architecture 3 part 30
variant 9 rev 4
[ 0.008388] clocksource: jiffies: mask: 0xffffffff max_cycles:
0xffffffff, ma x_idle_ns: 19112604462750000 ns
[ 0.008426] futex hash table entries: 512 (order: 3, 32768 bytes, linear)
[ 0.009172] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[ 0.010014] DMA: preallocated 256 KiB pool for atomic coherent
allocations
[ 0.010998] hw-breakpoint: found 5 (+1 reserved) breakpoint and 1
watchpoint registers.
[ 0.011030] hw-breakpoint: maximum watchpoint size is 4 bytes.
[ 0.029091] vgaarb: loaded
[ 0.029322] SCSI subsystem initialized
[ 0.029505] usbcore: registered new interface driver usbfs
[ 0.029563] usbcore: registered new interface driver hub
[ 0.029619] usbcore: registered new device driver usb
[ 0.029847] usb_phy_generic soc:usbphy: supply vcc not found, using
dummy reg ulator
[ 0.030261] pps_core: LinuxPPS API ver. 1 registered
[ 0.030285] pps_core: Software ver. 5.3.6 - Copyright 2005-2007
Rodolfo Giome tti giometti@linux.it<mailto:giometti@linux.it>
[ 0.030319] PTP clock support registered
[ 0.030470] FPGA manager framework
[ 0.031309] clocksource: Switched to clocksource timer1
[ 0.065908] NET: Registered PF_INET protocol family
[ 0.066131] IP idents hash table entries: 16384 (order: 5, 131072
bytes, line ar)
[ 0.067138] tcp_listen_portaddr_hash hash table entries: 512 (order:
0, 6144 bytes, linear)
[ 0.067193] TCP established hash table entries: 8192 (order: 3, 32768
bytes, linear)
[ 0.067276] TCP bind hash table entries: 8192 (order: 4, 65536 bytes,
linear)
[ 0.067400] TCP: Hash tables configured (established 8192 bind 8192)
[ 0.067523] UDP hash table entries: 512 (order: 2, 16384 bytes, linear)
[ 0.067580] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes,
linear)
[ 0.067751] NET: Registered PF_UNIX/PF_LOCAL protocol family
[ 0.071713] RPC: Registered named UNIX socket transport module.
[ 0.071746] RPC: Registered udp transport module.
[ 0.071762] RPC: Registered tcp transport module.
[ 0.071776] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 0.071799] PCI: CLS 0 bytes, default 64
[ 0.725286] hw perfevents: enabled with armv7_cortex_a9 PMU driver, 7
counter s available
[ 0.726528] workingset: timestamp_bits=30 max_order=18 bucket_order=0
[ 0.732082] NFS: Registering the id_resolver key type
[ 0.732133] Key type id_resolver registered
[ 0.732151] Key type id_legacy registered
[ 0.732174] Installing knfsd (copyright (C) 1996
okir@monad.swb.de<mailto:okir@monad.swb.de>).
[ 0.732909] ntfs: driver 2.1.32 [Flags: R/W].
[ 0.733097] jffs2: version 2.2. (NAND) (c) 2001-2006 Red Hat, Inc.
[ 0.733690] bounce: pool size: 64 pages
[ 0.733795] io scheduler mq-deadline registered
[ 0.733816] io scheduler kyber registered
[ 0.737748] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[ 0.738777] ffc02000.serial0: ttyS0 at MMIO 0xffc02000 (irq = 43,
base_baud = 6250000) is a 16550A
[ 1.377771] printk: console [ttyS0] enabled
[ 1.382603] ffc03000.serial1: ttyS1 at MMIO 0xffc03000 (irq = 44,
base_baud = 6250000) is a 16550A
[ 1.393068] brd: module loaded
[ 1.400992] loop: module loaded
[ 1.407175] CAN device driver interface
[ 1.411647] c_can_platform ffc00000.can: c_can_platform device
registered (re gs=(ptrval), irq=30)
[ 1.420796] socfpga-dwmac ff702000.ethernet: IRQ eth_wake_irq not found
[ 1.427438] socfpga-dwmac ff702000.ethernet: IRQ eth_lpi not found
[ 1.433718] socfpga-dwmac ff702000.ethernet: PTP uses main clock
[ 1.439902] socfpga-dwmac ff702000.ethernet: Version ID not available
[ 1.446361] socfpga-dwmac ff702000.ethernet: DWMAC1000
[ 1.451588] socfpga-dwmac ff702000.ethernet: DMA HW capability
register suppo rted
[ 1.459053] socfpga-dwmac ff702000.ethernet: RX Checksum Offload
Engine suppo rted
[ 1.466524] socfpga-dwmac ff702000.ethernet: COE Type 2
[ 1.471743] socfpga-dwmac ff702000.ethernet: TX Checksum insertion
supported
[ 1.478770] socfpga-dwmac ff702000.ethernet: Enhanced/Alternate
descriptors
[ 1.485724] socfpga-dwmac ff702000.ethernet: Extended descriptors not
support ed
[ 1.493023] socfpga-dwmac ff702000.ethernet: Ring mode enabled
[ 1.498848] socfpga-dwmac ff702000.ethernet: device MAC address
0a:70:a0:4c:e 4:6f
[ 1.514527] Micrel KSZ9021 Gigabit PHY stmmac-0:04: attached PHY
driver (mii_ bus:phy_addr=stmmac-0:04, irq=POLL)
[ 1.526181] dwc2 ffb40000.usb: supply vusb_d not found, using dummy
regulator
[ 1.533470] dwc2 ffb40000.usb: supply vusb_a not found, using dummy
regulator
[ 1.540831] dwc2 ffb40000.usb: EPs: 16, dedicated fifos, 8064 entries
in SPRA M
[ 1.548368] dwc2 ffb40000.usb: DWC OTG Controller
[ 1.553116] dwc2 ffb40000.usb: new USB bus registered, assigned bus
number 1
[ 1.560172] dwc2 ffb40000.usb: irq 45, io mem 0xffb40000
[ 1.566125] hub 1-0:1.0: USB hub found
[ 1.569911] hub 1-0:1.0: 1 port detected
[ 1.574627] usbcore: registered new interface driver usb-storage
[ 1.580807] i2c_dev: i2c /dev entries driver
[ 1.585982] Synopsys Designware Multimedia Card Interface Driver
[ 1.592409] ledtrig-cpu: registered to indicate activity on CPUs
[ 1.598541] usbcore: registered new interface driver usbhid
[ 1.604129] usbhid: USB HID core driver
[ 1.609205] NET: Registered PF_INET6 protocol family
[ 1.615138] Segment Routing with IPv6
[ 1.618827] In-situ OAM (IOAM) with IPv6
[ 1.622844] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver
[ 1.629277] NET: Registered PF_PACKET protocol family
[ 1.634369] NET: Registered PF_KEY protocol family
[ 1.639152] can: controller area network core
[ 1.643568] NET: Registered PF_CAN protocol family
[ 1.648351] can: raw protocol
[ 1.651328] can: broadcast manager protocol
[ 1.655508] can: netlink gateway - max_hops=1
[ 1.659989] 8021q: 802.1Q VLAN Support v1.8
[ 1.664225] Key type dns_resolver registered
[ 1.668566] ThumbEE CPU extension supported.
[ 1.672846] Registering SWP/SWPB emulation handler
[ 1.681725] at24 0-0051: supply vcc not found, using dummy regulator
[ 1.689287] at24 0-0051: 4096 byte 24c32 EEPROM, writable, 32 bytes/write
[ 1.701762] rtc-ds1307 0-0068: registered as rtc0
[ 1.708271] rtc-ds1307 0-0068: setting system clock to
2018-03-17T01:43:02 UT C (1521250982)
[ 1.720866] dma-pl330 ffe01000.pdma: Loaded driver for PL330 DMAC-341330
[ 1.727602] dma-pl330 ffe01000.pdma: DBUFF-512x8bytes
Num_Chans-8 Num _Peri-32 Num_Events-8
[ 1.736593] spi-nor spi1.0: found n25q512ax3, expected mt25qu02g
[ 1.742662] dma-pl330 ffe01000.pdma: Reset Channel-0 CS-f FTC-40000
[ 1.749048] spi-nor spi1.0: n25q512ax3 (65536 Kbytes)
[ 1.754479] 2 fixed-partitions partitions found on MTD device
ff705000.spi.0
[ 1.761556] Creating 2 MTD partitions on "ff705000.spi.0":
[ 1.767035] 0x000000000000-0x000000800000 : "Flash 0 Raw Data"
[ 1.774038] 0x000000800000-0x000008000000 : "Flash 0 jffs2 Filesystem"
[ 1.780562] mtd: partition "Flash 0 jffs2 Filesystem" extends beyond
the end of device "ff705000.spi.0" -- size truncated to 0x3800000
[ 1.794865] dw_mmc ff704000.dwmmc0: IDMAC supports 32-bit address mode.
[ 1.801560] dw_mmc ff704000.dwmmc0: Using internal DMA controller.
[ 1.807737] dw_mmc ff704000.dwmmc0: Version ID is 240a
[ 1.812917] dw_mmc ff704000.dwmmc0: DW MMC controller at irq 38,32
bit host d ata width,1024 deep fifo
[ 1.822428] dw_mmc ff704000.dwmmc0: Got CD GPIO
[ 1.827005] mmc_host mmc0: card is polling.
[ 1.841337] mmc_host mmc0: Bus speed (slot 0) = 50000000Hz (slot req
400000Hz , actual 396825HZ div = 63)
[ 1.865228] socfpga-dwmac ff702000.ethernet eth0: PHY [stmmac-0:04]
driver [M icrel KSZ9021 Gigabit PHY] (irq=POLL)
[ 1.875810] socfpga-dwmac ff702000.ethernet eth0: Register
MEM_TYPE_PAGE_POOL RxQ-0
[ 1.886679] socfpga-dwmac ff702000.ethernet eth0: No Safety Features
support found
[ 1.897468] mmc_host mmc0: Bus speed (slot 0) = 50000000Hz (slot req
50000000 Hz, actual 50000000HZ div = 0)
[ 1.904448] socfpga-dwmac ff702000.ethernet eth0: registered PTP clock
[ 1.907277] mmc0: new high speed SDHC card at address 0001
[ 1.919446] socfpga-dwmac ff702000.ethernet eth0: configuring for
phy/rgmii l ink mode
[ 1.919714] mmcblk0: mmc0:0001 SD8GB 7.24 GiB
[ 1.933945] mmcblk0: p1 p2 p3
[ 6.072231] socfpga-dwmac ff702000.ethernet eth0: Link is Up -
1Gbps/Full - f low control rx/tx
[ 6.080856] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[ 6.131319] Sending DHCP requests .., OK
[ 9.375268] IP-Config: Got DHCP answer from 10.122.105.2, my address
is 10.12 2.105.45
[ 9.383105] IP-Config: Complete:
[ 9.386328] device=eth0, hwaddr=0a:70:a0:4c:e4:6f,
ipaddr=10.122.105.45, mask=255.255.255.0, gw=10.122.105.1
[ 9.396572] host=10.122.105.45, domain=an.intel.com,
nis-domain=(none)
[ 9.403526] bootserver=10.122.105.30, rootserver=10.122.105.166,
rootpat h=
[ 9.403536] nameserver0=10.248.2.1, nameserver1=10.2.71.6,
nameserver2=1 0.31.40.4
[ 9.419206] dw-apb-uart ffc02000.serial0: forbid DMA for kernel console
[ 9.440415] VFS: Mounted root (nfs filesystem) on device 0:13.
[ 9.446908] devtmpfs: mounted
[ 9.452213] Freeing unused kernel image (initmem) memory: 1024K
[ 9.491560] Run /sbin/init as init process
INIT: version 2.88 booting
[ 9.707166] random: fast init done
Starting Bootlog daemon: bootlogd.
mount: mounting 10.122.105.166:/home/dnguyen/rootfs_yocto on / failed:
Invalid a rgument
Starting portmap daemon...
INIT: Entering runlevel: 5
Starting OpenBSD Secure Shell server: sshd
[ 10.594905] random: sshd: uninitialized urandom read (32 bytes read)
done.
creating NFS state directory: done
starting 8 nfsd kernel threads: rpc.nfsd: unable to resolve ANYADDR:nfs
to inet address: Servname not supported for ai_socktype
rpc.nfsd: unable to set any sockets for nfsd
done
starting mountd: done
starting statd: done
Starting system log daemon...start-stop-daemon: can't execute
'/sbin/syslogd': N o such file or directory
1
Starting kernel log daemon...start-stop-daemon: can't execute
'/sbin/klogd': No such file or directory
1
Starting Lighttpd Web Server: [ 10.978345] random: lighttpd:
uninitialized ura ndom read (4096 bytes read)
lighttpd.
Stopping Bootlog daemon: bootlogd.
Poky 8.0 (Yocto Project 1.3 Reference Distro) 1.3 socfpga_cyclone5 ttyS0
socfpga_cyclone5 login: root
login[158]: root login on `ttyS0'
root@socfpga_cyclone5:~#
next prev parent reply other threads:[~2022-02-23 16:28 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-02-21 4:32 [PATCH] [RFC] spi: cadence-quadspi: Disable DAC on SoCFPGA Marek Vasut
2022-02-21 16:38 ` Dinh Nguyen
2022-02-21 17:05 ` Marek Vasut
2022-02-22 15:49 ` Dinh Nguyen
2022-02-22 18:30 ` Marek Vasut
2022-02-22 21:32 ` Dinh Nguyen
2022-02-23 0:54 ` Marek Vasut
2022-02-23 16:28 ` Dinh Nguyen [this message]
2022-02-23 16:43 ` Marek Vasut
2022-02-23 16:46 ` Dinh Nguyen
2022-02-23 17:16 ` Marek Vasut
2022-02-23 22:18 ` Dinh Nguyen
2022-02-23 23:46 ` Marek Vasut
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cd1e80f1-b12e-d8c4-e7f2-bfbc21ebf57c@kernel.org \
--to=dinguyen@kernel.org \
--cc=linux-spi@vger.kernel.org \
--cc=marex@denx.de \
--cc=p.yadav@ti.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.