Git Product home page Git Product logo

tinyvision's People

Contributors

redstonee avatar yuzukitsuru avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

tinyvision's Issues

启动内核卡在Waiting for root device /dev/mmcblk0p2...

内核的启动启动日志:

[ 0.000005][I] | | | | ___ | | || |
[ 0.000010][I] |
| | | | -| | -| | |
[ 0.000015][I] |_____|
|
| ||| |||||
[ 0.000020][I] |
_|
[ 0.000025][I] ***********************************
[ 0.000030][I] SyterKit V0.1.2 Commit:
[ 0.000034][I] Built by: arm-none-eabi-gcc
[ 0.000039][I] ***********************************
[ 0.000044][I]
[ 0.000045][I] Chip ID is: 62c070007c0048200146c474044e1ecf
[ 0.000053][I] DRAM: size = 64MB
[ 0.000059][I] DRAM: simple test OK
[ 0.000062][I] SMHC: sdhci0 controller v50400 initialized
[ 0.000074][I] SMHC: capacity 31.3GB
[ 0.000078][I] SHMC: SD card detected
[ 0.000151][I] FATFS: read sunxi.dtb addr=41008000
[ 0.000160][I] FATFS: read in 5ms at 2.59MB/S
[ 0.000164][I] FATFS: read zImage addr=41800000
[ 1.000348][I] FATFS: read in 1180ms at 4.42MB/S
[ 1.000352][I] FATFS: read config.txt addr=40008000
[ 1.000358][I] FATFS: read in 1ms at 0.18MB/S
[ 1.000362][I] FATFS: done in 1211ms
[ 1.000379][I] Hit any key to stop autoboot: 0
[ 4.000385][I] Linux zImage->code = 0x000000000
[ 4.000390][I] disable mmu ok...
[ 4.000394][I] disable dcache ok...
[ 4.000397][I] disable icache ok...
[ 4.000401][I] free interrupt ok...
[ 4.000405][I] enable kernel smp ok...
[ 4.000409][I] jump to kernel address: 0x41800000

