mirror of
https://github.com/Qortal/Brooklyn.git
synced 2025-02-08 07:13:06 +00:00
* NVME, SATA NAND Security added * Qortal Core exception fetcher is now redone. * Update DT overlays for firmware * Fix for bvb clockj settings * Fix for no audio for sissy desktop porn watchers -_- ( thanks crowetic for watching gay porn and reporting me that bug asshat ) * Normalize the fetch() stream while doing a peer to peer handshake for nodes * Fix for RNG token editing error while performing a SHA256 encryption * Now under voltage errors will blink red led constantly for 5 minutes then go solid. * Improve kernel thread scaling for Qortal 2.0 core * HDMI circuit is now enabled at power up instead. * Added KMS * Added line replication instead of interpolation for VC4 GPU resulting in slightly better frame rates * Fix for long and doubles * Backplane clock is now set at standard rate * Capped HVEC clocks * Add support for Creative Cinema webcam for donkers who like sharing dick pics. *looks at crowetic* * More scanline XGA modes for people who have weird ass monitors of all sorts. * TX/RX flow control support is now 100% stable. No lags over 1Gbps ethernet. ( Hello Qortal 3.0 ) * Using flush cache instead of fetch for QC 2.0 resulting in performance gains * VC4 clock is now enforced for desktop oriented images. * Ondemand governor now waits for 2 seconds instead of 0.5ms to scale down to the lowest safest clock freq preventing lags to the core. * Timeout of OC set at 35ms from 90ms resulting in way better clocks and sync for Qortal 2.0 core
81 lines
1.3 KiB
C
81 lines
1.3 KiB
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
|
|
#ifndef __ASM_CSKY_BITOPS_H
|
|
#define __ASM_CSKY_BITOPS_H
|
|
|
|
#include <linux/compiler.h>
|
|
#include <asm/barrier.h>
|
|
|
|
/*
|
|
* asm-generic/bitops/ffs.h
|
|
*/
|
|
static inline int ffs(int x)
|
|
{
|
|
if (!x)
|
|
return 0;
|
|
|
|
asm volatile (
|
|
"brev %0\n"
|
|
"ff1 %0\n"
|
|
"addi %0, 1\n"
|
|
: "=&r"(x)
|
|
: "0"(x));
|
|
return x;
|
|
}
|
|
|
|
/*
|
|
* asm-generic/bitops/__ffs.h
|
|
*/
|
|
static __always_inline unsigned long __ffs(unsigned long x)
|
|
{
|
|
asm volatile (
|
|
"brev %0\n"
|
|
"ff1 %0\n"
|
|
: "=&r"(x)
|
|
: "0"(x));
|
|
return x;
|
|
}
|
|
|
|
/*
|
|
* asm-generic/bitops/fls.h
|
|
*/
|
|
static __always_inline int fls(unsigned int x)
|
|
{
|
|
asm volatile(
|
|
"ff1 %0\n"
|
|
: "=&r"(x)
|
|
: "0"(x));
|
|
|
|
return (32 - x);
|
|
}
|
|
|
|
/*
|
|
* asm-generic/bitops/__fls.h
|
|
*/
|
|
static __always_inline unsigned long __fls(unsigned long x)
|
|
{
|
|
return fls(x) - 1;
|
|
}
|
|
|
|
#include <asm-generic/bitops/ffz.h>
|
|
#include <asm-generic/bitops/fls64.h>
|
|
#include <asm-generic/bitops/find.h>
|
|
|
|
#ifndef _LINUX_BITOPS_H
|
|
#error only <linux/bitops.h> can be included directly
|
|
#endif
|
|
|
|
#include <asm-generic/bitops/sched.h>
|
|
#include <asm-generic/bitops/hweight.h>
|
|
#include <asm-generic/bitops/lock.h>
|
|
#include <asm-generic/bitops/atomic.h>
|
|
|
|
/*
|
|
* bug fix, why only could use atomic!!!!
|
|
*/
|
|
#include <asm-generic/bitops/non-atomic.h>
|
|
|
|
#include <asm-generic/bitops/le.h>
|
|
#include <asm-generic/bitops/ext2-atomic.h>
|
|
#endif /* __ASM_CSKY_BITOPS_H */
|