[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 6.7.0-rc7 (lmmuyu@ubuntu) (arm-linux-gnueabihf-gcc (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0, GNU ld (GNU Binutils for Ubuntu) 2.34) #7 SMP Mon Jan 15 00:04:04 PST 2024
[ 0.000000] CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c5387d
[ 0.000000] CPU: div instructions available: patching division code
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[ 0.000000] OF: fdt: Machine model: TinyVision
[ 0.000000] Memory policy: Data cache writealloc
[ 0.000000] OF: reserved mem: 0x43c00000..0x43ffffff (4096 KiB) nomap non-reusable riscv0@43c00000
[ 0.000000] cma: Reserved 4 MiB at 0x43800000 on node -1
[ 0.000000] Zone ranges:
[ 0.000000] Normal [mem 0x0000000040000000-0x0000000043bfffff]
[ 0.000000] HighMem [mem 0x0000000043c00000-0x0000000043ffffff]
[ 0.000000] Movable zone start for each node
[ 0.000000] Early memory node ranges
[ 0.000000] node 0: [mem 0x0000000040000000-0x0000000043bfffff]
[ 0.000000] node 0: [mem 0x0000000043c00000-0x0000000043ffffff]
[ 0.000000] Initmem setup node 0 [mem 0x0000000040000000-0x0000000043ffffff]
[ 0.000000] percpu: Embedded 12 pages/cpu s17108 r8192 d23852 u49152
[ 0.000000] Kernel command line: cma=4M root=/dev/mmcblk0p2 init=/sbin/init console=ttyS0,115200 earlyprintk=sunxi-uart,0x02500000 rootwait clk_ignore_unused mac_addr=4a:13:e4:f9:79:75 mem=64M
[ 0.000000] Unknown kernel command line parameters "earlyprintk=sunxi-uart,0x02500000 mac_addr=4a:13:e4:f9:79:75", will be passed to user space.
[ 0.000000] Dentry cache hash table entries: 8192 (order: 3, 32768 bytes, linear)
[ 0.000000] Inode-cache hash table entries: 4096 (order: 2, 16384 bytes, linear)
[ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 16264
[ 0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[ 0.000000] Memory: 43120K/65536K available (8192K kernel code, 961K rwdata, 2324K rodata, 1024K init, 258K bss, 18320K reserved, 4096K cma-reserved, 0K highmem)
[ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[ 0.000000] rcu: Hierarchical RCU implementation.
[ 0.000000] rcu: RCU restricting CPUs from NR_CPUS=8 to nr_cpu_ids=1.
[ 0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies.
[ 0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=1
[ 0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
[ 0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
[ 0.000000] arch_timer: cp15 timer(s) running at 24.00MHz (virt).
[ 0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x588fe9dc0, max_idle_ns: 440795202592 ns
[ 0.000002] sched_clock: 56 bits at 24MHz, resolution 41ns, wraps every 4398046511097ns
[ 0.000019] Switching to timer-based delay loop, resolution 41ns
[ 0.000213] clocksource: timer: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns
[ 0.000699] Console: colour dummy device 80x30
[ 0.000771] Calibrating delay loop (skipped), value calculated using timer frequency.. 48.00 BogoMIPS (lpj=240000)
[ 0.000794] CPU: Testing write buffer coherency: ok
[ 0.000852] pid_max: default: 32768 minimum: 301
[ 0.001095] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes, linear)
[ 0.001120] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes, linear)
[ 0.002266] /cpus/cpu@0 missing clock-frequency property
[ 0.002311] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[ 0.004187] Setting up static identity map for 0x40100000 - 0x40100060
[ 0.004554] rcu: Hierarchical SRCU implementation.
[ 0.004569] rcu: Max phase no-delay instances is 1000.
[ 0.005354] smp: Bringing up secondary CPUs ...
[ 0.005402] smp: Brought up 1 node, 1 CPU
[ 0.005418] SMP: Total of 1 processors activated (48.00 BogoMIPS).
[ 0.005429] CPU: All CPU(s) started in SVC mode.
[ 0.006237] devtmpfs: initialized
[ 0.010328] VFP support v0.3: implementor 41 architecture 2 part 30 variant 7 rev 5
[ 0.010667] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[ 0.010712] futex hash table entries: 256 (order: 2, 16384 bytes, linear)
[ 0.011064] pinctrl core: initialized pinctrl subsystem
[ 0.013477] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[ 0.014892] DMA: preallocated 256 KiB pool for atomic coherent allocations
[ 0.016194] thermal_sys: Registered thermal governor 'step_wise'
[ 0.016559] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
[ 0.016580] hw-breakpoint: maximum watchpoint size is 8 bytes.
[ 0.019298] platform soc: Fixed dependency cycle(s) with /soc/interrupt-controller@3021000
[ 0.020795] platform 2001000.clock-controller: Fixed dependency cycle(s) with /soc/rtc@7090000
[ 0.024600] platform 7010000.clock-controller: Fixed dependency cycle(s) with /soc/rtc@7090000
[ 0.029758] SCSI subsystem initialized
[ 0.033405] usbcore: registered new interface driver usbfs
[ 0.033489] usbcore: registered new interface driver hub
[ 0.033560] usbcore: registered new device driver usb
[ 0.033834] mc: Linux media interface: v0.10
[ 0.033912] videodev: Linux video capture interface: v2.00
[ 0.034026] pps_core: LinuxPPS API ver. 1 registered
[ 0.034035] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti [email protected]
[ 0.034060] PTP clock support registered
[ 0.034879] Advanced Linux Sound Architecture Driver Initialized.
[ 0.036665] clocksource: Switched to clocksource arch_sys_counter
[ 0.051610] NET: Registered PF_INET protocol family
[ 0.051919] IP idents hash table entries: 2048 (order: 2, 16384 bytes, linear)
[ 0.052739] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096 bytes, linear)
[ 0.052787] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
[ 0.052809] TCP established hash table entries: 1024 (order: 0, 4096 bytes, linear)
[ 0.052836] TCP bind hash table entries: 1024 (order: 2, 16384 bytes, linear)
[ 0.052894] TCP: Hash tables configured (established 1024 bind 1024)
[ 0.053025] UDP hash table entries: 256 (order: 1, 8192 bytes, linear)
[ 0.053080] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes, linear)
[ 0.053353] NET: Registered PF_UNIX/PF_LOCAL protocol family
[ 0.054492] RPC: Registered named UNIX socket transport module.
[ 0.054517] RPC: Registered udp transport module.
[ 0.054524] RPC: Registered tcp transport module.
[ 0.054529] RPC: Registered tcp-with-tls transport module.
[ 0.054534] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 0.055737] hw perfevents: enabled with armv7_cortex_a7 PMU driver, 5 counters available
[ 0.057790] workingset: timestamp_bits=30 max_order=14 bucket_order=0
[ 0.058881] NFS: Registering the id_resolver key type
[ 0.058979] Key type id_resolver registered
[ 0.058987] Key type id_legacy registered
[ 0.059175] bounce: pool size: 64 pages
[ 0.059281] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 246)
[ 0.059297] io scheduler mq-deadline registered
[ 0.059306] io scheduler kyber registered
[ 0.059343] io scheduler bfq registered
[ 0.168857] Serial: 8250/16550 driver, 8 ports, IRQ sharing disabled
[ 0.181957] CAN device driver interface
[ 0.186239] sun6i-rtc 7090000.rtc: registered as rtc0
[ 0.186394] sun6i-rtc 7090000.rtc: setting system clock to 1970-01-02T00:00:05 UTC (86405)
[ 0.187215] i2c_dev: i2c /dev entries driver
[ 0.191049] usbcore: registered new interface driver usbhid
[ 0.191069] usbhid: USB HID core driver
[ 0.194785] NET: Registered PF_PACKET protocol family
[ 0.194812] can: controller area network core
[ 0.194888] NET: Registered PF_CAN protocol family
[ 0.194899] can: raw protocol
[ 0.194911] can: broadcast manager protocol
[ 0.194923] can: netlink gateway - max_hops=1
[ 0.195124] Key type dns_resolver registered
[ 0.195507] Registering SWP/SWPB emulation handler
[ 0.221069] gpio gpiochip0: Static allocation of GPIO base is deprecated, use dynamic allocation.
[ 0.230701] sun8i-v851se-pinctrl 2000000.pinctrl: initialized sunXi PIO driver
[ 0.233133] printk: legacy console [ttyS0] disabled
[ 0.254068] 2500000.serial: ttyS0 at MMIO 0x2500000 (irq = 232, base_baud = 1500000) is a 16550A
[ 0.254161] printk: legacy console [ttyS0] enabled
[ 1.038541] 2500800.serial: ttyS1 at MMIO 0x2500800 (irq = 233, base_baud = 1500000) is a 16550A
[ 1.063767] sunxi-mmc: probe of 4020000.mmc failed with error -16
[ 1.074046] clk: Not disabling unused clocks
[ 1.078480] ALSA device list:
[ 1.081460] No soundcards found.
[ 1.085799] Waiting for root device /dev/mmcblk0p2...
[ 11.371585] platform 4100000.usb: deferred probe pending
[ 11.377044] platform 4101000.usb: deferred probe pending
[ 11.382366] platform 4101400.usb: deferred probe pending

内核.config文件
Uploading config.zip…

设备树文件是用的https://github.com/YuzukiHD/TinyVision/tree/main/kernel/linux-6.7-drivers/dts下的文件

Questions regarding the TinyVision board

Hi @YuzukiTsuru

I have a question regarding the TinyVison board. The features page suggests that the chip can encode videos using H.264/H.265 with frame resolutions of 3840x2160@20fps which is 8Mpixels, but the chip datasheet suggests it supports only up to 4Mpixels on CSI interface. Can you elaborate more on this?

Also, I wanted to order a Tinyvison board on Taobao to try it but it seems it is out of stock, so do you have any idea when it will be available again to order ?

Thanks for your help

error while compile tina5

Hi
I have following error while i want to compile Tina 5.0 base this link:
https://tinyvision.yuzukihd.top/#/?id=tina-50-linux-开发

this error is in compile openWRT sysroot step:

...
copy from /home/mahdi/tina-v853-open/openwrt/target/v851se/v851se-tinyvision/defconfig
target/linux/generic/image/Config.in:12:warning: choice default symbol 'uImage' is not contained in the choice
target/linux/generic/image/Config.in:47:warning: choice default symbol 'uImage' is not contained in the choice
target/linux/generic/image/Config.in:72:warning: choice default symbol 'CONFIG_BOOT_IMAGE_NAME_SUFFIX_NONE' is not contained in the choice
target/linux/generic/image/Config.in:89:warning: choice default symbol 'CONFIG_ROOTFS_IMAGE_NAME_SUFFIX_NONE' is not contained in the choice
#
# No change to .config
#
copy to /home/mahdi/tina-v853-open/openwrt/target/v851se/v851se-tinyvision/defconfig
make[2]: Entering directory '/home/mahdi/tina-v853-open/openwrt/openwrt'
Makefile:29: "NOTE: Will skip kernel build."
The command image-prereq(include/kernel-build.mk) execute.
time: target/linux/prereq#0.07#0.04#0.12
make[2]: Leaving directory '/home/mahdi/tina-v853-open/openwrt/openwrt'
make[1]: Leaving directory '/home/mahdi/tina-v853-open/openwrt/openwrt'
 make[1] world
 make[2] -C /home/mahdi/tina-v853-open/openwrt/target/v851se check
 make[2] target/compile
 make[3] -C /home/mahdi/tina-v853-open/openwrt/target/v851se compile
    ERROR: target/linux failed to build.
make -r world: build failed. Please re-run make with -j1 V=s or V=sc for a higher verbosity level to see what's going on
/home/mahdi/tina-v853-open/openwrt/openwrt/include/toplevel.mk:236: recipe for target 'world' failed
make: *** [world] Error 1
make: Leaving directory '/home/mahdi/tina-v853-open/openwrt/openwrt'
INFO: build_openwrt_rootfs failed

and when add V=s to file build/mkcmd.sh

--- <unnamed>
+++ <unnamed>
@@ -4,7 +4,7 @@
 	local openwrt_rootdir=${LICHEE_TOP_DIR}/openwrt/openwrt
 
 	echo "==mkcmd.sh: build_openwrt_rootfs $@=="
-	${LICHEE_TOP_DIR}/prebuilt/hostbuilt/make4.1/bin/make -C ${openwrt_rootdir}  $@
+	${LICHEE_TOP_DIR}/prebuilt/hostbuilt/make4.1/bin/make -C ${openwrt_rootdir} V=s $@
 
 	return $?
 }

full log :

copy from /home/mahdi/tina-v853-open/openwrt/target/v851se/v851se-tinyvision/defconfig
target/linux/generic/image/Config.in:12:warning: choice default symbol 'uImage' is not contained in the choice
target/linux/generic/image/Config.in:47:warning: choice default symbol 'uImage' is not contained in the choice
target/linux/generic/image/Config.in:72:warning: choice default symbol 'CONFIG_BOOT_IMAGE_NAME_SUFFIX_NONE' is not contained in the choice
target/linux/generic/image/Config.in:89:warning: choice default symbol 'CONFIG_ROOTFS_IMAGE_NAME_SUFFIX_NONE' is not contained in the choice
#
# No change to .config
#
copy to /home/mahdi/tina-v853-open/openwrt/target/v851se/v851se-tinyvision/defconfig
make[2]: Entering directory '/home/mahdi/tina-v853-open/openwrt/openwrt'
Makefile:29: "NOTE: Will skip kernel build."
The command image-prereq(include/kernel-build.mk) execute.
time: target/linux/prereq#0.11#0.10#0.21
make[2]: Leaving directory '/home/mahdi/tina-v853-open/openwrt/openwrt'
make[1]: Leaving directory '/home/mahdi/tina-v853-open/openwrt/openwrt'
make[1]: Entering directory '/home/mahdi/tina-v853-open/openwrt/openwrt'
make[2]: Entering directory '/home/mahdi/tina-v853-open/openwrt/target/v851se'
/home/mahdi/tina-v853-open/openwrt/openwrt/include/target.mk:248: CPU_TYPE "xscale" doesn't correspond to a known type
Parse error at /home/mahdi/tina-v853-open/openwrt/openwrt/scripts/kconfig.pl line 144.
make[2]: Leaving directory '/home/mahdi/tina-v853-open/openwrt/target/v851se'
time: target/linux/check#0.01#0.00#0.01
make[2]: Entering directory '/home/mahdi/tina-v853-open/openwrt/openwrt'
make[3]: Entering directory '/home/mahdi/tina-v853-open/openwrt/target/v851se'
make[4]: Entering directory '/home/mahdi/tina-v853-open/openwrt/target/v851se/v851se-tinyvision'
Makefile:29: "NOTE: Will skip kernel build."
rm -rf /home/mahdi/tina-v853-open/out/v851se/tinyvision/openwrt/build_dir/target/linux-v851se-tinyvision
mkdir -p /home/mahdi/tina-v853-open/out/v851se/tinyvision/openwrt/build_dir/target/linux-v851se-tinyvision
mkdir -p /home/mahdi/tina-v853-open/out/v851se/tinyvision/openwrt/build_dir/target/linux-v851se-tinyvision
if [ -d /home/mahdi/tina-v853-open/out/v851se/tinyvision/openwrt/build_dir/target/linux-v851se-tinyvision/linux-4.9 ]; then rmdir /home/mahdi/tina-v853-open/out/v851se/tinyvision/openwrt/build_dir/target/linux-v851se-tinyvision/linux-4.9; fi
if [ -L /home/mahdi/tina-v853-open/out/v851se/tinyvision/openwrt/build_dir/target/linux-v851se-tinyvision/linux-4.9 ]; then rm -f /home/mahdi/tina-v853-open/out/v851se/tinyvision/openwrt/build_dir/target/linux-v851se-tinyvision/linux-4.9; fi
ln -s "/kernel/linux-4.9/" /home/mahdi/tina-v853-open/out/v851se/tinyvision/openwrt/build_dir/target/linux-v851se-tinyvision/linux-4.9
if [ -d /home/mahdi/tina-v853-open/out/v851se/tinyvision/openwrt/build_dir/target/linux-v851se-tinyvision/linux-4.9/user_headers ]; then rm -rf /home/mahdi/tina-v853-open/out/v851se/tinyvision/openwrt/build_dir/target/linux-v851se-tinyvision/linux-4.9/user_headers; fi
touch /home/mahdi/tina-v853-open/out/v851se/tinyvision/openwrt/build_dir/target/linux-v851se-tinyvision/linux-4.9/.prepared_d41d8cd98f00b204e9800998ecf8427e
touch: cannot touch '/home/mahdi/tina-v853-open/out/v851se/tinyvision/openwrt/build_dir/target/linux-v851se-tinyvision/linux-4.9/.prepared_d41d8cd98f00b204e9800998ecf8427e': No such file or directory
Makefile:29: recipe for target '/home/mahdi/tina-v853-open/out/v851se/tinyvision/openwrt/build_dir/target/linux-v851se-tinyvision/linux-4.9/.prepared_d41d8cd98f00b204e9800998ecf8427e' failed
make[4]: *** [/home/mahdi/tina-v853-open/out/v851se/tinyvision/openwrt/build_dir/target/linux-v851se-tinyvision/linux-4.9/.prepared_d41d8cd98f00b204e9800998ecf8427e] Error 1
make[4]: Leaving directory '/home/mahdi/tina-v853-open/openwrt/target/v851se/v851se-tinyvision'
Makefile:13: recipe for target 'compile' failed
make[3]: *** [compile] Error 2
make[3]: Leaving directory '/home/mahdi/tina-v853-open/openwrt/target/v851se'
time: target/linux/compile#0.04#0.02#0.07
    ERROR: target/linux failed to build.
target/Makefile:23: recipe for target 'target/linux/compile' failed
make[2]: *** [target/linux/compile] Error 1
make[2]: Leaving directory '/home/mahdi/tina-v853-open/openwrt/openwrt'
target/Makefile:18: recipe for target '/home/mahdi/tina-v853-open/openwrt/openwrt/staging_dir/target/stamp/.target_compile' failed
make[1]: *** [/home/mahdi/tina-v853-open/openwrt/openwrt/staging_dir/target/stamp/.target_compile] Error 2
make[1]: Leaving directory '/home/mahdi/tina-v853-open/openwrt/openwrt'
/home/mahdi/tina-v853-open/openwrt/openwrt/include/toplevel.mk:236: recipe for target 'world' failed
make: *** [world] Error 2
make: Leaving directory '/home/mahdi/tina-v853-open/openwrt/openwrt'
INFO: build_openwrt_rootfs failed

how to fix ?

No build/envsetup.sh file and folder

Hi,
There is no source build directory in "TinyVision-tina.0.0.2" directory, so I stoped in first step : source build/envsetup.sh

What have I done wrong?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.